如何为挂载的HDD磁盘设置永久完整访问权限?
如何为挂载的HDD磁盘设置永久完整访问权限?
看起来你遇到的是临时权限生效、重启后重置的典型问题——直接用chmod修改的只是挂载点的临时权限,系统重启重新挂载磁盘时,会按照默认挂载配置重新应用权限,所以得从挂载配置本身入手解决,这才是永久生效的办法。
下面分两种常见情况给你一步步说明:
第一步:先确认磁盘的文件系统类型
打开终端输入这条命令,查看你的HDD用的是什么文件系统:
df -T /media/Backup
输出里的Type列就是文件系统类型(比如ext4、NTFS),不同类型的配置方式略有区别。
情况一:如果是ext4这类Linux原生文件系统
这类文件系统的权限可以通过挂载时指定用户/组来永久设置:
- 获取磁盘的UUID(UUID比
/dev/sda1更稳定,不会因为磁盘顺序变化导致挂载失效):
sudo blkid /dev/sda1
你会看到类似UUID="xxxx-xxxx-xxxx-xxxx"的内容,把这个UUID复制下来。
- 编辑系统挂载配置文件
/etc/fstab:
sudo nano /etc/fstab
找到对应/media/Backup的挂载行(如果没有就新增一行),改成如下格式:
UUID=你的UUID值 /media/Backup ext4 defaults,uid=1000,gid=1000,rw 0 2
这里的uid=1000和gid=1000是普通用户的用户ID和组ID,你可以用id命令查看自己的ID(输入id后会输出uid=1000(你的用户名) gid=1000(你的用户组)...),把对应数值替换进去即可。
- 保存配置并重新挂载:
按Ctrl+O回车保存nano编辑,再按Ctrl+X退出,然后执行命令让配置立即生效:
sudo mount -o remount /media/Backup
现在你可以试试创建文件夹,重启系统后权限也不会再丢失了。
情况二:如果是NTFS文件系统(Windows常用格式)
NTFS是Windows文件系统,Linux需要用ntfs-3g驱动挂载,配置方式稍有不同:
- 同样先获取磁盘UUID(用上面的
blkid命令)。 - 编辑
/etc/fstab配置文件:
新增或修改对应挂载行为:
UUID=你的UUID值 /media/Backup ntfs-3g defaults,uid=1000,gid=1000,rw,umask=0000 0 0
其中umask=0000会让所有用户都拥有读写执行权限,加上uid/gid确保你的普通用户拥有磁盘的所有权。
- 重新挂载生效:
sudo mount -o remount /media/Backup
重要注意事项
- 修改
/etc/fstab前一定要先备份:sudo cp /etc/fstab /etc/fstab.bak,万一配置写错导致系统无法启动,可以用备份文件恢复。 - 如果挂载时提示错误,用
mount -a命令检查配置是否正确,这条命令会尝试挂载fstab里的所有条目,有错误会直接提示。
备注:内容来源于stack exchange,提问作者S.EB
相关产品推荐
相关产品推荐

