Первым делом — обновляем порты:
# cd /usr/ports
# portsnap fetch update
Далее, находим актуальную версию Samba:
# cd /usr/ports/net/
# ls | grep samba
…
samba34
samba35
samba36
…
Приступаем к установке:
# cd /usr/ports/net/samba36
Из опций можно добавить With Syslogd:
Опции:
LDAP — поддержка LDAP.
ADS -поддержка Active Directory. Отключаем.
CUPS — поддержка сервера печати CUPS.
WINBIND — обьединение пользвателей Windows/Unix. Почитать можно тут>>>.
ACL_SUPPORT — поддержка Access Control List.
AIO_SUPPORT — поддержка возможности асинхронного ввода-вывода.
FAM_SUPPORT — API для мониторинга за состоянием файла или группы файлов/директорий.
SYSLOG — поддержка логирования syslog. Включаем.
QUOTAS — поддержка квотирования. Поскольку диски не резиновые, а пользователи жадные до дискового пространства — включаем.
UTMP — включаем поддержку уникального идентификатора для каждого вновь подключенного пользователя. Поскольку понижает производительность — выключаем.
PAM_SMBPASS — поддержка синхронизации системных пользователей и пользователей samba. В нашем случае неактуально, поэтому оставляем выключеным.
DNSUPDATE — поддержка динамического обновления DNS. Поскольку данный вариант работает с поддержкой Active Directory, что нам не нужно, то оставляем отключенным.
EXP_MODULES — поддержка експериментальных модулей. А нам нужна стабильность в работе.
POPT — поддержка системной библиотеки анализа коммандной строки.
PCH — предкомпиляционная оптимизация заголовков.
MAX_DEBUG — включение режима максимальной отладки.
SMBTORTURE — утилита для стресс-тестирования серверов.
Добавляем автозапуск при старте сервера. В файл /etc/rc.conf добавляем:
samba_enable=»YES»
Или:
nmbd_enable=»YES»
smbd_enable=»YES»
Теперь — добавим пользователя:
# adduser sambaroot
Username: sambaroot
Full name:
Uid (Leave empty for default):
Login group [sambaroot]:
Login group is sambaroot. Invite sambaroot into other groups? []:
Login class [default]:
Shell (sh csh tcsh bash rbash nologin) [sh]: nologin
Home directory [/home/sambaroot]:
Home directory permissions (Leave empty for default):
Use password-based authentication? [yes]:
Use an empty password? (yes/no) [no]:
Use a random password? (yes/no) [no]:
Enter password:
Enter password again:
Lock out the account after creation? [no]:
Username : sambaroot
Password : *****
Full Name :
Uid : 1002
Class :
Groups : sambaroot
Home : /home/sambaroot
Home Mode :
Shell : /usr/sbin/nologin
Для каждого созданного пользователя — выполняем следующую команду, что бы SAMBA добавил его в собственную базу (в случае, если не используется MySQL или LDAP)
# smbpasswd -a sambaroot
New SMB password:
Retype new SMB password:
Added user sambaroot.
Проверить, какие пользователи есть в SAMBA можно командой:
# pdbedit -L
setevoy:1001:User &
sambauser:1003:User &
Теперь — пробуем запустить сервер:
# service samba onestart
Removing stale Samba tdb files: …… done
Starting nmbd.
Starting smbd.
Проверяем:
# service samba status
nmbd is running as pid 44633.
smbd is running as pid 44636.
Если появляется сообщение такого плана «nmbd is not running» — решение описано тут>>>.
В целом, мой файл конфигурации получился таким:
[global]
workgroup = WORKGROUP
server string = Setevoy home samba server
security = user
load printers = no
log file = /var/log/samba/log.%m
max log size = 50
interfaces = re0
dns proxy = no
display charset = koi8-r
unix charset = koi8-r
dos charset = cp866
[public]
comment = Public Stuff
path = /home/samba
public = yes
writable = yes
guest ok = yes
write list = @wheel
[homes]
comment = Home Directories
browseable = no
read only = no
Краткое пояснение к опциям:
# comment — комментарий к ресурсу
# path — путь к каталогу, который необходимо «расшарить»
# browseable — будет ли каталог виден в «сетевом окружении», или будет скрытым
# writable — возможно ли записывать данные в этот сетевой ресурс
# valid users — список пользователей, которым разрешен доступ к данной шаре
# hosts allow — перечень IP, которым разрешен доступ к данной шаре
Ссылки по теме:
http://www.lissyara.su
http://allpro.com.ua
http://www.freebsd.org
http://muff.kiev.ua
http://www.linuxcenter.ru