|
发表于 2022-6-19 22:44:51
|
显示全部楼层
! O" n1 Y! ?9 d- `" o# s1 t: W. _: J; }插上U盘,按照惯例会被挂载到/mnt目录下,果然多了一个文件夹usb1_1,打开并chmod 777 ./busybox-mips,就可以用完整版的Busybox了。
0 X% _; H8 F/ x% n: D注意,如果你的U盘/移动硬盘没有识别并自动挂载,建议检查文件系统,我的U盘文件系统是FAT32,块大小为4KB,实测是可以识别的。
6 X* U! W3 g2 |9 e这回能用df命令了,执行./busybox-mips df -m,可以看到有两块空间是可用的,分别是U盘/mnt/usb1_1和约84MB的/usr/osgi,猜想是光猫的内置闪存,去看了一下,闪存内有一大堆不明所以的文件,先不管。5 G' x( x& ~* T1 ]# O4 J
OK既然内置了Samba服务器,那肯定要利用起来。不过这光猫的是个魔改版,折腾了足足两晚上才跑起来,坑爹啊!) A, S+ ^0 w& y7 s7 ~4 a8 q
简单说一下有啥坑:
1 [8 z* q! Q' s3 f( H9 a8 e! ]& U8 ^2 M3 A. t& X5 p6 E
share共享方式(匿名访问)死活用不成,必须要user共享方式。
% k6 M& s2 L) H& O1 I; `% R: guser共享方式默认需要nobody用户,但是adduser nobody会提示adduser: group name nobody already in use,但是我执行cat /etc/passwd,里面明明没有nobody用户啊!?这个问题最后通过换成光猫root用户CMCCAdmin解决了。3 q- }) b$ Y& S- x: q
Samba老版本的一个BUG,普通用户会错误,必须要root用户。0 r! A) \) w7 y" q/ r" E
下面说一下如何配置,首先依次执行:7 H/ Y& A: J% x
{' N! p$ f% @8 G' y+ P: a, vmkdir /mnt/usb1_1/sambamkdir /mnt/usb1_1/samba/logs
" M" B7 {# C' _./busybox-mips vi /mnt/usb1_1/samba/smb.conf#然后把下文中的配置文件修改并写进去。
+ H4 ]4 Q0 z3 K5 @$ x下面是一个光猫能用的配置:smb.conf。(OldLiu请自行改为你想要的用户名)
/ C& l: z- u& p0 H1 i' l; [! K1 z8 `2 Y
[global]. `" a' _- {" ?
netbios name = server, u; L& U! w* p/ q* ]9 [. I& ~
workgroup = workgroup
9 ?6 W& O p7 N2 J& J; s: v. cmax connections = 0# q( J& Y4 `" v# t, d ]
deadtime = 0
8 E# Q V3 J$ b7 k& Alog file = /mnt/usb1_1/samba/logs/%m.log
) T8 O. J( \: J+ M) Lmax log size = 50
0 Y2 x+ U! W: u! Fguest ok = no: e9 `7 S( G6 E# B2 y: @2 a4 f
guest account = CMCCAdmin
- o$ d, b4 ]0 o#guest account = nobody& u$ o* I5 F& _3 ?0 |. N) F. l
encrypt passwords = yes' j1 s4 W8 M; u( F+ u" ]
security = user
( G% L9 U* S! D) w, \load printers = no9 C! r- c4 e( L6 I$ @7 @+ A& n
[External USB Disk]; N- ^; R' A/ s
path = /mnt/usb1_1
' Y) Y1 z ~* {browseable = yes7 M; u0 d% i" ^0 t# X/ Z- s# ^6 m
writable = yes- y; x4 W/ d! P% `, ~
available = yes
& R. N( H# m2 Q5 j4 p: M- l3 iadmin users = OldLiu . d Z; R- L* O4 h2 b* K' N* _
valid users = OldLiu
5 p {9 {% a( Twrite list = OldLiu
* G* @% s. D! x6 O[Internal Flash Disk]& o; l( o- {4 ~/ L- k. t; {
path = /usr/osgi: L# `- k* S! I( F* ?0 Q1 E
browseable = yes
" f Y) H3 A1 Z+ _* {8 Bwritable = yes
5 o- H. s. R+ a5 y I4 Vavailable = yes% b9 g. X, U' A% E9 J/ l
admin users = OldLiu ) `& ^. i+ Z4 i* B4 {3 u) @ y
valid users = OldLiu / i; {: b$ w* `. T2 r$ D: s- T
write list = OldLiu
* G" L2 N; |; O" U9 z$ \% ?" b接下来编写这个脚本(OldLiu改成你刚才设的用户名,并放置在/mnt/usb1_1/samba/下),运行并输入两次密码,就可以启动Samba文件共享服务器了。; h" H1 {# ~. N4 g) u/ z
/ o% U9 i( c6 M( N. p6 e! s
#!/bin/shcd "$(dirname "$0")"#read -p "Enter username:" namename='OldLiu'echo "Your user name is $name."echo "$name::0:0:root:/:/bin/sh" >> /etc/passwd#echo "nobody::500:500:Linux USER:/:/bin/sh" >> /etc/passwdsmbpasswd -c smb.conf -a $namesmbd -D -s ./smb.conf#smbd -F -S -s ./smb.conf &
4 j: ~) _% A# c5 n$ T. H1 _之后在Windows上通过Windows + R打开运行,输入\\192.168.1.1回车,再填好刚才设置的用户名和密码,就大功告成了。还可在此电脑上右键->映射网络驱动器,让其作为两块网络硬盘固定显示在文件资源管理器里面。
' @6 }# J: @9 O9 u. }% \& zAndroid可以用ES文件浏览器连接,这里不再赘述。; p2 e2 W6 B# v& d" J: m
如果光猫重启,则直接执行脚本并输入密码,就可以启动服务器了。
0 T4 @7 m( J* u6 G7 ]4 B7 s R8 Z注意,如果之后在光猫内改了共享密码,则Windows需要删除凭证并重启,否则会死活连不上共享的。& z& R. F! X& V' R
进入会有两个子目录,相信我设置的目录名已经说明它们代表什么了,这里不再赘述。
3 A% O6 l. |$ G$ ]7 T' _4 H想要关闭服务器,可以killall smbd,想再打开,可以smbd -D -s /mnt/usb1_1/samba/smb.conf。* Q- `+ A; m4 I! m& \8 y
多台设备公用的文件,比如音乐,电影等,可以放置在U盘/移动硬盘上,开启服务器后多个设备随时都能访问,挺方便的。3 R7 S6 b7 N3 e! B" F3 `! R G8 U
' ~8 A5 V( m3 S5 M版权声明, A) u- t3 q0 r9 ~4 Q
' q& F Z4 g9 e: Q7 H
# A+ ^* b( A/ h- s/ ~
转载 |
|