Главная » Статьи » Мои статьи |
Основные настройки
В любом дистрибутиве Samba вы найдете примеры главного конфигурационного файла, /etc/smb.conf В файле есть глобальные настройки, которые влияют на поведение всего сервера и настройки в секциях - для каждого сервиса (и даже для конкретного пользователя). Каждая секция определяет ресурс сервера, например - секция из smb.conf
[public] ; Под таким именем ресурс будет виден path = /var/public ; Путь к ресурсу comment = Welcome! ; Что будет написано при детальном листинге force user = nobody ; Работа с файлами будет производиться от лица nobody guest ok = yes ; Возможен ли доступ для любого пользователя browsable = yes ; Появится ли ресурс при листинге read only = no ; Только для чтения? На права, которые Samba предоставляет пользователям в сети, накладываются ограничения доступа файловой системы сервера. Поэтому владельцем директории /var/public следует сделать nobody и разрешить ему запись в эту директорию. Не забудьте, однако поставить квоту на дисковое пространство для пользователя nobody ;-) Весьма интересной представляется секция [homes], которая позволяет каждому пользователю иметь директорию на сервере. [homes] ; В сети ресурс будет виден как имя пользователя, ; или будет отсутствовать, если пользователь не найден path = /home/%S ; Путь к ресурсу - вместо %S подставляется имя пользователя ; и мы получаем доступ к домашней директории comment = %S Home ; В комментарии будет написано " В этом примере мы встретились с подстановкой %S - вместо нее подставляется имя пользователя в сети. Есть еще несколько подстановок, некоторые из них весьма полезны, некоторые - менее. Например, %m даст нам имя машины клиента в сети, %u - имя клиента. Эти подстановки можно использовать практически с любой директивой, например ; Опции из глобальной секции log = /var/log/samba/%u ; На каждого клиента заведем его собственное "дело" ;-) include /etc/samba/%m ; Подключим настройки в зависимости от машины клиента ; (если есть такой файл с настройками) Доступ к домашним директориям осуществляется по паролю (пароль пользователя в Linux) Как сделать возможным доступ к другому ресурсу по паролю? [apple] ; Этот ресурс позволяет обмениваться файлами с Макинтошем ; через Linux. Конечно, для этого надо настроить AppleTalk path = /var/apple ; на Linux и дать доступ к этой же директории comment= Apple X-change ; Директория для обмена с Apple force user = apple ; Этот ресурс увидят все, но пароль будет от псевдо- ; пользователя с именем apple force group = aplle ; В группу apple входят те, кто может только читать файлы guest ok = no ; Нет, гостям мы яблок не даем :-) browsable = yes ; Ну, разве что облизнуться... read only = no ; Создаваемые файлы будут принадлежать apple create mode = 750 ; А вот так мы можем разрешить читать файлы ; пользователю tomato. Например, через его домашнюю ; директорию сделав SymLink (символическую связь файлов) ; /home/tomato/apple -> /var/apple Еще одна специальная секция - [printers] ; Принтеры path = /tmp ; Путь для временных файлов печати. browsable = no ; Нет, не будем показывать их writable = no ; Записывать в /tmp запретим printable = yes ; А вот печатать разрешим public = yes ; Разрешим печатать всем create mode = 700 Не поленитесь посмотреть man smb.conf - там Вы найдете не только список всех опций, но и несколько полезных советов и примеров. Для тех, кто не читает man'ы (и много теряет) - парочка маленьких хитростей.
Несколько хитростей
РуссификацияSamba поддерживает любую кодировку названий файлов, но проблема в том, что создав файл, скажем, Проверка.doc и попытавшись загрузить его в Word, вы получите ошибку : файл ПРОВЕРКА.DOC не найден. Не буду писать все, что я думаю по поводу такого вольного о бращения с названиями файлов, скажу только, что Samba решает и эту проблему. Насторойте у клиента правильно кодовую страницу. Укажите в конфигурации client code page = 866 ; Угадайте, какую кодировку использует Windows для доступа к файлам по сети? character set = koi8-r ; Такая кодировка стоит на сервере Можно использовать и второй, более старый метод. Но возможно, он более интересен тем, у кого стоит, например, еще и Литовская кодировка (хотя Win95 не позволяет давать Литовские имена - может, 98 может? :-( ) Запустите в окне DOS маленькую программу validchar.com, которая поставляется в дистрибутиве Samba, скопируйте строчку valid chars = .... которую она вам выдаст, и вставьте в глобальную секцию конфигурационного файла. valid chars указывает коды символов, которые разрешены в названии файлов, указывая так же их верхний/нижний регистр. При желании вы можете с легкостью расширить таблицу вручную. Не забудьте указать и кодировку сервера как в первом случае. Для совсем уж ленивых я привожу строчку из своего кон фига: valid chars = 33 35 36 37 38 39 40 41 45 48 49 50 51 52 53 54 55 56 57 64 97:65 98:66 99:67 100:68 101:69 102:70 103:71 104:72 105:73 106:74 107:75 108:76 109:77 110:78 111:79 112:80 113:81 114:82 115:83 116:84 117:85 118:86 119:87 120:88 121:89 122:90 9 4 95 96 123 125 126 127 160:128 161:129 162:130 163:131 164:132 165:133 166:134 167:135 168:136 169:137 170:138 171:139 172:140 173:141 174:142 175:143 224:144 225:145 226:146 227:147 228:148 229:149 230:150 231:151 232:152 233:153 234:154 235:155 236:156 237:157 238:158 239:159 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 241:240 243:242 245:244 247:246 248 24 9 250 251 252 253 254 255 Принтер
Если вы укажите load printer = yes в глобальной конфигурации, то возможно вас поразит обилие зашаренных принтеров на вашем сервере. Все алиасы из /etc/printcap будут выглядеть как отдельные принтеры. Чтобы этого избежать, скопируйте printcap в printcap.s mb, отредактируйте его, убрав алиасы и укажите printcap name = /etc/printcap.smb Я использую программку a2ps для печати PostScript файлов на обычном принтере и некоторых других возможностей - например для печати текстового файла боком, с заголовком, мелким шрифтом, по 2 страницы на листе. Я указал в printcap.smb свой обычный lp принт ер, и установил его под Windows как сетевой с драйвером Generic/Text Only. Теперь и из-под Windows можно печатать экономно.
Заключение
Хороший системный администратор - ленивый администратор. Если он сидит без дела, значит, он хорошо выполняет свою работу. Один раз покопавшись в настройках и все правильно сконфигурировав, он может только изредка почитывать логи, да удалять старые файлы (О, нет! Я уже и для этого написал скрипты в crontab!) На одной, по серверным меркам достаточно средней машине, стоит Samba для сети Microsoft, AppleTalk для Apple, NFS для Digital UNIX и ftp для тех, кто уж ничего больше не умеет. Можно было бы еще поста вть эмулятор Novell сервера, но похоже, что это уже в прошлом...
Я не стремился написать руководство по установке и конфигурированию Samba, я просто поделился настройками конкретного, работающего сервера, чтобы дать вам представление о диапазоне возможностей Samba и Linux. И последняя новость - пару дней назад вышла Samba 2.0 Beta1. Будем ставить... | |
Просмотров: 2556 | | |
Комедия из жизни высоких технологий в трёх частях, с моралью и системными требованиями. |
Про админов |
Стишки на комп тему |
просто компюмор |
Локальный асько-сервер |
Всего комментариев: 0 | |