Samba (Русский)
From ArchWiki
i18n |
---|
Česky |
Dansk |
Deutsch |
English |
Español |
Italiano |
Română |
Русский |
Türkçe |
简体中文 |
正體中文 |
Contents |
Введение
Samba — программа, которая позволяет обращаться к сетевым дискам и принтерам на компьютерах сети с различными операционными системами по протоколу SMB/CIFS.
Установка
Для установки Samba-server, необходимо установить пакет Samba. Для этого выполните в терминале :
# pacman -S samba
Настройка Samba
В системной директории /etc/samba/ располагается оригинальный файл конфигурации smb.conf.default. Вам необходимо скопиировать его в ту же директорию, при этом переименовав его в smb.conf. Для этого от имени root выполните в терминале :
# cp /etc/samba/smb.conf.default /etc/samba/smb.conf
Откройте файл smb.conf для редактирования в удобном для Вас текстовом редакторе от имени root. Вы сразу заметите, что он достаточно хорошо коментирован, поэтому у Вас не должно возникнуть серьезных затруднений ( если их не возникло при изучении Ангийского :) ) во время конфигурирования. Там же в коментариях Вы найдете и примеры. Дополнительную информацию Вы найдете на странице справочного руководства:
$ man smb.conf
Но мы коротко остановимся на основных моментах.
smb.conf разбит на несколько разделов: по одному разделу на общий ресурс плюс один глобальный раздел для настройки параметров, которые используются везде. Некоторые параметры являются действительными только в глобальном разделе, а некоторые верны только за его пределами. Помните, что глобальный раздел может быть переопределён любым другим разделом.
Вероятней всего Вам необходимо определить в нем параметры Вашей локальной сети. Хотим обратить Ваше внимание на нижеследующие пункты: Замените имя группы в сккции [global] на действующее в Вашей сети:
[global] ..... workgroup = MyWorkGroup .....
Здесь же есть возможность определить краткое описание Вашего компьютера, которое будут видеть пользователи сети:
..... server string = Samba Server .....
Уровень безопасности пока лучше оставить по умолчанию:
..... security = user .....
Если у Вас есть желание попытаться увеличить производительность Samba, то добавьте в секцию [global] следующее:
wide links = yes socket options = TCPJJODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
где wide links включит следование Samba по символическим ссылкам, а опцией socket options Вы попытаетесь оптимизировать TCP. (Детальней об этом в "больше информации")
Сохраните файл и закройте редактор.
Добавление пользователей
SMB является протоколом с аутентификацией, т.е. вы можете указать имя пользователя и пароль, чтобы воспользоваться возможностями этой службы. Мы сообщаем серверу samba о том, что имена пользователей и пароли верны, посредством команды smbpasswd. smbpasswd допускает использование общих ключей для добавления как обычных пользователей, так и машин-пользователей (для SMB необходимо, чтобы вы добавили NETBIOS-имена компьютеров как машин-пользователей, ограничивая тем самым круг компьютеров, с которых может осуществляться аутентификация). Добавьте пользователя в файл /etc/samba/private/smbpasswd.
# smbpasswd -a <user>
Или добавьте имя комрьютера сети
# smbpasswd -a -m MachineName
Важно заметить, что при добавлении smb-пользователя, его учетная запись должна уже существовать в Вашей системе. Если это не так, то, при попытке добавить smb-пользователя, Вы получите ошибку вроде этой:
Failed to modify password entry for user "<user>"
В таком случае Вы можете воспользоваться командой adduser.Обратите внимание, что при использовании команды adduser для добавления имени компьютера к нему необходимо добавить знак доллара (“$”). Однако этого не нужно делать при работе с smbpasswd. Утилита smbpasswd самостоятельно добавляет знак доллара. Нарушение этого правила посредством adduser приведёт к ошибке при добавлении имени машины в samba.
# adduser MachineName$
За более детальной информацией по команде adduser обратитесь к справочному руководству.
Запуск демона Samba
Samba Вы можете запустить, выполнив в терминале от имени root:
# /etc/rc.d/samba start
Добавьте samba в список DAEMONS в Вашем файле rc.conf, если Вы желаете, чтобы она запускалась автоматически при старте системы. Samba, как правило, для слежения за изменениями в файловой системе использует FAM. Поэтому, при добавлении ее в rc.conf, необходимо учесть, что FAM должен быть запущен до запуска Samba. В качестве альтернативы FAM в Вашей системе может использоваться Gamin.
Присоединение общих ресурсов Samba
KDE и Gnome имеют возможность в своих браузерах просмтривать Samba-ресурсы.
Вы также можете для этого использовать консольный клиент smbclient. Для этого необходимо выполнить в терминале:
$ smbclient -L <hostname> -U%
чтобы получить список доступных ресурсов на сервере.
Монтирование ресурсов Samba
Для того, чтобы вручную смонтировать smb-ресурс, выполните в терминале команду :
# mount.cifs //<hostname>/<share> <mount_point> -o user=<username>,password=<password>
Для того чтобы можно было от обычного пользователя монтировать и размонтировать smb-ресурсы, Вам необходимо добавить setuid root к /sbin/mount.cifs. Как альтернативный вариант, Вы можете использовать пакет smbnetfs.
Добавление сетевых ресурсов в fstab
Для более простого монтирования/размонтирования, Вы можете добавить запись про интересующий Вас сетевой ресурc в /etc/fstab. Для этого добавьте туда строчку следующего вида :
//<hostname>/<share> <mount_point> cifs credentials=<credentials_file>,rw,user,noauto 0 0
Так как файл fstab имеет права на чтение для всех пользователей, то будет неразумно вставлять туда Ваш smb пароль.В этом случае Вы можете создать файл с правами доступа на чтение только Вами. Это обычный текстовый файл, который будет содержать следующее :
username=<username> password=<password>
Опция user в строчке fstab позволяет владельцу <mount_point> монтировать и размонтировать сетевой ресурс, а опция noauto выключает автоматическое монтирование ресурса при загрузке системы.
Если Вы добавили запись про Samba в fstab, то в таком случае Вы также должны добавить запуск демона netfs в Ваш rc.conf, так, чтобы он оказался после запуска демона network. Демон netfs будет монтировать сетевые диски при загрузке системы, но, что более важно, размонтируйте сетевые ресурсы перед тем, как выйти из системы. Даже если Вы используете опцию noauto в fstab, Вам всеравно необходимо добавить netfs в список запускаемых демонов. Без него, смонтированные какие-либо сетевые ресурсы, при выключении будут заставлять ждать демон network таймаута, что в свою очередь увеличит время выключения системы.
Решение проблем
Не могу подсоединиться к защищенному паролем ресурсу
Если у вас возникли проблемы при доступе к защищенному паролем общему ресурсу на Win98, попробуйте добавить в /etc/samba/smb.conf
[global] # THE LANMAN FIX client lanman auth = yes client ntlmv2 auth = no
Файловый менеджер не открывает общий доступ
Если при попытке создать общий ресурс через Nautilus или Konqueror Вам сообщается об ошибке :
‘net usershare’ returned error 255: net usershare: usershares are currently disabled
в таком случае проделайте следующее : откройте для редактирования файл /etc/samba/smb.conf и отредактируйте секцию [global] следующим образом :
[global] ..... usershare allow guests = Yes usershare max shares = 100 usershare owner only = False .....
Сохраните файл и закройте текстовый редактор. Далее создайте 'usershare' директорию где Samba будет хранить списки общих папок:
# mkdir /var/lib/samba/usershares # chgrp users /var/lib/samba/usershares/ # chmod 1770 /var/lib/samba/usershares/
И перезапустите Samba :
# /etc/rc.d/samba restart
Это все! (решение было найдено здесь)
Смотрите также
Больше информации
- Samba Samba (German) (archlinux.de)
- Official samba website
- Samba: An Introduction
- Ускорение работы Samba