From owner-freebsd-questions@FreeBSD.ORG Tue Dec 6 12:07:31 2011 Return-Path: Delivered-To: freebsd-questions@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id EE35A106566B for ; Tue, 6 Dec 2011 12:07:30 +0000 (UTC) (envelope-from freebsd@qeng-ho.org) Received: from fileserver.home.qeng-ho.org (blue.qeng-ho.org [217.155.128.241]) by mx1.freebsd.org (Postfix) with ESMTP id E17F68FC0A for ; Tue, 6 Dec 2011 12:07:27 +0000 (UTC) Received: from fileserver.home.qeng-ho.org (localhost [127.0.0.1]) by fileserver.home.qeng-ho.org (8.14.4/8.14.4) with ESMTP id pB6BlPsx068368; Tue, 6 Dec 2011 11:47:26 GMT (envelope-from freebsd@qeng-ho.org) Message-ID: <4EDE00CD.6070507@qeng-ho.org> Date: Tue, 06 Dec 2011 11:47:25 +0000 From: Arthur Chance User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:8.0) Gecko/20111112 Thunderbird/8.0 MIME-Version: 1.0 To: "Ronald F. Guilmette" References: <66927.1323170567@tristatelogic.com> In-Reply-To: <66927.1323170567@tristatelogic.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: freebsd-questions@freebsd.org Subject: Re: drivin' me nuts: permissions and cdda2wav X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 06 Dec 2011 12:07:31 -0000 On 12/06/11 11:22, Ronald F. Guilmette wrote: > With a pre-recorded CD in the drive, the following works fine for me when > I'm root: > > cdda2wav -D 0,0,0 -B > > My question is: What do I need to do in order to make this work also > when executed from a non-root account? > > Here's what I get when I try to do the above from a non-root account: > > cdda2wav: Permission denied. Cannot open or use SCSI driver. > cdda2wav: For possible targets try 'cdda2wav -scanbus'. Make sure you are root. > Probably you did not define your SCSI device. > Set the CDDA_DEVICE environment variable or use the -D option. > You can also define the default device in the Makefile. > For possible transport specifiers try 'cdda2wav dev=help'. > > Effing hell! I've tried just about everything I can think of off the top > of my head to beat this and nothing works. I've tried chmod 0660 /dev/pass* > (and yes, the account I'm trying these experiments from _is_ a member of the > `operator' group), but that didn't help a bit. > > And before anybody asks, let me say that yes, I _do_ have: > > atapicam_load="YES" > > in my /boot/loader.conf file. > > So how exactly does one adjust the permissions on one of these atamicam > pseudo-SCSI devices. Where are they underneath /dev ? Please excuse my > ignorance, but I just don't know. > > <> I've just been through the same experience getting cdparanoia to work for a non-root user under REL 8.2p4. Note that I have the ahci module loaded so my cd is /dev/cd0. You need write access to /dev/cd0 plus the corresponding /dev/passN (use camcontrol devlist to find out which) *and* /dev/xpt0. From my /etc/devfs.conf own cd0 root:operator perm cd0 0660 link cd0 cdrom perm xpt0 0660 perm pass5 0660 This is the relevant part my machine's /dev. I'm in operator group. arthur@fileserver> ls -l /dev/{cd,pass,xpt}* crw-rw---- 1 root operator 0, 97 Nov 23 16:24 /dev/cd0 lrwxr-xr-x 1 root wheel 3 Dec 2 16:08 /dev/cdrom -> cd0 crw------- 1 root operator 0, 91 Nov 23 16:24 /dev/pass0 crw------- 1 root operator 0, 92 Nov 23 16:24 /dev/pass1 crw------- 1 root operator 0, 93 Nov 23 16:24 /dev/pass2 crw------- 1 root operator 0, 94 Nov 23 16:24 /dev/pass3 crw------- 1 root operator 0, 95 Nov 23 16:24 /dev/pass4 crw-rw---- 1 root operator 0, 96 Nov 23 16:24 /dev/pass5 crw------- 1 root operator 0, 113 Nov 23 16:24 /dev/pass6 crw------- 1 root operator 0, 115 Nov 23 16:24 /dev/pass7 crw------- 1 root operator 0, 116 Nov 23 16:24 /dev/pass8 crw------- 1 root operator 0, 118 Nov 23 16:24 /dev/pass9 crw-rw---- 1 root operator 0, 61 Nov 23 16:24 /dev/xpt0 And how to find which /dev/passN corresponds to the cd drive: arthur@fileserver> camcontrol devlist | grep cd at scbus7 target 0 lun 0 (cd0,pass5) > All I really wanted to do is to rip an "E"CD (enhanced CD) that I own, > using abcde. I found out that cdparanoia chokes on the ECD, so I'm trying > to figure out how to make abcde work with cdda2wav, but it apparently isn't > at all easy. (Any hints or advice welcomed.) > > Oh! And by the way, this causes a segfault and a core dump: > > cdda2wav -D /dev/acd0 -B > > I'll have to send in a PR on that, I guess, but it is rather stunning to me > that nobody even tested for that.