Руководство Новичка -
Администратора LINUX
Part 1: FAQ для Новичка - Администратора LINUX вер. 0.10 1999-03-05
Авторы: Piotr, Stan, Barbara и Marie Klimas
Ответы на некоторые часто задаваемые вопросы по Linux
Распространяется и/или изменяется
свободно. Просто упомяните фамилию Klimas! Ваши предложения,
комментарии и исправления принимаются с благодарностью. Присылайте их
на английском языке по адресу bklimas@magma.ca
или по bw641@freenet.carleton.ca
Homepage: Руководство Новичка - Администратора LINUX
Часть 1: >Часто Задаваемые Вопросы
Новичком - Администратором LINUX<
Part 2: Горячие комбинации клавиш и
Команды Linux
Введение: Мы новички в Linux (стаж 6 месяцев)
и поэтому эти советы даются без какой бы то ни было гарантии. В основном
мы используем RedHat 5.2, следовательно данные решения возможно
не всегда полностью соответствуют среде других дистрибутивов Linux.
Надеемся, что они будут полезными. Мы предполагаем, что вы уже установили Linux
на компьютере.
Содержание:
1. Установка железа
1.1 Как настроить мою звуковую карту?
1.2 Как настроить мой любимый принтер?
1.3 У Word Perfect 8 нет драйвера
для моего принтера
1.4 Linux не может обнаружить всю оперативную
память
1.5 LILO при загрузке выдает LI (или LIL), а затем
ничего не происходит
1.6 Как я могу изменить операционную систему,
которую LILO загружает по умолчанию?
1.7 При загрузке приглашение LILO держится слишком
мало (или слишком много) времени.
2. Доступ к дисководам
2.1 Где мои диски?
2.2 Как мне получить доступ к CDROM?
2.3 Как мне подсоединить флоппи или zip
дисковод, dos раздел или сетевой диск?
2.4 Существует ли быстрый способ доступа к файлам на
DOS/Windows дискетке?
2.5 Диски монтируются когда
я имею права суперпользователя. Может ли обычный пользователь
сделать то же?
2.6 Команда монтирования
дисков слишком длина и сложна - как мне упростить себе жизнь?
2.7 Могу ли я сделать автоматическое
монтирование дисков?
3. Настройка сети
3.1 Стоит ли мне настраивать
мою домашнюю сеть?
3.2 Как мне настроить мою домашнюю сеть?
3.3 У меня проблемы с модемным соединением по ppp.
3.4 Как мне выйти в WWW с моего сетевого компьютера,
не имеющего модема?
3.5 Как и зачем мне использовать Samba?
4. Работа с программным обеспечением Linux
4.1 Как мне запустить программу?
4.2 Мой mp3 проигрыватель затыкается. Звук
звучит прерывисто.
4.3 А зачем нужны различные директории?
4.4 Как мне выключить компьютер?
4.5 Как мне получить больше информации по интересующему
меня вопросу?
5. Работа с графической оболочкой X windows
5.1 Как мне установить kde?
5.2 Как мне настроить мою видео карту и мышку,
что бы X-сервер с ними работал правильно?
5.3 Как мне запустить X-window при
удаленном доступе?
6. Почему именно Linux?
1. Установка железа
1.1 Как настроить
мою звуковую карту?
Попробуйте запустить программу setup (как root).
Третий пункт меню снизу запускает программу настройки звуковой карты.
В конце установки Линус скажет вам как произносится слово Linux.
1.2 Как настроить мой любимый принтер?
Как суперпользователь запустите с X- терминала программу:
printtool
Наиболее важная часть - это правильная настройка принтерного порта.
Если вы не знаете к какому порту подключен ваш принтер попробуйте для начала
порт lp1 (lp0 или lp2 - другие возможные варианты) и попробуйте распечатать
тестовую ASCII страницу сразу в порт. Только когда это заработает, настройте
все остальное.
Если вы настраиваете удаленный принтер - удостоверьтесь,
что ваша машина имеет доступ к этому принтеру. Разрешение
на доступ к принтеру выставляется в файле /etc/hosts.lpd
(повышенная защищенность)
или в /etc/hosts.equiv (не очень сильная защита). В этом файле
просто перечислены
имена машин, каждая машина в своей строке. Мой файл выглядит следующим образом:
hacker
mars
Файл /etc/hosts.lpd отсутствовал в моей системе и поэтому я создал его.
Чтобы быстро получить информацию о принтерах на вашей машине,
вам вероятно следует изучить файл /etc/printcap:
cd /etc/
cat printcap
Принтер контролируется с помощью команды lpc
(под root). Очередь заданий на печать может быть выведена на экран
с помощью команды
lpq. Задания из очереди можно удалить с помощью
команды lprm. Чтобы распечатать файл в командной строке
следует набрать команду lpr [имя_файла].
1.3 У Word Perfect 8 нет драйвера
для моего принтера
Если вы настроили ваш принтер с помощью printtool и установили
соответствующий драйвер, настройте печать Word Perfect с помощью
"passthru postscript" драйвера (печать через PostScript).
1.4 Linux не может обнаружить
всю оперативную память
Вероятно вам следует отредактировать файл /etc/lilo.conf.
Добавить строчку подобную этой прямо перед первой записью "image=":
append="mem=80M"
Если у вас нет 80 мегабайт памяти подправьте строчку выше.
Не забудьте перезапустить команду:
lilo
перед перезагрузкой. После перезагрузки вы можете проверить сработало ли
это, используя одну из двух команд:
cat /proc/meminfo
free
Если у вас проблемы или вы хотите протестировать систему, то может оказаться
полезным установка опции количества памяти при загрузке LILO:
[наберите в строчке приглашения LILO во время загрузки]
linux "mem=16M"
Периодически я слышу совет что в том случае, если у вас возникли проблемы
с доступом к оперативной памяти, то следует указать меньше памяти чем есть на
самом деле (например 78 вместо 80 Мб). Сделайте то, что считаете нужным.
1.5 LILO при загрузке выдает LI (или LIL),
а затем ничего не происходит
Это цитата из хорошего руководства "Red Hat Linux Unleashed",
написанного Kamran Hussain, Timothy Parker, и др.:
"Когда загружается LILO на экране появляется слово LILO. Каждая буква
печатается перед или после определенных действий. Если возникнет проблема,
то по числу букв, которые напечатаются на дисплее можно определить причину
этой проблемы.
[...]
LI [...] Если на экране напечаталось только две буквы - то причина
в несовпадении описанной геометрии диска с существующей или в
что файл /etc/lilo/boot.b был перемещен без перезапуска программы
переконфигурирации геометрии диска.
LIL [...] В этом случае проблема скорее всего состоит в аппаратной ошибке
или в несовпадении описанной и фактической геометрии диска."
Словосочетание геометрия диска означает число секторов/головок/цилиндров
используемое вашим BIOS. Надеюсь это поможет!
Иметь руководство по Linux под рукой или по крайней мере руководство по
UNIX в общем - очень неплохая идея! Руководства по системе Windows, как правило,
не стоят и выеденного яйца - руководства по Linux, как правило, очень
информативны и действительно полезны. Книга "Red Hat Linux Unleashed"
(существует и русский перевод) очень хорошее руководство к действию.
(На русском есть довольно полезная книга
"Операционная система UNIX" Андрея Робачевского).
Если возникла ошибка LILO при загрузке системы, то вы можете загрузиться
с помощью Linux или DOS загрузочной дискеты. Существует несколько основных
способов исправить проблему с LILO в зависимости от того в чем заключается
причина:
1. Если LILO всего на всего испорчено (это может случиться при переустановке
Windows95/98 - эта система зачем-то лезет в boot сектор диска), то вы просто
можете удалить и переставить LILO заново.
Вы можете удалить LILO запустив ДОСовскую команду (кстати, это недокументированная
возможность этой программы):
fdisk /MBR
которая перезаписывает master boot сектор диска в котором обычно устанавливается
LILO и замещает его "чистым" DOSовским загрузчиком.
Вы потеряете возможность доступа к разделу с Linux, на вы можете
перестановить LILO поверх DOS MBR, загрузившись с дискетки.
2. Определить опцию
linear
в вашем /etc/lilo.conf файле. Для получения дополнительной информации
смотрите man lilo.conf.
3. Забраться в настройки BIOS и попытаться понять почему настройки
отличаются от фактической геометрии диска (если проблема действительно в этом).
4. Поместить LILO на другой раздел диска (другой диск) и сделать этот раздел
загрузочным с помощью fdisk.
1.6 Как я могу изменить операционную систему,
которую LILO загружает по умолчанию?
Обычно в файле lilo.conf существует два типа записей.
Одна запись начинается со слова "image=" и относится непосредственно к Linux,
другая начинается с "other=" и имеет отношение к dos/win разделу.
По умолчанию загружается та система, чья запись стоит первой в файле /etc/lilo.conf.
Не забудьте перезапустить команду
lilo
после любых изменений в /etc/lilo.conf.
1.7 При загрузке приглашение LILO держится слишком мало (или
слишком много) времени.
Добавьте или измените линию в /etc/lilo.conf
delay=100
прямо перед записью, начинающейся с фразы "image=" или "append=".
Число есть задержка при загрузке в десятых долях секунды (0.1 с). Не забудьте
перезапустить "lilo" после сделанных изменений.
2. Доступ к дисководам
2.1 Где мои диски?
Файловая система Linux состоит только из одного "дерева каталогов".
Абсолютно неважно где (на каких дисках) находятся директории - они "подцепляются"
(монтируются) к этому дереву директорий. Данная структура представляется
лучшим решением, чем структура разбиения на диски в DOS/Windows.
Вы оцените это когда вам понадобится изменить/увеличить дисковое пространство,
добавить сетевые диски и так далее.
Короче, не ищите дисков, доступ к их содержимому осуществляется
через поддиректории вашего единственного дерева каталогов.
По умолчанию съемные диски (дискетки, диски CD-rom и т.д.) не подключаются
к файловой системе автоматически - их надо монтировать. Более подробно
эта процедура описана далее. Вы должны размонтировать ваши диски (дискетки,
CD-ROM), прежде чем вынуть их.
2.2 Как мне получить доступ к CDROM?
Смонтируйте его. С привилегиями суперпользователя вы можете
подмонтировать CDROM с помощью следующей команды:
mount -t auto /dev/cdrom /mnt/cdrom
Это может не сработать. Команду следует уточнить. Ниже объясняется
как работает эта команда.
Команда дает сигнал операционной системе, чтобы подмонтировать
новую файловую систему, автоматически определив ее тип (ключ "-t auto").
Монтируется дисковод CD-rom (устройство "/dev/cdrom") в директорию
/mnt/cdrom. Эта директория должна существовать и быть пустой, если ее нет -
просто создайте ее с помощью команды:
mkdir /mnt/cdrom
Если опять ничего не получится, проверьте существует ли устройство
/dev/cdrom (каталог /dev). Если его нет, то где же ваш CDROM? Существует
вероятность, что он "скрывается" под именем /dev/hdb, если у вас IDE CDROM.
Вы можете использовать /dev/hdb вместо /dev/cdrom.
В любом случае следует иметь устройство /dev/cdrom, потому что
некоторые программы предполагают его существование. Если у вас
его нет, то вы можете создать символическую ссылку следующим образом:
ln -s /dev/hdb /dev/cdrom
Чтобы размонтировать диск, следует выйти из директории /mnt/cdrom и
как суперпользователь набрать команду:
umount /dev/cdrom
Заметьте, что ваш CDROM может отказаться "отдать" диск если вы его не
размонтируете.
2.3 Как мне подмонтировать флоппи или zip
дисковод, dos раздел или сетевой диск?
Очень похоже на то, как это делается с CDROM (смотрите предыдущий
вопрос). То есть, вы можете подмонтировать свою дискетку командой:
mount -t auto /dev/fd0 /mnt/floppy
Опять же удостоверьтесь, что директория /mnt/floppy существует и свободна.
Чтобы размонтировать дискету (Вы должны сделать это перед тем
как вытащить ее!) наберите:
umount /mnt/floppy
Я монтирую внешний zip дисковод через параллельный порт
(эмуляция scsi) с помощью команды:
mount -t vfat /dev/sda4 /mnt/zipdrive
Опция "-t vfat" используется, потому что zip диски приходят уже
отформатированные с vfat файловой системой - Windows95 файловая
система с поддержкой длинных имен. Вы не сможете вытащить диск до
тех пор, пока не размонтируете его.
Я использую систему с загрузкой Linux или Windows по выбору. Я получаю
доступ к файлам на разделе Dos/Windows после выполнения следующей
команды:
mount -t vfat /dev/hda1 /mnt/dosdrive
Опять же, вам следует уточнить параметры этой команды в зависимости
от того на каком разделе находится Dos/Windows файловая система.
Для монтирования удаленной файловой системы, такой
как NFS (network file system), проверьте что на вашем компьютере
работает NFS сервис (воспользуйтесь программой setup).
Работа с NFS дисками требует разрешения со стороны другого компьютера -
"хозяина дисков". Для настройки разрешения на доступ запустите как root
программу:
netconf
Если вы предпочитаете сделать это вручную, то вам надо отредактировать
файл /etc/exports. Мой /etc/exports выглядит следующим образом:
/usr hacker(ro) mars(ro)
/home hacker(rw) mars(rw)
/mnt hacker(rw) mars(rw)
Это дает возможность машинам hacker и mars монтировать директорию
/usr только для чтения (ro - read-only), а директории /home и /mnt
для чтения и записи (rw - read-write).
Если вы правильно настроили nfs, то вы сможете подмонтировать
сетевую директорию с помощью команды:
mount -t nfs mars:/home /mnt/mars_home
Вы так же можете подмонтировать директорию, которая доступна вам
по ftp (как суперпользователь) с помощь команды:
mount -o ro,soft ftp.kernel.org:/pub/linux /mnt/kernel_ftp
Префикс "-o" означает, что за ним идут специальные опции,
"ftp.kernel.org" - имя сервера, " /pub/linux" - удаленная директория,
"/mnt/kernel_ftp" - локальная директория, которая должна существовать
и быть свободна.
[Краткий обзор. Удаленная Dos/Windows файловая система
может быть подмонтирована к Linux машине с помощью протокола Samba (если
Samba установлен). Как root наберите примерно такую команду:
smbmount mars/c/windows /mnt/mars_windows
Чтобы это сработало, следует дать разрешение для доступа к экспортируемым
директориям на windows машинах. Чтобы сделать это - разрешите доступ
к файлам (filesharing) через "панель управления - сеть"
("control panel-network"), затем запустите Проводник Windows, кликните
правой кнопкой на директории, которую вы хотите открыть для доступа,
и дайте разрешение на доступ к ней. Если у вас возникнут проблемы воспользуйтесь
командой: man smbmout.]
2.4 Существует ли быстрый способ доступа к файлам
на DOS/Windows дискетке?
Если вы воспользуетесь пакетом утилит mtools, то вам не придется
монтировать съемные диски. Например: чтобы быстро посмотреть содержимое корневой
директории DOS дискетки следует воспользоваться командой mdir:
mdir a:
Чтобы скопировать файл, находящийся на дискетке в корневом каталоге
в текущую директорию достаточно сказать:
mcopy a:autoexec.bat .
Чтобы получить информацию о всех утилитах пакета mtools, достаточно
набрать команду
mtools .
2.5 Диски монтируются когда
я имею права суперпользователя. Может ли обычный пользователь
сделать то же?
Для этого вы должны подредактировать файл /etc/fstab (как
суперпользователь). Для этой цели я пользуюсь редактором pico:
pico /etc/fstab
Ниже приведена структура моего /etc/fstab:
/dev/hda2 / ext2 defaults 1 1
/dev/hdc3 /home ext2 defaults 1 2
/dev/hdc2 /usr ext2 defaults 1 2
/dev/hdc4 swap swap defaults 0 0
/dev/fd0 /mnt/floppy auto noauto,rw,user 0 0
/dev/cdrom /mnt/cdrom auto noauto,ro,user 0 0
/dev/sda4 /mnt/zipdrive vfat noauto,rw,user 0 0
/dev/hda1 /mnt/dosdrive vfat noauto,rw,user 0 0
none /proc proc defaults 0 0
hacker:/mnt/cdrom /mnt/hacker_cdrom nfs ro,noauto,user
0 0
hacker:/mnt/floppy /mnt/hacker_floppy nfs rw,noauto,user
0 0
hacker:/home /mnt/hacker_home nfs rw,noauto,user 0 0
hacker:/usr /mnt/hacker_usr nfs ro,noauto,user 0 0
Первое поле - это устройство. Второе - точка монтирования (директория
куда должно монтироваться устройство). Третье поле - тип файловой системы.
Четвертое поле - опции, говорящие системе как монтировать устройство:
"auto" - монтировать систему при загрузке, "rw" - монтировать для чтения
и записи, "ro" - монтировать только для чтения, "user" - пользователи тоже
имеют право смонтировать устройство. Если вам любопытно для чего используются
5ое и 6ое поле - исследуйте man fstab.
Строки в моем /etc/fstab, в которых встречается сочетание hacker, описывают
правила монтирования удаленных файловых систем с компьютера "hacker".
Если пользователям разрешено монтировать cdrom (опция "user"), то он/она
сможет сделать это с помощью команды:
mount /mnt/cdrom
Синтаксис команды, которой пользуется суперпользователь, отличается
от того, чем вынужден пользоваться обычный пользователь, так как
он ограничен правилами описанными в /etc/fstab.
2.6 Команда монтирования
дисков слишком длина и сложна - как мне упростить себе жизнь?
Для создания псевдонимов (альтернативных вызовов команд), я
подредактировал файл /etc/bashrc (редактируемый файл зависит от используемой
пользователями оболочки - shell). Псевдонимы, определенные в этом файле
становятся доступны всем пользователям. Если вы хотите создать псевдонимы,
которые специфичны для конкретного пользователя, то отредактируйте
файл .bashrc в "домашней" директории этого пользователя. Та часть моего /etc/bashrc,
которая относится к определению псевдонимов выглядит следующим образом:
alias cdrom="mount -v /mnt/cdrom"
alias ucdrom="umount -v /mnt/cdrom"
alias dosdrive="mount -v /mnt/dosdrive"
alias udosdrive="umount -v /mnt/dosdrive"
alias zipdrive="mount -v /mnt/zipdrive"
alias uzipdrive="umount -v /mnt/zipdrive"
alias floppy="mount -v /mnt/floppy"
alias ufloppy="umount -v /mnt/floppy"
Опция "-v" добавлена для того, чтобы Linux подробно описывал что он делает
в процессе монтирования дисков. Теперь пользователь может подсоединить дискетку,
используя простую команду:
floppy
и он/она могут отсоединить дискетку с помощью команды
ufloppy
2.6 Могу ли я сделать автоматическое
монтирование дисков?
Да, можете. Диск автоматически подсоединяется тогда,
когда вы к нему обращаетесь, и отсоединяется, когда вы прекращаете с ним
работать.
Для начала запустите программу "setup". Выберете меню "netsysv". Убедитесь
что сервис "autofs" включен.
Сконфигурируйте автоматическое подсоединение дисков путем
редактирования файлов /etc/auto.master и /etc/auto.misc,
то есть:
pico /etc/auto.master
Мой /etc/auto.master выглядит следующим образом:
/misc /etc/auto.misc --timeout 1
Здесь сказано, что мое автоматически подсоединяемое устройство
должно монтироваться в директорию /misc (которая должна существовать и быть
свободной). Через секунду, после того как я закончу работу с устройством (выйду
из директории),
оно отсоединится (опция --timeout 1). Если этого времени вам покажется недостаточно -
измените его. Описание монтируемых устройств идет в файле /etc/auto.misc.
Ниже приведен мой /etc/auto.misc:
kernel -ro,soft,intr ftp.kernel.org:/pub/linux
cdrom -fstype=auto,ro :/dev/cdrom
floppy -fstype=auto,rw :/dev/fd0
zipdrive -fstype=vfat,rw :/dev/sda4
dosdrive -fstype=vfat,ro :/dev/hda1
hacker_cdrom -fstype=nfs,ro hacker:/mnt/cdrom
hacker_floppy -fstype=nfs,rw hacker:/mnt/floppy
hacker_usr -fstype=nfs,ro hacker:/usr
Первое поле это "ключ" - это имя поддиректории в /misc куда смонтируется
устройство. Эта поддиректория НЕ должна существовать. Она остается невидимой,
пока я ей не воспользуюсь, но я могу перейти в нее (cd /misc/"ключ") - этим
я активизирую систему, чтобы она подсоединила это устройство.
Строки с буквенным сочетанием hacker в файле auto.misc относятся
к cdrom и floppy дисководам, расположенных на другом компьютере с именем hacker.
Я установил для автоматического подсоединения устройств директорию /misc,
и поэтому я могу подсоединить файловые системы вручную в директорию /mnt.
3. Настройка сети
3.1 Стоит ли мне настраивать
мою домашнюю сеть?
Сделать это очень неплохая идея. Это даст вторую жизнь
компьютерам, которые вы уже списали со счетов, так как у них не хватает мощности
для выполнения простейших приложений самостоятельно. К достоинствам относится
совместное использование винчестеров, дисководов zip, CDROM, модемов,
принтеров и даже звуковых карт, запуск программ с удаленного терминала
(в текстовой или графической моде), пользование возможностями Internet всеми
компьютерами в сети тогда как модем один. Если с вашей машиной случились
какие-либо проблемы и она не откликается, вы можете исправить их или перегрузить
вашу машину (избежав таким образом проблем описанных в
"Как мне выключить компьютер?" ), зайдя на нее с другой машины.
3.2 Как мне настроить мою домашнюю сеть?
Ваше железо должно быть уже настроено. Я предполагаю, что
вы установили свою сетевую карту в процессе установки RedHat.
Если нет, то вы можете установить свою сетевую карту прямо из X-windows.
Если у вас есть вторая сетевая карта, то вам надо настроить ее вручную,
так как Linux автоматически находит и настраивает только одну (вероятно это
скоро будет исправлено).
Запустите X терминал, сделайте su (чтобы получить права суперпользователя)
и запустите:
/usr/bin/kernelcfg
Драйвера к большинству сетевых карт под Linux реализованы как модули ядра.
Поэтому установка сетевой карты заключается в установке соответствующего модуля
с правильными параметрами. Вам не надо перекомпилировать ядро, вам не надо
перегружать компьютер (только если у вас не стоит необычная сетевая карта)
Для того чтобы разобраться какие параметры надо передать модулю поищите
эту информацию в "Руководстве Сетевого Администратора Linux" (Linux
Network Administrator Guide - файл /usr/doc/LPD/nag, если вы установили документацию.
есть довольно старый перевод - поищите на www.linux.org.ru).
Настройка параметров (адрес и прерывание)
второй сетевой карты является некой задачей - вы должны быть абсолютно уверены,
что у вас нет никаких аппаратных конфликтов; Исследование файлов
/opt/interrupts, /opt/ioport
и изучение информации, выдаваемой на дисплей при загрузке сможет помочь вам
в этом деле. После того как все сделано просмотрите /proc/modules чтобы
убедиться, что нужные вам модуле загружены (эту же информацию
можно получить, выполнив команду lsmod как
суперпользователь).
Информация о модулях от kernelcfg поступает в файл
/etc/conf.modules,
поэтому, если у вас возникнут проблемы с выгрузкой модулей из памяти
(у меня они были), то просто подредактируйте этот файл нужным вам образом.
После установки сетевой карты и подсоединения кабелей вам следует настроить
саму сеть. Запустите как суперпользователь программу:
netconf
В этой программе есть help (на английском естественно, хотя в локализованных
дистрибутивах Linux, таких как KSI, или Urban Soft существует перевод)!
netconf может быть запущена в графическом режиме.
Если вам хочется получить дополнительную информацию о том как работает
сеть - изучите уже упомянутое "Руководстве Сетевого Администратора Linux" (nag).
Какие вам надо заполнить опции и как это сделать зависит от устройства вашей
сети. Вам, естественно, захочется заполнить "Basic Host Information" ("Основную информация
сетевого компьютера") (имя, псевдоним и IP вашего локального компьютера)
и "Information About Other Hosts" ("Информация о других сетевых компьютерах")
(имена, псевдонимы и IP других компьютеров в вашей локальной сети)
Это информация записывается в файлы /etc/hosts и /etc/sysconfig/network -
вы можете подредактировать эти файлы вручную.
Когда вы настраиваете сеть не трогайте то что связано с
"loopback driver", который имеет IP равный 127.0.0.1. Он всегда должен
присутствовать, этот адрес является адресом по которому машина общается сама
собой (эмуляция сети).
Если у вас нет своего IP адреса (это обычно случается, когда вы имеете
домашнюю сеть без постоянного контакта с внешним миром), то следует
его придумать. Не особенно важно какой он, так как при подсоединении с помощью
модема вам выдается динамический IP адрес (компьютер может иметь несколько
IP адресов в одно и тоже время). Ваш адрес должен быть создан правильным
образом и сетевая маска должна соответствовать одному из типов сетей (A,
B или C).
Для получения дополнительной информации посмотрите главу IP addresses
в документе Network Administrator Guide (/usr/doc/LPD/nag).
Обычно вам нужна сеть класса C (до 254 компьютеров). Первые три цифры
IP адреса должны лежать в интервале от 192 до 223. Последние три цифры
IP идентифицируют вашу машину и должны лежать в интервале от 1 до 254
(не используйте для этих целей 0 - это означает "вся сеть", или 255 - сетевой
адрес broadcast). Два средних набора чисел могут быть любыми в диапазоне
от 1 до 254. Например адрес 223.223.223.1 соответствует первой машине в сети
223.223.223.0 (ноль в конце означает всю сеть) класса C , с адресом broadcast
223.223.223.255.
Обычно первая сетевая машина - это компьютер, который связан с внешним
миром (так как она подсоединяется первой). Поэтому, я заполнил поле
GATEWAY как xxx.xxx.xxx.1 (моя первая машина) на всех компьютерах,
кроме самой первой xxx.xxx.xxx.1 машины, где я оставил это поле пустым.
Вообще-то, это источник надоедливых ошибок во время загрузки и поэтому
я подредактировал /etc/sysconfig/network и вставил (разговор идет про первую
машину) следующие строки:
GATWAYDEV=
GATEWAY=
Что касается поля DNS server - я использовал адрес моей первой машины
(Я вставил адрес loopback устройства на xxx.xxx.xxx.1 машине и правильный
адрес xxx.xxx.xxx.1 на других машинах). Чтобы DNS работала, надо чтобы
был запущен "named" сервис - проверьте это с помощью команды
setup. Дистрибутив RedHat 5.2 идет с уже преинсталированным
DNS как "cashing only", поэтому с моей стороны больше никаких действий не
потребовалось. Вы можете вообще отказаться от использования DNS --
если DNS ищет сервер и не может его найти, то это та еще песня.
Поле other networks and hosts я оставил пустым, так как у меня нет
других локальных сетей.
Мне не потребовалось ничего, для того чтобы заставить мою
сеть работать в стандартной поставке RH5.2, кроме
установки железа и заполнения информации о сети с помощью netconf
на каждом компьютере.
Для тестирования соединения между машинами используйте
команду ping.
3.3 У меня проблемы с модемным
соединением по ppp.
На вашем месте я бы установил kde и воспользовался
программой kppp. С помощью этой программы очень легко настроить
ваше ppp соединение. Единственная вещь, которую мне пришлось сделать
(кроме заполнения информации при настройке) - это создание устройства
/dev/modem, путем создания символической ссылки на устройство /dev/ttyS1.
ln -s /dev/ttyS1 /dev/modem
Устройство ttyS1 соответствует последовательному порту COM2 (под DOS).
Для COM1 используйте ttyS0, для COM3 - ttyS2.
Если вы хотите запустить ppp соединение из командной строки, то запустите
netconf (как суперпользователь) для того чтобы настроить
ваш первый интерфейс ppp (ppp0). Когда это будет сделано вы можете
воспользоваться ppp0 интерфейсом для соединения с помощью команды:
ifup ppp0
и прервать соединения с помощью команды
ifdown ppp0
Настройка установки ppp соединения из командной строки на моей машине
прошла не сложнее чем при использовании программы kppp.
Существует масса скриптов для установки/прерывания ppp соединения,
но в них, как правило, сразу не разберешься (зато разобравшись эти скрипты
сильно экономят время), и поэтому много новичков
испытывают с ними трудности.
Если вы подсоединились по ppp, но в процессе идентификации пользователя у
вас возникли проблемы, то возможно что ваш Internet провайдер (ISP -Internet Service Provider )
пользуется другим протоколом для идентификации. Попробуйте использовать
pap (по умолчанию), или therminal base, или chap.
Если ppp отказывается работать, то возможно вы неправильно настроили
модем (или может быть это Windows модем? Тогда выкиньте его на помойку и купите
нормальный модем (в принципе существуют способы обойти эту проблему).).
Попробуйте программу minicom - может
быть с помощью нее вы заставите ваш модем работать. minicom
немного похожа на telix или procomm под Linux.
Bill Unruh ( unruh@physics.ubc.ca ) пишет:
Для того чтобы получить
детальную информацию о настройке ppp соединения, обратите внимание
на WWW страницу
axion.physics.ubc.ca/ppp-linux.
Информация на этой странице особенно полезна, если удаленные
пользователи (возможно ISP вам это не говорил) PAP или CHAP.
И хотя kppp полезная программа - есть ситуации в которых
она ошибается.
3.4 Как мне выйти в WWW с моего сетевого
компьютера, не имеющего модема?
Естественно, что в вашей локальной сети должен быть
компьютер с модемом (или другим Internet соединением). Настройте
IP маскарадинг (IP masquerading). Этот способ позволит все запросы, которые
отправляются вашему Internet провайдеру, делать таким образом, будто они идут
с одного компьютера и провайдер пропускает их. Простейший маскарадинг
требует выполнить всего одну команду (на компьютере с модемом):
/sbin/ipfwadm -F -p m
Эта команда устанавливает маскарадинг как основной способ
передачи Internet запросов, и хотя этот способ нарушает безопасность
в локальной сети, но для домашней сети это, вероятно, не имеет значения.
(Опасность заключается в том, что кто-нибудь из вашей локальной сети
может настроить маршрут запросов через ваш компьютер (тунелирование),
и, таким образом, скрыть от всех кто он такой). Для получения дополнительной
информации просмотрите файл /usr/doc/HOWTO/mini/IP-Masquerade.
Способ, обеспечивающий более сильную защиту, описан ниже:
ipfwadm -F -p deny
ipfwadm -a m -S 192.168.1.1/32 -D 0.0.0.0/0
ipfwadm -a m -S 192.168.1.3/32 -D 0.0.0.0/0
ipfwadm -a m -S 192.168.2.0/24 -D 0.0.0.0/0
По умолчанию это устанавливает стратегию передачи запросов как
"deny" (отказать) и для двух машин с IP равным 192.168.1.1 и 192.168.1.3
явно делает маскарадинг. Это так же делает маскарадинг для любой
машины из сети 192.168.2.0. Номер /32 означает точка-точка (ppp) протокол,
/24 обозначает сеть класса C. Опция -D 0.0.0.0/0 указывает на путь (route),
который
компьютеры под маскарадингом используют по умолчанию для выхода в Internet.
Если вы хотите, чтобы эти команды всегда исполнялись при загрузке
системы, то добавьте последние строчки в файл /etc/rc.d/rc.local.
Этот файл немного похож по своей функциональности на autoexec.bat под DOS.
Как всегда, рекомендуется просмотреть документацию по командам,
чтобы разобраться с другими опциями:
man ipfwadm
3.5 Как и зачем мне использовать Samba?
Samba - это сетевое взаимодействие между Linux и Windows.
С помощью Samba Linux эмулирует сетевой сервис сервера Windows NT, что
позволяет объединять компьютеры на базе MSWindows3.1/95/98 в сеть. Samba
не просто заменяет WinNT, она делает эту работу гораздо лучше чем сама NT!
Одна из трех машин моей домашней локальной сети может загружать
и Win95, и Linux. Я так сконфигурировал мою сеть, что когда я гружу Win95,
другая Linux машина берет на себя обязанности Samba сервера. С помощью
этого сетевого сервиса Windows машина получает доступ к сетевому принтеру,
общим директориям. Вы получаете возможность воспользоваться telnet, ftp и так далее.
Необходимо настроить Samba только на одной Linux машине.
Для начала я как суперпользователь запускаю программу setup,
выбираю меню ntsysv и убеждаюсь что сервис smb доступен.
(В программе setup по нажатию клавиши F1 вызывается
помощь - это к тому, что вдруг вы заинтересуетесь другими опциями).
Если вы не нашли сервиса smb, то, вероятно, вы его просто не установили
при установки дистрибутива RedHat 5.2.
Затем надо настроить сервер Samba. Это относительно не сложно,
так как вся настройка сервера Samba делается путем редактирования
одного файла /etc/smb.config. В этом файле есть очень хорошие комментарии.
Минимальная настройка включает указание имени рабочей группы (workgroup name).
Заметьте, что если вы не определили опцию "host allow", то сервис доступен
любому компьютеру, что, в принципе, не страшно для домашней сети.
В примере /etc/smb.conf, поставляемом с RH5.2 есть и другие опции.
Их можно изменить для того, чтобы добиться от сервера каких-то определенных
действий, но чтобы подцепить к сети Windows машину их менять не надо.
В конце, вам надо настроить вашу Windows 95 (или что там у вас) для
работы в сети. Делается тоже самое, как если бы сетевые сервисы предоставлялись
сервером WinNT. Удостоверьтесь, что вы поставили галочку, разрешающую работу
в сети ("клиент для Microsoft Network") и вписали имя рабочей группы.
Для того чтобы получить доступ к сети, когда Windows загрузится, воспользуйтесь
своим пользовательским именем и паролем для Linux. Для тестирования
работоспособности, кликните на иконке "Сетевое окружение" ("Network Neighborhood") -
там вы должны увидеть ваш Linux сервер.
Как суперпользователь на Linux машине вы можете запустить, остановить
и проверить текущее состояние сервера Samba с помощью команд:
samba start
samba status
samba restart
samba stop
Вы можете погулять по WWW с помощью Netscape для Windows если
вы подсоединены к Linux компьютеру через Samba, который в свою очередь
подсоединен к Internet. Для того чтобы это сделать, вам надо настроить
ваш IP маскарадинг (как это сделать описывается здесь),
сказать в /etc/smb.conf:
dns proxy = yes
и сказать WIndows, чтобы она использовала dns сервер (Панель управления -
Сеть - TCP/IP). В качестве DNS сервера определить имя и адрес Linux Samba
машины.
Все выше описывает минимальную настройку сервера Samba. Для получения
дополнительной информации используйте следующие источники:
man samba; man smb.conf; man smbclient; man smbmount
less /usr/doc/HOWTO/SMB-HOWTO
Кроме того, изучите файл /etc/smb.conf. Наличие под рукой хорошей
книги - очень неплохая идея!
4. Работа с программным обеспечением Linux
4.1 Как мне запустить программу?
Если вы просто набрали имя исполняемого файла (затем нажали Enter) и
ничего не случилось, то возможны две причины случившегося.
Первая возможность: вероятно программы нет в директориях, в которых
по умолчанию ищется исполняемый файл. Наберите полный путь до исполняемого
файла или сделайте:
cd the_program_dir
./program_name
Вы должны вставить в начале имени программы точку и слеш, в противном случае
программа НЕ запустится (это особенность настройки UNIX по умолчанию).
Вы можете проверить список директорий, в которых ищутся исполняемые файлы:
echo $PATH
Вы можете изменить этот список директорий для всех пользователей
системы, подредактировав файл /etc/profile, изменив строку,
содержащую PATH=.
Вторая возможность: вероятно ваш файл не является исполняемым.
Если он должен им быть, то надо сделать его исполняемым:
chmod a+x имя-файла
сделает файл доступным для исполнения всеми пользователями.
Проверьте это:
ls -l filename
4.2 Мой mp3 проигрыватель затыкается. Звук
звучит прерывисто.
Проигрывателю, вероятно, не хватает процессорной мощи. Вероятно
у вас слабая система (486 - слабая для полноценного проигрывания mp3).
Или возможно вы запустили слишком много процессов, сильно использующих
ваш процессор, одновременно. Или, вероятно, вам следует запустить
проигрыватель с более высоким приоритетом (Приоритет выставляется
с помощью команды nice - просмотрите
man nice или info nice).
Попробуйте запустить проигрыватель, как суперпользователь, если проблема
исчезает, то сделайте проигрыватель suid-ным, что позволит запускать
пользователям проигрыватель, как если бы они были с правами root.
(В вашей системе нет никаких проблем с безопасностью, не так ли?), то есть
выполните команду:
chmod a+s xamp
это исправит проблему проигрывания файлов с помощь программы xamp.
Если вы для проигрывания mp3 используете консольную программу mpg123
(рекомендуется для слабых машин), то воспользуйтесь ключиками "-2 -b4096".
4.3 А зачем нужны различные директории?
Этот вопрос совершенно замечательно освещается
в Руководстве Системного Администратора Linux (Linux System Administrator
Guide - существует перевод, правда довольно старый). Это руководство должно
быть доступно в вашей системе. Попробуйте:
cd /usr/doc/LDP/sag
lynx sag.html
Для просмотра этого руководства вы также можете воспользоваться Netscape.
Новички должны помнить, что если они зашли в систему как обычные
пользователи, то они НИЧЕГО не могут сделать с файлами за приделами
своей домашней директории:
/home/user_login_name
Эта директория предназначена для хранения ваших файлов (файлов настроек,
документов, данных и так далее). Вы можете создавать поддиректории в вашей
домашней директории, для структуризации хранения ваших данных. Другие
пользователи не могут ни читать, ни писать файлы в вашей домашней директории
(если, конечно, вы не дадите им разрешение).
Кроме файлов в своей директории обычные пользователи могут
видеть/читать множество файлов общего пользования, но только суперпользователь
может их изменить или удалить. Такая организация дела делает Linux защищенным,
так как обычный пользователь или программа, запущенная обычным пользователем,
не может писать или изменять файлы, которые могут быть системными, за пределами
домашней директории (конечно, если вы не работаете как суперпользователь, что
сильно не рекомендуется). Из-за этого, кстати, написание вируса для Linux становится
делом абсолютно неблагодарным (на сегодняшний момент число вирусов под
Linux не превышает пальцев на одной руке - у них нет питательной среды для
распространения).
4.4 Как мне выключить компьютер?
Выйдете из всех программ, в которых вы работали, а затем нажмите
Ctrl-Alt-Del. Подождите, когда операционная система остановит все
процессы и выключите компьютер, когда он начнет загружаться снова. Не выключайте
ваш компьютер пока операционная система не остановит все процессы, иначе
возможна потеря данных. Если это произошло, то при следующей загрузке
вам будет выдана ошибка диска и система автоматически проверит и исправит
простейшие неполадки. В случае серьезных неполадок вам придется вручную
протестировать и исправить эти ошибки (это может сделать только root).
Суперпользователь может также воспользоваться командой
shutdown - это команда с помощью которой он/она может
выключить машину с удаленного терминала (очень полезно, когда система
в результате ошибки не реагирует на клавиатуру):
telnet имя_машины_с_нерабочей_клавиатурой
[зайдите как обычный пользователь]
su
[дайте пароль суперпользователя]
[убейте зависший процесс (как правило, это помогает), или наберите:]
/sbin/shutdown -rfn now
Это команда быстро выключит компьютер, прохождение через
стандартное (занимающее большее время) отключение компьютера полезно,
когда система еще не устоялась.
Заметьте, что по причине безопасности системы вы не можете зайти
на компьютер с удаленного терминала как суперпользователь.
Вам следует войти через telnet как обычный пользователь, и только
затем войти как root.
Да, команде shutdown можно сказать когда выключить компьютер (например,
вы хотите,
чтобы все пользователи сохранили результат своей работы, а потом вышли, до того
как компьютер отключится). Например команда:
/sbin/shutdown -r 23:59
перезагрузит систему за одну минуту до полуночи.
4.5 Как мне получить больше информации по интересующему
меня вопросу?
Вы уже должны знать как пользоваться стандартным средством
для получения помощи под любой системой Unix и Linux, в частности:
man [интересующая вас команда или программа].
Кроме программы man есть еще вызов:
info [интересующая вас программа или пакет]
Большинство программ можно запустить с опцией "--help", в этом
случае вы получите простейшую инструкцию по пользованию.
Если вы не знаете точное название команды, то можно попробовать
программу apropos - поиск по ассоциации:
apropos copy
copy - копировать, ассоциации с командой cp
Для получения исчерпывающей информации по установленным пакетам,
проверьте директорию /usr/doc (если вы не установили документацию при установки
Linux - установите ее сейчас).
Особенно, приписки дополнительной информации, следует изучить
содержимое директорий /usr/doc/HOWTO - КАКСДЕЛАТЬ то или это,
/usr/doc/HOWTO/mini - маленькие HOWTO и /usr/doc/LDP - замечательные руководства
входящие в проект по составлению общей документации для Linux.
Найдите на вашем CDROM с RedHat 5.2 руководство, составленное
сотрудниками компании RedHat (они создавали его в предположении, что
где-то в мире существуют полные чайники :) ):
lynx /mnt/cdrom/doc/rhmanual/manual/index.htm
Если вы пока еще не установили дистрибутив, то вы можете просмотреть
это руководство с помощью Netscape, например в среде Windows (очень полезно
прежде чем начинать что-либо делать, в начале прочитать всю документацию).
Ниже представлены куча линков по Linux тематике, которые мне нравится.
Число страничек, посвященных полностью или частично Linux, начитывает
в интернете многие тысячи. (На одном из самых популярных русскоязычных
поисковых серверов Rambler слово Linux стояло на втором месте в списке самых популярных
ключевых слов для поиска - понятно что стояло на первом :) ).
Если вам что-нибудь нужно, то очень большой вероятностью вы найдете
по адресам, перечисленным ниже.
5. Работа с графической оболочкой X windows
5.1 Как мне установить kde?
В самом дистрибутиве RedHat 5.2 kde отсутствует, потому что
на данный момент существуют проблемы с лицензией к библиотеке, которая
используется программами из этого пакета. Несмотря на это kde представляет
из себя очень удобный графический интерфейс. Проблемы с лицензией будут в скором
времени решены и следующий релиз RedHat (6.0), скорее всего, будет включать
в себя пакет программ kde (у kde есть конкурент - проект GNOME. Совсем
недавно вышел в свет первый релиз GNOME (этот проект моложе kde примерно
на год, но очень быстро его догоняет). У GNOME нет проблем с лицензией и он
уже включен в дистрибутив RedHat).
Бинарные файлы с дистрибутивом kde можно найти на вашем CD с
RedHat 5.2, просто их вы должны установить сами после установки RedHat.
Если у вас их нет, то вы можете достать эти файлы из интернета.
Для начала проверьте работает ли ваш X-серевер:
xinit
Вы можете выйти из оболочки X-серевера, набрав на X-терминале
команду exit или убить X-сервер нажав комбинацию
клавиш [ctrl-alt-backspace]. Если ваш X-сервер не работает, то перейдите к
следующему вопросу.
Теперь зайдите как root, подсоедините CDROM с RedHat5.2 и перейдите
в директорию с дистрибутивом kde:
cd /mnt/cdrom/kde/distribution/RedHat/i386/binary
Прочитайте что написано в файле README:
cat README-2rh51-rpms | more
Используйте программу rpm для установки необходимых пакетов
rpm -i [имя устанавливаемого пакета]
Для начала установите библиотеку qt (та самая, у которой проблемы
с лицензией), затем пакет kde support, затем kde libs, а затем kde base.
Если вы нарушите последовательность установки пакетов,
то попытка установки внеочередного пакета провалится, так как
при установки проверяется есть ли в системе программы, нужные
для устанавливаемого пакета. Будет выдана ошибка, что требуется
некий пакет, которого в данный момент нет и программа
не будет устанавливаться - ничего страшного просто установите требуемый
пакет и продолжите установку. После установки пакета kde base, вам вероятно
захочется установить и другие пакеты kde (utill, admin, network, games,
graphics, multimedia) -- они занимают немного места и их стоит установить.
Теперь следует сообщить системе, что вы хотите сделать kde
по умолчанию вашим X-windows менеджером. В домашней
директории пользователя создайте файл ".Xclients".
pico .Xclients
который состоит только из одной строчки:
/opt/kde/bin/startkde
Сохраните этот файл, теперь надо сделать этот файл исполняемым для всех
пользователей:
chmod a+x .Xclients
Проверьте что права доступа установлены нормально:
ls -l .Xclients
[Файлы, имеющие в начале названия точку не показываются
при обычном выполнении команды ls, это похоже на "скрытые" файлы
в системе DOS. Чтобы увидеть их надо запустить ls с ключиком "-a".]
Если вы создали этот файл как root, а не как обычный пользователь,
то теперь вам надо изменить хозяина и группу файла, для соответствующего
пользователя:
chown имя_пользователя .Xclients
chgrp имя_пользователя .Xclients
Все. Теперь наберите startx. Эта команда должна
запустить ваш X-server в обрамлении kde.
5.2 Как мне настроить мою видео карту и мышку,
что бы X-сервер с ними работал правильно?
Это делается автоматически при установке RedHat5.2,
только если вы не пропустили этот шаг в процессе установки.
Теперь для настройки как суперпользователь вы можете
попробовать одну из перечисленных ниже программ:
xconf
Xconfigurator
XF86Setup
Самый простой путь: запустите программу "setup" (как root) и
получить доступ к программе Xconfigurator из нее.
Для настройки X-windows под Linux вам следует изучить документацию
по вашему железу (видеокарта, монитор, мышь). Вероятно, вы захотите сдуть пыль
с руководства по
вашему монитору, чтобы найти данные по максимальной частоте синхронизации
(вертикальной и горизонтальной) которую поддерживает ваш монитор.
Информация, которую выдается на монитор в самом начале при загрузке
может помочь вам определить тип видеокарты и сколько видеопамяти она
использует. Изучите надписи в нижней части мышки. В следующий раз купите
3ех кнопочную "Linux-ready" мышь фирмы Logitech или что-то подобное
(у меня мышь Genius, но годится абсолютно любая мышь - прим. переводчика).
Чтобы пользоваться всеми
возможностями Linux лучше иметь 3ех кнопочную мышь (для 2ух кнопочных
мышей можно 3ю кнопку можно эмулировать).
Если во время тестирования X-сервера экран темнеет, выдает всякие смешные
линии и вообще ведет себя не так как надо, то быстро убейте его с помощью
<Ctrl><Alt><BkSpace> комбинации и проверьте какую
частоту синхронизации поддерживает ваш монитор. Работа на неправильных
частотах может печально окончиться для вашего монитора.
Если у вас, действительно есть проблемы, то для начала установите
обычный vga сервер. Вы сможете изменить настройки позже,
после осознания того, как это все работает в вашей системе.
5.3 Как мне запустить
X-window при удаленном доступе?
- Запустите X-сервер на локальной машине, то есть:
xinit
- в окне X терминала разрешите удаленной машине открывать
окна на вашем локальном дисплее:
xhost + имя_удаленной_машины
- зайдите на удаленную машину с помощью telnet
- запустите любую программу на удаленном сервере, сказав
ей чтобы она открыла окно на вашей локальной машине. Например
вы можете запустить X windows менеджер для управления
окошками:
startkde -display имя_локальной_машины:0.0 &
Символ "&" переводит команду, после которой идет, в фоновый режим,
таким образом, окно telnet остается свободным.
Вам не нужно определять опцию "-display" если переменная окружения
$DISPLAY правильно определяет положение вашего терминала.
В моей системе это сделано по умолчанию, но кое у кого это не так.
Вам следует это проверить:
echo $DISPLAY
В принципе, вы можете запускать программы с любого компьютера
в вашей сети и переопределять вывод опять же на любой дисплей (не
обязательно на дисплей того компьютера, за которым сидите).
Я использую удаленный доступ для запуска тяжелых приложений
(kde, Word Perfect 8, and Netscape) на совершенно дохлой машине (486-33,
8 MB mem), которая не в состоянии запускать эти приложения одновременно.
Кроме того это довольно удобный способ работы с файлами на удаленной
системе, для которой nfs не настроена.
6. Почему именно Linux?
Если вы действительно наслаждаетесь работой на
компьютере, то Linux это операционная система вашей мечты. С ней гораздо
веселее чем с другими доступными, на данный момент ОС.
Однако, основная причина революционности Linux - это
концепция открытого программного обеспечения (практически все программы
доступны в исходниках, что позволяет вам улучшить их). Наука и технология
должна основываться на полной открытости информации и возможности
протестировать любые нововведение. Вы полетите на самолете, построенном
с помощью закрытой технологии, которая никому не демонстрируется и не
открыто не проверяется? Тогда почему вы соглашаетесь пользоваться
операционными системами, основанными на тех же принципах?
Производство подков в свое время был одним из самых охраняемым
секретов. За последние 500 лет произошел взрыв науки и технологии,
благодаря обмену информации с помощью книг и рукописей. В первые
годы становления печатного дела, как такового, многие из тех,
кто пытался поделиться знаниями, были убиты, потому что выдавали
"профессиональные тайны". Для века компьютеров Linux это то же,
что Gutenberg был для письма. К счастью сейчас за это не убивают :-).
Кроме описанного выше существует масса практических
причин для использования Linux (численные расчеты, Internet,
программирование), но я уверен, что вы сами можете их перечислить.
Goto Part 2: Горячие комбинации
клавиш и Команды Linux
|