FUSE

Linux.fista
(Ohjattu sivulta CUSE)
Siirry navigaatioon Siirry hakuun

FUSE (Filesystem in Userspace) on tekniikka, jolla erilaisia tiedostojärjestelmäajureita voidaan toteuttaa käyttäjätilan ohjelmina, erotuksena normaaleista tiedostojärjestelmäajureista, joita ajetaan ytimen moduuleina. FUSE mahdollistaa vaikkapa FTP- tai SFTP-etäkoneen liittämisen osaksi tiedostojärjestelmää. Jos liitoskohta on esimerkiksi käyttäjän kotihakemistossa, onnistuu liittäminen yleensä ilman pääkäyttäjän oikeuksia.

FUSEn kautta toimivien tiedostojärjestelmien ei tarvitse olla GNU GPL-lisensoituja kuten Linuxin ydinmodulien, minkä ansiosta samoja tiedostojärjestelmätoteutuksia voidaan käyttää vaikkapa FreeBSD:ssä tai Solariksessa, kunhan käytössä olevasta ytimestä löytyy FUSE-tuki.

FUSE:n käyttö edellyttää FUSE-ohjelmiston asentamista. FUSE löytyy useimpinen jakeluiden paketinhallinnasta nimellä fuse, usein jo esiasennettuna. Myös fuse-nimisen ytimen moduulin on oltava ladattuna, mikäli sitä ei ole käännetty kiinteäksi osaksi ydintä. Moduulin voi tilapäisesti ladata komennolla modprobe fuse.

Ytimen versiosta 2.6.31 lähtien käytettävissä on myös CUSE-rajapinta (Character devices in user space), jonka avulla tiedostojärjestelmien lisäksi voidaan toteuttaa kokonaan käyttäjätilassa myös laitetiedostoja. Sen avulla aiotaan tulevaisuudessa mahdollisesti mm. toteuttaa vanhanaikaisen OSS-äänijärjestelmän tuki ytimen ulkopuolella, ja muutenkin siivota vanhoja ajureita ytimen ulkopuolelle.

Käyttö[muokkaa]

Apple iOS[muokkaa]

iOS on Applen mobiilikäyttöjärjestelmä jota käytetään iPhone ja iPad laitteissa.

Jos liitokset tiedostojärjestelmään tekee root-oikeuksilla, normaalit käyttäjät eivät näe koko liitoshakemistoa, saati sen sisältöä. Parittamisen työkalut löytyvät paketista libimobiledevice-utils.

Ensimmäisen laitteen liittäminen tiedostojärjestelmään:

ifuse /mnt/iphone --root

Parittaminen:

idevicepair pair
ERROR: Could not validate with device 68bcb3c420a755854fab52b520508887b20a702f because a passcode is set. Please enter the passcode on the device and retry 

Virhe johtuu laitteen ruudulla odottavasta luottosuhteen varmistamisesta, valitsemalla 'trust' komento onnistuu:

idevicepair  pair
SUCCESS: Paired with device 68bcb3c420a755854fab52b520508887b20a702f

Liittäminen udid:llä:

ifuse --udid 68bcb3c420a755854fab52b520508887b20a702f /mnt/iphone

Udid tunnusta ei välttämättä tarvitse, ilmeisesti jos kytkettynä on ainoastaan yksi laite.

Liitoksen varmistaminen mount-listauksesta:

mount
ifuse on /mnt/iphone type fuse.ifuse (rw,nosuid,nodev,relatime,user_id=0,group_id=0)

Liitetyn laitteen irroitus tiedostojärjestelmästä:

fusermount -u /mnt/iphone

Irroittaminen saattaa epäonnistua jos jokin vielä käyttää tiedostojärjestelmää, fuser komennolla näkyy sen käyttäjät:

fusermount: failed to unmount /mnt/iphone: Device or resource busy
% fuser -vua /mnt/iphone
                    KÄYTTÄJÄ    PID ACCESS KÄSKY
/mnt/iphone:         root     kernel mount (root)/mnt/iphone

Vaikka kaikki tiedostohallinta- ja shell ohjelmat olisivatkin sammutettu, usein kuvia ja videoita käsittelevät ohjelmat ovat saattaneet olla käytössä ja sellainen on mahdollisesti yhä käynnissä kyseisessä hakemistossa.

Katso myös[muokkaa]

Aiheesta muualla[muokkaa]