Udev diski takma kuralı çalışmıyor


9

/Etc/udev/rules.d/81-external-disk.rules içinde şu içeriğe sahibim:

ENV{ID_FS_UUID}=="6826692e-79f4-4423-8467-cef4d5e840c5", RUN{program}+="/bin/mount -o nofail,x-systemd.device-timeout=1 -t ext4 -U 6826692e-79f4-4423-8467-cef4d5e840c5 /backup/external"

Koşu sonrası:

udevadm control --reload ; udevadm trigger /dev/sdb1

Hiçbir şey yapmaz. Ancak II / bin / touch / tmp / xyz gibi bir şey için mount komutunu değiştirirse çalışır.

sürümleri:

[root@helsinki rules.d]# rpm -qa | grep udev
libgudev1-219-19.el7_2.12.x86_64
python-pyudev-0.15-7.el7_2.1.noarch
[root@helsinki rules.d]# rpm -qa | grep systemd
systemd-libs-219-19.el7_2.12.x86_64
systemd-219-19.el7_2.12.x86_64
systemd-sysv-219-19.el7_2.12.x86_64
[root@helsinki rules.d]# cat /etc/redhat-release 
CentOS Linux release 7.2.1511 (Core) 

Yanıtlar:


18

Bu bir sistemd özelliğidir. Orijinal udevkomutun yerini almıştır systemd-udevd(kılavuz sayfasına bakınız). Farklardan biri, kendi dosya sistemi ad alanını oluşturmasıdır, bu nedenle bağlantınız yapılır, ancak asıl ad alanında görünmez. ( systemctl status systemd-udevdHizmetin Ana PID'sini almak için, ardından /proc/<pid>/mountinfodosya sisteminizin içeriğini inceleyerek bunu kontrol edebilirsiniz ).

Özel dosya sistemi ad alanı yerine paylaşılan bir paylaşıma geri dönmek istiyorsanız /etc/systemd/system/systemd-udevd.service, içeriğe sahip bir dosya oluşturun

.include /usr/lib/systemd/system/systemd-udevd.service
[Service]
MountFlags=shared 

veya /etc/systemd/system/systemd-udevd.service.d/myoverride.confyalnızca son 2 satırlı yeni bir dizin ve dosya , yani

[Service]
MountFlags=shared

ve systemd-udevd hizmetini yeniden başlatın. Bunu yapmanın sonuçlarını bulamadım.


Evet, böyle bir geçici çözüm uyguladım, merak ediyorum güvenlik etkileri de var mı.
sebelk

1
[Service]Bu iki satır arasına eklenene kadar bunun işe yaramadığından eminim .
goldilocks

1
@goldilocks Muhtemelen haklısınız. Bunu cevaba ekledim, teşekkürler. Dahil edilen dosyada son bölümün ne olduğuna bağlı olabilir, ancak öyle görünüyor ki systemd artık belgelenmemiş gibi *.d/*.confdeğişiklik yapma şeklini kullanmanızı tercih ediyor .include.
meuh

12

Aynı sorun Ubuntu 18.04'te aynı altta yatan nedenden kaynaklanır. Düzeltmek için aşağıdakiler için bir geçersiz kılma dosyası oluştururuz systemd-udevd:

sudo systemctl edit systemd-udevd

Ve içine yerleştirin:

[Service]
MountFlags=shared

Dosyayı kaydedin ve çalıştırın:

sudo systemctl daemon-reload
sudo service systemd-udevd --full-restart

Ahududu (Raspbian 9 "streç") bir cazibe gibi çalıştı. Teşekkürler!
Maxwel Leite

2
Ubuntu 18.04'üm için USB sürücüsü için otomatik sayı sorununu çözmek için çalışmadı.
Yu Shen

Ubuntu 18.04'te çalıştı. @YuShen, udev kurallarınızı kontrol etmek isteyebilirsiniz.
Greg Bell
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.