Portál AbcLinuxu, 25. dubna 2024 22:36


Dotaz: Externi disk a UDEV

progdan avatar 6.1.2008 20:10 progdan | skóre: 34 | blog: Archař | Teplice/Brno
Externi disk a UDEV
Přečteno: 568×
Odpovědět | Admin
Zdravim,
mam externi disk pripojeny pres rohzhrani USB. Mam ho rozdeleny na 2 partition - jednu ve formatu EXT3 a jednu NTFS.
Chtel jsem, aby kdyz ho pripojim tak aby se bez ohledu na jina pripojena zarizeni (tzn at uz dostne znacku sdb nebo sdc) primountily ty disky do /mnt/gentoo a /mnt/data. Diky krasnemu clanku na jednom blogu jsem si napsal vlastni pravidla pro UDEV, ktera dokonce i (castecne :) funguji:
#GENTOO
ACTION=="add",    SUBSYSTEMS=="scsi",     SYSFS{size}=="61432560", SYMLINK+="extdisk_gentoo"
ACTION=="remove", SUBSYSTEMS=="scsi",     SYSFS{size}=="61632560", RUN=="umount /mnt/gentoo"

#DATA
ACTION=="add",    SUBSYSTEMS=="scsi",     SYSFS{size}=="92759310", SYMLINK+="extdisk_data"
ACTION=="remove", SUBSYSTEMS=="scsi",     SYSFS{size}=="92759310", RUN=="umount /mnt/data"
do FSTAB jsem si jeste pridal automaticke pripojeni /dev/extdisk_gentoo do /mnt/gentoo a /dev/extdisk_data do /mnt/data :
/dev/extdisk_data       /mnt/data       ntfs-3g user,locale=cs_CZ.utf8,rw  0      0
/dev/extdisk_gentoo     /mnt/gentoo     ext3    user,rw                    0      0
Jenze zarizeni extdisk_data se nepripoji (po pripojeni rucne ale je to OK), a extdisk_gentoo se pripoji pouze pro cteni.
Hlavni problem ale je, ze pokud disky odojim (at uz vypnutim primo na krabicce ext. disku nebo jen odpojenim z USB), tak zarizeni se neodpoji, porad zustanou v MTAB, takze kdyz ho opet znovu zapnu tak je nepripoji uz vubec (a to i pres to ze to mam v tech pravidlech pro udev).
Muj dotaz tedy je
1) jak lze zaridit funkci pripojovani
2) jak zaridit funkcni odpojovani :)

Diky za pomoc
Collecting data is only the first step toward wisdom, but sharing data is the first step toward the community.
Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

6.1.2008 21:10 martyone | skóre: 18
Rozbalit Rozbalit vše Re: Externi disk a UDEV
Odpovědět | | Sbalit | Link | Blokovat | Admin
1. Rozlišovat disk podle jeho velikosti není určitě nejvhodnější – v distribuci by měla být určitě nativně pravidla, která vytváří link na zařízení v /dev/disk/by-id/ (význam je zřejmý), a jejich využití vidím jako rozumnější.

2. Disk musí být umountnut PŘED jeho FYZICKÝM odpojením, a akce remove je (hádám) reakcí právě teprve na fyzické vyjmutí HW ze systému – takže, jestli jsem správně pochopil cíl Vašeho snažení, něco takového je vlastně nemožné.
progdan avatar 6.1.2008 23:08 progdan | skóre: 34 | blog: Archař | Teplice/Brno
Rozbalit Rozbalit vše Re: Externi disk a UDEV
1. Diky za tip, určitě je to lepší řešení :)

2. A nešlo by provést třeba dodatečné odstranění záznamu z /etc/mtab?
Collecting data is only the first step toward wisdom, but sharing data is the first step toward the community.
11.1.2008 22:16 martyone | skóre: 18
Rozbalit Rozbalit vše Re: Externi disk a UDEV
umountnutí disku nespočívá v pouhém odstranění odkazu na něj – je třeba zapsat na něj data, která jsou zatím v bufferech v RAM, jinak by došlo k poškození souborového systému či dat na něm(!!!) ..nedávno jsem tady známému formátoval polozničenou kartu z foťáku, kterou bez odpojení vytáhl ze čtečky, když neměl čas čekat na zatuhlá windows ;-)
6.1.2008 21:11 slayn | skóre: 5 | blog: Cokoliv
Rozbalit Rozbalit vše Re: Externi disk a UDEV
Odpovědět | | Sbalit | Link | Blokovat | Admin
teda moc tomu nerozumim, ale neslo by pro to pripojeni proste pridat za ten symlink prikaz RUN=="mount X"?
To err is human, to arr is pirate!
7.1.2008 09:29 raven4
Rozbalit Rozbalit vše Re: Externi disk a UDEV
Odpovědět | | Sbalit | Link | Blokovat | Admin
Zdravim, resil jsem problem jinak. Vytvoril jsem si v '/etc/udev/rules.d' soubor '10-my.rules' a obsahuje nekolik radku, ktere zajisti ze vsehcna moje zarizeni se vzdy budou jmenovat po pripojeni stejne napr. :

------

#tohhle je muj extern disk Seagate Momentus, diky nasl. radku se bude vzdy jmenovat 'ExtDiskMom' nasledovano cislem partition, tedy napr. /dev/ExtDiskMom1 #polozka SYMLINK="disky/ExtDiskMom%n" dela to, ze vytvori duplicitni zarizeni v jinem adresari napr. /dev/disky/ExtDiskMom1

BUS=="scsi", ATTRS{vendor}=="ST916082", NAME="ExtDiskMom%n", SYMLINK="disky/ExtDiskMom%n"

------

#tohle po propojeni me flashky Sandisk Cruzer Profile vytvori zarizeni SanDisk a cislo oddilu napr. SanDisk1

BUS=="scsi", ATTRS{vendor}=="SanDisk*", NAME="SanDisk%n", SYMLINK="disky/CruzerProfile%n"

------

#tohle po vlozni pametove karty s urc seriovym cislem vytvori zarizeni MiniSD a cislo oddilu

BUS=="mmc", ATTRS{serial}=="0x347809d2", NAME="MiniSD%n", SYMLINK="disky/MiniSD%n"

Pote jiz staci pouze do /etc/fstab vlozit :

/dev/ExtDiskMom1 /mnt/Inc vfat rw,async,user,users,gid=users,umask=0002,utf8=true 0 0

/dev/SanDisk1 /mnt/SAN vfat user,async,users,gid=users,umask=0002,utf8=true 0 0

/dev/MiniSD1 /mnt/Flash vfat user,noatime,async,users,gid=users,umask=0002,utf8=true,auto 0 0

U mne funguje bezproblemove. Po vlozeni zarizeni se mi v KDE otevre Konqueror a dany disk zobrazi
11.1.2008 22:35 Ash | skóre: 53
Rozbalit Rozbalit vše Re: Externi disk a UDEV
To vám patrně ve spolupráci s udev mountuje HAL, ne? (Já ho třeba nepoužívám, takže nevím přesně, jen předpokládám že to tak je, samo se to asi nenamountuje:) )

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.