← Back to team overview

sslug-teknik team mailing list archive

CD/DVD brænding kernel 2.6. Hvorfor kun fra root?

 

Som det sikkert er alle bekendt, kan der i kernel 2.6 skrives på en CD
el. DVD uden at anvende scsi-emulering (hdc=ide-scsi). Det er nyt for
mig, så da jeg i Mandriva 2006 (kernel 2.6.12) ikke kunne brænde CD
troede jeg første omgang at  årsagen var, at der ikke blev bootet med
'kernel ... hdc=ide-scsi ...'. Det hjalp ikke at ændre ændre booten, der
kunne stadig ikke brændes; ydermere fjernede mandriva /dev/hdc, så det
ikke var muligt at mounte cdrom.
Mandrake definerede et link:
lrwxrwxrwx  1 root root 31 Sep  7 09:02 /dev/sr0 ->
scsi/host1/bus0/target0/lun0/cd
/etc/fstab:
/dev/sr0 /mnt/cdrom2 auto
umask=0022,user,iocharset=iso8859-15,sync,codepage=850,noauto,ro,exec,users
0 0
Mount /mnt/cdrom2:
/dev/sr0: Invalid argument
mount: I could not determine the filesystem type, and none was specified

Med lidt googling fandt jeg dette:
http://www.brunolinux.com/02-The_Terminal/Cdrecord_and_Kernel_26.html
...
This SCSI emulation under linux 2.4 was the reason of this 'hdc=ide-scsi' thing..
...
This is now past! With the linux kernel 2.6 a new ATAPI interface has been developed and directly available with the IDE driver. This interface is shortly known as the ATA interface, which is also supported by cdrecord. So forget about this SCSI emulation, ATAPI interface or whatever, just now use the more logical way you would have first imagine, which is to just specify the device name of your burner, for example dev=/dev/hdc, if your burner is the first device on the second IDE bus of your computer.
....
You can scan your buses with "cdrecord -scanbus" to know which devices are detected, note that the Mandrakelinux cdrecord automatically default to the new ATA interface if the SCSI interface does not find anything, you can check that with the "scsidev: 'ATA'" line in the scanbus command output. If you want to be sure to scan only the ATA bus, just use "cdrecord dev=ATA -scanbus".
...

Ved boot med ide-scsi viste dmesg at:
'ide-scsi is deprecated for cd burning! Use ide-cd and give dev=/dev/hdX as device' Ved boot uden ide-scsi viste et check med lsmod at modulet ide-cd var loaded. Alt skulle således bare være i orden, men hvorfor kunne jeg alligevel ikke brænde?, cdrecord melder:
/usr/bin/cdrecord: Cannot allocate memory. WARNING: Cannot do mlockall(2).
/usr/bin/cdrecord: Operation not permitted. WARNING: Cannot set RR-scheduler
/usr/bin/cdrecord: Permission denied.
Det viser sig, at det kun er root, der kan brænde.
Nå, OK, så kan man jo bare bruge sudo, men det er heller ikke den endelig løsning, i hvert fald ikke hvis der bruges k3b.
sudo k3b har problemer med growisofs:
Error message from k3b:
Unable to find growisofs executable
Måske et path-problem?.
Løsningen viser sig at være kdesu:
http://www.bellevuelinux.org/kdesu.html
Med 'kdesu k3b' kører det bare.

MEN, HVORFOR er det kun root, der har skrivetilladelse til CD??.


--
Med venlig hilsen

Jørgen Heesche
mailto:heesche@xxxxxxxxxxx
Registered Linux User #401007





Follow ups