摘要:安装后是无法运行的,因为默认是没有smb.conf 配置文件的,所以需要先建立conf文件
选择国内源或亚洲源
更新
pkg update pkg install samba安装后是无法运行的,因为默认是没有smb.conf 配置文件的,所以需要先建立conf文件
mkdir -pv $PREFIX/etc/sambacp $PREFIX/share/doc/samba/smb.conf.example $PREFIX/etc/samba/smb.conf nano $PREFIX/etc/samba/smb.conf只需修改想要共享的目录即可,其他不用改,如我的修改成这样:
还有其他硬盘照此格式添加。
注意!!! Samba 使用的端口是 445 和 139 ,而 Termux 的默认配置文件中的端口为 4445 和 1139,因为未 root 的手机 1023 以下的端口是没有权限使用的。
没有ROOT权限的手机,这里修改map to guest=Never为map to guset= bad user,下面共享文件夹设置guest ok=yes,默认端口不要修改。
然后匿名登录,密码为空: 注意:访问地址一定要加上设置的共享文件夹名称,不加会显示用户名称登录,无论输入什么名称都无法成功登录!
如果是小米手机,可以申请解锁获取 ROOT 权限,安装 Magisk 后,这里修改成 445 和 139 端口,这里以高级权限运行 Samba ,后面继续。
smbpasswd -a 用户名如果是已 ROOT 手机,安装 tsu后,使用如下命令
sudo -E smbpasswd -a 用户名尝试运行
smbdps -ef|grep smb #检查进程是否运行如果输出 smbd 进程信息,表示成功运行:
我这里用的 ROOT 权限运行的结果。
ROOT 用户直接输入:\\ip,即可访问,不用加端口号,Mac、Linux 用户输入 :smb://ip:4445,即可访问。
Termux 终端会话结束后,重新进入又要重新运行一遍 smbd ,非常麻烦,尤其是有多项服务时。Termux 虽然没有service和systemd这样的服务管理进程,但也有简单易用的服务管理程序——Termux-Services。
pkg install termux-services建立 Samba 自动运行目录脚本
mkdir -pv $PREFIX/var/service/samba #建立服务收集目录nano $PREFIX/var/service/samba/run #建立服务运行脚本脚本内容如下
#!/data/data/com.termux/files/usr/bin/shexec smbd 2>&1如果要以 ROOT 权限运行,脚本内容如下
#!/data/data/com.termux/files/usr/bin/shexec sudo -E smbd 2>&1添加执行权限:
chmod +x $PREFIX/var/service/samba/run启动:
sv up samba设置为自动运行:
sv-enable samba如是如是,随心所欲!
sv-enable cmd #cmd服务设为自启动sv-disable cmd #取消cmd自启动sv down cmd #停止cmd服务,并使本次Termux运行期间cmd自启动服务失效sv up cmd #启动cmd服务sv statuscmd #查看cmd服务运行状态来源:半点心荒