FUSE とは Filesystem in User Space の略で、特権を持たないユーザがファイルシステムを設定したり、マウントしたりすることのできる仕組みです。通常、ファイルシステムは root
でなければ操作ができませんが、 FUSE ではそれができるようになっています。また、 FUSE それ自身はカーネルモジュールとして提供されているもので、 FUSE と対応するプラグインを組み合わせることで、 SSH での接続や ISO イメージなどが、ファイルシステムとして利用できるようになります。
FUSE を始めるにあたっては、まず fuse
パッケージをインストールしておく必要があります。このほか、使用するファイルシステムによっては、個別のパッケージとして提供されている追加のプラグインを必要とすることもあります。 詳しくは 8.5項 「利用可能な FUSE プラグイン」 をお読みください。
通常は FUSE 自身を設定する必要はありません。ただし、あらかじめマウントポイントを一括管理する目的から、専用のディレクトリを作っておくことをお勧めします。たとえば ~/mounts
のようなディレクトリを作っておいて、その中に各々のサブディレクトリを作成して、そこにマウントするような形態がお勧めです。
NTFS とは New Technology File System の略で、 Windows における既定のファイルシステムです。なお、 FUSE それ自身は特権が不要であるものの、Windows パーティション (つまりブロックデバイス) にアクセスするにあたっては特権が必要となるため、下記の手順でも root 権限が必要となります。
root
になってパッケージ ntfs-3g
をインストールします。
マウントポイントとして使用するディレクトリを作成します。たとえば ~/mounts/windows
のディレクトリを作成します。
マウントしたい Windows パーティションを見つけるため、 YaST を起動してパーティション設定モジュールを開始して、 Windows のパーティションを見つけます (ただし、何も変更する必要はありません) 。この方法以外にも、 root
で /sbin/fdisk
-l
を実行してもかまいません。いずれの場合も、パーティションの種類が HPFS/NTFS
になっているものを選びます。
パーティションを読み書き両方が可能なモードでマウントします。下記にある デバイス を、 Windows パーティションのデバイス名に置き換えて実行します:
>
ntfs-3g /dev/デバイス マウントポイント
Windows パーティションを読み込み専用モードで使用するには、 -o ro
オプションを追加します:
>
ntfs-3g /dev/デバイス マウントポイント -o ro
ntfs-3g
コマンドは、現在のユーザ (UID) とグループ (GID) で指定したデバイスにアクセスします。異なるユーザに対して書き込み許可を与えるには、 id
ユーザ名
コマンドを実行して UID と GID を取得したあと、下記のようにして設定を行います:
#
id tux
uid=1000(tux) gid=100(users) groups=100(users),16(dialout),33(video)
ntfs-3g /dev/デバイス マウントポイント -o uid=1000,gid=100
詳しいオプションについては、マニュアルページをお読みください。
マウントを解除するには、 fusermount -u
マウントポイント のように実行します。
SSH は Secure SHell の略で、 2 台のコンピュータの間の通信を暗号化してやりとりすることのできるネットワークプロトコルです。 FUSE を介して SSH 接続を確立するには、下記の手順で行います:
sshfs
パッケージをインストールします。
マウントポイントとして使用するディレクトリを作成します。 たとえば~/mounts/ホスト名
のようなディレクトリがよいでしょう。ここで ホスト名 は実際のホスト名に置き換えて実行します。
リモートのファイルシステムをマウントします:
#
sshfs ユーザ名@ホスト名 マウントポイント
あとはリモートのコンピュータに対するパスワードを入力します。
マウントを解除するには、 fusermount -u
マウントポイント のように実行します。
ISO イメージの内容を読み出すには、 fuseiso
パッケージを利用して、下記のように実行します:
fuseiso
パッケージをインストールします。
マウントポイントとして使用するディレクトリを作成します。 たとえば~/mounts/iso
のようなディレクトリがよいでしょう。
ISO イメージをマウントします:
#
fuseiso ISO イメージのパス マウントポイント
ISO イメージは、そのファイルの仕様上読み込み専用であり、書き込むことはできません。マウントを解除するには、 fusermount -u
マウントポイント のように実行します。
FUSE には様々なプラグインが用意されています。下記の表では、よく使用される一般的なプラグインを示しています。
|
FTP サーバのマウント |
|
暗号化されたファイルシステムのマウント |
|
ISO9660 ファイルシステムの CD-ROM イメージのマウント |
|
iPod のマウント |
|
参照可能な Samba 共有や Windows 共有のマウント |
|
gPhoto を介した対応デジタルカメラのマウント |
|
NTFS ボリュームのマウント (読み書き両方に対応) |
|
Bluetooth デバイスのマウント |
|
SSH ファイル転送プロトコルをベースにしたファイルシステムクライアント |
|
WebDAV ファイルシステムのマウント |
さらに詳しく知りたい場合は、 FUSE の Web ページ https://github.com/libfuse/libfuse をお読みください。