在Linux系统中,可以使用以下方法查看U盘的挂载权限:

  • 使用 mount 命令:执行 mount | grep /mnt/usb (将 /mnt/usb 替换为实际的U盘挂载点),命令输出会显示U盘的挂载信息,包括挂载选项,从挂载选项中可以了解到权限设置。例如,若输出中有 rw ,表示以读写权限挂载;若只有 ro ,则表示以只读权限挂载。
  • 使用 ls -l 命令:使用 ls -l /mnt/usb (将 /mnt/usb 替换为实际的U盘挂载点),可以查看挂载点目录的权限信息,了解当前用户对U盘的访问权限。例如, drwxr-xr-x 表示所有者有读写执行权限,所属组和其他用户有读和执行权限。
  • 查看 dmesg 日志:使用 dmesg 命令查看系统日志,查找与U盘挂载相关的信息,从中可以了解U盘是否被识别为只读等信息。例如,若日志中出现“read - only”相关内容,说明U盘可能被设置为只读。

在Linux系统中,可以使用 chmod 命令来更改某个目录的读写权限,具体如下:

符号模式

  • 添加权限:例如要给目录的所有者添加写权限,给所属组添加执行权限,给其他用户添加读权限,可以使用 chmod u+w,g+x,o+r 目录名 。
  • 删除权限:若要删除目录所属组的写权限,可使用 chmod g-w 目录名 。
  • 设置特定权限:若希望所有者有读写执行权限,所属组有读和执行权限,其他用户只有读权限,可使用 chmod u=rwx,g=rx,o=r 目录名 。

数字模式

  •  chmod 命令也可以使用数字模式来设置权限。读、写、执行权限分别对应数字4、2、1,将它们相加得到对应的权限数字。例如, 7 表示读、写和执行权限( 4 + 2 + 1 ), 5 表示读和执行权限( 4 + 1 )。若要将目录权限设置为所有者有完全权限,所属组有读和执行权限,其他用户有读权限,可使用 chmod 754 目录名 。

使用 chmod 命令时,需要确保有足够的权限来更改目录的权限,通常需要以 root 用户或具有相应权限的用户身份执行。

当U盘是FAT分区时,Samba用户对其设置的访问权限与在Linux系统的其他文件系统上有所不同。以下是具体情况说明:

FAT分区特点

FAT分区本身不支持像Linux文件系统(如ext4等)那样精细的权限设置。它主要有基本的读、写和执行权限,但没有所有者、所属组等概念。

Samba访问权限设置

  • 创建文件和文件夹:Samba可以对FAT分区的U盘设置访问权限来控制用户的访问。在Samba配置文件中,可以通过设置 writeable = yes 来允许用户在U盘的共享目录中创建文件和文件夹;设置 writeable = no 则禁止写入,仅允许读取。
  • 权限控制:虽然FAT分区本身权限有限,但Samba可以通过用户认证和共享配置来模拟权限控制。例如,通过设置 valid users 来指定允许访问的Samba用户,只有这些用户才能访问挂载的U盘共享。还可以使用 read list 和 write list 分别指定只读用户列表和可写用户列表。

不过需要注意,在FAT分区上,Samba设置的权限更多是基于共享层面的控制,而不是像在Linux原生文件系统上那样基于文件和目录的精细权限控制。

修改完Samba配置文件后,可通过以下方法使配置文件生效并重启Samba服务器:

使配置文件生效

  • 重新加载配置文件:使用命令 samba-tool daemon reload ,该命令会使Samba服务器在不停止运行的情况下重新加载配置文件,从而使新的配置生效。

重启Samba服务器

  • 使用 systemctl 命令:如果系统使用 systemctl 来管理服务,可执行 sudo systemctl restart smbd.service 或 sudo systemctl restart nmbd.service 命令。 smbd.service 是Samba的主要服务,负责处理文件和打印共享; nmbd.service 主要用于NetBIOS名称服务。
  • 使用 service 命令:在一些系统中,也可以使用 sudo service smbd restart 或 sudo service nmbd restart 命令来重启Samba服务器。

在重启Samba服务器之前,建议先使用 samba -t 命令检查配置文件的语法是否正确,避免因配置错误导致服务器无法正常启动。

在Samba SMB配置文件中, create mask 和 directory mask 用于设置新建文件和目录的默认权限。具体含义如下:

  •  create mask = 0644 :表示当通过Samba创建新文件时,其初始权限将被设置为 0644 。用数字表示权限时,第一位数字代表文件所有者的权限,第二位代表所属组的权限,第三位代表其他用户的权限。 6 对应 rw- ,表示文件所有者有读和写的权限; 4 对应 r-- ,表示所属组用户和其他用户只有读权限。
  •  directory mask = 0750 :意味着通过Samba创建新目录时,其默认权限为 0750 。其中, 7 对应 rwx ,表示目录所有者有读、写和执行的权限; 5 对应 r-x ,表示所属组用户有读和执行权限,但没有写权限;最后的 0 表示其他用户没有任何权限。