Внутреннее устройство Linux
Шрифт:
12.4.6. Конфигурирование совместного использования файлов
Чтобы экспортировать каталог клиентам SMB (то есть чтобы совместно с клиентом использовать какой-либо каталог), добавьте в файл smb.conf секцию, подобную приведенной ниже (здесь параметр label задает название для совместно используемого ресурса, а параметр path — полный путь к этому каталогу):
[label]
path = path
comment = share description
guest ok = no
writable = yes
printable = no
При
• guest ok. Разрешает гостевой доступ к совместному ресурсу. Синонимом является параметр public.
• writable. Значение yes или true делает ресурс доступным для чтения и записи. Не разрешайте гостевой доступ к совместному ресурсу, позволяющему чтение и запись.
• printable. Определяет выводимый на печать совместный ресурс. Этот параметр должен быть равен no или false для совместно используемого каталога.
• veto files. Предотвращает экспорт всех файлов, которые соответствуют указанным шаблонам. Каждый шаблон следует поместить между слешами (чтобы он выглядел как /pattern/). Следующий пример запрещает экспорт объектных файлов, а также любых файлов или каталогов с именем bin:
veto files = /*.o/bin/
12.4.7. Домашние каталоги
Можно добавить в файл smb.conf секцию [homes], если вы желаете экспортировать домашние каталоги пользователям. Такая секция должна выглядеть следующим образом:
[homes]
comment = home directories
browseable = no
writable = yes
По умолчанию сервер Samba считывает из файла /etc/passwd запись, которая относится к вошедшему в систему пользователю, чтобы определить его домашний каталог для секции [homes]. Однако, если вы не хотите, чтобы сервер Samba так поступал (то есть вам необходимо хранить домашние каталоги Windows в месте, которое отличается от обычных домашних каталогов Linux), можно использовать подстановку %S в параметре path. Вот как, например, можно переключить для пользователя каталог [homes] на каталог /u/user:
path = /u/%S
Сервер Samba подставит текущее имя пользователя вместо %S.
12.4.8. Совместное использование принтеров
Можно экспортировать все принтеры клиентам Windows, добавив секцию [printers] в файл smb.conf. Вот как выглядит эта секция, если вы применяете стандартную для Unix систему печати CUPS:
[printers]
comment = Printers
browseable = yes
printing = CUPS
path = cups
printable = yes
writable = no
Чтобы использовать параметр printing = CUPS, ваша версия сервера Samba должна быть настроена на применение библиотеки CUPS и связана с ней.
примечание
В зависимости от конфигурации вам может также потребоваться разрешить гостевой доступ к принтерам с помощью параметра guest ok = yes, вместо того чтобы предоставлять пароль или учетную запись каждому, кому необходим доступ к принтерам. Например, легко ограничить доступ к принтерам в пределах одной подсети, использовав правила брандмауэра.
12.4.9. Использование клиента Samba
Клиент Samba — команда smbclient — может осуществлять вывод и на совместно используемые ресурсы Windows или пользоваться ими. Эта команда удобна, когда вы оказываетесь в среде, в которой необходимо взаимодействовать с серверами Windows, не предлагающими дружественные к Unix средства коммуникации.
Чтобы начать работу с командой smbclient, применяйте параметр -L для получения списка совместно используемых ресурсов на удаленном сервере с именем SERVER:
$ smbclient -L -U username SERVER
Не обязательно указывать параметр -U username, если ваше имя пользователя в Linux совпадает с именем пользователя на сервере SERVER.
После запуска команды smbclient она запросит у вас пароль. Чтобы попытаться получить гостевой доступ к ресурсу, нажмите клавишу Enter; в противном случае введите ваш пароль для сервера SERVER. При успешном подключении вы должны получить перечень совместно используемых ресурсов, подобный приведенному:
Sharename Type Comment
————- —— ———-
Software Disk Software distribution
Scratch Disk Scratch space
IPC$ IPC IPC Service
ADMIN$ IPC IPC Service
Printer1 Printer Printer in room 231A
Printer2 Printer Printer in basement
Поле Type поможет вам определить назначение каждого из ресурсов. Обращайте внимание только на ресурсы с типами Disk и Printer (ресурсы IPC предназначены для удаленного управления). В данном списке есть два дисковых ресурса и два принтера. Используйте имя из столбца Sharename, чтобы получить доступ к каждому ресурсу.
12.4.10. Доступ к файлам в качестве клиента
Если вам необходим лишь нерегулярный доступ к файлам на совместно используемом дисковом ресурсе, используйте следующую команду. Опять-таки можно опустить параметр –U username, если ваше имя пользователя в Linux совпадает с именем пользователя на сервере.
$ smbclient -U username '\\SERVER\sharename'
При успешном подключении появится приглашение, подобное приводимому ниже, которое говорит о том, что теперь вы можете перемещать файлы:
smb: \>
В таком режиме передачи файлов команда smbclient подобна команде ftp Unix, и вы можете запускать такие команды:
• get file — копирует файл file с удаленного сервера в текущий локальный каталог;
• put file — копирует файл file с локального компьютера на удаленный сервер;