# sound-juicer doesn't find /dev/cd0



## flageo (Dec 21, 2009)

sound-juicer -d /dev/cd0 doesn't find /dev/cd0. Any clues?

I usually initiates XFCE4 with hitting 'startx'
grip works fine.


```
$ dmesg|grep cd0
acd0: CDRW <HL-DT-STCD-RW/DVD DRIVE GCC-4160N/0013> at ata1-master UDMA33
acd0: FAILURE - INQUIRY ILLEGAL REQUEST asc=0x24 ascq=0x00 
acd0: FAILURE - INQUIRY ILLEGAL REQUEST asc=0x24 ascq=0x00 
cd0 at ata1 bus 0 target 0 lun 0
cd0: <HL-DT-ST RW/DVD GCC-4160N 0013> Removable CD-ROM SCSI-0 device 
cd0: 33.000MB/s transfers
cd0: Attempt to query device size failed: NOT READY, Medium not present
$ camcontrol devlist
<HL-DT-ST RW/DVD GCC-4160N 0013>   at scbus1 target 0 lun 0 (cd0,pass0)
$ tail /etc/devfs.conf
#####
own	cd0	root:operator
perm	cd0	0666
own	acd0	root:operator
perm	acd0	0666
own	xpt0	root:operator
perm	xpt0	0666
own	pass0	root:operator
perm	pass0	0666
$ grep operator /etc/group
operator:*:5:root,flageo
$ ls -la /dev/cd0 /dev/xpt0 /dev/pass0
crw-rw-rw-  1 root  operator    0,  92 12 21 23:52 /dev/cd0
crw-rw-rw-  1 root  operator    0,  91 12 21 23:52 /dev/pass0
crw-rw-rw-  1 root  operator    0,  90 12 21 23:52 /dev/xpt0
$ uname -a
FreeBSD xxxx.local 8.0-RELEASE-p1 FreeBSD 8.0-RELEASE-p1 #1:
 Sun Dec  6 17:24:53 JST 2009     
root@xxxx.local:/usr/obj/usr/src/sys/GENERIC  i386
$ cat /boot/loader.conf
kern.maxfiles=25000
snd_ich_load="YES"
atapicam_load="YES"
$ kldstat
Id Refs Address    Size     Name
 1   19 0xc0400000 b6dfe0   kernel
 2    1 0xc0f6e000 7224     snd_ich.ko
 3    2 0xc0f76000 567c0    sound.ko
 4    1 0xc0fcd000 4ffc     atapicam.ko
 5    1 0xc4774000 2000     blank_saver.ko
 6    1 0xc48da000 9000     i915.ko
 7    1 0xc48e3000 14000    drm.ko
$ pgrep hald
1171
1157
1152
1148
$ pgrep dbus
1213
1212
881
$ mount
/dev/ad0s1a on / (ufs, local)
devfs on /dev (devfs, local, multilabel)
/dev/ad0s1f on /home (ufs, local, soft-updates)
/dev/ad0s1e on /usr (ufs, local)
/dev/ad0s1d on /var (ufs, local)
procfs on /proc (procfs, local)
$ cat /etc/fstab
# Device		Mountpoint	FStype	Options		Dump	Pass#
/dev/ad0s1b		none		swap	sw		0	0
/dev/ad0s1a		/		ufs	rw		1	1
/dev/ad0s1f		/home		ufs	rw		2	2
/dev/ad0s1e		/usr		ufs	rw		2	2
/dev/ad0s1d		/var		ufs	rw		2	2
#/dev/acd0		/cdrom		cd9660	ro,noauto	0	0
proc			/proc		procfs	rw		0	0
```


----------



## SirDice (Dec 21, 2009)

Any error messages?

This usually helps, add to /etc/devfs.conf:

```
link cdrom cd0
```

Your permissions are set to 0666, which means everyone can read/write to those devices. So there's no need to be a member of the operator group. If you want that then change the permissions to 0660.


----------



## flageo (Dec 21, 2009)

Thank you SirDice.

You mean "link cd0 cdrom" in devfs.conf?

Error message is;
Hit "sound-juicer -d /dev/cd0", a window pops up and says, "Sound Juicer could not use the CD-ROM device '/dev/cd0' HAL daemon may not be running." 
After clicking close button, sound-juicer shows up. However, I can't select any CD-ROM device on Preference window.


```
$ grep cdrom /etc/devfs.conf
#link	acd0	cdrom
link	cdrom	cd0
$ ls -la /dev/cdrom
ls: /dev/cdrom: No such file or directory

++++++++++++++++++++++++

$ grep cdrom /etc/devfs.conf
#link	acd0	cdrom
link    cd0     cdrom
$ ls -la /dev/cdrom
lrwxr-xr-x  1 root  wheel  3 12 22 00:57 /dev/cdrom -> cd0
```


----------



## SirDice (Dec 21, 2009)

flageo said:
			
		

> You mean "link cd0 cdrom" in devfs.conf?


Could be, I did it from the top of my head without checking :e




> Error message is;
> Hit "sound-juicer -d /dev/cd0", a window pops up and says, "Sound Juicer could not use the CD-ROM device '/dev/cd0' HAL daemon may not be running."


Ok. Hal is running, can you find it using [cmd=]lshal[/cmd]?
Did you do any [cmd=]hal-disable-polling[/cmd]?


----------



## flageo (Dec 21, 2009)

SirDice said:
			
		

> Ok. Hal is running, can you find it using [cmd=]lshal[/cmd]?
> Did you do any [cmd=]hal-disable-polling[/cmd]?



Well... How can I find it using lshal?
And I've never heard of [cmd=]hal-disable-polling[/cmd]
Should I provide any config files?


```
udi = '/org/freedesktop/Hal/devices/storage_model_RW_DVD_GCC_4160N'
  block.device = '/dev/cd0'  (string)
  block.freebsd.cam_path = '1,0,0'  (string)
  block.is_volume = false  (bool)
  block.major = 0  (0x0)  (int)
  block.minor = 92  (0x5c)  (int)
  block.storage_device = '/org/freedesktop/Hal/devices/storage_model_RW_DVD_GCC_4160N'  (string)
  freebsd.device_file = '/dev/cd0'  (string)
  freebsd.driver = 'cd'  (string)
  freebsd.unit = 0  (0x0)  (int)
  info.addons = {'hald-addon-storage'} (string list)
  info.capabilities = {'block', 'storage', 'storage.cdrom'} (string list)
  info.category = 'storage.cdrom'  (string)
  info.interfaces = {'org.freedesktop.Hal.Device.Storage', 'org.freedesktop.Hal.Device.Storage', 'org.freedesktop.Hal.Device.Storage.Removable'} (string list)
  info.parent = '/org/freedesktop/Hal/devices/ide_host_1_scsi_host_scsi_device_lun0'  (string)
  info.product = 'RW/DVD GCC-4160N'  (string)
  info.subsystem = 'block'  (string)
  info.udi = '/org/freedesktop/Hal/devices/storage_model_RW_DVD_GCC_4160N'  (str
ing)
  info.vendor = 'HL-DT-ST'  (string)
  org.freedesktop.Hal.Device.Storage.method_argnames = {'extra_options', 'extra_options'} (string list)
  org.freedesktop.Hal.Device.Storage.method_execpaths = {'hal-storage-eject', 'hal-storage-closetray'} (string list)
  org.freedesktop.Hal.Device.Storage.method_names = {'Eject', 'CloseTray'} (string list)
  org.freedesktop.Hal.Device.Storage.method_signatures = {'as', 'as'} (string list)
  storage.automount_enabled_hint = true  (bool)
  storage.bus = 'scsi'  (string)
  storage.cdrom.bd = false  (bool)
  storage.cdrom.bdr = false  (bool)
  storage.cdrom.bdre = false  (bool)
  storage.cdrom.cdr = true  (bool)
  storage.cdrom.cdrw = true  (bool)
  storage.cdrom.dvd = true  (bool)
  storage.cdrom.dvdplusr = false  (bool)
  storage.cdrom.dvdplusrdl = false  (bool)
  storage.cdrom.dvdplusrw = false  (bool)
  storage.cdrom.dvdplusrwdl = false  (bool)
  storage.cdrom.dvdr = false  (bool)
  storage.cdrom.dvdram = false  (bool)
  storage.cdrom.dvdrw = false  (bool)
  storage.cdrom.hddvd = false  (bool)
  storage.cdrom.hddvdr = false  (bool)
  storage.cdrom.hddvdrw = false  (bool)
  storage.cdrom.read_speed = 4234  (0x108a)  (int)
  storage.cdrom.support_media_changed = false  (bool)
  storage.cdrom.write_speed = 2822  (0xb06)  (int)
  storage.drive_type = 'cdrom'  (string)
  storage.firmware_revision = '0013'  (string)
  storage.hotpluggable = false  (bool)
  storage.lun = 0  (0x0)  (int)
  storage.media_check_enabled = true  (bool)
  storage.model = 'RW/DVD GCC-4160N'  (string)
  storage.no_partitions_hint = true  (bool)
  storage.originating_device = '/org/freedesktop/Hal/devices/ide_host_1_scsi_host_scsi_device_lun0'  (string)
  storage.removable = true  (bool)
  storage.removable.media_available = false  (bool)
  storage.removable.support_async_notification = false  (bool)
  storage.requires_eject = true  (bool)
  storage.vendor = 'HL-DT-ST'  (string)
```


----------



## flageo (Dec 22, 2009)

It's now working very well after I changed the WM from XFCE4 to GNOME2 *sigh*


----------



## flageo (Dec 22, 2009)

Eh.. How can I change thread-status "[SOLVED]"?


----------



## graudeejs (Dec 22, 2009)

```
kldload atapicam
kldload pass
kldload cd
```
cd and pass are probably in GENERIC kernel

or put 

```
device atapicam
device cd
device pass
```
in your kernel config


----------

