Linux-ЧаВо

Linux-ЧаВо В связи с тем, что мне довольно часто приходится отвечать на одни и те же вопросы, я хочу продолжить публикацию так называемых "ЧАсто задаваемых ВОпросов" и ответов на них.

Q: Linux не может обнаружить всю оперативную память.

A: В данном случае при загрузке ядру надо передать спецпараметр. Для этого воспользуемся возможностями lilo. Вам следует отредактировать файл /etc/lilo.conf. Добавьте строчку подобную следующей прямо перед первой записью "image=":
append="mem=512M"
Эта строчка указывает, что у вас 512 мегабайт памяти. Если у вас другое количество памяти, подправьте эту строчку. Не забудьте запустить команду
lilo
перед перезагрузкой. После перезагрузки вы можете проверить, сработало ли это, используя одну из двух команд:
cat /proc/meminfo
free
Если у вас проблемы или вы хотите протестировать систему, то может оказаться полезным установка опции количества памяти прямо при загрузке lilo. Наберите в строчке приглашения lilo во время загрузки:
linux "mem=16M"

Q: Как работать с PPP (подключиться к Сети) из командной строки?
A: Если вы хотите запустить ppp соединение из командной строки, то запустите netconf как суперпользователь, для того чтобы настроить ваш первый интерфейс ppp (ppp0). Когда это будет сделано, вы можете воспользоваться ppp0 интерфейсом для соединения с помощью команды:
ifup ppp0
и прервать соединения с помощью команды
ifdown ppp0
Настройка установки ppp соединения из командной строки не сложнее, чем при использовании программы kppp. Существует масса скриптов для установки/прерывания ppp соединения, но в них, как правило, сразу не разберешься (зато, разобравшись, эти скрипты сильно экономят время), и поэтому много новичков испытывают с ними трудности.
Если вы подсоединились по ppp, но в процессе идентификации пользователя у вас возникли проблемы, то возможно, что ваш Internet-провайдер (ISP — Internet Service Provider) пользуется другим протоколом для идентификации. Попробуйте использовать pap- (по умолчанию), или therminal_base-, или chap-авторизацию.
Если ppp отказывается работать, то, возможно, вы неправильно настроили модем.

Q: Как и зачем мне использовать Samba?
A: Samba — это программа сетевого взаимодействия между Linux и Windows. С помощью сервиса Samba Linux эмулирует сетевой сервис сервера Windows NT/2000/XP, что позволяет объединять компьютеры на базе Windows в сеть. Samba не просто заменяет Win-сервер, она делает эту работу гораздо лучше!
Допустим, что одна из машин вашей домашней локальной сети может загружать и Windows, и Linux. Тогда можно сконфигурировать сеть так, что когда вы грузите Windows, другая Linux-машина берет на себя обязанности Samba-сервера. С помощью этого сетевого сервиса Windows-машина получает доступ к сетевому принтеру, общим директориям. Вы получаете возможность воспользоваться telnet, ftp и так далее. Необходимо настроить Samba только на одной Linux машине.
Для начала я как суперпользователь запускаю программу setup, выбираю меню ntsysv и убеждаюсь, что сервис smb доступен (в программе setup по нажатию клавиши F1 вызывается помощь — это к тому, что вдруг вы заинтересуетесь другими опциями). Если вы не нашли сервиса smb, то, вероятно, вы его просто не установили при установки дистрибутива Linux.
Затем надо настроить сервер Samba. Это относительно не сложно, так как вся настройка сервера Samba делается путем редактирования одного файла /etc/smb.config. В этом файле есть очень хорошие комментарии. Минимальная настройка включает указание имени рабочей группы (workgroup name). Заметьте, что если вы не определили опцию "host allow", то сервис доступен любому компьютеру, что, в принципе, не страшно для домашней сети. В /etc/smb.conf вашего Linux могут быть и другие опции. Их можно изменить, чтобы добиться от сервера каких-то определенных действий, но чтобы подцепить к сети Windows-машину, их менять не надо.
И, наконец, вам надо настроить вашу Windows для работы в сети. Делается то же самое, как если бы сетевые сервисы предоставлялись сервером Windows NT/2K/XP. Удостоверьтесь, что вы поставили галочку, разрешающую работу в сети ("клиент для Microsoft Network") и вписали имя рабочей группы. Для того чтобы получить доступ к сети, когда Windows загрузится, воспользуйтесь своим пользовательским именем и паролем для Linux. Для тестирования работоспособности кликните на иконке "Сетевое окружение" (Network Neighborhood) — там вы должны увидеть ваш Linux сервер.
Как суперпользователь на Linux машине, вы можете запустить, остановить и проверить текущее состояние сервера Samba с помощью команд:
samba start
samba status
samba restart
samba stop
Вы можете погулять по Сети с помощью 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; /usr/doc/HOWTO/SMB-HOWTO. Кроме того, изучите файл /etc/smb.conf.

Комбинации горячих клавиш и команды Linux

[Ctrl][Alt][F1] Переключение на первый консольный терминал
[Ctrl][Alt][F#] Переключение на #ый консольный терминал (#=1..6)
[Ctrl][Alt][F7] Переключение на графический терминал (если таковой запущен)
[Tab] Дополнение текущей последовательности символов, набранной в консоли, до исполняемой команды. Эта особенность сильно облегчает жизнь при наборе команд! Работает и при загрузке компьютера через LILO!
[ArrowUp] Просмотр и редактирование буфера истории команд. Для исполнения команды нажмите [Enter].
[Shift][PgUp] Просмотр текста, выведенного на консольный терминал и ушедшего за приделы экрана. Перемещение в вверх.
[Shift][PgDown] То же, что и выше. Перемещение вниз.
[Ctrl][Alt][+] (в X-windows) Изменение разрешения. Переключение к следующей конфигурации.
[Ctrl][Alt][-] (В X-windows) Изменение разрешения. Возврат к предыдущей конфигурации.
[Ctrl][Alt][BkSpc] (в X-windows) Убить текущий сервер X-windows (выйти из графической оболочки, уничтожив все процессы).
[Ctrl][Alt][Del] Перезагрузка компьютера.
[Ctrl]c Убить текущий процесс.
[Ctrl]d Выход из текущего терминала (обычно работает).
[Ctrl]d Посылка текущему процессу сигнала [Конец-файла] (конец файла).
[Ctrl]s Остановка вывода на терминал.
[Ctrl]q Возобновление вывода на терминал. Попробуйте эту комбинацию клавиш, если ваш терминал, непонятно почему, перестал отвечать на ваши запросы.
[Ctrl]z Послать текущий процесс в background.
reset Восстановление значений по умолчанию для "запорченного" терминала (терминал показывает странные символы и неадекватно реагирует на нажатие клавиш). Используйте эту команду, если вы попытались вывести на экран бинарный файл. Вероятно, вы не сможете увидеть эту команду в процессе ее набора.
[Средняя кнопка мыши] Вставка выделенного курсором текста (это не работает в WordPerfect).
~ Моя домашняя директория. Например cd ~/моя_поддиректория.
. (точка) Текущая директория.
.. (две точки) Родительская директория для текущего каталога.
Стандартные команды и команды, дающие информацию по системе:

Команды (всегда набираются в одной строке) Описание
pwd Вывести текущую директорию.
hostname Вывести или изменить сетевое имя машины.
whoami Ввести имя, под которым я зарегистрирован.
date Вывести или изменить дату и время. Например, чтобы установить дату и время равную 2000-12-31 23:57, следует выполнить команду:
date 123123572000
time Получить информацию о времени нужного для выполнения процесса + еще кое-какую информацию. Не путайте эту команду с date. Например, я могу определить, как много времени требуется для вывода списка файлов в директории, набрав последовательность:
time ls
who Определить, кто из пользователей работает на машине.
rwho -a Определение всех пользователей, подключившихся к вашей сети. Для выполнения этой команды требуется, чтобы был запущен процесс rwho. Если такого нет — запустите setup под суперпользователем.
finger [имя_пользователя] Системная информация о зарегистрированном пользователе. Попробуйте: finger root
uptime Количество времени, прошедшего с последней перезагрузки.
ps a Список текущих процессов.
top Интерактивный список текущих процессов, отсортированных по использованию cpu.
uname Вывести системную информацию.
free Вывести информацию по памяти.
df -h (=место на диске) Вывести информацию о свободном и используемом месте на дисках (в читабельном виде).
du / -bh | more (=кто сколько занял) Вывод детальной информации о размере файлов по директориям, начиная с корневой (в читабельном виде).
cat /proc/cpuinfo Системная информация о процессоре. Заметьте, что файлы в /proc директории — не настоящие файлы. Они используются для получения информации, известной системе.
cat /proc/interrupts Используемые прерывания.
cat /proc/version Версия ядра Linux и другая информация
cat /proc/filesystems Вывести используемые в данный момент типы файловых систем.
cat /etc/printcap Вывести настройки принтера.
lsmod (как root) Вывести информацию о загруженных в данный момент модулях ядра.
set|more Вывести текущие значения переменных окружения.
echo $PATH Вывести значение переменной окружения "PATH". Эта команда может использоваться для вывода значений других переменных окружения. Воспользуйтесь командой set для получения полного списка.

Работа с сетью:

netconf (как root) Очень хорошая программа настройки сети, использующая для интерактивной работы текстовое меню.
ping [имя_машины] "Проверка на вшивость". Есть или нет контакта с другой машиной (в качестве параметре команде можно передавать сетевое имя машины или IP-адрес), нажмите <Ctrl>-C, когда вся требуемая информация будет получена.
route -n Вывести таблицу маршрутизации (the routing table).
ipfwadm -F -p m Настроить firewall.
ifconfig (как root) Вывести информацию о текущих сетевых интерфейсах (ethernet, ppp и т.д.). Ваша первая ethernet плата будет показана как eth0, вторая — как eth1, первый ppp модем как ppp0 и так далее. "lo" — расшифровывается как "loopback only" сетевой интерфейс, который должен быть постоянно активирован. Используйте соответствующие опции (смотрите результат выполнения ifconfig --help) для настройки сетевых интерфейсов.
ifup [имя_сетевого_интерфейса] (/sbin/ifup при работе под обычным пользователем) Активизация соответствующего сетевого интерфейса. Например:
ifup eth0
ifup ppp0
Пользователь может активизировать и выключить сетевой интерфейс ppp, только когда установлены соответствующие права доступа (права можно установить в процессе настройки ppp через "netconf").
ifdown [имя_сетевого_интерфейса] (/sbin/ifdown при работе под обычным пользователем). Деактивизация соответствующего сетевого интерфейса.


Компьютерная газета. Статья была опубликована в номере 18 за 2002 год в рубрике soft :: linux

©1997-2024 Компьютерная газета