Diese Website existiert nur weil wir Werbung mit AdSense ausliefern.
Bitte den AdBlocker daher auf dieser Website ausschalten! Danke.

Mount USB-Device: Aufwecken unbeteiligter HDDs vermeiden

Alles rund um die Systemverwaltung, die Administration und Konfiguration Eures Linuxsystems

Moderator: Moderatoren

Gräfin Klara
Hacker
Hacker
Beiträge: 676
Registriert: 23. Jun 2008, 20:51

Re: Mount USB-Device: Aufwecken unbeteiligter HDDs vermeiden

Beitrag von Gräfin Klara »

Christina hat geschrieben: 26. Nov 2021, 13:28

Code: Alles auswählen

systemctl stop udisks2.service
… entfernt das USB-Laufwerk TOSHIBA7 vom XFCE-Desktop und aus dem Thunar-Filemanager.
Das USB-Pendrive bleibt aber unter /run/media/{user}/TOSHIBA7 eingehängt, und ein Zugriff auf eine Datei ist möglich.
Das ist der erste bug.
udisks2 DARF bei stop keine D-Bus messages absetzen!
Stop an udisks2 bedeutet ja nicht, dass sich am device_status etwas geändert hat.
udisks2 darf NUR, wenn udevd das auch so bekannt gibt (siehe Erklärung oben)
Christina hat geschrieben: 26. Nov 2021, 13:28

Code: Alles auswählen

umount /dev/sdh1
hängt das USB-Laufwerk aus. Die HDD (/dev/sdb) bleibt jetzt im Standby.
Damit haben wir ja den Übeltäter, es ist udisks2.
Wahrscheinlich ein Produkt von systemd.
Wenn es systemische Probleme gibt, liegt es mit 90%er Sicherheit an systemd.

Wie oben beschrieben, erzeugt udisks2 (nennen wir ihn udiskd) zwei events, obwohl von udevd nur einer gemeldet.
Versuche den event "FileSystem_changed" per Konfig. abzustellen.
Den braucht niemand und falsch ist er in diesem Fall obendrein.
Dieser udiskd sollte sich ja konfigurieren lassen.
Wie und ob das geht, das weiß ich nicht, weil ich weder systemd noch irgendeinen udiskd verwende.
Christina
Member
Member
Beiträge: 225
Registriert: 4. Mär 2019, 13:44

Re: Mount USB-Device: Aufwecken unbeteiligter HDDs vermeiden

Beitrag von Christina »

Gräfin Klara hat geschrieben: 26. Nov 2021, 15:18 Wie oben beschrieben, erzeugt udisks2 (nennen wir ihn udiskd) zwei events, obwohl von udevd nur einer gemeldet.
Versuche den event "FileSystem_changed" per Konfig. abzustellen.
"FileSystem_changed" taucht leider gar nicht auf; nur "Properties Changed".

Unter XFCE kann man den Auto-Mount auch abschalten:
✅ Hotplug-Wechsellaufwerke automatisch einhängen
✅ Wechselmedien beim Einlegen einhängen
Beides deaktiviere ich. Stecke ich nun ein USB-Flashdrive ein, bleibt die SATA-HDD im Standby:

Code: Alles auswählen

$ udisksctl monitor
Monitoring the udisks daemon. Press Ctrl+C to exit.
19:45:57.573: The udisks-daemon is running (name-owner :1.89).
19:46:06.537: Added /org/freedesktop/UDisks2/drives/USB_SanDisk_3_2e2Gen1_0101a0177c2804bcb5a3e4d51bc3111a01c659be2eff995a0528937bc261f69fbbc700000000000000000000b0ed66efff141c0091558107822a0243
  org.freedesktop.UDisks2.Drive:
    CanPowerOff:                true
    Configuration:              {}
    ConnectionBus:              usb
    Ejectable:                  true
    Id:                         USB-SanDisk-3.2Gen1-0101a0177c2804bcb5a3e4d51bc3111a01c659be2eff995a0528937bc261f69fbbc700000000000000000000b0ed66efff141c0091558107822a0243
    Media:                      
    MediaAvailable:             true
    MediaChangeDetected:        true
    MediaCompatibility:         
    MediaRemovable:             true
    Model:                      SanDisk 3.2Gen1
    Optical:                    false
    OpticalBlank:               false
    OpticalNumAudioTracks:      0
    OpticalNumDataTracks:       0
    OpticalNumSessions:         0
    OpticalNumTracks:           0
    Removable:                  true
    Revision:                   1.00
    RotationRate:               -1
    Seat:                       seat0
    Serial:                     0101a0177c2804bcb5a3e4d51bc3111a01c659be2eff995a0528937bc261f69fbbc700000000000000000000b0ed66efff141c0091558107822a0243
    SiblingId:                  /sys/devices/pci0000:00/0000:00:14.0/usb2/2-2/2-2:1.0
    Size:                       61530439680
    SortKey:                    01hotplug/1637952366535282
    TimeDetected:               1637952366535282
    TimeMediaDetected:          1637952366535282
    Vendor:                     USB
    WWN:                        
19:46:06.538: Added /org/freedesktop/UDisks2/block_devices/sdh
  org.freedesktop.UDisks2.Block:
    Configuration:              []
    CryptoBackingDevice:        '/'
    Device:                     /dev/sdh
    DeviceNumber:               2160
    Drive:                      '/org/freedesktop/UDisks2/drives/USB_SanDisk_3_2e2Gen1_0101a0177c2804bcb5a3e4d51bc3111a01c659be2eff995a0528937bc261f69fbbc700000000000000000000b0ed66efff141c0091558107822a0243'
    HintAuto:                   true
    HintIconName:               
    HintIgnore:                 false
    HintName:                   
    HintPartitionable:          true
    HintSymbolicIconName:       
    HintSystem:                 false
    Id:                         
    IdLabel:                    
    IdType:                     
    IdUUID:                     
    IdUsage:                    
    IdVersion:                  
    MDRaid:                     '/'
    MDRaidMember:               '/'
    PreferredDevice:            /dev/sdh
    ReadOnly:                   false
    Size:                       61530439680
    Symlinks:                   /dev/disk/by-id/usb-USB_SanDisk_3.2Gen1_0101a0177c2804bcb5a3e4d51bc3111a01c659be2eff995a0528937bc261f69fbbc700000000000000000000b0ed66efff141c0091558107822a0243-0:0
                                /dev/disk/by-path/pci-0000:00:14.0-usb-0:2:1.0-scsi-0:0:0:0
    UserspaceMountOptions:      
  org.freedesktop.UDisks2.PartitionTable:
    Partitions:         []
    Type:               dos
19:46:06.570: Added /org/freedesktop/UDisks2/block_devices/sdh1
  org.freedesktop.UDisks2.Block:
    Configuration:              []
    CryptoBackingDevice:        '/'
    Device:                     /dev/sdh1
    DeviceNumber:               2161
    Drive:                      '/org/freedesktop/UDisks2/drives/USB_SanDisk_3_2e2Gen1_0101a0177c2804bcb5a3e4d51bc3111a01c659be2eff995a0528937bc261f69fbbc700000000000000000000b0ed66efff141c0091558107822a0243'
    HintAuto:                   true
    HintIconName:               
    HintIgnore:                 false
    HintName:                   
    HintPartitionable:          true
    HintSymbolicIconName:       
    HintSystem:                 false
    Id:                         by-uuid-7FBD-A769
    IdLabel:                    Nicole
    IdType:                     exfat
    IdUUID:                     7FBD-A769
    IdUsage:                    filesystem
    IdVersion:                  1.0
    MDRaid:                     '/'
    MDRaidMember:               '/'
    PreferredDevice:            /dev/sdh1
    ReadOnly:                   false
    Size:                       61529391104
    Symlinks:                   /dev/disk/by-id/usb-USB_SanDisk_3.2Gen1_0101a0177c2804bcb5a3e4d51bc3111a01c659be2eff995a0528937bc261f69fbbc700000000000000000000b0ed66efff141c0091558107822a0243-0:0-part1
                                /dev/disk/by-label/Nicole
                                /dev/disk/by-partuuid/d45432b0-01
                                /dev/disk/by-path/pci-0000:00:14.0-usb-0:2:1.0-scsi-0:0:0:0-part1
                                /dev/disk/by-uuid/7FBD-A769
    UserspaceMountOptions:      
  org.freedesktop.UDisks2.Filesystem:
    MountPoints:        
    Size:               0
  org.freedesktop.UDisks2.Partition:
    Flags:              0
    IsContained:        false
    IsContainer:        false
    Name:               
    Number:             1
    Offset:             1048576
    Size:               61529391104
    Table:              '/org/freedesktop/UDisks2/block_devices/sdh'
    Type:               0x07
    UUID:               d45432b0-01
19:46:06.570: /org/freedesktop/UDisks2/block_devices/sdh: org.freedesktop.UDisks2.PartitionTable: Properties Changed
  Partitions:           ['/org/freedesktop/UDisks2/block_devices/sdh1']
Ich warte eine Minute und klicke anschließend in Thunar das USB-Laufwerk an, wodurch die SATA-HDD aufgeweckt wird:

Code: Alles auswählen

$ udisksctl monitor
Monitoring the udisks daemon. Press Ctrl+C to exit.
16:35:30.032: The udisks-daemon is running (name-owner :1.89).
16:35:53.475: Added /org/freedesktop/UDisks2/jobs/11
  org.freedesktop.UDisks2.Job:
    Bytes:              0
    Cancelable:         true
    ExpectedEndTime:    0
    Objects:            ['/org/freedesktop/UDisks2/block_devices/sdh1']
    Operation:          filesystem-mount
    Progress:           0.0
    ProgressValid:      false
    Rate:               0
    StartTime:          1637940953473543
    StartedByUID:       0
16:35:53.534: /org/freedesktop/UDisks2/block_devices/sdh1: org.freedesktop.UDisks2.Filesystem: Properties Changed
  MountPoints:          /run/media/julia/Nicole
16:35:53.538: /org/freedesktop/UDisks2/jobs/11: org.freedesktop.UDisks2.Job::Completed (true, '')
16:35:53.538: Removed /org/freedesktop/UDisks2/jobs/11
16:35:57.275: /org/freedesktop/UDisks2/block_devices/sdh1: org.freedesktop.UDisks2.Block: Properties Changed
  UserspaceMountOptions:        uhelper=udisks2
Gräfin Klara hat geschrieben: 26. Nov 2021, 15:18 Dieser udiskd sollte sich ja konfigurieren lassen.
Wie und ob das geht, das weiß ich nicht, weil ich weder systemd noch irgendeinen udiskd verwende.
Vielleicht hilft Kapitel I hier weiter und du hast einen Tipp für mich: http://storaged.org/doc/udisks2-api/latest/
Zuletzt geändert von Christina am 26. Nov 2021, 23:08, insgesamt 1-mal geändert.
josef-wien
Ultimate Guru
Ultimate Guru
Beiträge: 5683
Registriert: 23. Sep 2008, 17:09

Re: Mount USB-Device: Aufwecken unbeteiligter HDDs vermeiden

Beitrag von josef-wien »

Christina hat geschrieben:Beides deaktiviere ich. Stecke ich nun ein USB-Flashdrive ein, bleibt die SATA-HDD im Standby
Das ist logisch, denn noch hat XFCE bzw. dessen Dateimanager udisks2 noch nicht beauftragt, das passiert erst durch:
Christina hat geschrieben:klicke anschließend in Thunar das USB-Laufwerk an

Gibt es in den Dateien der Verzeichnisse /etc/udev/rules.d und /etc/udisks2 "verdächtige" Eintragungen, die bei Dir nicht vorhanden sind?


Eine ganz ausgefallene Idee (als root):

Code: Alles auswählen

hexdump -C /run/udisks2/mounted-fs
Und noch eine (ohne USB-Medium):

Code: Alles auswählen

readlink -e /dev/disk/by-label/Nicole
terceiro
Newbie
Newbie
Beiträge: 4
Registriert: 26. Nov 2021, 09:50
Wohnort: 50° 37‘ 30 N 5° 35‘ 26.52 E

Re: Mount USB-Device: Aufwecken unbeteiligter HDDs vermeiden

Beitrag von terceiro »

Christina hat geschrieben: 26. Nov 2021, 13:28 @terceiro
Es gibt kleine Unterschiede in /usr/lib/udev/rules.d/ zwischen der Leap 15.3 Neuinstallation und dem Online-Upgrade von Leap 15.2 → 15.3. Ob die relevant sind, kann ich nicht sagen.
Siehe: https://paste.opensuse.org/89375626 – Einfach mal z.B. mit Meld (visual diff and merge tool) vergleichen.
Bonjour

Schade, die Unterschiede sind wenn ich das richtig interpretiere marginal und dürften da nichts reinbringen das dies zustande bringt.

Nur eine Sache die mir gerade einfällt auch wen diese eventuell nichtssagend ist.
Gibt ein.

Code: Alles auswählen

systemctl status udisks2.service
Auf dem Neuinstallierten und Upgrade unterschiedliche Ausgaben ?

Sollte ich das überlesen haben.

Pardon.

au revoir
Gräfin Klara
Hacker
Hacker
Beiträge: 676
Registriert: 23. Jun 2008, 20:51

Re: Mount USB-Device: Aufwecken unbeteiligter HDDs vermeiden

Beitrag von Gräfin Klara »

Christina hat geschrieben: 26. Nov 2021, 20:00 "FileSystem_changed" taucht leider gar nicht auf; nur "Properties Changed".
"Properties Changed" ist in der URI des D-Bus ein übergeordneter Begriff für
"Irgendwas hat sich geändert" und steht dort als Argument.
Die URI selbst ist Teil einer D-Bus Anweisung. Eine solche Anweisung (the complete message) sieht so aus:
URL:URI:Argument (getrennt mit ':')
Beispiel:
/org/freedesktop/UDisks2/block_devices/sdh1 : org.freedesktop.UDisks2.Block : Properties Changed
Die URL adressiert die betroffene unit (in dem Fall ein Block_device)
Uns interessiert aber nur die URI, weil nur diese die relevanten Informationen enthält.

Die D-Bus URI ist folgend aufgebaut:
Globaler_Zuständigkeitsbereich.Wer_ist_der_Sender.Welchen_Bereich_betrifft_es : Das_Argument
Beispiel für: Block_Device_Changed
org.freedesktop.UDisks2.Block: Properties Changed
Beispiel für: Filesystem_Changed:
org.freedesktop.UDisks2.Filesystem: Properties Changed
Christina hat geschrieben: 26. Nov 2021, 20:00 Ich warte eine Minute und klicke anschließend in Thunar das USB-Laufwerk an, wodurch die SATA-HDD aufgeweckt wird:
Du stellst die Fehlersuche nun auf den Kopf und machst die Sache unnötig kompliziert.
Beispiel: button am thunar > umount device > klick

Code: Alles auswählen


          |
 kernel <-|<-----[udiskd]<-----D-Bus---<[thunar # Klick umount device ]
   |      |        
   +----->|----->[udevd]--->[udiskd]---D-Bus--->[thunar und alle anderen, die mit Block_devices zu tun haben]

Unser Verdächtiger udiskd ist hier 2x involviert.
Wir hatten ja eigentlich nur das umount zur Testung vorgesehen.
Beispiel umount aus der Konsole sieht so aus:

Code: Alles auswählen

 kernel <-|<-----# umount /dev/sdxx
   |      |        
   +----->|----->[udevd]--->[udiskd]---D-Bus---->[thunar und alle anderen, die mit Block_devices zu tun haben]
In dieser Konstellation hattest du udiskd abgeschalten und das Problem war weg.

Warum?
Mein Verdacht ist, dass dieser event "Filesystem_changed" die Platte aufwachen läßt.
Dieser event ist hier sinnlos und triggert alle Block_devices. (So mein Verdacht)
Versuche den abzustellen, dann wissen wir mehr.
Auch die Resultate der vorgeschlagenen Tests von @josef-wien wären sehr informativ für die Problemsuche.
Christina
Member
Member
Beiträge: 225
Registriert: 4. Mär 2019, 13:44

Re: Mount USB-Device: Aufwecken unbeteiligter HDDs vermeiden

Beitrag von Christina »

Gräfin Klara hat geschrieben: 27. Nov 2021, 11:55
Christina hat geschrieben: 26. Nov 2021, 20:00 "FileSystem_changed" taucht leider gar nicht auf; nur "Properties Changed".
"Properties Changed" ist in der URI des D-Bus ein übergeordneter Begriff für
"Irgendwas hat sich geändert" und steht dort als Argument.
(…)
Du stellst die Fehlersuche nun auf den Kopf und machst die Sache unnötig kompliziert.
Properties Changed taucht in beiden Ausgaben (oben) auf, deswegen diese extra Anmerkung von mir.
 
Gräfin Klara hat geschrieben: 27. Nov 2021, 11:55 Mein Verdacht ist, dass dieser event "Filesystem_changed" die Platte aufwachen läßt.
Dieser event ist hier sinnlos und triggert alle Block_devices. (So mein Verdacht)
Versuche den abzustellen, dann wissen wir mehr.
Vielen Dank für die anschauliche Erklärung, aber beim "Abstellen" müsste mir jemand sagen, wie.
Resultate der vorgeschlagenen Tests von @josef-wien:
Mit USB-Pendrive *not* mounted:

Code: Alles auswählen

$ hexdump -C /run/udisks2/mounted-fs
hexdump: /run/udisks2/mounted-fs: No such file or directory
hexdump: all input file arguments failed
$
$ readlink -e /dev/disk/by-label/Nicole
/dev/sdh1
$
Mit USB-Pendrive mounted:

Code: Alles auswählen

$ hexdump -C /run/udisks2/mounted-fs
00000000  2f 72 75 6e 2f 6d 65 64  69 61 2f 6a 75 6c 69 61  |/run/media/julia|
00000010  2f 4e 69 63 6f 6c 65 00  00 00 00 00 00 00 62 6c  |/Nicole.......bl|
00000020  6f 63 6b 2d 64 65 76 69  63 65 00 00 00 00 71 08  |ock-device....q.|
00000030  00 00 00 00 00 00 00 74  0d 00 00 00 00 00 6d 6f  |.......t......mo|
00000040  75 6e 74 65 64 2d 62 79  2d 75 69 64 00 00 e8 03  |unted-by-uid....|
00000050  00 00 00 75 0f 00 66 73  74 61 62 2d 6d 6f 75 6e  |...u..fstab-moun|
00000060  74 00 00 00 00 00 00 00  62 0c 1b 37 4c 1a 70 0a  |t.......b..7L.p.|
00000070
$
$ readlink -e /dev/disk/by-label/Nicole
/dev/sdh1
$
Mit USB-Pendrive unmounted: (mounted-fs = leere Datei = 0 Bytes)

Code: Alles auswählen

$ hexdump -C /run/udisks2/mounted-fs
$
$ readlink -e /dev/disk/by-label/Nicole
/dev/sdh1
$
USB-Pendrive ejected ⏏:
mounted-fs = leere Datei = 0 Bytes; /dev/disk/by-label/Nicole existiert nicht mehr

Code: Alles auswählen

$ hexdump -C /run/udisks2/mounted-fs
$
$ readlink -e /dev/disk/by-label/Nicole
$
 
josef-wien hat geschrieben: 26. Nov 2021, 22:36 Gibt es in den Dateien der Verzeichnisse /etc/udev/rules.d und /etc/udisks2 "verdächtige" Eintragungen, die bei Dir nicht vorhanden sind?
/etc/udisks2/ enthält (jeweils) nur eine von mir angelegte Datei für die SATA-HDD unter /dev/sdb:

Code: Alles auswählen

$ cat /etc/udisks2/ST1000DM003-1CH163-Z1DBGG5R.conf 
# See udisks(8) for the format of this file.

[ATA]
StandbyTimeout=96
APMLevel=128
/etc/udev/rules.d/ enthält (jeweils):

Code: Alles auswählen

 ll /etc/udev/rules.d/
total 332
-rw-r--r-- 1 root root 257841 Feb 25  2021 55-libsane.rules
-rw-r--r-- 1 root root  69323 Feb 25  2021 56-sane-backends-autoconfig.rules
-rw-r--r-- 1 root root    628 Aug 17  2020 70-persistent-ipoib.rules
-rw-r--r-- 1 root root    631 Nov  1 13:49 70-persistent-net.rules
-rw-r--r-- 1 root root   1989 Nov  5 20:31 99-PowerManagement.rules
Nur (jeweils) 99-PowerManagement.rules stammt von mir (Quelle aus dem www):

Code: Alles auswählen

$ cat /etc/udev/rules.d/99-PowerManagement.rules
  
# SATA Link Power Management
KERNEL=="host?*", SUBSYSTEM=="scsi_host", ACTION=="add", TEST=="link_power_management_policy", ATTR{link_power_management_policy}="med_power_with_dipm"

# Runtime PM for PCI Device
KERNEL=="0000:??:??.?", SUBSYSTEM=="pci", ACTION=="add", TEST=="power/control", ATTR{power/control}="auto"
 
terceiro hat geschrieben: 27. Nov 2021, 06:57 Gibt ein.

Code: Alles auswählen

systemctl status udisks2.service
Auf dem Neuinstallierten und Upgrade unterschiedliche Ausgaben ?
Nein.
Zuletzt geändert von Christina am 27. Nov 2021, 13:01, insgesamt 1-mal geändert.
Gräfin Klara
Hacker
Hacker
Beiträge: 676
Registriert: 23. Jun 2008, 20:51

Re: Mount USB-Device: Aufwecken unbeteiligter HDDs vermeiden

Beitrag von Gräfin Klara »

Probier folgendes, sofern möglich.
umount ALLE Partitionen der Platte, die unnötigerweise geweckt wird.
Danach schlafen legen.
# mount/umount deine_usb
Wacht sie auf?
Christina
Member
Member
Beiträge: 225
Registriert: 4. Mär 2019, 13:44

Re: Mount USB-Device: Aufwecken unbeteiligter HDDs vermeiden

Beitrag von Christina »

Gräfin Klara hat geschrieben: 27. Nov 2021, 13:00 umount ALLE Partitionen der Platte, die unnötigerweise geweckt wird.
Danach schlafen legen.
# mount/umount deine_usb
Alles per ssh und Telefon:

Code: Alles auswählen

$ umount /dev/sdb1
$ mount | grep '/dev/sd*'
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
/dev/sda1 on / type ext4 (rw,relatime)
/dev/sda3 on /home type ext4 (rw,relatime)
$  hdparm -y /dev/sdb

/dev/sdb:
 issuing standby command
USB-Thumbdrive einstecken & Mounten weckt die HDD (sdb) auf.
USB-Thumbdrive auswerfen ⏏ weckt die HDD (sdb) auf.
Gräfin Klara
Hacker
Hacker
Beiträge: 676
Registriert: 23. Jun 2008, 20:51

Re: Mount USB-Device: Aufwecken unbeteiligter HDDs vermeiden

Beitrag von Gräfin Klara »

Ich werde mir die sources ansehen.
Welche Version hat dein udiskd?
Christina
Member
Member
Beiträge: 225
Registriert: 4. Mär 2019, 13:44

Re: Mount USB-Device: Aufwecken unbeteiligter HDDs vermeiden

Beitrag von Christina »

Die "latest Version 2.9.4" gibt es nur in einem Home-Repo: http://download.opensuse.org/repositori ... Zer0/15.3/
 (Danke @josef-wien für den Hinweis.)
openSUSE Leap 15.3 verwendet offiziell noch die Version 2.8.1.
Vielen Dank schon mal fürs Ansehen! Das ist ja nicht selbstverständlich.👍
Gräfin Klara
Hacker
Hacker
Beiträge: 676
Registriert: 23. Jun 2008, 20:51

Re: Mount USB-Device: Aufwecken unbeteiligter HDDs vermeiden

Beitrag von Gräfin Klara »

Ich habe etwas entdeckt.
Die Verifizierung, ob das wirklich der Grund des Problems ist, ist ausständig.
Prüfen kann ich es nicht.

Version udisks 2.8.1 dürfte eine Suse Versionierung sein. Deshalb habe ich mir 2.8.2 angesehen.

In udisksata wird nach jeder Aktion, die das fs betrifft, wie z.B. mount, ein fs_dump auf allen
sata block devices durchgeführt, das wiederum einen event auslöst.
Dieses dump betrifft aber nur ext_fs. Natürlich hebt dieser Vorgang das suspend auf.

Ob ich richtig liege, könnte man prüfen,
1. indem sich auf keiner partition deiner /dev/sdb ein ext_fs befindet.
Danach testen. Ob das möglich ist, weiß ich nicht.
oder
2, Ab Version udisks 2.9.0 und > wurde fs_dump entfernt.
Wie man ein solches update von udisks realisieren kann, wissen hier die suse Experten.

Ohne Gewähr! Die Wahrscheinlichkeit ist aber ziemlich hoch.
josef-wien
Ultimate Guru
Ultimate Guru
Beiträge: 5683
Registriert: 23. Sep 2008, 17:09

Re: Mount USB-Device: Aufwecken unbeteiligter HDDs vermeiden

Beitrag von josef-wien »

Es paßt nicht damit zusammen, daß der Fehler mit der Aktualisierung von 15.1 auf 15.2 entstanden und bei der Aktualisierung von 15.2 auf 15.3 geblieben ist, während er bei einer Neuinstallation von 15.3 nicht auftritt.

An Christina: Hast Du Dich bei der Neuinstallation für andere Dateisysteme entschieden? Ich würde bei Nicole auf die neuesten udisks-Pakete umstellen und schauen, ob das Problem verschwindet. Wie ich libzypp einschätze, wirst Du gegebenenfalls problemlos mit YaST oder zypper auf die Pakete aus dem oss-Repo zurücksteigen können.

P. S. In /src/udisksata.c gibt es 1 unterschiedliche Zeile:
2.8.1: rc = ioctl(fd, SG_IO, &io_hdr);
2.9.4: rc = ioctl (fd, SG_IO, &io_hdr);
Als Laie sieht mir das nach Kosmetik aus. In /src/udisksata.h gibt es nur 1 geänderte Kommentarzeile.
(http://download.opensuse.org/source/dis ... 39.src.rpm bzw.
http://download.opensuse.org/repositori ... .1.src.rpm,
entpacken mit "unp dateiname" oder "rpm2cpio dateiname | cpio -idv")
Christina
Member
Member
Beiträge: 225
Registriert: 4. Mär 2019, 13:44

Re: Mount USB-Device: Aufwecken unbeteiligter HDDs vermeiden

Beitrag von Christina »

Gräfin Klara hat geschrieben: 27. Nov 2021, 16:02 Version udisks 2.8.1 dürfte eine Suse Versionierung sein. Deshalb habe ich mir 2.8.2 angesehen.

In udisksata wird nach jeder Aktion, die das fs betrifft, wie z.B. mount, ein fs_dump auf allen
sata block devices durchgeführt, das wiederum einen event auslöst.
Dieses dump betrifft aber nur ext_fs. Natürlich hebt dieser Vorgang das suspend auf.
Da liegst du richtig!
Ich hatte zwar einen Logger nach dieser Anleitung erstellt (siehe auch 1. Post),
 Why is dumpe2fs called without user interaction?
aber offenbar wird dumpe2fs über den realen Pfad in /usr/sbin/ aufgerufen, statt aus /sbin/, in dem nur ein Link liegt.
Geprüft hatte ich das lediglich per:

Code: Alles auswählen

$ which dumpe2fs
/sbin/dumpe2fs
Hier wurde aber auch geschrieben:"I cannot confirm that the commands mount/umount do trigger a dumpe2fs on all devices."
Ubuntu 18.04 mount/umount causes drives resume from standby state
Tja, das war mein Fehler, denn jetzt mit dem Logger in /usr/sbin/ bekomme ich die Log-Datei mit drei dumpe2fs-Aufrufen:
/var/log/dumpe2fs-search.log hat geschrieben:

Code: Alles auswählen

dumpe2fs -h /dev/sda3
Sat Nov 27 17:39:34 CET 2021
systemd-+-ModemManager---2*[{ModemManager}]
        |-NetworkManager-+-dhclient
…
dumpe2fs -h /dev/sdb1
Sat Nov 27 17:39:34 CET 2021
systemd-+-ModemManager---2*[{ModemManager}]
        |-NetworkManager-+-dhclient
…
dumpe2fs -h /dev/sda1
Sat Nov 27 17:39:34 CET 2021
systemd-+-ModemManager---2*[{ModemManager}]
        |-NetworkManager-+-dhclient
…
Also genügt es, wenn ich das Dateisystem in /dev/sdb1 von ext4 z.B. nach xfs ändere.
Oder lässt sich auch der Aufruf von dumpe2fs durch udisks2 abstellen? — Das Überbleibsel von Leap 15.2!

Wenn ich dumpe2fs einfach umbenenne – z.B. nach _dumpe2fs – klappt das schon: Die HDD bleibt im Standby. dumpe2fs ist Bestandteil der e2fsprogs und würde mit dem nächsten Update aber wieder installiert.
 
josef-wien hat geschrieben: 27. Nov 2021, 17:18An Christina: Hast Du Dich bei der Neuinstallation für andere Dateisysteme entschieden?
Nein, ich verwende immer nur ext4fs.
Für die HDD (sdb1) gebe ich bei der Neuinstallation nur den Mountpoint /home/public an.
Zuletzt geändert von Christina am 27. Nov 2021, 18:38, insgesamt 1-mal geändert.
Gräfin Klara
Hacker
Hacker
Beiträge: 676
Registriert: 23. Jun 2008, 20:51

Re: Mount USB-Device: Aufwecken unbeteiligter HDDs vermeiden

Beitrag von Gräfin Klara »

Du machst das sehr gut!
Christina hat geschrieben: 27. Nov 2021, 18:04

Code: Alles auswählen

dumpe2fs -h /dev/sdb1
Sat Nov 27 17:39:34 CET 2021
systemd-+-ModemManager---2*[{ModemManager}]
        |-NetworkManager-+-dhclient
Das ist er! Hier wacht er auf
Christina hat geschrieben: 27. Nov 2021, 18:04 Also genügt es, wenn ich das Dateisystem in /dev/sdb1 von ext4 z.B. nach xfs ändere.
Sollte genügen .. oder update.
In neueren Versionen ist dieser Quargel nicht mehr zu finden
Christina hat geschrieben: 27. Nov 2021, 18:04 Oder lässt sich auch der Aufruf von dumpe2fs durch udisks2 abstellen?
Müsste man im source ändern . Auswirkung auf Funktionalität unbekannt.
Zu großer Aufwand
Christina
Member
Member
Beiträge: 225
Registriert: 4. Mär 2019, 13:44

Re: Mount USB-Device: Aufwecken unbeteiligter HDDs vermeiden

Beitrag von Christina »

Gräfin Klara hat geschrieben: 27. Nov 2021, 18:38Zu großer Aufwand
Du meinst, das Überbleibsel von Leap 15.2 nach dem Upgrade auf 15.3 zu finden?
Gräfin Klara
Hacker
Hacker
Beiträge: 676
Registriert: 23. Jun 2008, 20:51

Re: Mount USB-Device: Aufwecken unbeteiligter HDDs vermeiden

Beitrag von Gräfin Klara »

Christina hat geschrieben: 27. Nov 2021, 18:40
Gräfin Klara hat geschrieben: 27. Nov 2021, 18:38Zu großer Aufwand
Du meinst, das Überbleibsel von Leap 15.2 nach dem Upgrade auf 15.3 zu finden?
Ich meinte eine Reparatur.
Zu Überbleibseln, Upgrades und sonstigen Mechanismen der Distributionen kann ich nichts schreiben.
Davon habe ich keine Ahnung
Christina
Member
Member
Beiträge: 225
Registriert: 4. Mär 2019, 13:44

Re: Mount USB-Device: Aufwecken unbeteiligter HDDs vermeiden

Beitrag von Christina »

Da kann mir bestimmt jemand anderes hier helfen, welche Dateien ich vergleichen könnte.

Aber du hast über die Versionsnummer ja die Hauptsache gefunden, dass es doch dumpe2fs ist.
Danke dir!
josef-wien
Ultimate Guru
Ultimate Guru
Beiträge: 5683
Registriert: 23. Sep 2008, 17:09

Re: Mount USB-Device: Aufwecken unbeteiligter HDDs vermeiden

Beitrag von josef-wien »

Christina hat geschrieben:Überbleibsel von Leap 15.2 nach dem Upgrade auf 15.3
Der Quellcode der Pakete von 15.2 und 15.3 ist vollkommen identisch. Die beiden spec files unterscheiden sich nur in der Release-Angabe, d. h. Übersetzung und Pakete-Erstellung wurden nach denselben Vorgaben vorgenommen.

Ob da nicht eher von 15.1 etwas störend übriggeblieben ist? Vorläufig fällt mir nichts mehr ein, um dem Phänomen auf die Spur zu kommen.
terceiro
Newbie
Newbie
Beiträge: 4
Registriert: 26. Nov 2021, 09:50
Wohnort: 50° 37‘ 30 N 5° 35‘ 26.52 E

Re: Mount USB-Device: Aufwecken unbeteiligter HDDs vermeiden

Beitrag von terceiro »

Bonjour

Pardon, das ich so frage.

Dump2fs kann aber nicht in Verbindung m it diesem FS und Udisk2 daran schuld sein ?

https://man7.org/linux/man-pages/man8/dumpe2fs.8.html
https://www.mankier.com/5/ext4
https://github.com/storaged-project/udisks/issues/611

Ich bin eher Lernender als Wissender und dieses Thema bringt mich weiter.
Ihr braucht dies nicht zu beantworten ich kann es mir auch ersuchen.




au revoir

/edit:
Merci:

Einige Antworten habe ich schon selbst gefunden.

https://lwn.net/Articles/842385/
https://ext4.wiki.kernel.org/index.php/Ext4_Disk_Layout
https://ext4.wiki.kernel.org/index.php/Main_Page
Christina
Member
Member
Beiträge: 225
Registriert: 4. Mär 2019, 13:44

Re: Mount USB-Device: Aufwecken unbeteiligter HDDs vermeiden

Beitrag von Christina »

josef-wien hat geschrieben: 27. Nov 2021, 17:18 Ich würde bei Nicole auf die neuesten udisks-Pakete umstellen und schauen, ob das Problem verschwindet.
http://download.opensuse.org/repositori ... .1.src.rpm
Hier ist die komplette Ausgabe von zypper:
Problem: siehe: Additional rpm output

Code: Alles auswählen

# zypper dist-upgrade --from home\:\ TruckerZer0
Loading repository data...
Reading installed packages...
Computing distribution upgrade...
4 Problems:
Problem: problem with the installed libudisks2-0-2.8.1-1.39.x86_64
Problem: problem with the installed libudisks2-0_btrfs-2.8.1-1.39.x86_64
Problem: problem with the installed udisks2-2.8.1-1.39.x86_64
Problem: problem with the installed udisks2-lang-2.8.1-1.39.noarch

Problem: problem with the installed libudisks2-0-2.8.1-1.39.x86_64
 Solution 1: install libudisks2-0-2.9.4-lp153.106.1.x86_64 from vendor obs://build.opensuse.org/home:TruckerZer0
  replacing libudisks2-0-2.8.1-1.39.x86_64 from vendor SUSE LLC <https://www.suse.com/>
 Solution 2: keep obsolete libudisks2-0-2.8.1-1.39.x86_64

Choose from above solutions by number or skip, retry or cancel [1/2/s/r/c/d/?] (c): 1

Problem: problem with the installed libudisks2-0_btrfs-2.8.1-1.39.x86_64
 Solution 1: install libudisks2-0_btrfs-2.9.4-lp153.106.1.x86_64 from vendor obs://build.opensuse.org/home:TruckerZer0
  replacing libudisks2-0_btrfs-2.8.1-1.39.x86_64 from vendor SUSE LLC <https://www.suse.com/>
 Solution 2: keep obsolete libudisks2-0_btrfs-2.8.1-1.39.x86_64

Choose from above solutions by number or skip, retry or cancel [1/2/s/r/c/d/?] (c): 1

Problem: problem with the installed udisks2-2.8.1-1.39.x86_64
 Solution 1: install udisks2-2.9.4-lp153.106.1.x86_64 from vendor obs://build.opensuse.org/home:TruckerZer0
  replacing udisks2-2.8.1-1.39.x86_64 from vendor SUSE LLC <https://www.suse.com/>
 Solution 2: keep obsolete udisks2-2.8.1-1.39.x86_64

Choose from above solutions by number or skip, retry or cancel [1/2/s/r/c/d/?] (c): 1

Problem: problem with the installed udisks2-lang-2.8.1-1.39.noarch
 Solution 1: install udisks2-lang-2.9.4-lp153.106.1.noarch from vendor obs://build.opensuse.org/home:TruckerZer0
  replacing udisks2-lang-2.8.1-1.39.noarch from vendor SUSE LLC <https://www.suse.com/>
 Solution 2: keep obsolete udisks2-lang-2.8.1-1.39.noarch

Choose from above solutions by number or skip, retry or cancel [1/2/s/r/c/d/?] (c): 1
Resolving dependencies...
Computing distribution upgrade...

The following 4 packages are going to be upgraded:
  libudisks2-0 libudisks2-0_btrfs udisks2 udisks2-lang

The following 4 packages are going to change vendor:
  libudisks2-0        SUSE LLC <https://www.suse.com/> -> obs://build.opensuse.org/home:TruckerZer0
  libudisks2-0_btrfs  SUSE LLC <https://www.suse.com/> -> obs://build.opensuse.org/home:TruckerZer0
  udisks2             SUSE LLC <https://www.suse.com/> -> obs://build.opensuse.org/home:TruckerZer0
  udisks2-lang        SUSE LLC <https://www.suse.com/> -> obs://build.opensuse.org/home:TruckerZer0

4 packages to upgrade, 4  to change vendor.
Overall download size: 742.1 KiB. Already cached: 0 B. After the operation, additional 820.1 KiB will be used.
Continue? [y/n/v/...? shows all options] (y): 
Retrieving package libudisks2-0-2.9.4-lp153.106.1.x86_64                                                                 (1/4), 220.9 KiB (  1.1 MiB unpacked)
Retrieving: libudisks2-0-2.9.4-lp153.106.1.x86_64.rpm ..................................................................................................[done]
Retrieving package libudisks2-0_btrfs-2.9.4-lp153.106.1.x86_64                                                           (2/4),  40.7 KiB ( 45.1 KiB unpacked)
Retrieving: libudisks2-0_btrfs-2.9.4-lp153.106.1.x86_64.rpm ............................................................................................[done]
Retrieving package udisks2-2.9.4-lp153.106.1.x86_64                                                                      (3/4), 299.7 KiB (  1.1 MiB unpacked)
Retrieving: udisks2-2.9.4-lp153.106.1.x86_64.rpm .......................................................................................................[done]
Retrieving package udisks2-lang-2.9.4-lp153.106.1.noarch                                                                 (4/4), 180.8 KiB (  1.3 MiB unpacked)
Retrieving: udisks2-lang-2.9.4-lp153.106.1.noarch.rpm ..................................................................................................[done]

Checking for file conflicts: ...........................................................................................................................[done]
(1/4) Installing: libudisks2-0-2.9.4-lp153.106.1.x86_64 ................................................................................................[done]
(2/4) Installing: libudisks2-0_btrfs-2.9.4-lp153.106.1.x86_64 ..........................................................................................[done]
(3/4) Installing: udisks2-2.9.4-lp153.106.1.x86_64 .....................................................................................................[done]
Additional rpm output:
Job for udisks2.service failed because the control process exited with error code.
See "systemctl status udisks2.service" and "journalctl -xe" for details.
Failed to try-restart clean-mount-point@.service: Unit name clean-mount-point@.service is missing the instance name.
See system logs and 'systemctl status clean-mount-point@.service' for details.


(4/4) Installing: udisks2-lang-2.9.4-lp153.106.1.noarch ................................................................................................[done]
There are running programs which still use files and libraries deleted or updated by recent upgrades. They should be restarted to benefit from the latest updates. Run 'zypper ps -s' to list these programs.
Auch nach dem Reboot läuft udisks2.service nicht mehr!
Ein USB-Flashdrive wird zwar per lsblk -S angezeigt, aber das war's auch schon.

Code: Alles auswählen

# systemctl status udisks2.service
● udisks2.service - Disk Manager
     Loaded: loaded (/usr/lib/systemd/system/udisks2.service; disabled; vendor preset: disabled)
     Active: failed (Result: exit-code) since Sun 2021-11-28 12:12:21 CET; 3min 58s ago
       Docs: man:udisks(8)
    Process: 1958 ExecStart=/usr/lib/udisks2/udisksd (code=exited, status=127)
   Main PID: 1958 (code=exited, status=127)

Nov 28 12:12:21 leap153 systemd[1]: Starting Disk Manager...
Nov 28 12:12:21 leap153 udisksd[1958]: udisks daemon version 2.9.4 starting
Nov 28 12:12:21 leap153 udisksd[1958]: /usr/lib/udisks2/udisksd: symbol lookup error: /usr/lib/udisks2/udisksd: undefined symbol: bd_utils_get_linux_version
Nov 28 12:12:21 leap153 systemd[1]: udisks2.service: Main process exited, code=exited, status=127/n/a
Nov 28 12:12:21 leap153 systemd[1]: udisks2.service: Failed with result 'exit-code'.
Nov 28 12:12:21 leap153 systemd[1]: Failed to start Disk Manager.
Ich hatte vorher die root-Partition per fsarchiver gesichert und jetzt gerade eben wieder zurückgespielt.
Antworten