最後更新: 2021-08-31
目錄
安裝 fuse-utils
apt-get install fuse-utils
它會建立 fuse 的用戶組 (GID: 106)
並且透過 udev 去建立所須的裝置檔
ls -al /dev/fuse
crw-rw---- 1 root fuse 10, 229 Apr 6 16:52 /dev/fuse
還有會載入 kernel modules fuse
vzserver:~# lsmod | grep fuse
fuse 44592 1
fuse 的基本設定
fuse-utils package 提供以下東西:
- /etc/fuse.conf
- /etc/init.d/fuse
- /usr/bin/fusermount
- /sbin/mount.fuse
libfuse2 package 提供以下東西:
- /usr/lib/libfuse.so.*
- /usr/lib/libulockmgr.*
設定
在 /etc/fuse.conf 有一個幾重要的 defaul 設定
# 可以比 non-root users 用 allow_other / allow_root 的 mount opts
user_allow_other
# maximum number of FUSE mounts allowed to non-root users. The default is 1000.
mount_max = NNN
# 在一般情況下, 如果 A mount 來的目錄, 只有 A 才可存取
# 不過當以上指令(allow_other)生效, A mount 的東西就可以被任何人存取 ~
fusermount:
opts:
- -u unmount.
- -z lazy unmount
fuse:
[iconv]
-o from_code=CHARSET original encoding of file names (default: UTF-8)
-o to_code=CHARSET new encoding of the file names (default: UTF-8)
allow_other
allow_root
uid=N Override the st_uid field set by the filesystem
gid=N Override the st_gid field set by the filesystem
default_permissions
By default FUSE doesn't check file access permissions.
This option enables permission checking, restricting access based on file mode.
Checking
mount | grep fuse
fusectl on /sys/fs/fuse/connections type fusectl (rw,relatime) /dev/fuse on /mnt/vmfs type fuse (rw,nosuid,nodev,relatime,user_id=0,group_id=0,default_permissions)
sshfs
掛載 ssh:
sshfs root@myserver:/root ~/mnt-myserver
查看是否真的成功
ls mnt-myserver/
umount:
umount /root/mnt
注意:
由於我不是用 fusermount 去 mount 的, 所以不能用 fusermount -u 去 umount
實用選項:
-o reconnect reconnect to server
-o sshfs_sync synchronous writes
-o cache_timeout=N sets timeout for caches in seconds (default: 20)
-o follow_symlinks follow symlinks on the server
-o sftp_server=SERV path to sftp server or subsystem (default: sftp)
convmvfs: 不同 charset 的掛載
雖然 convmv 亦可轉碼, 不過萬一出錯就大件事了 .......
事先 preview 一次十分可取 ^^
convmvfs ~/mnt -o srcdir=/home/ftp/tmp/,icharset=big5,ocharset=utf8
常見 charset:
- big5
- gbk
- utf8
其他資料