将新挂载的外部驱动器设置为可写访问权限:使用chmod命令。

16

我已将外部驱动器挂载到以下位置:

# mkdir /mnt/external

随后:

mkdir -p /mnt/external
mount /dev/sdb1 /mnt/external

现在只有根用户可以访问并写入这些文件夹。

linux-wyee:/home/martin # dir /mnt
drwxr-xr-x 2 root root 4096 13. Dez 22:01 external

如何更改权限,使所有人都可以将文件写入外部驱动器。我需要通过终端更改权限。

chmod 777 /dev/sdb1 /mnt/external or something alike -

2
这与挂载无关。一旦挂载,只需更改目录/mnt/external的权限即可。 - Ingo
1
现代系统(包括SUSE)可以轻松处理挂载外部驱动器的问题。您只需插入设备,如果当前用户在正确的组中,则该设备将被挂载。默认设置对您来说不够好吗?为什么呢? - janos
我已将您的“解决方案”附言(非常感谢)移至答案中;我们欢迎自我回答,即使您已接受了其他答案。我还更正了您的大小写 - 如果您能尝试使用句子大小写,这意味着对其他人的编辑工作更少。谢谢。 - halfer
6个回答

20

首先尝试这个:

umount /dev/sdb1

chmod -R 0777 /mnt/external   

然后安装挂载

mount /dev/sdb1 /mnt/external

或者尝试

chmod -R 0777 /mnt/external

4
chmod -R 777 /mnt/external

不需要指定设备。您可以递归地更改目录的权限。

然而,通常外部驱动器使用FAT32或某种兼容Windows的文件系统格式,这些格式没有POSIX / UNIX权限。因此,这一步可能是多余的。

您的驱动器是如何格式化的?

您是否尝试以非root用户身份写入它?


1

代表发帖人发布的解决方案。

更新:

linux-wyee:/mnt # chown martin:users /mnt/external

查看结果:- 很明显它有效 ;-)

martin@linux-wyee:/> cd mnt
martin@linux-wyee:/mnt> ls -l
insgesamt 4
drwxr-xr-x 3 root root 4096 13. Dez 19:43 external
martin@linux-wyee:/mnt> su
Passwort:
linux-wyee:/mnt # ^C
linux-wyee:/mnt #

linux-wyee:/mnt # chown martin:users /mnt/external

linux-wyee:/mnt # cd mnt
bash: cd: mnt: Datei oder Verzeichnis nicht gefunden
linux-wyee:/mnt # ls -l
insgesamt 4
drwxr-xr-x 2 martin users 4096 13. Dez 22:01 external
linux-wyee:/mnt #

正如您现在所看到的,用户马丁已经获得了权限。


1

chmod -R 0777 /mnt/external

我觉得这样做过于冒险了。任何人都可以从外部磁盘执行他想要的操作,这对黑客来说是一个很大的漏洞。例如,他们可以使用Web表单保存图片,更改执行位并在您的系统上运行它作为脚本。

也许,拥有者和组的rw访问权限以及其他人的r访问权限会是一个更好的选择。


0

我曾经遇到过类似的问题,但对我来说解决方案是使用 CIFS 文件系统的 uidgid 选项。(我必须使用 CIFS,因为 显然 NFS 不允许通过用户名和密码访问,而我需要这样做。)


0

您可以使用umask选项控制挂载外部驱动器的权限:

sudo mount /dev/sdb1 /mnt/external -o umask=000

000 的掩码等同于权限 0777


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接