gelöst udev-regel funktioniert nicht mehr wie geplant

Alle weiteren Dienste, die nicht in die drei oberen Foren gehören.
Antworten
Benutzeravatar
Taomon
Beiträge: 627
Registriert: 08.03.2011 16:34:38
Lizenz eigener Beiträge: GNU Free Documentation License

gelöst udev-regel funktioniert nicht mehr wie geplant

Beitrag von Taomon » 08.06.2019 10:45:14

Ich habe mir eine Udev-regel gebastelt, die eigentlich so funktionieren sollte und auch mal hat.
Binde die Partition mit dem Label debianhome direkt unter /media als /media/debianhome ein. Und nur die. Alles andere normal in /media/$USER.

Code: Alles auswählen

root@Taomon:/home/alex# cat /etc/udev/rules.d/zz-Backup-home.rules 
KERNEL=="sd*[0-9]", SUBSYSTEM=="block", GROUP="plugdev", MODE="0664", ENV{ID_FS_LABEL}=="debianhome", ENV{UDISKS_FILESYSTEM_SHARED}="1",  ENV{SYSTEMD_WANTS}="backup-home-skript"
root@Taomon:/home/alex# 
Leider werden jetzt alle Medien direkt unter /media eingebunden. NoPaste-Eintrag40762 Abfrage von einem USB-Stick.
Das war mal früher nicht der Fall.

Code: Alles auswählen

root@Taomon:/home/alex# systemd --version
systemd 232
+PAM +AUDIT +SELINUX +IMA +APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ +LZ4 +SECCOMP +BLKID +ELFUTILS +KMOD +IDN
root@Taomon:/home/alex# 
und

Code: Alles auswählen

alex@Taomon:~$ udevadm --version
232
alex@Taomon:~$ 
ich teste grad in Sretch den backport Kernel

Code: Alles auswählen

alex@Taomon:~$ uname -r
4.19.0-0.bpo.5-amd64
alex@Taomon:~$ 
Gruß Taomon
Zuletzt geändert von Taomon am 09.06.2019 09:21:56, insgesamt 1-mal geändert.
Bitte gelegentliche Schreibfehler übersehen. Ich habe ADHS. Danke.

Benutzeravatar
Taomon
Beiträge: 627
Registriert: 08.03.2011 16:34:38
Lizenz eigener Beiträge: GNU Free Documentation License

Re: udev-regel funktioniert nicht mehr wie geplant

Beitrag von Taomon » 08.06.2019 11:49:49

ich will, wenn diese Platte angeschloßen wird eine systemd.service starten lassen, das im Hintergrund mein home sichert. Was es auch tut.

desweiteren gibt es noch einen service der beim anschließen von Sticks clamtk startet, da ich manchmal Sticks bekomme die sonst in Windows genutz werden. Ja ich weiß selbst wenn was drauf wäre brauch ich mir wenig bis keine Sorgen machen unter Linux.

Damit sich diese services nicht in die quere kommen brauch ich die festen Mountpunkte. Wenn die clamtk.service beim anschließen startet wird erst gesucht ob der Mounpunkt für /media/debianhome da ist, dann beendet sich der clamtk.service.

Code: Alles auswählen

alex@Taomon:~$ cat /usr/local/bin/clam 
#!/bin/bash
set -e
/bin/sleep 30
if /bin/findmnt | /bin/grep debianhome > /dev/null;then
echo "Backup-Platte gefunden" >> /home/alex/rsync.log;
exit 0;
else
/usr/bin/clamscan -r -z /media/alex  && /usr/bin/aplay -q /home/alex/.wine/drive_c/Programme/Enterbrain/RPG2003/RTP/Sound/wave1.wav;
fi
alex@Taomon:~$ 
Bei mir kommen höchsten interne Platten in die /etc/fstab.
Ich hoffe das war jetzt verständlich geschildert.

Gruß und danke Taomon
Bitte gelegentliche Schreibfehler übersehen. Ich habe ADHS. Danke.

Benutzeravatar
detix
Beiträge: 1705
Registriert: 07.02.2007 18:51:28
Wohnort: MK

Re: udev-regel funktioniert nicht mehr wie geplant

Beitrag von detix » 08.06.2019 13:41:14

Für ein Backup hatte ich mal ähnliches gemacht und auch hier nachgefragt:
viewtopic.php?p=1161361#p1161361

Seit 2 oder 3 Monaten (buster) funktionierte aber neben udev auch Debianincron nicht mehr:
die Laufwerke wurden durch mein Backup-Skript nicht mehr gemountet (Debianpmount)!
Was momentan funktioniert ist das was @NAB damals verlinkt hat:
https://bbs.archlinux.org/viewtopic.php?id=181080

in (in meinem Fall, bin der user peter und auch root) angepasster Version:
USB-Platte heißt „backup_usb_hd”, Skript heißt „pn_backup_usb_hd”:
udev Regel:

Code: Alles auswählen

KERNEL=="sd[b-i]1", ENV{ID_FS_LABEL}=="backup_usb_hd", ACTION=="add", \
RUN+="/bin/systemctl --no-block start backup@%k.service"
Dann eine /etc/systemd/system/backup@.service Datei erstellen mit folgendem Inhalt:

Code: Alles auswählen

[Unit]
Description=Backup auf die USB-HD beim Anschließen
[Service]
User=peter
ExecStart=/usr/local/bin/pn_backup_usb_hd %I
das Backup-Skript nur grob dargestellt (Quellaufwerk sollte gemountet sein!):

Code: Alles auswählen

UsbDevice="/dev/$1"
UsbInfo=$(udevadm info --query=property --name=$UsbDevice)
UsbLabel=$(awk -F= '/ID_FS_LABEL=/ {print $2}' <<<"$UsbInfo")
pmount $UsbDevice $UsbLabel
...
Danach neustarten, oder vielleicht nur neu einlesen als root mit:

Code: Alles auswählen

systemctl daemon-reload
udevadm control --reload
für einen schnellen Test ohne ein-ausstecken sollte „#parted -l” ausreichen...
Ob das jetzt Zukunft hat...?
Zuletzt geändert von detix am 08.06.2019 13:57:40, insgesamt 1-mal geändert.
Gruß an alle Debianer, und immer daran denken:
Macht ohne Haftung funktioniert nicht!

KP97
Beiträge: 3431
Registriert: 01.02.2013 15:07:36

Re: udev-regel funktioniert nicht mehr wie geplant

Beitrag von KP97 » 08.06.2019 13:52:40

Ich habe früher auch mal udev-rules genutzt, um alle USB-Geräte direkt unter /media zu mounten. Das ist zwar das Gegenteil von dem, was Du möchtest, aber
vielleicht kannst Du die Rule mit Deinen Parametern erweitern und damit testen.

Code: Alles auswählen

KERNEL=="sd[b-z][0-9]", SUBSYSTEMS=="usb", ACTION=="add", RUN+="/bin/systemctl start usb-mount@%k.service"
Alle meine Geräte haben Label, daher war der Mountpunkt nicht wichtig. Ich habe zudem auf sdb* eingegrenzt, damit sda* davon unberührt bleibt.

Ich nutze schon lange spacefm mit udevil, da kann man das bequem in udevil.conf einrichten.
Leider wollen die anderen Dateimanager udisks2 haben. Ärgerlich eigentlich, da udevil um Klassen besser ist.

Edit:
Mir ging es nur um die Rule, @detixens Beitrag ist aber ausführlicher.

Benutzeravatar
detix
Beiträge: 1705
Registriert: 07.02.2007 18:51:28
Wohnort: MK

Re: udev-regel funktioniert nicht mehr wie geplant

Beitrag von detix » 08.06.2019 14:15:12

Da war doch vorhin noch ein Post von @willy4711, wo ist der denn hin?
Gruß an alle Debianer, und immer daran denken:
Macht ohne Haftung funktioniert nicht!

willy4711

Re: udev-regel funktioniert nicht mehr wie geplant

Beitrag von willy4711 » 08.06.2019 14:51:53

detix hat geschrieben: ↑ zum Beitrag ↑
08.06.2019 14:15:12
Da war doch vorhin noch ein Post von @willy4711, wo ist der denn hin?
Hat sich selbst zensiert :mrgreen: ---> passte nicht

Benutzeravatar
detix
Beiträge: 1705
Registriert: 07.02.2007 18:51:28
Wohnort: MK

Re: udev-regel funktioniert nicht mehr wie geplant

Beitrag von detix » 08.06.2019 14:57:25

Ach so, ok!
Gruß an alle Debianer, und immer daran denken:
Macht ohne Haftung funktioniert nicht!

Benutzeravatar
Taomon
Beiträge: 627
Registriert: 08.03.2011 16:34:38
Lizenz eigener Beiträge: GNU Free Documentation License

Re: udev-regel funktioniert nicht mehr wie geplant

Beitrag von Taomon » 08.06.2019 16:25:39

Ich hab jetzt mal udevadm rüber gejagt. Da ist kein schlüssel mehr für label. Also diesen Part

Code: Alles auswählen

{ID_FS_LABEL}=="debianhome"
hier. Deshalb greift die Regel nicht mehr und alles wir direkt in /media reingehauen.

Code: Alles auswählen

root@Taomon:/home/alex# lsblk -f
NAME   FSTYPE LABEL      UUID                                 MOUNTPOINT
sda                                                           
├─sda1 ext4              88411b09-1aaa-4775-9fc7-f60041049d6c /
└─sda2 swap              c3c5da03-36db-4ad5-8817-05215fe43b6d 
sdb                                                           
├─sdb1 ext4              0ddc8e0a-4b8a-479c-9502-5478ed3c4036 
├─sdb2 swap              927f38a0-c962-47de-9361-f1730032704e [SWAP]
└─sdb3 ext4              1ebf0f02-cdd8-44d9-80f9-7078de79e191 /home
sdc                                                           
├─sdc1 ext4   dvd        bebbe226-5520-4c35-ad48-69903210cacd /media/dvd
├─sdc2 ext4   debianhome e9c0b380-4da6-4a5b-8f1b-eac242822277 /media/debianhome
└─sdc3 ext4   debianroot 0ba93c77-0922-4d1f-b0a1-95acc4fd87e6 /media/debianroot
root@Taomon:/home/alex# 
Die Partionen sind aber gelabelt. Muß ich das jetzt verstehen? :facepalm: NoPaste-Eintrag40763 Zumindest das Backup läuft perfekt.

Funktionieren solche längeren RUN+ Anweisungen noch mit udev? Ich glaub mich dunkel zu erinnern, das sowas seit Jessie nicht mehr geht.

Gruß Taomon
Bitte gelegentliche Schreibfehler übersehen. Ich habe ADHS. Danke.

Benutzeravatar
detix
Beiträge: 1705
Registriert: 07.02.2007 18:51:28
Wohnort: MK

Re: udev-regel funktioniert nicht mehr wie geplant

Beitrag von detix » 08.06.2019 18:42:37

Du bist dir bzgl. deiner „Labelung” sicher?
Hier sieht es so aus (egal ob lsblk als user oder root ausgeführt wird):

Code: Alles auswählen

lsblk -f #stretch auf sda1 ist mittlerweile die falsche Bezeichnung, ist auch buster:
sda
├─sda1 ext4   stretch_sda1  b5904eee-a61a-40a2-a2a0-9ff6e4a12abc   40,1G    37% /
├─sda2 ext4   buster_sda2   981c75e6-8ba0-4d97-84d6-f49d5d2c5d7e
...
└─sda5 ext4   backup_sda5   01f145dc-92cd-434e-a42d-f6db7a316226
sdb
└─sdb1 ext4   backup_usb_hd 59912a04-fe36-445a-b3bc-f7fc4b25ebd3
und RUN+= in udev funktioniert weiterhin... 8O
Gruß an alle Debianer, und immer daran denken:
Macht ohne Haftung funktioniert nicht!

Benutzeravatar
Taomon
Beiträge: 627
Registriert: 08.03.2011 16:34:38
Lizenz eigener Beiträge: GNU Free Documentation License

Re: udev-regel funktioniert nicht mehr wie geplant

Beitrag von Taomon » 08.06.2019 19:00:15

Ja ich bin mir sicher mit der Labelung. Es wird ja der Label-Name beim mounten angezeigt, halt bloß im Falschen Verzeichnis. Und dies

Code: Alles auswählen

ID_FS_LABEL=="debianhome"
wurde mir damals bei der Abfrage mit udevam angezeigt. Und das taucht nicht mehr auf.

Da ich selten Backup mache, soviel ändert sich bei mir nicht im /home, weiß ich nicht seit wann. Ich werde nochmal Labeln und schauen, ob es dann wieder so geht wie ich das gerne hätte.

Gruß Taomon
Bitte gelegentliche Schreibfehler übersehen. Ich habe ADHS. Danke.

Benutzeravatar
detix
Beiträge: 1705
Registriert: 07.02.2007 18:51:28
Wohnort: MK

Re: udev-regel funktioniert nicht mehr wie geplant

Beitrag von detix » 09.06.2019 07:49:04

Du scheinst udevadm mit den falschen Parametern zu benutzen, hier:

Code: Alles auswählen

udevadm info --name=/dev/sdb1 --query=property | grep ID_FS_L
ID_FS_LABEL=backup_usb_hd
ID_FS_LABEL_ENC=backup_usb_hd

# oder:
udevadm info /sys/class/block/sdb1 --query=property | grep ID_FS_L
ID_FS_LABEL=backup_usb_hd
ID_FS_LABEL_ENC=backup_usb_hd

# aber keine Ausgabe bei:
udevadm info /sys/class/block/sdb1 --attribute-walk | grep ID_FS_L
udevadm info /sys/class/block/sdb1 --attribute-walk | grep backup
Gruß an alle Debianer, und immer daran denken:
Macht ohne Haftung funktioniert nicht!

Benutzeravatar
Taomon
Beiträge: 627
Registriert: 08.03.2011 16:34:38
Lizenz eigener Beiträge: GNU Free Documentation License

Re: udev-regel funktioniert nicht mehr wie geplant

Beitrag von Taomon » 09.06.2019 09:20:42

Es tut mir leid, mein Fehler. Da hat eine andere udev-regel zwischen gegrätscht.
Eigentlich wollte ich die mal in ein anderes Verzeichnis verschieben und dabei umbenennen. Nur umbenannt.
Hab ich nicht aufgepaßt. :roll:

Gruß Taomon
Bitte gelegentliche Schreibfehler übersehen. Ich habe ADHS. Danke.

Antworten