Самое первое, что надлежит сделать - это настроить локаль и Xkb. Без этого настройка клавиш mc в xterm представляется сущим мучением.
После этих действий, у вас в mc заработают все клавиши. Однако это далеко не все. Кроме этого, в mc у вас не работают сочетания клавиш Alt+клавиша. Так что необходим шаг номер два:
Правите файл /usr/X11R6/lib/X11/app-defaults/XTerm. В конец этого файла нужно добавить кусок:
*VT100*translations: #override \
aReturn: string(0x1b) string(0x0d) \n\
aTab: string(0x1b) string(0x09) \n\
aspace: string(0x1b) string(" ") \n\
aa: string(0x1b) string("a") \n\
ab: string(0x1b) string("b") \n\
ac: string(0x1b) string("c") \n\
ad: string(0x1b) string("d") \n\
ae: string(0x1b) string("e") \n\
af: string(0x1b) string("f") \n\
ag: string(0x1b) string("g") \n\
ah: string(0x1b) string("h") \n\
ai: string(0x1b) string("i") \n\
aj: string(0x1b) string("j") \n\
ak: string(0x1b) string("k") \n\
al: string(0x1b) string("l") \n\
am: string(0x1b) string("m") \n\
an: string(0x1b) string("n") \n\
ao: string(0x1b) string("o") \n\
ap: string(0x1b) string("p") \n\
aq: string(0x1b) string("q") \n\
ar: string(0x1b) string("r") \n\
as: string(0x1b) string("s") \n\
at: string(0x1b) string("t") \n\
au: string(0x1b) string("u") \n\
av: string(0x1b) string("v") \n\
aw: string(0x1b) string("w") \n\
ax: string(0x1b) string("x") \n\
ay: string(0x1b) string("y") \n\
az: string(0x1b) string("z")
Если вы хотите грузить операционную систему с винта отличного от Master на первом IDE порту, то вам необходимо определить так называемый chain загрузчик для этого винта. В lilo версии 20 и выше этот загрузчик встроен прямо в код lilo. Вот пример файла /etc/lilo.conf, в котором прописана загрузка Linux с Master винта, а DOS со Slave.
# устройство откуда берется LILO
boot=/dev/hda
# раздел, где находится главная(корневая) файловай система
root=/dev/hda1
# спецификация compact работает не везде compact
# определяет нормальный текстовый режим 80x25
# можно задать слово ask, чтобы при загрузке спрашивало
# номер видеорежима. Можно просто подставить цифру
# видеорежима
vga=normal
# при prompt выдается приглашение boot: и ожидается
# ввод метки для выбора операционной системы на
# загрузку или Enter для загрузки первой по порядку.
# Можно определить delay , где n десятые
# секунды, которые LILO будет ждать, после чего произведет
# загрузку первой по порядку операционной системы.
# Во время ожидания можно нажать Ctrl и перейти в режим
# prompt
prompt
# ------------- секция загрузки Linux -------------
# образ ядра Linux
image=/vmlinuz
# метка, вводимая на приглашение boot:
label=Linux read-only
# -------------- секция загрузки DOS --------------
# DOS раздел
other=/dev/hdb1
# инициализация chain загрузчик
map-drive = 0x80
to = 0x81
map-drive = 0x81
to = 0x80
# метка, вводимая на приглашение boot:
label=dos
Действительно вполне можно загружать Linux из DOS'а, хотя такой метод и не пользуется популярностью, так как из-за ненадежности файловой системы FAT у DOS'а и подверженности ее влиянию вирусов вы можете испортить файлы, необходимые для загрузки.
Для загрузки из DOS'а вам понадобятся только два файла:
rdev vmlinuz /dev/hda1
чтобы ядро после загрузки знало, где ваша корневая (главная) файловая система (/), затем
rdev -R vmlinuz 1
что установит флаг первоначального монтирования файловой системы как read-only, что необходимо программе fsck для проверки файловой системы, затем можно (но не обязательно)
rdev -v vmlinuz
для установки текстового видеорежима, отличного от стандартного 80x25, где n - это номер режима.
После выполнения данных действий положите файл vmlinuz вместе с loadlin.exe куда-нибудь на диск DOS. Для загрузки, в DOS'е достаточно переместится в тот каталог, где находятся эти два файла и ввести команду:
loadlin vmlinuz
Однако можно обойтись и без обработки ядра командой rdev. Можно просто указать loadlin, в каком месте находится главная файловая система. Например:
loadlin vmlinuz root=/dev/hda1
Вам нужно воспользоваться механизмом альтернатив. Введите команду:
update-alternatives -display x-window-manager
и вы получите список установленных в системе менеджеров окон. Введите команду:
update-alternatives -config x-window-manager
и вам выдаст диалог, в котором вы сможете выбрать нужный менеджер окон, который будет и запускаться при старте X Window.
Для начала, если ядро у вас собрано без поддержки протоколов PPP и SLIP вам нужно собрать его заново с поддержкой этих протоколов. Как собирать ядро описано в этом же FAQ. См. список вопросов.
Еще недавно я бы сказал, что готовой программы нет, но теперь готовая программа есть прямо в дистрибутиве Debian . Она называется pppconfig(8). Все что вам нужно сделать - это честно и правдиво ответить на все вопросы, которые задаст вам эта программа.
Соединение осуществляется командой pon, а завершение соединения с провайдером осуществляется вызовом команды poff, которая убивает демон, отвечающий за связь и заставляет его положить ``трубку'' модема.
Как вы уже поняли - это решение далеко не самое красивое. Например, можно воспользоваться diald - о чем ниже. Однако это очень простое решение, Установление соединения при помощи демона diald
Прежде всего хочу заметить, что данные здесь конфигурационные файлы могут для вас не подойти, хотя у меня они работают. Все описанное ниже дает скорее понятие о том как все это настраивать, чем конкретное готовое решение. В любом случае очень рекомендую тщательно изучить страницы руководства man по pppd(8) и diald, а также PPP-HOWTO.
Пакет diald входит в состав дистрибутива Debian , да и по моему в другие дистрибутивы тоже. Ну а если у вас все-таки его не оказалось, вы всегда можете выкачать его из Internet.
После того как вы установите пакет, например, командой
dpkg -i diald-0.16.4-1.deb
или
apt-get install diald
В каталоге /etc/diald у вас появятся его конфигурационные файлы. Вам понадбится править только два из них. В файле с именем diald.options хранится конфигурация diald, а в файле с именем connect находится сценарий, который устанавливает модемное соединение, набирая номер и выполняя функции идентификации пользователя.
Начнем с файла diald.options. Ниже дан в качестве примера мой:
mode ppp
connect "chat -f /etc/ppp/pppscript"
device /dev/ttyS1
speed 19200
modem
lock
crtscts
local 192.168.0.1
remote 192.168.0.2
netmask 255.255.255.0
impulse 120,60
dynamic
defaultroute
pppd-options
noipdefault
name "victor_v"
asyncmap 0
include /etc/diald/standard.filter
Данная конфигурация расчитана на использование diald с протоколом PPP с аутентификацией пользователя по протоколу PAP. Адреса local и remote даны ``от балды''. Так как далее используется ключ dynamic, а в параметре ppp-options задано значение noipdefault, то при установлении связи адреса удаленной машины-сервера и адреса вашей машины будут изменены на те, которые сообщит удаленная машина.
Параметр device установлен в значение /dev/ttyS1, что соотвествует второму последовательному порту COM2. Вы же можете изменить это значение, если ваш модем использует другой порт. (Для COM1 будет /dev/ttyS0 и т.п.). Параметр speed установлен в значение 19200 и означает портовую скорость. Скорость вы также должны задать ориентируясь на модем, которым вы пользуетесь. Возможные значения: 2400, 9600, 19200, 34800, 57600 и т.д.
Параметр impulse установлен в значение 120,60. Это говорит о том, что diald будет проверять простаивает ли линия через каждые 2 минуты (120 сек) и будет разрывать соединение (класть ``трубку'' модема), если в течении 1 минуты (60 сек) линия будет продолжать простаивать. Простой линии выражается в отсутствии приема или передачи пакетов через модем. Таким образом вы экономите деньги на повременной оплате за телефон и за Internet. Излишне говорить, что вы можете настроить эти параметры под себя.
Особо нужно отметить параметр connect. В данном примере он установлен в значение chat -f /etc/ppp/pppscript. Ниже приводится содержимое файла pppscript
ABORT ERROR
ABORT BUSY
ABORT "NO CARRIER"
ABORT "NO DIALTONE"
REPORT "CARRIER"
REPORT "CONNECT"
TIMEOUT 90
"" AT&F1 "OK" ATDT900020 "CONNECT"
Мне было удобнее пользоваться таким файлом, чем поставляемым с пакетом diald файлом connect. Это потому, что мой провайдер использует аутентификацию пользователей по протоколу PAP. Если же сервер у вашего провайдера настроен на ввод имени и пароля по приглашениям Login: и Password:, то вам лучше воспользоваться файлом connect. Тогда строчка с параметром connect в файле diald.options будет выглядеть так:
connect "/etc/diald/connect"
Файл connect хорошо задокументирован внутри и проблем с его использованием быть не должно. Вам нужно будет только поменять параметры MODEM_INIT на строку инициализации вашего модема, PHONE_NUMBER на номер телефона вашего провайдера, USER_CHAT_SEQ на строку-приглашение, которую вы получаете для ввода имени, USER_NAME на ваше регистрационное имя у провайдера, PASSWD_CHAT_SEQ на строку-приглашение, которую вы получаете для ввода пароля, PASSWORD на ваш пароль у провайдера и наконец PROMPT на строку, которую вы получаете в случае успешного ввода имени и пароля.
Возможно вам придется поэкспериментировать пока у вас все получится. Для этой цели могу рекомендовать терминальную программу minicom, где вы всегда сможете установить соединение в ручную и посмотреть все строки приглашения.
Следующий этап - это файл /etc/ppp/options. Ниже дан в качестве примера мой:
lock
defaultroute
crtscts
noipdefault
modem
asyncmap 0
debug
19200
/dev/ttyS1
name "victor_v"
Здесь вроде все должно быть понятно, тем более, что часть параметров перекрывается конфигурационным файлом для diald. Замечу только, что строка name ``victor_v'' нужна только в случае использования протокола PAP.
Для тех, у кого провайдер использует как и у меня аутентификацию пользователей по протоколу PAP будет нужен еще файл /etc/ppp/pap-secrets. Вот пример моего:
# Secrets for authentication using PAP...
# client server secret IP addresses
"victor_v" * "password"
Вместо password должен стоять ваш пароль, а вместо victor_v ваше регистрационное имя у провайдера. Кроме того, оно же прописывается как вы можете заметить и в файл /etc/ppp/options и в файл /etc/diald/diald.options. Естественно, что для тех у кого провайдер не поддерживает PAP, эти параметры в данных файлах не нужны.
Далее вам необходимо настроить свою систему для использования DNS провайдера. У вас должен быть адрес DNS-сервера провайдера. Его нужно поместить в файл /etc/resolv.conf. Вот пример моего файла:
nameserver 194.84.131.242
search permonline.ru
где параметр nameserver задает адрес DNS-сервера провайдера, а параметр search имя домена провайдера.
Ну вот теперь кажется все. После окончания всех настроек перезапустите diald командой
/etc/init.d/diald restart
Теперь, когда вы в Netscape или в Lynx или в mc обратитесь на адрес, который неизвестен вашей системе, diald попытается установить соединение с вашим провайдером и если это получится, то вы попадете туда куда обратились.
Если у вас не получилось. Что же мне жаль. Причин может быть множество. Здесь я могу только посоветовать вам подробно изучить документацию.