ubuntu/debian/openwrt下开机自动挂载samba目录
方式一:
临时挂载:
XML/HTML代码
- mount -t cifs //192.168.1.100/Public /home/binaryhat/Public -o username=yourname,password=yourpwd,gid=0,uid=0
gid和uid可以通过输入命令id 用户名,比如查看root的,就是输入id root;如果是查看git的,就是输入id git
可以用命令行方式卸载:
XML/HTML代码
- umount:/home/binaryhat/Public
方式二:
开机自动挂载
1.需要新建立一个文件/etc/sambapassword
这个凭证的文件名可以不同,也可以为,相应的2中的文件名也修改(也可以为:/etc/smbpasswd或者其他)
该文件的内容为:
XML/HTML代码
- username=value
- password=value
- domain=value
XML/HTML代码
- //192.168.1.100/Public /home/binaryhat/Public cifs credentials=/etc/sambapasswd 0 0
遇到权限问题,可能是你所在的用户组没有相应权限,在credentials=/etc/sambapasswd,gid=998,uid=998 0 0
id命令可以查看相应的组用户的gid和uid
3.以管理员身份运行(重新挂载):
mount -a
如果没有错误的话,就可以挂载了。
参考:https://ask.fedoraproject.org/en/question/44738/mount-error22-invalid-argument-on-f20-using-fstab/
简单挂载可以不适用sambapasswd文件,在fstab直接添加加载参数。
匿名共享
XML/HTML代码
- //192.168.1.100/share /share cifs defaults,guest 0 0
XML/HTML代码
- //192.168.1.100/share /share cifs defaults,username=samba,password=samba
Debian/Ubutnu需要安装samba组件
sudo apt-get install samba samba-common
sudo apt-get install smbclient
sudo apt-get install cifs-utils
简单示例:
匿名:mount -t cifs //192.168.1.100/share /share -o user=guest,pass=guest
用户:mount -t cifs //192.168.1.100/share /share -o user=user,pass=pass
卸载:umount /share mount -a
Openwrt挂载共享目录
安装相关组件,如缺少其他组件,可以自己安装。
XML/HTML代码
- opkg update
- opkg install kmod-fs-cifs
- opkg install kmod-nls-utf8 kmod-nls-base kmod-crypto-hmac kmod-crypto-md5 kmod-crypto-misc cifsmount
XML/HTML代码
- mount -t cifs -o username="user",password="pass",file_mode=0777,dir_mode=0777,vers=1.0,iocharset=utf8 -v //192.168.1.100/share /mnt/share
简单使用的示例:
mount -t cifs //cifs-server/share /localfolder -o user=username,password=password
匿名访问:
mount -t cifs //cifs-server/share /localfolder -o guest
OpenWrt自动挂载共享目录方法
1、编写挂载命令保存成文件guazai
XML/HTML代码
- #!/bin/sh /etc/rc.common
- START=99
- STOP=15
- enable() {
- mount -t cifs -o vers=2.0,username=guest,iocharset=utf8 //192.168.31.210/nas /root/nas
- echo start
- #commands to launch application, such as above
- }
- start() {
- mount -t cifs -o vers=2.0,username=guest,iocharset=utf8 //192.168.31.210/nas /root/nas
- echo start
- #commands to launch application, such as above
- }
- }
enable自启动运行
username=guest,是不需要权限。如果需要权限,username=用户名,password=密码就可以了。
start 执行guazai start的时候执行(在自动挂载失效时挂载的)
前面为共享目录的原始地址,后面为需要挂载的地方//192.168.31.210/nas /root/nas
2、给文件执行权限
XML/HTML代码
- chmod +x guazai
XML/HTML代码
- ln -s /root/guazai /etc/rc.d/S99guazai
/root/guazai是我文件存放的位置,最好单独时放置一个文件夹内方便后期维护。
S99是执行优先级如果不是特别需要提前执行的命令S99就够了,不加的话有可能不会开机自启。
其他:
如果安装了 cifsmount 软件包 mount.cifs 可以代替 mount -t cifs,方法基本同mount命令。
简单使用的示例:
mount.cifs //cifs-server/share /localfolder -o user=username,password=password,iocharset=utf8,file_mode=0777,dir_mode=0
777,nounix,noserverino
匿名访问:
mount.cifs //cifs-server/share /localfolder -o guest,iocharset=utf8,file_mode=0777,dir_mode=0
777,nounix,noserverino
fstab挂载
XML/HTML代码
- //cifs-server/share /localfolder cifs userusername=user,passpassword=pass,sec=ntlm,file_mode=0777 0 0
IPV6网络SMB(Samba)连接方式
IPV6的服务器搭建了SMB服务,需要转换一下IPV6地址,才能直接连接SMB。
IPV6-SMB解决方案
一、绑定域名访问,
直接将IPV6地址绑定到你的域名AAAA记录,例如找个【smb.tools.cxthhhhh.com】绑定到【2001:41d0:1004:3298:0:ff:fec8:42a7】
然后通过【此电脑】-【添加网络位置】或【运行】直接添加你的域名地址即可。(同IPV4连接)
\\smb.tools.cxthhhhh.com
二、【运行】具体命令
例如我搭建好SMB的IPV6服务器IP是【2001:41d0:1004:3298:0:ff:fec8:42a7】
①将IPV6地址中的【:】(冒号)换成【-】(短横杠)
②在后面加上【.ipv6-literal.net】,完整地址如下
\\2001-41d0-1004-3298-0-ff-fec8-42a7.ipv6-literal.net
然后通过【此电脑】-【添加网络位置】或【运行】直接添加你的域名地址,,然后输入SMB账号密码,即可直接访问。