I am using Linux Fedora 4 and would like a non-root user to be able to write to DVDs using the DVD drive.

I was able to do this by adding write access to the group of the device file /dev/scd0 and have added the user to the relevant group. However, whenever the machine is rebooted, the device file reverts back to its original permissions.

How can I configure it so that the permission stays the way I want it to?

I tried creating a file called 11-local.rules in the /etc/udev/rules.d directory with the following contents:

KERNEL=="scd0", MODE="0660"

But this did not help. The permission stays the way it is.

  • 2
    Until you get a proper solution, you can put the commands to change the permissions on startup in /etc/rc.local
    – Timo
    Jan 21 '14 at 7:32
  • Am I reading this right? Fedora 4? As in Fedora Core 4?
    – slm
    Jan 21 '14 at 9:16
  • @slm: Yes, it is Fedora Core 4. I need to work with a legacy system and there isn't plans to upgrade because the project is at an end-of-life support stage. Jan 21 '14 at 22:29

Try the following:

# echo 'SUBSYSTEM=="scsi", KERNEL=="scd[0-9]", ATTRS{type}=="5" GROUP="optical", MODE="0666"' > /etc/udev/rules.d/80-cdrom.rules

test the rule

# udevadm test $(udevadm info -q path -n /dev/sr0) 2>&1

load the rule

# udevadm control --reload-rules


Looks like FC4 udev predated udevadm. I pulled up a tarball of udev-058-1 that shipped with FC4 and your 50-udev.rules relevant to dvd should look similar to this:

# old compat symlinks with enumeration
KERNEL=="sr[0-9]*",     SYMLINK="cdrom%e"
KERNEL=="scd[0-9]*",        SYMLINK="cdrom%e"
KERNEL=="pcd[0-9]*",        SYMLINK="cdrom%e"

# do not seperate the next 2 lines!!
KERNEL=="hd[a-z]", BUS=="ide", SYSFS{removable}=="1", PROGRAM=="/etc/udev/scripts/ide-media.sh %k", RESULT=="floppy",  SYMLINK="floppy%e", NAME{ignore_remove, all_partitions}="%k"

KERNEL=="hd[a-z]", BUS=="ide", SYSFS{removable}=="1", RESULT=="cdrom", SYMLINK="cdrom%e"

KERNEL=="hd[a-z]", BUS=="ide", SYSFS{removable}=="1", PROGRAM=="/etc/udev/scripts/check-cdrom.sh %k DVD", SYMLINK="dvd%e"
KERNEL=="sr[0-9]*", BUS=="scsi", PROGRAM=="/etc/udev/scripts/check-cdrom.sh %k DVD", SYMLINK="dvd%e"

KERNEL=="hd[a-z]", BUS=="ide", SYSFS{removable}=="1", PROGRAM=="/etc/udev/scripts/check-cdrom.sh %k CD-R", SYMLINK="cdwriter%e"
KERNEL=="sr[0-9]*", BUS=="scsi", PROGRAM=="/etc/udev/scripts/check-cdrom.sh %k CD-R", SYMLINK="cdwriter%e"

KERNEL=="hd[a-z]", BUS=="ide", SYSFS{removable}=="1", PROGRAM="/etc/udev/scripts/check-cdrom.sh %k DVD-R", SYMLINK="dvdwriter%e"
KERNEL=="sr[0-9]*", BUS=="scsi", PROGRAM=="/etc/udev/scripts/check-cdrom.sh %k DVD-R", SYMLINK="dvdwriter%e"

# rename sr* to scd*
KERNEL=="sr[0-9]*", BUS=="scsi", NAME="scd%n"
KERNEL=="hd[a-z]*", BUS=="ide", SYSFS{removable}=="1",  NAME{ignore_remove}="%k"

Try changing the line before last above that renames sr to scd to this and reboot.

KERNEL=="sr[0-9]*", BUS=="scsi", NAME="scd%n", MODE="0666"
  • Sorry it didn't work. The udevadm command also seems to be not available under FC4. While doing a search about this, I stumbled across this post from the StackOverflow site with a very similar problem. Will give custom usermaps a try when I get the time. Jan 22 '14 at 23:02
  • Excellent! Your updated anwser works. Thank you very much for the help. You may want to update your answer to add a comma before the MODE="0666" part at the line you told me to change to aid in copy-and-paste. Jan 24 '14 at 1:26

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.