在linux配置samba服务器供电视使用
安装
nix-env -iA nixpkgs.samba
smbd --version
Version 4.13.7
创建一个配置文件
touch /vagrant_data/smb.conf
# 原文
[global]
#与主机名相关的设置
workgroup = leng samba server
netbios name = leng samba server
serverstring = this is a test samba server
# 与密码相关的设置
passdb backend = tdbsam
# 指定网卡
interfaces = 192.168.1.101/24
# 设则全部文件夹匿名访问
map to guest = Bad User
[vagrant]
comment = vagrant user
path = /tmp
writable = yes
browseable = yes
guest ok = yes
[leng]
comment = leng user
path = /home/vagrant
writable = yes
browseable = yes
guest ok = yes
# nixpkgs.samba
# 运行
# sudo smbd -l /tmp -s /vagrant_data/smb.conf -d 10
# 查看状态
# ps aux|grep smb
# 生成密码, 注意 需增加相应的系统账号vagrant,vagrant就可一进入[vagrant]和[leng]对应的配置path目录了
# sudo pdbedit -a vagrant -s /vagrant_data/smb.conf
# Abc123456
# \\192.168.33.10\vagrant
# \\192.168.33.10\leng
# 如果遇到文件夹权限问题
sudo chmod 777 /var/lib/samba/private/
# 删除文件夹,启动的时候会自动创建
sudo rm -rf /var/lib/samba/private/msg.sock
# 启动
sudo smbd -s ~/smb.conf -l /tmp/ -d 10
# sudo chmod -R 0700 /var/lib/samba/private/msg.sock
运行起来
# -d 10 是日志等级.日志配置到/tmp目录: cat /tmp/log.smbd
sudo smbd -l /tmp -s /vagrant_data/smb.conf -d 10
对当前系统用户设置访问密码
# 当前我的用户是 vagrant
sudo pdbedit -a vagrant -s /vagrant_data/smb.conf
# 输入密码, 包含大小写, 如: Abc123456
访问
# windos在资源管理器输入访问地址,然后输入用户名密码即可
# \\[IP]\[name]
# 如:
\\192.168.33.10\vagrant
\\192.168.33.10\leng
另一个完整例子
[global]
netbios name = GL-AR300M
display charset = UTF-8
interfaces = lo pppoe-wan br-lan
server string = GL-AR300M-055
unix charset = UTF-8
workgroup = WORKGROUP
browseable = yes
deadtime = 30
domain master = yes
encrypt passwords = true
enable core files = no
guest account = nobody
guest ok = yes
invalid users = root
local master = yes
load printers = no
map to guest = Bad User
max protocol = SMB2
min receivefile size = 16384
null passwords = yes
obey pam restrictions = yes
os level = 20
passdb backend = smbpasswd
preferred master = yes
printable = no
security = share
smb encrypt = disabled
smb passwd file = /etc/samba/smbpasswd
socket options = TCP_NODELAY IPTOS_LOWDELAY
syslog = 2
use sendfile = yes
writeable = yes
[homes]
comment = Home Directories
browsable = no
read only = no
create mode = 0750
[GL-Samba]
path = /mnt/sda1
read only = no
guest ok = yes
docker,dperson/samba
# 警告!!! 映射到实体机的目录需要注意,权限和权限归属会发生变化,导致不可写,推荐只用单独的文件夹进行-v映射
drwxrwxr-x 100 101 3.1 KB Sun Aug 14 00:09:12 2022 下载
# 映射到容器mount目录; 访问地址是/public/文件夹下
docker run -it --name samba -p 139:139 -p 445:445 \
-v /home/jcleng/download:/mount \
-d dperson/samba -p \
-s "public;/mount"
# 访问
smb://192.168.1.214/public/
linux 手动挂载
# 安装软件
cifs-utils
# 手动挂载,username是windows的用户名
mkdir ~/work
sudo mount -t cifs //192.168.33.1/work ~/work -o username=administrator,uid=$UID,file_mode=0777,dir_mode=0777