[systemd-devel] systemd195: issue with udev launched script

Warpme warpme at o2.pl
Fri Nov 16 08:37:27 PST 2012


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 at 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:50
Nov 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 index
Nov 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

-------------- next part --------------
A non-text attachment was scrubbed...
Name: warpme.vcf
Type: text/x-vcard
Size: 89 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/systemd-devel/attachments/20121116/ae454f19/attachment.vcf>


More information about the systemd-devel mailing list