přejít na obsah přejít na navigaci

Linux E X P R E S, NTFS prakticky - FUSE

NTFS prakticky - FUSE

NTFS je pokročilý souborový systém, který je dodáván spolu s operačními systémy společnosti Microsoft řad NT, 2000, XP a 2003. Jeho podpora pod Linuxem není dokonalá, nicméně s trochou snahy se dá zprovoznit podpora pro čtení i zápis.


reklama

K plné podpoře pro zápis máme dvě možné cesty, jedna vede přes FUSE, což je modul do jádra, který umožňuje implementovat souborové systémy v uživatelském prostoru. Existuje pro něj podpora rozličných filesystémů, jako je SSHFS, který dovoluje přimountovat vzdálený disk skrz SSH, FTPFS, který dovoluje přimountovat FTP adresář, a také NTFS, který nám umožní přimountovat oddíl s NTFS filesystémem. Druhou cestou je použití Captive, který však ke své funkci potřebuje soubor ntfs.sys z Windows a zápis pomocí něho je bezproblémový, avšak moc pomalý (okolo 500 kB/s) a navíc je tento postup zastaralý, takže se jím zde zabývat nebudeme.

Jak již sem říkal, FUSE je jaderný modul, který zprostředkovává možnost implementovat souborový systém v uživatelském prostoru jádra. Pomocí reverzního inženýrství se podařilo implementovat plnou podporu pro čtení i zápis na disky se souborovým systémem NTFS. Zápis už není omezen nemožností vytvářet nové soubory či adresáře, ani nemožností změnit velikost upravovaného souboru. Pro zprovoznění budeme potřebovat balíčky, které obsahují FUSE a modul s podporou NTFS. Nainstalujeme tedy balíčky fuse-utils, libfuse2, libntfs8 a ntfsprogs.

V prvé řadě zajistíme natáhnutí modulu fuse a posléze jeho natažení při každém bootu. Povýšíme svá práva na privilegovaného uživatele, popřípadě budeme u každého příkazu používat sudo. Modul FUSE k jádru připojíme příkazem modprobe fuse, který by měl proběhnout bez jakéhokoli výstupu, pokud se tak stalo, modul je natažen úspěšně, což můžeme ještě ověřit příkazem lsmod | grep fuse. Natažení při každém bootu se zajistí editací souboru /etc/modules buďto ve vašem oblíbeném editoru, nebo příkazem echo fuse >> /etc/modules, který na konec souboru připojí text fuse.

Z důvodů bezpečnostní politiky vytvoříme skupinu s názvem ntfs, která bude mít jako jediná přístup k zápisu do připojovaného adresáře. Skupinu vytvoříme příkazem addgroup ntfs, výstup tohoto příkazu by měl vypadat nějak takto:

root@bigtux:/home/marek# addgroup ntfs
Přidávám skupinu "ntfs" (1001)...
Hotovo.
root@bigtux:/home/marek#

Tímto se nám tedy podařilo přidat skupinu s názvem ntfs, která má GID s hodnotou 1001, avšak u vás se toto číslo může lišit - je uvedeno ve výpisu na druhém řádku v závorce. Nyní do skupiny ntfs přidáme uživatele, kterým chceme umožnit práci s NTFS oddíly. Toto přidání se provede pomocí příkazu adduser uživatelské_jméno ntfs, ve kterém řetězec uživatelské_jméno nahradíme patřičnými uživatelskými jmény a opakujeme jej tolikrát, kolikrát bude potřeba, abychom přidali všechny uživatele, kterým chceme přístup umožnit.

Pokud si budeme přát připojovat tento souborový systém při každém bootu, popřípadě umožnit připojení tohoto filesystému i neprivilegovaným uživatelům, budeme muset editovat soubor /etc/fstab. Pro první možnost, tj. automatické připojení, se musí v souboru /etc/fstab objevit

/dev/hdxn    /mnt/ntfs    ntfs-fuse    auto,gid=1001,umask=0007    0 0

který pozměníme a za /dev/hdxn dosadíme název zařízení, na kterém je tento filesystém, gid je číslo skupiny ntfs a auto značí, že se má oddíl připojovat ihned po startu. Tedy pokud je NTFS na prvním disku a třetím oddílu a zároveň je GID skupiny NTFS 1001, pak bude řádek vypadat následovně:

/dev/hda3    /mnt/ntfs    ntfs-fuse    auto,gid=1001,umask=0007    0 0

Ještě nesmíme zapomenout vytvořit adresář, do kterého se bude oddíl připojovat, příkazem mkdir /mnt/ntfs. Připojování a odpojování uživatelům povolíte tak, že slovo auto nahradíte slovem user, takže řádek bude vypadat takto:

/dev/hda3    /mnt/ntfs    ntfs-fuse    user,gid=1001,umask=0007    0 0

Teď se sice adresář nebude připojovat automaticky, ale bude jej moci připojit kterýkoli uživatel v systému, což je řešení výhodné převážně pro výměnná média, jako jsou USB disky a podobně. Nyní si můžeme vyzkoušet, jak jsme byli úspěšní a pokusíme se oddíl připojit příkazem mount /mnt/ntfs - pokud snad dostanete chybovou hlášku mount: unknown filesystem type 'ntfs-fuse', pak nejspíše používáte Ubuntu nebo distribuci z něj vyvozenou, která obsahuje bug. Ten spočívá ve špatném symbolickém odkazu, toto napravíme příkazem rm /sbin/mount.ntfs-fuse && sudo ln /usr/bin/ntfsmount /sbin/mount.ntfs-fuse.

A nyní by vše už mělo proběhnout bez problémů a oddíl by se měl připojit do patřičného adresáře bez vypsání jakékoli chyby. To si ověříme například tak, že si necháme vypsat obsah adresáře příkazem ls /mnt/ntfs - ten nám vypíše adresáře, které máme na patřičném oddílu. Podporu zápisu můžeme ověřit například vytvořením adresáře na tomto oddílu příkazem mkdir /mnt/ntfs/muj-adresar. Příkaz vytvoří na NTFS oddílu adresář s názvem muj-adresar. Zda-li jej vytvořil, můžeme snadno ověřit příkazem ls -l /mnt/ntfs/ | grep muj-adresar.

Nahoru

Odkazy

(Jako ve škole)
Průměr: 1,00 | Hodnotilo: 1
 

Top články z OpenOffice.cz

Příspěvky

Re: NTFS prakticky - FUSE
15. 02. 2007, 10:49:38
Odpovědět  Odkaz 
to mi neni jasny, ntfs-fuse je neco jineho nez ntfs-3g nebo to stejny? protoze pokud vim, tak nejbezproblemovejsi zapis v soucastnosti poskytuje prave ntfs-3g, viz treba [url=http://wiki.ubuntu.cz/Podpora_z%C3%A1pisu_pro_NTFS]Podpora zápisu pro NTFS[/url]
Re: NTFS prakticky - FUSE
15. 02. 2007, 15:20:29
Odpovědět  Odkaz 
Je to myslím tentýž ovladač.

Přidat názor

Nejsou podporovány žádné značky, komentáře jsou jen čistě textové. Více o diskuzích a pravidlech najdete v nápovědě.
Diskuzi můžete sledovat pomocí RSS kanálu rss



 
 

Marek Stopka

Marek Stopka

Jmenuji se Marek Stopka, narodil jsem se a vyrostl ve městě Ostrava na severu Moravy. Již dlouhou dobu jsem fascinován světem ICT technologií, kdysi dávno jsem dostal dobrou příležitost ohledně svého prvního zaměstnání a začal jsem se zabývat ukládáním dat ve společnosti Tieto Corporation. V rámci skupiny Tieto Corporation jsem nejdříve pracoval v České republice a později pak i ve Finsku. V průběhu své profesionální kariéry jsem se zabýval převážně technologiemi od společnosti NetApp.

V současné době se živím jako nezávislý poradce, hlavně pro oblasti Business Resilience (Business Continuity, Disaster Recovery) a Data Storage.


  • Distribuce: openSUSE
  • Hodnocení autora: *

| proč linux | blog