Чтение онлайн

на главную - закладки

Жанры

Linux: Полное руководство

Аллен Питер В.

Шрифт:

Добавьте в ядро модуль сетевой платы:

# insmod rtl8139.о (для Realtek 8139)

# insmod ne2k-pci.o (для NE2000 PCI)

Назначьте интерфейсу IP-адрес:

# ifconfig eth0 <IP_ адрес > broadcast <BROADCAST_адрес> netmask <маска>

Указать шлюз для выхода в Интернет можно командой route:

# route add default gateway <IP_адрес_шлюза>

Если в Интернет выходить вы пока не собираетесь, то удалить установленный маршрут можно командой

route del default
. Команда
route
без аргументов выводит текущую таблицу маршрутизации пакетов.

Перезапустите сетевую службу, и можно пинговать только что настроенный интерфейс.

6.3. Подключение к Windows-сети

Вам удалось достучаться (ping) до всех компьютеров своей локальной сети, работающих под управлением ОС Windows, но хотелось бы большего? Например, обмениваться с ними файлами? Если в вашей сети есть папки, к которым открыт общий сетевой доступ, то это возможно. Поможет вам пакет Samba.

Название Samba происходит от названия протокола SMB (Server Message Block), он же NetBIOS, на котором основана работа Windows-сети. Пакет Samba содержит набор приложений, позволяющих Linux-машине включиться в работу такой сети — как в роли клиента, так и в роли сервера.

В роли обычного пользователя вам достаточно уметь подключаться к Windows-сети как клиенту. Для этого вам понадобятся пакеты samba-common и samba-client, входящие в большинство современных дистрибутивов. Если их у вас нет, то загляните на

http://www.samba.org
.

Пусть сетевой доступ к папке открыт на компьютере, имя которого в сети Windows USER5. Посмотрим сначала на список всех доступных ресурсов на этом компьютере:

$ smbclient -L user5 -U <имя_пользователя>

Имя пользователя — это не ваше регистрационное имя на Linux-машине, а имя того пользователя машины Windows, кто имеет доступ к ее ресурсам. После ввода пароля вы увидите что-то вроде:

Domain=[USER5] OS=[Windows 5.1]

Server=[Windows 2000 LAN Manager]

Sharename Type Comment

– -------- ---- -------

SharedDocs Disk

WIN (C) Disk

ADMIN$ Disk Remote Admin

Public Disk

[...]

Publicэто та папка, которая вас интересует. Для приема-передачи файлов предназначена программа smbclient. Чтобы ускорить (или автоматизировать) ввод пароля, введите ее в таком виде:

$ smbclient //user5/public -U <имя_пользователя>%<пароль>

Вы увидите приглашение программы:

smb: >

и сможете вводить ее команды. Первым делом введите команду help для получения списка всех доступных команд. В таблице 6.3 перечислено несколько самых полезных из них.

Команды программы smbclient Таблица 6.3

Команда Описание
ls Выводит список файлов в папке
cd [папка] Выполняет переход в заданный каталог на сервере (учтите, что именно на сервере, а не на клиентском компьютере). В том случаи, если каталог не указан, то smbclient просто выдаст имя текущего каталога
get [файл] [локальное имя] Получает указанный файл из общего ресурса и сохраняет его на локальном компьютере. Если указано локальное имя, то полученный с сервера файл будет сохранен на клиентском компьютере под этим именем
put [файл] [удаленное имя] Копирует файл на сервер и сохраняет его там под указанным именем. Если это имя не указано, то файл при сохранении переименовываться не будет
mget [файлы] Получает все указанные файлы с сервера
mput [файлы] Копирует все указанные файлы на сервер
del [файлы] Удаляет на сервере указанные файлы, если, конечно, пользователь обладает на это правами
! Позволяет временно выйти из smbclient, чтобы выполнить команду на локальном компьютере. Например, ! ls — это просмотр текущего каталога на локальной машине
exit или quit Завершение сеанса работы программы smbclient

Использовать программу smbclient не очень удобно. Если вы собираетесь обмениваться файлами часто, то лучше использовать программу smbmount, которая умеет монтировать удаленный общий ресурс как обычную файловую систему. Ниже приведен пример команды, которая монтирует папку

customers
компьютера USER5, используя имя пользователя den. Точка монтирования — каталог
/mnt/customers
:

$ smbmount //user5/customers -U den /mnt/customers -U 500 -G 100

В этом примере владельцем смонтированного каталога объявляется пользователь с идентификатором (UID) 500 и идентификатором группы 100.

Закончив работу с обшей папкой, размонтируйте ее командой

$ smbumount /mnt/customers

Если вместо русских имен файлов вы видите непонятные символы, значит, кодировки кириллицы на вашем компьютере и на Windows-машине различны и вам нужно указать дополнительные опции монтирования:

codepage=<arg>
 — для кодовой страницы, применяемой на удаленной машине (обычно для кириллицы это cp866), и
iocharset=<arg>
— для кодовой страницы на стороне Linux. Значение iocharset зависит от установленной локали, и узнать его можно по команде locale:

$ locale

LANG=ru_RU.UTF-8

[...]

В моем примере на стороне Linux используется Юникод (а могло бы быть, например, KOI8-R), и команда монтирования будет выглядеть так:

$ smbmount //user5/customers /mnt/customers \

>-о username=den,password="12345",\

>codepage=cp866,iocharset=utf8

Параметры, перечисленные после ключа -о, нужно разделять запятыми, но не пробелами.

Обратный слэш — это конструкция, позволяющая записать одну длинную команду на нескольких строках. Я использовал ее для наглядности, а вы пишите в одну строку.

Обратите внимание, что при монтировании внешних файловых систем значение кодовой страницы пишется как «cp866», а для локальных файловых систем (раздела FAT32 на вашем жестком диске, где установлена Windows) — просто «866».

Запускать программу smbmount имеет право только суперпользователь. Чтобы обычный пользователь мог ее запустить, следует установить для нее атрибут SUID, однако такое решение является небезопасным. Выходом из этого положения может послужить запуск программы smbmount при загрузке системы. Добавьте в сценарии автозагрузки (советую — в

/etc/rc.local
, см. п.9.1.2) вызов программы smbmount для монтирования файловых систем совместного использования, с которыми вы работаете чаще всего. После этого обычные пользователи смогут работать с удаленными ресурсами как с обычной локальной файловой системой.

Поделиться:
Популярные книги

Правь, Британия!

дю Морье Дафна
Проза:
современная проза
6.25
рейтинг книги
Правь, Британия!

Роза ветров

Кас Маркус
6. Артефактор
Фантастика:
городское фэнтези
аниме
фэнтези
5.00
рейтинг книги
Роза ветров

Сильмистриум

Лазорева Ксения
Сансион
Фантастика:
ненаучная фантастика
боевая фантастика
космическая фантастика
космоопера
фантастика: прочее
4.71
рейтинг книги
Сильмистриум

Паралогии

Липовецкий Марк Наумович
Научная библиотека
Научно-образовательная:
культурология
5.00
рейтинг книги
Паралогии

Изгой. Трилогия

Михайлов Дем Алексеевич
Изгой
Фантастика:
фэнтези
8.45
рейтинг книги
Изгой. Трилогия

Пламенев. Книга 3-7

Карелин Сергей Витальевич
Пламенев
Фантастика:
аниме
уся
фэнтези
сянься
5.00
рейтинг книги
Пламенев. Книга 3-7

Неучтенный элемент. Том 2

NikL
2. Антимаг. Вне системы
Фантастика:
городское фэнтези
фэнтези
5.00
рейтинг книги
Неучтенный элемент. Том 2

Кодекс Охотника. Книга XXIX

Винокуров Юрий
29. Кодекс Охотника
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Кодекс Охотника. Книга XXIX

Дважды одаренный. Том II

Тарс Элиан
2. Дважды одаренный
Фантастика:
городское фэнтези
альтернативная история
аниме
5.25
рейтинг книги
Дважды одаренный. Том II

Искусство войны

Иванов Владимир
Фантастика:
космическая фантастика
5.00
рейтинг книги
Искусство войны

"Фантастика 2025-71". Компиляция. Книги 1-10

Ланцов Михаил Алексеевич
Фантастика 2025. Компиляция
Фантастика:
фэнтези
боевая фантастика
попаданцы
5.00
рейтинг книги
Фантастика 2025-71. Компиляция. Книги 1-10

Последний Паладин. Том 10

Саваровский Роман
10. Путь Паладина
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Последний Паладин. Том 10

Система Возвышения. (цикл 1-8) - Николай Раздоров

Раздоров Николай
Система Возвышения
Фантастика:
боевая фантастика
4.65
рейтинг книги
Система Возвышения. (цикл 1-8) - Николай Раздоров

Бандит

Щепетнов Евгений Владимирович
1. Петр Синельников
Фантастика:
фэнтези
7.92
рейтинг книги
Бандит