在Linux和UNIX操作系统上,可以使用 mount 命令的cifs选项将Windows共享安装在本地目录树中的特定安装点上。

通用Internet文件系统(CIFS)是一种网络文件共享协议。 CIFS是SMB的一种形式。

在本教程中,我们将说明如何在Linux系统上手动和自动安装Windows共享。

安装CIFS实用程序软件包

要在Linux系统上挂载Windows共享,首先需要安装CIFS实用程序包。

在Ubuntu和Debian上安装CIFS实用程序:

sudo apt update

在CentOS和Fedora上安装CIFS实用程序:

sudo dnf install cifs-utils

软件包名称在Linux发行版之间可能有所不同。

安装CIFS Windows共享

挂载远程Windows共享类似于挂载常规文件系统。

首先,创建目录作为远程Windows共享的安装点:

sudo mkdir /mnt/win_share

以root或具有 sudo 特权的用户身份运行以下命令来安装共享:

sudo mount -t cifs -o username=<win_share_user> //WIN_SHARE_IP/<share_name> /mnt/win_share

系统将提示您输入密码:

Password:

成功后,不会产生任何输出。要验证是否成功安装了远程Windows共享,请使用mount df -h 命令。一旦挂载共享,挂载点即成为挂载文件系统的根目录。您可以像处理本地文件一样使用远程文件。也可以在命令行中提供密码:

sudo mount -t cifs -o username=<win_share_user>,password=<win_share_password> //WIN_SHARE_IP/<share_name> /mnt/win_share

如果用户位于Windows工作组或域中,则可以如下设置:

sudo mount -t cifs -o username=<win_share_user>,domain=<win_domain> //WIN_SHARE_IP/<share_name> /mnt/win_share

为了提高安全性,建议使用凭据文件,其中包含共享用户名,密码和域。凭证文件具有以下格式:

/etc/win-credentials

username = user
password = password
domain = domain

用户不能读取该文件。要设置正确的权限所有权,请运行:

sudo chown root: /etc/win-credentials

要使用凭据文件,请如下定义:

sudo mount -t cifs -o credentials=/etc/win-credentials //WIN_SHARE_IP/<share_name> /mnt/win_share

默认情况下,挂载共享的所有者为root,并且权限设置为777。

使用dir_mode选项设置目录许可权,并使用file_mode设置文件许可权:

sudo mount -t cifs -o credentials=/etc/win-credentials,dir_mode=0755,file_mode=0755 //WIN_SHARE_IP/<share_name> /mnt/win_share

可以使用uidgid选项更改默认的用户和组所有权:

sudo mount -t cifs -o credentials=/etc/win-credentials,uid=1000,gid=1000,dir_mode=0755,file_mode=0755 //WIN_SHARE_IP/<share_name> /mnt/win_share

要设置其他选项,请在-o选项之后将它们添加为以逗号分隔的列表。要获取所有安装选项的列表,请在终端中输入man mount

自动挂载

当使用mount命令手动安装共享时,重新启动后它不会持久。

/etc/fstab文件包含一个条目列表,这些条目定义了系统启动时在何处以及如何安装文件系统。

要在Linux系统启动时自动挂载Windows共享,请在/etc/fstab文件中定义挂载。该行必须包含Windows PC的主机名或IP地址,共享名以及本地计算机上的安装点。

使用文本编辑器打开/etc/fstab文件:

sudo nano /etc/fstab

将以下行添加到/etc/fstab文件中

# <file system>             <dir>          <type> <options>                                                   <dump>  <pass>
//WIN_SHARE_IP/share_name  /mnt/win_share  cifs  credentials=/etc/win-credentials,file_mode=0755,dir_mode=0755 0       0

运行以下命令来安装共享:

sudo mount /mnt/win_share

mount命令将读取/etc/fstab的内容并安装共享。

下次重新启动系统时,Windows共享将自动安装。

卸载Windows共享

umount命令从目录树中分离卸载已安装的文件系统。

要卸载已挂载的Windows共享,请使用umount命令,后跟已安装Windows共享的目录或远程共享:

sudo umount /mnt/win_share

如果CIFS支架在fstab文件中有一个条目,请将其删除。

umount命令在使用中时将无法分离共享。要找出哪些进程正在访问Windows共享,请使用fuser命令:

fuser -m MOUNT_POINT

找到进程后,可以使用 kill 命令停止它们并卸载共享。

如果仍然无法卸载共享,请使用-l--lazy)选项,该选项可让您在不再繁忙的文件系统后立即将其卸载。

sudo umount -l MOUNT_POINT

结论

在Linux中,可以使用mount命令和cifs选项安装共享的Windows。

如果您有任何问题或反馈,请随时发表评论。

如果你喜欢我们的内容可以选择在下方二维码中捐赠我们,或者点击广告予以支持,感谢你的支持