Шрифт:
$ rsync -a host:src_dir dest_dir
примечание
Как отмечалось выше, можно использовать команду rsync для дублирования каталогов на локальном компьютере, если полностью опустить параметр host:.
12.2.9. Дальнейшие темы, относящиеся к команде rsync
Когда вам необходимо скопировать большое количество файлов, команда rsync должна прийти на ум одной из первых. Запуск этой команды в пакетном режиме чрезвычайно удобен, вы обнаружите множество параметров, позволяющих использовать вспомогательные файлы, связанные с параметрами команды, отчетами и состоянием передачи. В частности, файлы состояния позволяют ускорить продолжительные передачи и легко возобновить их в случае прерывания.
Команда rsync окажется также полезной для создания резервных копий. Можно, например, подключить к Linux интернет-хранилище вроде S3 от компании Amazon, а затем использовать команду rsync —delete, чтобы периодически синхронизировать файлы с этим хранилищем, организовав тем самым весьма эффективную систему резервного копирования.
Существует намного больше параметров командной строки, чем упомянуто здесь. Чтобы получить краткий обзор, запустите команду rsync —help. Более подробную информацию можно найти на странице руководства rsync(1), а также на домашней странице, посвященной команде rsync .
12.3. Введение в совместное использование файлов
Ваш компьютер с Linux, вероятно, не один в вашей сети, а когда в сети несколько компьютеров, практически всегда возникают поводы для совместного использования их файлов. Оставшаяся часть главы будет посвящена главным образом совместному использованию файлов на компьютерах с Windows и Mac OS X, поскольку будет интересно увидеть, каким образом Linux приспосабливается к совершенно другому окружению. Для совместного применения файлов на компьютерах с Linux или для доступа к файлам на устройстве сетевого хранения данных (NAS, Network Area Storage) нужно знать об использовании сетевой файловой системы (NFS, Network File System) в качестве клиента.
12.4. Совместное использование файлов с помощью пакета Samba
Если у вас есть компьютеры с Windows, то, вероятно, потребуется разрешить доступ к файлам и принтерам системы Linux с таких компьютеров, применяя стандартный сетевой протокол Windows — SMB (Server Message Block, блок сообщений сервера). Совместное использование файлов с помощью протокола SMB поддерживается также в Mac OS X.
Стандартный пакет ПО для совместного использования файлов в Linux называется Samba. Он не только позволяет Windows-компьютерам вашей сети получать доступ к системе Linux, но также работает в обратном направлении: можно получать доступ к файлам на серверах Windows c Linux-компьютера с помощью клиента Samba.
Чтобы настроить сервер Samba, выполните следующие действия.
1. Создайте файл smb.conf.
2. Добавьте в него разделы о совместном использовании файлов.
3. Добавьте в него разделы о совместном использовании принтеров.
4. Запустите демоны Samba: nmbd и smbd.
При установке сервера Samba из пакета дистрибутива ваша система должна выполнить перечисленные выше шаги, применив для сервера некоторые разумные параметры по умолчанию. Тем не менее ей, по-видимому, не удастся определить, какие именно ресурсы вашего Linux-компьютера вы предоставляете клиентам.
примечание
Обсуждение сервера Samba в этой главе краткое и сводится к тому, как добиться того, чтобы Windows-компьютеры внутри одной подсети видели автономный Linux-компьютер с помощью браузера Windows Network Places. Конфигурировать сервер Samba можно бесчисленным количеством способов, поскольку существует множество возможностей контроля доступа и разная топология сети. Чтобы узнать подробности о конфигурировании широкомасштабного сервера, обратитесь к книге Using Samba («Применение Samba», 3-е издание, O’Reilly, 2007), которая является намного более полным руководством, а также посетите сайт проекта Samba по адресу http://www.samba.org/.
12.4.1. Конфигурирование сервера Samba
Главным файлом конфигурации Samba является файл smb.conf, который в большинстве версий ОС помещается внутри каталога etc, например в каталоге /etc/samba. Тем не менее вам может потребоваться поискать его, поскольку он может также располагаться внутри каталога lib, например в каталоге /usr/local/samba/lib.
Формат файла smb.conf подобен стилю XDG, который вы уже встречали всюду (например, в конфигурации службы systemd): файл разбит на несколько секций, отмеченных с помощью квадратных скобок (например, так: [global] и [printers]). Секция [global] содержит общие параметры, которые применяются к серверу в целом и ко всем совместно используемым ресурсам. Эти параметры относятся главным образом к сетевой конфигурации и к контролю доступа. Приведенный ниже пример секции [global] демонстрирует, как настроить имя сервера, описание и рабочую группу:
[global]
# server name
netbios name = name
# server description
server string = My server via Samba
# workgroup
workgroup = MYNETWORK
Эти параметры означают следующее:
• netbios name — имя сервера. Если опустить этот параметр, сервер Samba использует имя хоста Unix;
• server string — краткое описание сервера. По умолчанию это номер версии пакета Samba;
• workgroup — имя рабочей группы SMB. Если вы находитесь в домене Windows, укажите для этого параметра имя вашего домена.