<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/ DTD/wml_1.1.xml">

<wml>
<head>
<meta http-equiv="cache-control" content="max-age=180,private" />
</head>
<card title="ubuntu/debian/openwrt下开机自动挂载samba目录">
<p>
作者:<a href="index.php?action=showuser&amp;userid=1&amp;hash=">admin</a><br />时间:2023-02-09 08:38<br />分类:<a href="index.php?action=list&amp;cid=3&amp;hash=">电脑技术</a><br />内容:
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




2.在文件/etc/fstab文件中新加一行：




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


参考：http://www.cnblogs.com/linux130/p/5682368.html




3.以管理员身份运行(重新挂载)：


mount -a


如果没有错误的话，就可以挂载了。


参考：https://ask.fedoraproject.org/en/question/44738/mount-error22-invalid-argument-on-f20-using-fstab/




　　   http://www.cnblogs.com/unsea/archive/2012/09/19/2692470.html


　　   http://blog.csdn.net/lujun9972/article/details/46002905




简单挂载可以不适用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




参考：https://blog.csdn.net/autumoonchina/article/details/117415291


         https://blog.csdn.net/weixin_39856709/article/details/116768056


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=&quot;user&quot;,password=&quot;pass&quot;,file_mode=0777,dir_mode=0777,vers=1.0,iocharset=utf8 -v  //192.168.1.100/share  /mnt/share




注意：samba4对旧版共享协议smb1已经不支持，需要加上vers=1.0，记得加iocharset=utf8 -v 不然中文的全乱码。如果不是smb1协议，可以按实际情况调整参数。




简单使用的示例：


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




3、软连接至/etc/rc.d文件夹下




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







参考：Openwrt官网  恩山论坛  博客园




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账号密码，即可直接访问。




</p><p>
<a href="index.php?action=login&amp;hash=">立即登陆发表评论</a><br />
</p>
<p><a href="index.php?action=list&amp;hash=">返回日志列表</a><br /><a href="index.php?action=index&amp;hash=">返回主页</a></p>
</card>
</wml>
