linux 自动挂载samba共享脚本
时间: 2023-06-05 18:47:37 浏览: 532
Linux系统可以自动挂载Samba共享,方便用户在不同设备间快速访问共享文件夹。下面是一个可以实现自动挂载Samba共享的脚本。
1. 首先,需要在本地创建一个目录,作为挂载点。
2. 在命令行输入以下代码:
```
sudo nano /etc/fstab
```
这将打开fstab文件,它是一个包含系统启动时要挂载的所有文件系统和设备的文件。
3. 在文件底部添加以下行:
```
//<共享文件夹的IP地址>/<共享文件夹名> /<本地挂载点> cifs username=<Samba用户名>,password=<Samba用户密码>,uid=<本地用户名>,gid=<本地用户组名> 0 0
```
其中,<共享文件夹的IP地址>是Samba服务器的IP地址,<共享文件夹名>是要挂载的共享文件夹名称,<本地挂载点>是本地创建的目录路径,<Samba用户名>和<Samba用户密码>是访问Samba共享文件夹所需的用户名和密码,<本地用户名>和<本地用户组名>是当前用户的用户名和用户组名。
4. 保存并退出fstab文件,输入以下命令以确保没有语法错误:
```
sudo mount -a
```
5. 如果没有错误,则可以访问本地挂载点中的共享文件夹。
这是一个简单但有效的方法来自动挂载Samba共享。每次系统启动时,Samba共享文件夹将自动挂载到本地挂载点上,并且您不再需要手动挂载它们。
相关问题
rocky linux中自动挂载smb共享文件夹,同时防止脚本恶意运行,禁止运行.sh文件,禁止在挂载命令中显示明文密码
Rocky Linux中自动挂载SMB共享文件夹通常需要通过Linux的mount命令或者系统管理工具如cifs-utils来完成,并结合一些安全性设置。以下是步骤:
1. 首先,安装必要的软件包:
```
sudo yum install cifs-utils fuse-samba
```
2. 创建一个隐藏的.smbpass文件存储密码,避免明文密码出现在命令行里。例如:
```
echo "server_username:password" | sudo tee /etc/cramd/smbpasswd.new > /dev/null
sudo smbpasswd -a root
```
这里的`server_username`替换为实际的SMB用户名,`password`替换为对应的密码。
3. 使用cifs mount选项添加安全限制:
创建一个配置文件,比如/etc/fstab.d/mount_smb.conf,内容类似:
```bash
//server/share_name /mnt/shared cifs user=username,iocharset=utf8,sec=ntlmssp,vers=3.0,workgroup=WORKGROUP,dmask=0755,fmask=0755,forceuid=root,forcegid=root,noperm 0 0
```
这里`server`, `share_name`, `username`和`WORKGROUP`需替换实际值。`forceuid`和`forcegid`强制使用root用户权限访问。
4. 禁止.sh文件被执行:
在/etc/fuse.conf文件中添加`allow_other nogroup`,然后重启fuse服务:
```
sudo nano /etc/fuse.conf
# 添加这两行
allow_other = no
nogroup = yes
sudo systemctl restart fuse
```
这将不允许除了root用户外的其他用户执行.sh文件。
Linux怎么挂载共享文件
在Linux系统中挂载共享文件通常涉及将网络上某个位置的文件系统映射到本地文件系统的目录。以下是一个基本步骤:
1. **检查权限**:首先,确保你的用户账户有权限访问共享资源,并且服务器允许远程连接。
2. **添加共享目录信息**:如果共享文件来自SMB(Server Message Block,Windows网络共享协议),可以使用`cifs`服务。编辑`/etc/fstab`文件,添加类似以下内容:
```
//server/sharename /mnt/mountpoint username password mode = 0777 # 使用smbfs(需安装samba-client包)
//server/path/to/shared /mnt/localdir nobody guest # 或者使用nfs(需安装nfs-kernel-server包)
```
其中,`server`是提供共享的主机名或IP地址,`sharename`是共享名称,`mountpoint`是你想挂载的位置。
3. **刷新fstab**:执行`sudo mount -a`命令来自动加载配置好的共享文件夹。
4. **手动挂载**:如果需要临时挂载,可以使用`sudo mount -o user=username,password=password`。
5. **验证挂载**:挂载完成后,你可以通过`ls /mnt/mountpoint`查看共享文件夹的内容。
注意:安全起见,生产环境中推荐使用更严格的权限设置和自动化脚本,而不是直接在`fstab`中写入密码。
阅读全文
相关推荐














