On 11/15/12 9:05 PM, Kay Sievers wrote:
You can use systemd to instantiate a service on device discovery (or run a daemon that listens to events from udev on old init systems). Check how bluetooth, cups printers, usbmux, ... is handled: TAG+="systemd", ENV{SYSTEMD_WANTS}="configure-printer@usb-$env{BUSNUM}-$env{DEVNUM}.service" TAG+="systemd", ENV{SYSTEMD_WANTS}+="bluetooth.target" TAG+="systemd", ENV{SYSTEMD_WANTS}="usbmuxd.service" Kay
Well, Things pretend to be simple seems to be not simple After few hours of fighting with issue I have to ask for help.
udev rule:
SUBSYSTEM=="block", KERNEL=="sd[c-z][0-9]", GOTO="begin"
GOTO="end"
LABEL="begin"
ACTION=="add", GOTO="begin_add"
ACTION=="remove", GOTO="begin_remove"
GOTO="end"
LABEL="begin_add"
SYMLINK+="usbhd-%k", GROUP="root"
ENV{ID_FS_LABEL_ENC}="usbhd-%k"
IMPORT{program}="/sbin/blkid -o udev -p $tempnode"
ENV{ID_FS_LABEL_ENC}==".myth.backup",
ENV{MOUNT_DIR}="/media/$env{ID_FS_LABEL_ENC}", RUN+="/bin/mkdir -p
$env{MOUNT_DIR}", RUN+="/bin/mount -t auto -o rw,noauto,noatime /dev/%k
$env{MOUNT_DIR}"
ENV{ID_FS_LABEL_ENC}==".myth.backup", TAG+="systemd",
ENV{SYSTEMD_WANTS}="ext-usb-backup.service"
GOTO="end" service file: [Unit] Description=MythtTV ExtUSB Backup Helper [Service] ExecStart=/usr/local/bin/run-backup.sh Type=forking GuessMainPID=false RemainAfterExit=no Issue: it works with:ENV{ID_FS_LABEL_ENC}==".myth.backup", RUN+="/usr/bin/systemctl start ext-usb-backup.service"
but not works with:ENV{ID_FS_LABEL_ENC}==".myth.backup", TAG+="systemd", ENV{SYSTEMD_WANTS}="ext-usb-backup.service"
(With TAG+ENV approach udev behaves like line with TAG+ENV is non-existing: no any error nor any sign it is parsed)
Where the hell issue is ?log for ENV{ID_FS_LABEL_ENC}==".myth.backup", RUN+="/usr/bin/systemctl start ext-usb-backup.service"
Nov 16 16:00:31 LINK 'usbhd-sdc1' /etc/udev/rules.d/98-usbhd.rules:50Nov 16 16:00:31 IMPORT '/sbin/blkid -o udev -p /dev/sdc1' /etc/udev/rules.d/98-usbhd.rules:52
Nov 16 16:00:31 starting '/sbin/blkid -o udev -p /dev/sdc1'Nov 16 16:00:31 '/sbin/blkid -o udev -p /dev/sdc1'(out) 'ID_FS_LABEL=.myth.backup' Nov 16 16:00:31 '/sbin/blkid -o udev -p /dev/sdc1'(out) 'ID_FS_LABEL_ENC=.myth.backup' Nov 16 16:00:31 '/sbin/blkid -o udev -p /dev/sdc1'(out) 'ID_FS_UUID=fd3104ea-d5c0-4a8f-beba-8ab69115b192' Nov 16 16:00:31 '/sbin/blkid -o udev -p /dev/sdc1'(out) 'ID_FS_UUID_ENC=fd3104ea-d5c0-4a8f-beba-8ab69115b192' Nov 16 16:00:31 '/sbin/blkid -o udev -p /dev/sdc1'(out) 'ID_FS_SEC_TYPE=ext2' Nov 16 16:00:31 '/sbin/blkid -o udev -p /dev/sdc1'(out) 'ID_FS_VERSION=1.0'
Nov 16 16:00:31 '/sbin/blkid -o udev -p /dev/sdc1'(out) 'ID_FS_TYPE=ext3'Nov 16 16:00:31 '/sbin/blkid -o udev -p /dev/sdc1'(out) 'ID_FS_USAGE=filesystem' Nov 16 16:00:31 '/sbin/blkid -o udev -p /dev/sdc1'(out) 'ID_PART_ENTRY_SCHEME=dos' Nov 16 16:00:31 '/sbin/blkid -o udev -p /dev/sdc1'(out) 'ID_PART_ENTRY_TYPE=0x83' Nov 16 16:00:31 '/sbin/blkid -o udev -p /dev/sdc1'(out) 'ID_PART_ENTRY_NUMBER=1'
Nov 16 16:00:31 starting '/bin/mkdir -p /media/.myth.backup'Nov 16 16:00:31 '/bin/mkdir -p /media/.myth.backup' [16538] exit with return code 0 Nov 16 16:00:31 starting '/bin/mount -t auto -o rw,noauto,noatime /dev/sdc1 /media/.myth.backup' Nov 16 16:00:31 '/bin/mount -t auto -o rw,noauto,noatime /dev/sdc1 /media/.myth.backup' [16539] exit with return code 0
Nov 16 16:00:31 starting '/usr/bin/systemctl start ext-usb-backup.service' Nov 16 16:00:31 Starting MythtTV ExtUSB Backup Helper... Nov 16 16:00:34 validate module index Nov 16 16:00:37 validate module index Nov 16 16:00:40 validate module index Nov 16 16:00:43 validate module index Nov 16 16:00:46 validate module index Nov 16 16:00:49 validate module index Nov 16 16:00:52 validate module index Nov 16 16:00:55 validate module index Nov 16 16:00:58 validate module indexNov 16 16:01:01 worker [16535] /devices/pci0000:00/0000:00:09.0/0000:04:00.0/usb3/3-1/3-1:1.0/host12/target12:0:0/12:0:0:0/block/sdc/sdc1 timeout; kill it Nov 16 16:01:01 seq 1826 '/devices/pci0000:00/0000:00:09.0/0000:04:00.0/usb3/3-1/3-1:1.0/host12/target12:0:0/12:0:0:0/block/sdc/sdc1' killed
Nov 16 16:01:01 seq 1826 done with -64 Nov 16 16:01:01 validate module index Nov 16 16:01:01 worker [16535] exit Nov 16 16:01:01 worker [16535] terminated by signal 9 (Killed) Nov 16 16:01:01 worker [16535] cleaned up Nov 16 16:01:18 Started MythtTV ExtUSB Backup Helper.Log for ENV{ID_FS_LABEL_ENC}==".myth.backup", TAG+="systemd", ENV{SYSTEMD_WANTS}="ext-usb-backup.service"
Nov 16 15:57:34 IMPORT '/sbin/blkid -o udev -p /dev/sdc1' /etc/udev/rules.d/98-usbhd.rules:52
Nov 16 15:57:34 starting '/sbin/blkid -o udev -p /dev/sdc1'Nov 16 15:57:34 '/sbin/blkid -o udev -p /dev/sdc1'(out) 'ID_FS_LABEL=.myth.backup' Nov 16 15:57:34 '/sbin/blkid -o udev -p /dev/sdc1'(out) 'ID_FS_LABEL_ENC=.myth.backup' Nov 16 15:57:34 '/sbin/blkid -o udev -p /dev/sdc1'(out) 'ID_FS_UUID=fd3104ea-d5c0-4a8f-beba-8ab69115b192' Nov 16 15:57:34 '/sbin/blkid -o udev -p /dev/sdc1'(out) 'ID_FS_UUID_ENC=fd3104ea-d5c0-4a8f-beba-8ab69115b192' Nov 16 15:57:34 '/sbin/blkid -o udev -p /dev/sdc1'(out) 'ID_FS_SEC_TYPE=ext2' Nov 16 15:57:34 '/sbin/blkid -o udev -p /dev/sdc1'(out) 'ID_FS_VERSION=1.0'
Nov 16 15:57:34 '/sbin/blkid -o udev -p /dev/sdc1'(out) 'ID_FS_TYPE=ext3'Nov 16 15:57:34 '/sbin/blkid -o udev -p /dev/sdc1'(out) 'ID_FS_USAGE=filesystem' Nov 16 15:57:34 '/sbin/blkid -o udev -p /dev/sdc1'(out) 'ID_PART_ENTRY_SCHEME=dos' Nov 16 15:57:34 '/sbin/blkid -o udev -p /dev/sdc1'(out) 'ID_PART_ENTRY_TYPE=0x83' Nov 16 15:57:34 '/sbin/blkid -o udev -p /dev/sdc1'(out) 'ID_PART_ENTRY_NUMBER=1' Nov 16 15:57:34 '/sbin/blkid -o udev -p /dev/sdc1'(out) 'ID_PART_ENTRY_OFFSET=63' Nov 16 15:57:34 '/sbin/blkid -o udev -p /dev/sdc1'(out) 'ID_PART_ENTRY_SIZE=1953520002' Nov 16 15:57:34 '/sbin/blkid -o udev -p /dev/sdc1'(out) 'ID_PART_ENTRY_DISK=8:32' Nov 16 15:57:34 '/sbin/blkid -o udev -p /dev/sdc1' [16203] exit with return code 0
Nov 16 15:57:34 starting '/bin/mkdir -p /media/.myth.backup'Nov 16 15:57:34 '/bin/mkdir -p /media/.myth.backup' [16204] exit with return code 0 Nov 16 15:57:34 starting '/bin/mount -t auto -o rw,noauto,noatime /dev/sdc1 /media/.myth.backup' Nov 16 15:57:34 '/bin/mount -t auto -o rw,noauto,noatime /dev/sdc1 /media/.myth.backup' [16205] exit with return code 0
Nov 16 15:57:34 adding watch on '/dev/sdc1'Nov 16 15:57:34 created db file '/run/udev/data/b8:33' for '/devices/pci0000:00/0000:00:09.0/0000:04:00.0/usb3/3-1/3-1:1.0/host12/target12:0:0/12:0:0:0/block/sdc/sdc1'
Nov 16 15:57:34 passed -1 bytes to netlink monitor 0xd885b0 Nov 16 15:57:34 seq 1825 processed with 0 Nov 16 15:57:34 seq 1825 done with 0 Nov 16 15:57:37 cleanup idle workers Nov 16 15:57:37 validate module index Nov 16 15:57:37 unload module index Nov 16 15:57:37 worker [16200] exit Nov 16 15:57:37 worker [16200] cleaned up
<<attachment: warpme.vcf>>
_______________________________________________ systemd-devel mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/systemd-devel
