在 Debian(以及大多数 Linux 发行版)里,mount 本身不能直接“改文件权限”,而是在挂载时通过 挂载选项(mount options) 来控制权限行为。具体怎么做,取决于你挂载的是什么文件系统。
下面按常见场景说明。
这些文件系统权限是写在 inode 上的,mount 时一般不能改变已有文件权限,只能:
sudo mount /dev/sdb1 /mnt/data
sudo chmod -R 755 /mnt/data
sudo chown -R user:user /mnt/data
sudo mount -o rw,exec,user /dev/sdb1 /mnt/data
常用选项:
rw / ro:读写 / 只读exec / noexec:是否允许执行suid / nosuiduser / nouser:是否允许普通用户挂载NTFS 没有 Linux 权限,需要 mount 时指定:
sudo mount -t ntfs-3g \
-o uid=1000,gid=1000,umask=022 \
/dev/sdb1 /mnt/win
说明:
uid=1000:你的用户 IDgid=1000:用户组 IDumask=022 → 权限 755dmask / fmask 可分别控制目录 / 文件示例(只读):
sudo mount -t ntfs-3g -o ro,uid=1000 /dev/sdb1 /mnt/win
同样没有 Linux 权限:
sudo mount -o uid=1000,gid=1000,umask=000 /dev/sdc1 /mnt/usb
或 exFAT:
sudo mount -t exfat -o uid=1000,umask=022 /dev/sdc1 /mnt/usb
sudo mount -t nfs server:/data /mnt/nfs
权限问题通常是:
no_root_squash可加:
-o rw,nosuid,nodev
编辑 /etc/fstab:
/dev/sdb1 /mnt/data ext4 defaults 0 2
NTFS 示例:
/dev/sdb1 /mnt/win ntfs-3g uid=1000,gid=1000,umask=022 0 0
改完可测试:
sudo mount -a
❌ chmod 对 NTFS / FAT 无效
❌ mount 后再改 NTFS 权限没用
✅ 权限必须在 mount 参数里指定
如果你能告诉我:
我可以直接给你一条可复制的命令。