۱. نصب
sudo apt update
sudo apt install -y samba۲. ساختار پوشهها و گروهها
sudo groupadd -f finance
sudo groupadd -f staff
sudo mkdir -p /srv/share/{finance,public}
sudo chgrp finance /srv/share/finance && sudo chmod 2770 /srv/share/finance
sudo chgrp staff /srv/share/public && sudo chmod 2775 /srv/share/public۳. تعریف اشتراکها
به انتهای /etc/samba/smb.conf:
[global]
server min protocol = SMB2_10
map to guest = never
[finance]
path = /srv/share/finance
valid users = @finance
read only = no
create mask = 0660
directory mask = 2770
vfs objects = recycle
recycle:repository = .recycle/%U
recycle:keeptree = yes
recycle:versions = yes
[public]
path = /srv/share/public
valid users = @staff
read only = yes
write list = @financevfs recycle فایلهای پاکشده را بهجای حذف، در پوشهی .recycle نگه میدارد.
۴. کاربران
sudo adduser --no-create-home --disabled-login --gecos "" maryam
sudo usermod -aG finance,staff maryam
sudo smbpasswd -a maryam۵. اعمال
testparm -s
sudo systemctl restart smbd
smbclient -L localhost -U maryamاز ویندوز: \\192.168.10.21\finance
۶. پاکسازی دورهای سطل بازیافت
echo '0 3 * * * root find /srv/share/*/.recycle -type f -mtime +30 -delete' | sudo tee /etc/cron.d/samba-recycle