OpenWrt 15.05 下安装Samba

要修改路由器上的文件,在命令行下操作始终不如在本地编辑文件来的方便,所以我将路由器的文件系统映射为共享目录直接用notepad++编写效率高些。

基本步骤为安装samba-server 和配置2个步骤。

0x01

安装samba服务端

opkg install samba36-server

只要顺利一般这一行命令就安装完毕,如果找不到该包,需要先update一下

opkg update
opkg install samba36-server

这个命令安装的是samba的3.6版本,如果将来版本升级可能会找不到该包,则先查看opkg软件源是哪个版本

opkg update
opkg list | grep samba


0x02

配置文件为/etc/samba/smb.conf.template

有文章说配置的是/etc/samba/smb.conf 但是在openwrt下,samba服务重启,该文件就被重置了。

vi /etc/samba/smb.conf.template

首先注释掉[global]下的invalid users = root 这行,如果不注释掉则拒绝root用户登录。

#invalid users = root

接着就是增加共享目录,例子如下:

[etc]

path = /etc

valid users = root

guest ok = no

admin users = root


#意思是建立一个名叫做“etc”的共享目录,目录的位置是/etc ,允许root用户登录,拒绝游客。

配置完后,root用户还是没法登录,应该说samba会用系统的登录名,但是不会用系统的密码做验证,所以需要为samba设置一下密码

smbpasswd -a root

根据该命令的提示,输入root的验证密码,之后共享则使用该密码登录。

最后重启一下samba

/etc/init.d/samba restart


0x03

把以上操作做成shell脚本:

opkg update
package=`opkg list | grep samba36-server | awk '{print $1}'`
opkg install $package
sed -i '/invalid users/s/invalid/#invalid/g' /etc/samba/smb.conf.template
(cat <<EOF
[etc]
path = /etc
valid users = root
guest ok = no
admin users = root
[tmp]
path = /tmp
valid users = root
guest ok = no
admin users = root
[usr]
path = /usr
valid users = root
guest ok = no
admin users = root
[var]
path = /var
valid users = root
guest ok = no
admin users = root
[www]
path = /www
valid users = root
guest ok = no
admin users = root
EOF
) >>/etc/samba/smb.conf.template
smbpasswd -a root
/etc/init.d/samba restart



你可能感兴趣的:(samba,openwrt)