Armbian是Debian的arm分支版本,手头有个arm架构的盒子,网上大佬编译的armbian版本比较旧了,软件源也好老了,软件源带的samba版本也比较低,比较吃性能,不知道新版有没有性能方面的改善,装一下看看
放个结论在这里,新版本叼用没有,别吃饱了没事干更新了
首先移除旧版本samba
apt remove samba
apt autoremove
移除systemd的samba服务
rm /etc/init.d/smbd
rm /etc/init.d/samba-ad-dc
rm /etc/systemd/system/samba-ad-dc.service
rm /etc/systemd/system/smbd.service
systemctl daemon-reload
下载samba的源码,项目官网在这里 samba
wget https://download.samba.org/pub/samba/stable/samba-4.18.3.tar.gz
tar -xf ./samba-4.18.3.tar.gz
cd ./samba-4.18.3
安装依赖,这一步要按实际缺少的来装,不能照抄
apt install python3-dev pkg-config libgnutls28-dev zlib1g-dev libparse-yapp-perl \
libjansson-dev libarchive-dev libacl1-dev libjson-perl
./configure \
--disable-cups \ 关闭打印共享组件
--without-ad-dc \ 关闭AD域控组件
--without-ads \ 关闭AD域控组件
--without-ldap \ 关闭LDAP组件
--without-pam \ 关闭PAM认证组件
--with-shared-modules='!vfs_snapper' 关闭快照支持
执行编译
make -j 4 && make install
编译完应该在/usr/local/samba目录下找到samba的二进制文件
其实应该在configure的时候配置prefix的
创建systemd服务
cat > /etc/systemd/system/smbd.service << EOF
[Unit]
Description=Samba SMB Daemon
After=network.target
[Service]
Type=forking
PIDFile=/var/run/samba/smbd.pid
ExecStart=/usr/local/samba/sbin/smbd -D
ExecReload=/bin/kill -HUP $MAINPID
ExecStop=/usr/local/samba/bin/smbcontrol all shutdown
PrivateTmp=true
[Install]
WantedBy=multi-user.target
EOF
systemctl daemon-reload
systemctl start smbd && systemctl enable smbd