Издательский дом ООО "Гейм Лэнд"ЖУРНАЛ ХАКЕР #72, ДЕКАБРЬ 2004 г.

В ритме самбы

Anton Karpov

Хакер, номер #072, стр. 072-100-2


null passwords = no

encrypt passwords = yes

log level = 1

; Параметры оптимизации самбы, всеми рекомендуемые и проверенные опытным путем.

socket options = TCP_NODELAY IPTOS_LOWDELAY

read raw = yes

write raw = yes

oplocks = yes

max xmit = 65535

dead time = 15

getwd cache = yes

; Интерфейс, на который мы повесим самбу. Нет нужды цеплять ее на интерфейс, отличный от того, что смотрит в локалку.

interfaces = 192.168.0.1

bind interfaces only = yes

; Приоритет контроллеров, у кого он меньше, тот и авторитарнее. У нас одна машина - PDC, так что ставь разумное значение.

os level = 64

; Мы хотим выступать мастером (PDC)? Конечно, хотим!

local master = yes

domain master = yes

preferred master = yes

domain logons = yes

wins support = yes

smb passwd file = /usr/local/samba/private/smbpasswd

; Переменные для пользователей при логине в домен %U = user %L = server.

logon home = \\%L\%U

logon script = %U.cmd

logon path = \\%L\%U\profile

logon drive = Q:

; Обрати внимание: чтобы решить проблему с кодировкой на стороне сервера и клиента, в 2.2.х применялись следующие опции, которые не будут работать в 3.0.х:

; client code page = 1251

; character set = 1251

; В случае стандартной KOI8-R кодировки на сервере следует прописывать следующее:

dos charset = CP866

unix charset = KOI8-R

display charset = KOI8-R

hide dot files = yes

create mask = 644

dos filetimes = yes

dos filetime resolution = yes

delete readonly = yes

; Домашние каталоги станут первыми сетевыми дисками пользователей в домене.

[homes]

path = /home/%U

comment = Home Directories

browseable = no

writable = yes

valid users = %S

hide dot files = yes

; Шара для сетевого входа в домен.

[netlogon]

comment = Network Logon Service

path = /usr/local/samba/netlogon

browseable = no

read only = yes

writable = no

share modes = no

volume = NETLOGON

; Скрипт, который будет выполняться при входе юзера в домен, - о нем ниже.

root preexec = /usr/local/samba/bin/make_logon_script '%m' '%U' '%a' '%g' '%L'

; Публичное пространство. Планируется таким образом, что на втором сетевом диске будет создана та же иерархия каталогов, что и в /home. Каждый юзер будет владеть своим публичным каталогом, сможет писать в него и удалять, из других сможет только читать, в итоге - грамотное совместное использование ресурсов.

[public]

comment = Public File Space

path = /usr/local/samba/public

create mask = 644

public = yes

hide dot files = yes

writable = yes

volume = TMP

Гибкий скриптик

В smb.conf мы определили два ресурса, которые будут монтироваться при заходе пользователя в домен. Это личный диск пользователя \\servername\имя_юзера (его домашний каталог /home/имя_юзера на сервере), а также некий общий ресурс \\servername\public, который проецируется на каталог /usr/local/samba/public в системе и в котором мы создадим каталоги пользователей, куда они смогут записывать и удалять файлы для всеобщего пользования. Заметь, что директива create umask = 644 дает владельцу файла (тому, кто залил его на сетевой диск public) право модифицировать файл (читай - удалить его потом за ненадобностью), а всем остальным - только читать (то есть копировать к себе). Таким образом, ресурс public хоть и общий, но напоминает каталог /tmp в *nix-системах, где каждый может не только читать, но и писать/удалять только им созданные файлы (бит t). Теперь про сам скрипт для монтирования. Конечно, можно просто нацарапать:

Назад на стр. 072-100-1  Содержание  Вперед на стр. 072-100-3