Ubuntu のGVSマウントをログイン時にしたい。
ubuntu デスクトップのログイン時のマウント機能と同等のマウントしたい
fstab や autofs でもできるが、そっちはシステム全体なのでわかりやす。gvfs は面倒かと思ったけど、使ってみたらgvfs が圧倒的に楽だったのでメモ。
管理の側面から考えると、ログイン時にマウントされる方が嬉しいし。そもそもmount でマウントポイントが見れないのでいいかな
これを使うメリット
ネットワークの越しのマウントに、root 権限も、マウントポイントも要らないので、mountコマンド初心者でも使いやすい。
gvfs とは
最近は gio という名前になっているようです。
いろいろな、ネットワークのドライブをFUSEでマウントしてくれたりする。Ubuntuだと次の「アカウントの追加」で追加設定したストレージに使われている。
実際にマウントされたら次のようになる。左の柱に出てくるネットワークの場所ですね。
gvfs はマウントポイントがわかりにくい
gvfs でマウントされている
gvfs-mount -l
これは、mountで出てくる。けど分かりにくいかもしれません。
takuya@:~$ mount | grep gvfs gvfsd-fuse on /run/user/1000/gvfs type fuse.gvfsd-fuse (rw,nosuid,nodev,relatime,user_id=1000,group_id=1000) takuya@:~$
ちなみに、gvs-mount はいまは gio を使う
gio moout -l
gio/gvfs でネットワークをマウントしてみる。
gio mount "cifs://takuya@my-nas/takuya's%20home/"
他にも、SSHフォルダをSFTPでマウントするには。
gio mount "ssh://takuya@my-sftp-server/"
などと、URLでプロトコルを指定してマウントしFUSEとして使えるのでめっちゃ便利。あれ、もうローカルにストレージが要らなくね?
など手軽にマウントできるじゃん。
GUI ツールで管理できる。
gigoloという管理ツールがありました。
sudo apt install gigolo
gigoloでGUIで管理できる。いいじゃん gigolo。
これ使えば、システム全体に関係なくマウントできるから、ルート権限もいらないしめっちゃ楽じゃん
ログイン時に自動的に接続したい
touch ~/MountAtLogin.sh chmod +x ~/MountAtLogin.sh
ファイルの中身を書く
## ~/MountAtLogin.sh gio mount ssh:takuya@my-server/
最後に
Ubuntuの自動起動するアプリケーション
に登録して終了
これで、ログイン時に再接続されるのでWindowsのネットワーク・ドライブのような運用ができる。便利。
2019-05-24 追記
手軽だけど、どうも速度が遅く、HDMIキャプチャの録画ファイルの保存に失敗しているようである。そこで速度測定してみました
- gvfs でssh FUSEマウントしたファイルシステムの書き込みが遅い - それマグで!
- ssh の転送速度を測定をしてみる - それマグで!
- sshfs でFUSEマウントしたフォルダへの転送速度を測定した - それマグで!
どうも、gvfs でマウントしたドライブはFUSEの呼び出しループの中で、CPU処理に影響を多分に受けていると思われる。
あまり多量のファイルを扱うのは得策でないと思う。
参考資料
- http://d.hatena.ne.jp/tksmashiw/20080323
- https://askubuntu.com/questions/56428/how-to-automount-a-gvfs-file-system-on-logon
- https://ja.wikipedia.org/wiki/GVfs
- https://askubuntu.com/questions/343205/where-can-i-find-the-mount-point-for-smb-shares-in-13-04
- https://askubuntu.com/questions/56428/how-to-automount-a-gvfs-file-system-on-logon
- https://kledgeb.blogspot.com/2012/11/ubuntu-gvfs-mount-1.html
- https://help.ubuntu.com/community/Autofs