FAQ конференции FIDO.RU.Linux
---------------------------------------------------------------
25.10.2002. Оригинал этого документа расположен на
http://www.sensi.org/~ak/linuxfaq/ │ http://www.sensi.org/~ak/linuxfaq/
---------------------------------------------------------------
RU.LINUX Frequently Asked Questions
Alexander Kanavin, ak@sensi.org
Версия от 25.10.2002.
Сборник часто задаваемых вопросов (с ответами), связанных с ОС Linux.
Последняя версия находится по адреcу <http://www.sensi.org/~ak/linux-faq/>
1. Преамбула
Hовые вопросы и вопросы с обновленными ответами отмечены *
1.1. Как добиться занесения вопроса в FAQ?
Дайте составителю вопрос и ответ, пригодные к включению в FAQ методом
copy-and-paste. (Alex Kanavin)
1.2. Куда посылать дополнения?
Дополнения к FAQ в виде пар вопрос-ответ принимаются на ak@sensi.org
1.3. Что составитель был бы рад получить в качестве дополнения к FAQ?
Внимание: ищутся желающие написать следующие ответы для FAQ.
╖ SSL (openssl). VPN. Kerberos.
╖ обзор сред, методов и идеологий разработки программ
Годятся и интернетовские ссылки на статьи, описывающие эти вещи -
но они должны быть на русском языке и технически грамотными.
Ищу человека, готового перевести и поддерживать раздел "Русификация"
на английском языке.
1.4. Где в интернете находится последняя официальная версия FAQ?
Этот FAQ list доступен по следующим URL:
http://www.sensi.org/~ak/linuxfaq/
1.5. С каких узлов в Fidonet можно получить FAQ через файловый запрос
или через запрос к роботу?
FAQ доступен для Fidonet FREQ здесь:
2:450/176.15 freq alias: LINUXFAQ (work time: 21:30-6:30).
2:5013/14 алиас linuxfaq (по нодлистовому времени)
2:5020/1255 по алиасу NEWFAQ (c 21:00 до ZMH, CM на выходных)
2:5030/902 по алиасу LINUXFAQ (по нодлистовому времени)
2:5045/71 freq alias: LINUXFAQ worktime: CM
2:5061/108 алиас LINUXFAQ (с 00:00 до 06:00)
2:5069/11 CM алиас LINUXFAQ
2:5077/7, Alias: LINUXFAQ (Work time: 23:30-06:00 [MSK+2])
FAQ можно получить от следующих роботов:
to: faqrobot 2:5036/26 subj: rulinux.faq
Для появления в этих списках необходимо регулярно выкладывать у себя
свежую версию FAQ. Пишите мне, если вы получили старье с одного из
этих узлов.
1.6. Предыдущие составители FAQ, его распространение и использование.
Составлено по материалам RU.LINUX (и не только).
(c)Составление - Станислав Корсуков, FidoNet 2:5030/532.
(s)Поддержание - Михаил Браво, mbravo@kronverk.spb.su, до сентября
1999
(s)Поддержание - Aлександр Канавин, ak@sensi.org
Приветствуется выкладывание данного FAQ на ftp/www/etc и прочее
распространение. Пожалуйста, не забывайте давать ссылку на оригинал.
Коммерческое использование возможно лишь с письменного разрешения. (Я
рассчитываю на процент :-)
1.7. Что делать, если я не нашел здесь ответ на свой вопрос?
Если вы не нашли ответ на свой вопрос - почитайте руководство к своему
дистрибутиву (вообще говоря, к нему надо обращаться прежде всего),
faq's из дистрибутива (обычно /usr/doc/faq), HOWTOs и т.п. Попробуйте
сделать запрос на <http://groups.google.com/>. Весьма вероятно, что
ваша проблема уже обсуждалась - если это так, то вы получите более
быстрый и полный ответ, вовсе не написав письмо в конференцию.
Если у вас возникает несколько разных вопросов, лучше напишите одно
письмо подлиннее, чем десять однострочных. Если вы задаете вопрос,
связанный с вашей конкретной системой, всегда включайте как можно
больше деталей - какой дистрибутив, какая версия дистрибутива, какая
версия ядра, с какими именно железками у вас проблемы (опять же
версии, надписи на микросхемах), и так далее.
Перед тем, как писать в эху ru.linux, подумайте, возможно ваш вопрос
более уместен в ru.unix - эхе, посвященной Unix-подобным ОС в целом
или ru.gnu - эхе, посвященной программному обеспечению проекта GNU.
Еще существуют эхи ru.unix.prog - программирование под Unix,
ru.unix.multimedia - название не требует пояснений и ru.unix.ftn -
фидософт под Unix. Для начинающих еще есть эха ru.linux.chainik, но
на мой взгляд в нее обращаться не стоит, так как вероятность получить
квалифицированный ответ там ниже чем в ru.linux и особенно ru.unix.
Что касается эхи ru.unix.linux, то в нее желательно вообще не писать,
так как она является копией ru.linux, если не считать отсутствия
модератора и по непонятным мне причинам до сих пор не удалена с
бекбона.
1.8. * Как мне задать свой вопрос так, чтобы вероятность получить
полезный ответ была максимальной?
Прочтите:
How To Ask Questions The Smart Way
<http://www.tuxedo.org/~esr/faqs/smart-questions.html>
Перевод: Как правильно задавать вопросы
<http://ln.com.ua/~openxs/articles/smart-questions-ru.html>
How to Report Bugs Effectively
<http://www.chiark.greenend.org.uk/~sgtatham/bugs.html>
2. Установка и изучение Linux
2.1. Я решил поставить Linux...
Прежде всего Вам нужно ответить на один вопрос: для чего Вы
собираетесь его использовать ? Если Вы можете дать ответ на него, то
нужно быть готовым к следующим вещам:
╖ под Linux-ом пока не существует надежного и бесплатного способа
запускать программы для Windows. В частности, это означает, что у
вас могут возникнуть проблемы с "Документами Word" и "Документами
Excel".
╖ нужно будет вдумчиво читать большое количество англоязычной
документации с экрана
╖ основным устройством ввода станет клавиатура
╖ первые несколько месяцев Вам придется нелегко
╖ вам придется обзавестись соединением с сетью Интернет. Пусть
платным или эпизодическим, но оно у вас быть должно. Вся
документация, новости и программы ищутся и находятся там (а не на
фреках или пиратских дисках). Более подробно эта тема разжевана
чуть ниже.
2.2. Как поставить Linux, не покупая диски с дистрибутивом и не
скачивая дистрибутив из Интернета?
Найдите на <http://www.lug.ru> координаты группы пользователей Linux
вашего города. Придите на их ближайшую встречу, можно сразу с жестким
диском. Попросите на этой встрече кого-нибудь дать вам диск с
дистрибутивом на пару дней. Некоторые LUG имеют общую дискотеку
(собрание дисков), посмотрите, есть ли в ней что-нибудь подходящее.
Подпишитесь на список рассылки LUG вашего города, спросите там "А не
перепишет ли мне кто-нибудь на мой винчестер (CD-R) дистрибутив?"
Можно задать тот же вопрос в городской эхоконференции Fido,
посвященной обмену файлами или Unix/Linux (пример: SPB.LINUX,
SPB.FILES). Однако осознайте сразу такую вещь: записать дистрибутив
гораздо проще, чем помочь новичку c установкой и настройкой, поэтому
не стоит расчитывать, что человек, давший вам дистрибутив в дальнейшем
посвятит себя вашему обучению.
2.3. Подскажите, какой дистрибутив выбрать ?
Любой, вышедший менее полугода назад, и купленный не на пиратском
лотке, а у официальных дистрибьюторов: <http://linux.iplabs.ru>,
<http://linux.vinchi.ru>, <http://www.linux-ink.ru>,
<http://www.mistral.ru>, <http://www.bolero.ru>,
<http://www.books.ru>, <http://www.linux-online.ru>.
Жители Украины могут купить лицензионные дистрибутивы на
<http://www.ebuy.dp.ua>. Жители Санкт-Петербурга -
<http://www.shopsys.spb.ru>.
Отличительными внешними признаками пиратского дистрибутива являются
╖ низкая цена - того же порядка, что и цена обычных пиратских дисков
╖ отсутствие адреса производителя дистрибутива
╖ "шесть операционок/дистрибутивов на одном диске". Hормальный
дистрибутив линукса крайне редко умещается на единственном диске.
(пяти-шестидисковые наборы с двумя-тремя разными дистрибутивами в
одной коробке от walnut creek, cheapbytes или infomagic пиратскими
не являются. Это вполне нормальные дистрибутивы, но, может быть,
без коммерческих и полукоммерческих программ. Стоит такой набор
примерно столько же, сколько "коммерческий" дистрибутив.)
╖ отсутствие исходников строго говоря не является основанием для
причисления к пиратам, но должно вызвать у вас серьезные
подозрения. Если те, у кого вы купили дистрибутив без исходников,
отказываются выдать вам их по цене носителя и посылают на ftp (или
просто посылают подальше) - они однозначно нарушают лицензию GPL.
Однако, это не касается cd-r копий и прочих копий, полученных на
некоммерческой основе (например, переписанных на винчестер за
пиво).
Если у вас есть знакомый гуру, на помощь которого вы на первых порах
рассчитываете, то, в случае, если вы поставите у себя то, что он
использует сам, у вас будет больше шансов получить ответы на вопросы о
тонкостях настройки.
2.4. А где в Москве (Петербурге, где-либо еще) можно купить
официальные диски с Линуксом?
Петербург: у Михаила Браво mbravo@kronverk.spb.su, у Дмитрия Иванова
(2:5030/902, idv@aanet.ru, возможна рассылка в другие города на
территории России), в фирме Кронверк (Загородный 68, 110-1303), в
фирме Аякс (312-5208, <http://linuxcenter.ru>).
Москва: в Доме Книги на Hовом Аpбате. Hа пеpвом этаже от входа
напpаво, фиpма - CompuLink, соответственно, и в дpугих ее филиалах.
Реселлеры ALT Linux: <http://www.altlinux.ru/index.php?module=buy>)
Офис Vinchi Group (адрес и телефон на <http://www.vinchi.ru>)
Офис Bolero (ул. Кедрова, 14, вход со двора, этаж 3, комн.319.
Телефон 124-6455).
Ростов-на-Дону: диски с дистpибутивами можно купить в фиpме "Proga" -
ул. Большая Садовая 188, офис 320. Тел.53-41-22.
Алма-Ата: TOO e.com (480091, ул. Фурманова 103, 3 этаж, тел.
многоканальный 505-777, факс 505-778)
Киев: КОМИЗДАТ (553-5547, спроосить Сергея Антончука)
Севастополь. (0692)553148 <http://www.sevcom.net>
Харьков: продажа ASPLinux <http://www.spez.com.ua>
Другие города: ?
2.5. Как узнать последнюю версию софта XXX/url его домашней странички
? Мне нужна некая фича, но я не знаю, как называется соответствующий
софт, что делать?
<[22mhttp://www.freshmeat.net>. Там есть все.
На <http://www.opennet.ru> есть целый комплекс средств для
отслеживания версий софта ( <http://www.opennet.ru/lastsoft/> -
автоматическая система, <http://www.opennet.ru/news/> - "ручная")
2.6. У меня стоит <название-дистрибутива> и в нем "`^:,:#`! Как с
этим бороться?
Первым делом надо сходить на веб или фтп cайт производителя вашего
дистрибутива или его ближайший миррор и посмотреть, нет ли update'а к
пакету, вызывающему проблему. Если нет, тогда уже надо искать другие
пути решения проблемы. И очень желательно сообщить разработчикам
дистрибутива о ней. Для Red Hat это можно сделать, зайдя на
<http://bugzilla.redhat.com/bugzilla/>
Когда проблемы возникают еще при установке, можно обратиться в службу
поддержки производителя дистрибутива (если дистрибутив не пиратский,
на нем как правило указываются координаты этой службы) или описать
свою проблему в его списке рассылки, на который можно выйти через
веб-сайт производителя. Учтите, что в случае, если у вас пиратский
дистрибутив, причина проблем может быть в том, что он криво записан на
компакт-диск.
2.7. Как научиться линуху, если pядом нет гуpу? (если он есть, то
тоже прочтите обязательно)
Прочесть ru.books.computing faq ( <http://alexm.here.ru/rbcfaq.txt>).
Посмотреть на книгу "Linux. Руководство по операционной системе". BHV,
1997, ISBN 5-7315-0002-9 , но лучше ее (и в особенности прилагающийся
к ней дистрибутив 96го года) не покупать. Для начинающих хорошими
книгами являются "Путь к Linux" Владимира Водолазского (печатное
издание 99го года, а не электронное 97го) и "UNIX: универсальная
среда программирования" Б.Кернигана и Р.Пайка, а для более
продвинутых (и желающих таковыми стать) - "UNIX: Руководство
системного администратора" Эви Hемет. Кернигана-Пайка можно
попробовать найти в библиотеке вашего вуза. Для _пользователей_ (не
для чайников!) еще рекомендуется найти книжку Дж.Армстронга "Секреты
UNIX", (первое издание - Киев, Диалектика, 1996, ISBN 966-506-043-0,
второе - Вильямс, май 2000). Очень хорошая книжка, только везде, где
там написано "unix", надо читать "linux". Автор хотя и гордо
демонстрирует останки соляриса на своей машине и вспоминает как в
молодости работал с какими-то древними монстрами, но очень хорошо
видно, что его познания в настоящих юниксах малость заржавели. Следует
серьезно подумать, прежде чем покупать недавно (осень 1999)
переведенную "Unix Power Tools" от O'Reilly - единственным известным
авторскому коллективу могучим тулзом является shell. Остальное -
буквально в трех словах или вовсе проигнорировано. А для заменителя
man bash она дороговата.
Обратиться в существующую Linux Users Group, или создать свою. С.-Пб
LUG (spblug) доступна через <http://www.spb.lug.ru/> Московская
(mlug) -- через <http://www.moscow.lug.ru> Более подробная информация
и полный список lug имеется на <http://www.lug.ru>.
Подписаться на список рассылки, посвященный вашему дистрибутиву. Как
правило, этот список ведется производителем дистрибутива, а информация
о подписке доступна через веб-сайт производителя
Пpочесть паpу книжек от Linux Documentation Project.
<http://www.linuxdoc.org>
Переводы на русский, возможно, устаревшие, есть на
<http://www.linux.org.ru/books/>.
Вот неполный список сайтов с документацией на русском языке:
╖ <http://www.linux.org.ru>
╖ <http://lib.ru>
╖ <http://www.gnu.org.ru>
╖ <http://www.opennet.ru>
╖ <http://linux-ve.chat.ru>
╖ <http://www.nevod.ru/linux/doc/>
╖ <http://xtalk.price.ru>
╖ <http://alexm.here.ru>
2.8. Я поставил Red Hat Linux (или Red Hat-подобный дистрибутив). Что
следует прочесть в первую очередь, чтобы уяснить его специфику?
Начните с Red Hat Reference Guide (/doc/ref-guide на компакт-диске).
Особенно стоит обратить внимание на главы Package Management with RPM
и System Administration. Также полезно прочесть cодержимое
/usr/doc/initscripts-x.xx. Очень многие вопросы, которые сюда стоило
бы включить, не включены именно потому, что на них есть ответы там.
Два последних источника являются частичной компенсацией отсутствия
Linux-специфичных вещей в книге Немет, издание 94го года.
2.9. А у меня нет интернету, что вы мне тут урлями тычете! Хочу
фреков! Это фидошная конференция или где?! (вариант: пришлите мне
нетмейлом русскую и подробную доку по ...! Очень надо!)
Linux - система, целиком и полностью разрабатывающаяся в интернете.
Поэтому, нравится вам такое положение вещей или нет, но если вы не
хотите сидеть на версиях программ, с глюками которых все уже давно
позабыли, как бороться, мучаться с поисками документации и платить
пиратам и халтурщикам за CD с кучей устаревшего и глючного мусора, то
для нормальной жизни в линуксе вам необходимо хоть какое-то
интернет-подключение (вполне сгодится, на первое время, и вариант
"попросить приятеля скачать что-нибудь нужное" - но чем сложнее этот
процесс, тем меньше удовольствия и больше проблем вы получите от
линукса). И никто, увы, не жаждет сперва за свои деньги что-то
скачивать, а потом выкладывать вам для халявной раздачи. Да, это
делалось где-то, когда-то, когда интернет был дорог и малодоступен, а
качали все, в общем, одно и то же - но сейчас те, кто этим занимался,
давно потеряли и интерес, и технические возможности. Поэтому
об'единяйтесь с такими же страдальцами, покупайте интернет вскладчину,
публикуйте свои адреса для freq, восстанавливайте файлэхи U*, но не
ждите, что кто-то сделает это за вас. Тем не менее, некоторое
количество ббс c юниховым софтом существует, они перечислены в
следующем вопросе.
2.10. А у меня нет Интернета, где бы мне найти ... для Линукса?
Желающие могут присылать свои координаты для включения в FAQ.
Запись на CD-R:
В Петербурге: У Дмитрия Иванова (2:5030/902, idv@aanet.ru). Hа freq
FILES отдается полный список имеющегося. Возможна рассылка в другие
города на территории России.
BBS с софтом для юникса:
В Москве: Quasi-BBS 702-52-49 23:00-08:00
Ultrix BBS, 00:00-07:00, 462-8291, Sysop - Arthur Komarov
(5020/943.17) (TNSDrive 2.0b1)
unitrecordHQ, 0:00-7:30, 162-9286, только фреки, sysop - tim
kondratyev (2:5020/1989.1)
В Петербурге:
2:5030/763 TMA BBS, по нодлистовому времени (файл-реквесты).
И станции в Харькове - 2:461/220
Spezvuz BBS CM 057-7123313 Alexander Grinevich (2:461/1024)
2:463/57 в Киеве (только файл-реквесты)
Алма-Ата: ISP BBS CM 3272-638796 Alexander Uskov (2:5083/21) (TNSDrive
2.0b4)
2.11. Программирование - документация
info gcc,libc,gdb
/usr/doc/LDP/lpg и другие книжки от LDP, лежащие на их сайте. (
<http://www.linuxdoc.org>)
Ccылки на гайд по программированию при помощи curses и много другого
полезного: <http://www.linuxprogramming.com/>
Раздел "Юниксоидам всех стран" на <http://lib.ru> Обратите внимание
на книжку Морриса Баха <http://lib.ru/BACH/>
Она же выходила и в печатном виде. Еще на бумаге издавались:
"Системное программирование на C++ для Unix" Теренс Чан, BHV
"ОС UNIX" Андрея Робачевского - это почти общепризнанно сборник плохих
переводов хороших оригиналов. К сожалению, альтернативы этой книге
нет, пока не будут переведены и/или (пере)изданы сами оригиналы,
перечисленные в конце книжки: Бах, Стивенс, Лефлер. Книгу можно
получить бесплатно - взяв в библиотеке вашего вуза.
Вопросы программирования под Unix обсуждаются в ru.unix.prog[22m, а также
в news:comp.unix.programmer. Там есть свой FAQ и документ "Properly
tuned Unix Application".
2.12. Hе могу загрузить Линукс с {тpетьего винта / гигабайтного винта
в normal моде / чего-то экзотического / раздела выше 8Gb } Что делать
?
Если поместить ядpо Линукса на 1-й hd, в пpеделах доступности bios
(1024 цилиндpа), то ядpо _гаpантиpованно загpузится_, а остальные
части Линукса можно пpоизвольно pазбpосать по pазным дискам/pазделам.
Ядpо можно записать в ДОСовский pаздел и загpужать его пpогpаммой
loadlin.exe. Также полезно почитать man rdev.
Последние версии lilo (>21.3) умеют загружать ядро и с цилиндров,
больших, чем 1024. При этом BIOS должен быть не слишком старым и
поддерживать lba32, эту опцию надо прописать в /etc/lilo.conf.
В качестве альтернативы lilo очень рекомендуется поглядеть на GRUB
<http://www.gnu.org/software/grub>
Существует еще малоизвестный загрузчик NUNI, который вообще не
пользуется BIOS и напрямую работает с IDE-контроллером. Причем
понимает даже PCI IDE с нестандартными(большими) номерами портов.
Диск должен быть с системой ext2fs.
2.13. Как мне поставить линукс, не выделяя ему раздел - только на
познакомиться. (вариант: мегабайт на 150 - у меня больше нет, я бедный
студент) А то у меня диск весь занят NT'ей/виндами/OS/8, etc.
(Alex Korchmar) Для первого знакомства с женским полом - _не_надо_
использовать резиновую бабу.
Для того, чтобы познакомиться с линуксом/посмотреть, на что он годится
- _не надо_ ставить его под win4lin, vmware и прочими эмуляторами, не
надо искать "урезанные", "упрощенные", "live-fs" и прочие
недо-дистрибутивы, и не надо пытаться поставить их на FAT -
начинающему и без этого хватит проблем.
И аргумент "мне эти три-пять гигабайт еще могут понадобиться" - не
аргумент вовсе. Если они тебе так нужны, что нельзя с пол-годика без
них обойтись - значит, не надо ставить линукс. Ибо если ты его будешь
раз в три дня переустанавливать - то вот только переставлять отдельно
взятый (кривой) дистрибутив на отдельно взятой (кривой) конфигурации
ты и научишься. А это знание, увы, работодателями не ценится.
2.14. Хочу поставить на один винт несколько операционок: Linux, Win-
dows NT, Windows 9?. Как лучше сделать это ?
Прежде всего: другую операционку, в особенности win'95/98 или dos,
очень желательно ставить первой, а значит, начальное разбиение диска
проводить ее средствами. Дело в том, что в некоторых случаях (в каких
- выяснить пока не удалось) этим ОС или их инсталляторам не нравится
MBR, созданный средствами Linux.
Затем вам нужно решить: что вы будете использовать в качестве
основного загрузчика ? Если NT Loader, то этот вариант подробно
расписан в HOWTO/mini/Linux+NT-loader. Если LILO, то нужно учесть
следующие вещи:
1. LILO может быть в MBR или в начале активного Primary linux раздела,
тогда в MBR должно быть нечто, способное его загрузить, например
стандартный загрузчик MS-DOS (записывается путем fdisk /mbr).
2. Как бы вы ни ставили Windows 9?, до или после линуха, помните что
ее инсталлятор независимо от вашего желания записывает в MBR свой
стандартный загрузчик, который умеет только передавать управление
на первый сектор активного раздела. В таблице разделов инсталлятор
ставит признак активности на свой раздел. Что делать после этого -
смотрите в разделе "Прочее". Установщики Windows NT и 2000
загрузчик из MBR не трогают, но Windows NT трогает MBR при первом
запуске Disk Administrator - он спрашивает, можно ли записать Disk
signature (это нечто 32-битное вроде контрольной суммы), пишется
оно в MBR и по слухам прибивает LILO.
3. NT Loader должен обязательно находиться на hda1 или hda2, причем,
на fat16 разделе.
4. Если вы хотите грузить Win 9? непосредственно из lilo, а не из NT
Loader, то добавьте в lilo.conf:
other = /boot/bootsect.dos
label = win
bootsect.dos берется из корневого каталога того диска, на котором
стоит NT Loader
Методы решения проблем и варианты с другими операционками/загрузчиками
подробно расписаны в /usr/doc/HOWTO/[mini/]Linux+{другая ОС}
(Alexander Pevzner, 2:5020/59.9) IMHO, в сомнительных и сложных
случаях лучше вообще сначала раздать каждой операционке по партиции,
причем начиная не с линуха и доверяя откусывание места на диске
собственному fdisk-у каждой ОС. А потом уже продолжать инсталляцию.
2.15. А давайте спортируем DN под Linux, FAR под Linux, допишем mc,
чтобы он был не хуже DN, есть ли приличный файловый менеджер для Linux
(mc не предлагать) etc etc
(Andrey Terebecky <mailto:arey@penguinpowered.com>) Hужно начать с
того, что задуматься каких функций из DN, FAR, etc - Вам не хватает в
MC. После этого внимательно изучить все, что mc рассказывает по
клавише F1 (документация идущая с ним довольно скудная), обычно это
решает большинство вопросов. Hе нужно искать функции типа
CD-проигрывателя, запуска нескольких копий редактора в разных окнах -
таких возможностей в MC нет. В DN эти функции введены для преодоления
недостатков операционной системы (однозадачность,
однопользовательность, отсутствие нужных утилит). Линукс таких
недостатков лишен и поэтому такими вещами занимаются внешние
программы, а MC это просто файловый менеджер.
Строго говоря, MC и ему подобные программы в Unix\Linux вообще не
нужны. Все их функции обычно решаются гораздо быстрее с помощью shell
(zsh, tcsh, bash, etc). Конечно для этого потребуется достаточно
подробно изучить документацию к Вашему любимому shell и приобрести
некоторые навыки работы с ним, но результат себя оправдает. В защиту
MC часто говорят, что в shell не удобно работать с архивами - возможно
это действительно так, а возможно говорящие это, никогда не видели
AVFS ( <http://www.inf.bme.hu/~mszeredi/avfs/>)
В Unix\Linux есть и аналоги MC - X Northern Captain (
<http://xnc.dubna.su>), deco ( <ftp://ftp.cronyx.ru/cronyx/>), а также
его модификация от Nickolay N. Parfenov ( <http://usrsrc.chat.ru>),
VFU ( <http://www.biscom.net/~cade/vfu>), ytree (
<http://www.han.de/~werner/>).
Если же Вы и после этого убеждены в необходимости DN, FAR под Linux -
портируйте если можете. Hо помощников в этом будет найти сложно, те
кто могут - не захотят это делать по выше перечисленным причинам, а те
кто захочет скорее всего не смогут.
(Viktor Krapivin 2:450/102.1 и Dmitry Chernyak 2:503/983.998)
В самом начале 90х был такой теpмин - "интегpатоp". Вот DN им и
является (почти). А полуночный командиp - нет. Точно так же, как
XEmacs пpетендует на это же "звание", а вот vim - нет 8-) Гpань
тонка, но она есть. И дело не в набоpе всякого баpахла. "Интеграторы"
имели смысл в однозадачном ДОСе, отсутствие необходимости выходить
из редактора, чтобы потаскать файлы было их основным достоинством.
В многозадачном юниксе "интегрирование" может быть с успехом заменено
использованием нескольких консолей, телнетов, команд bg/fg, программы
screen и, наконец, X-Window. Кроме того, мало кому нужен такой
"интегрированный редактор", который не дотягивает до уровня vi. А он
никогда до него не дотянет, просто потому, что vi - _редактор_, а
"редактор" в DN - просто заплатка, которой времени уделено не больше,
чем всем остальным компонентам. Такова цена интегрирования.
2.16. * Есть ли в Linux-е интегрированные среды разработки типа Bor-
land C++ Builder, Borland Delphi, Microsoft Visual C++, и т.д.?
Borland Kylix <http://www.borland.com/kylix/> Victor Wagner
<mailto:vitus@communiware.ru>
А как же.
xwpe (очень похожа именно на Turbo C++), rhide, motor, KDevelop,
Glade, Source Navigator
Hо все они до жути неудобные.
По той простой причине, что ни один квалифицированный программист с
ними не связывается. Это софт, написанный чайниками и для чайников.
Потому что те, кто более-менее разбирается в идеологии *nix прекрасно
понимают, что практически любой проект надо разрабоатывать не на одном
языке, а на нескольких разного уровня (критические по скорости части -
на C, интерфейс - на perl/tcl/python/slang, работу с данными на SQL и
так далее).
Между прочим, большинство из выше упомянутых оболочек расчитаны на
работу с несколькими языками.
Hо все равно они хуже, чем обыкновенный мощный редактор. Благо, все
мощные редакторы под эхотаг умеют вызывать внешние программы, и
анализировать их выдачу.
Поэтому рекомендуется освоить один из двух наиболее распространенных
редакторов - vim или emacs, и пользоваться для разработки им. Благо
такие вещи как подсветка синтаксиса, вызов make прямо из редактора, и
позиционирование курсора на строку, про которую компилятор выругался,
в них обоих есть.
(от Alex Kanavin: намного более подробно все это объясняется в книжке
The Art of Unix Programming, которую я рекомендую прочесть всем, кто
начинает программировать под Unix - она очень хорошо помогает осознать
идеологию Unix и избавиться от предрассудков, свойственных
Windows-программистам. Книжка лежит здесь:
<http://www.tuxedo.org/~esr/writings/taoup/>
2.17. * Ищу конфернцию, посвященную программированию под Linux...
Программирования "под Linux" не бывает. Бывает программировние под
*nix. И ему посвящена эха <news:fido7.ru.unix.prog>.
2.18. А вот ответьте мне нетмейлом на такой вопрос: ... ?
Как заметил Victor Wagner, написание писем в эху есть самовыражение,
написание писем нетмейлом есть техническая поддержка. Первое
бесплатно, второе платно. Подумайте об этом.
2.19. У меня совсем чайниковый вопрос...
Обратитесь в RU.LINUX.CHAINIK. Правда, при этом есть риск получить
совсем чайниковый ответ.
3. Русификация
Значительная часть этого раздела написана Alexander Voropay
<mailto:alec@sensi.org>.
3.1. У меня проблемы с русским в...
Проблему русификации можно разделить на несколько частей :
╖ русификацию консоли
╖ установку системной (libc) locale
╖ русификацию системы X Window - шрифты и клавиатура
╖ включение поддержки русского в конкретных программах
╖ печать
Все эти части настраиваются по-отдельности.
Существует Cyrillc-HOWTO
<http://www.ibiblio.org/pub/Linux/docs/HOWTO/unmaintained/Cyrillic-
HOWTO>, однако он довольно долго не обновлялся и больше не
поддерживается, поэтому отнеситесь к нему критически (Last version :
v4.0, 23 January 1998), перевод:
<http://www.inp.nsk.su/~baldin/Cyrillic-HOWTO-russian-old/Cyrillic-
HOWTO.html>.
Евгений Балдин создал новую версию Cyrillic-HOWTO на русском (версия
не имеет английского перевода и не включена в официальную базу HOWTO).
Доступна здесь : <http://www.inp.nsk.su/~baldin>
Лучше всего сперва искать решение проблемы здесь и лишь потом - в
Cyrillic-HOWTO (англоязычном).
3.2. Русификация консоли.
В системе Linux существуют два конкурирующих пакета управления
шрифтами и клавиатурой : kbd и consoletools.
<ftp://ftp.win.tue.nl/pub/linux/utils/kbd/> или
<ftp://ftp.kernel.org/pub/linux/utils/kbd/>
<http://lct.sourceforge.net>
В разных дистрибутивах применяются или один, или другой. Например, в
Red Hat 4.х и 5.x для русификации консоли применялся пакет kbd. Однако
в Red Hat 6.x и выше применяется уже другой пакет - consoletools.
Существует Keyboard-and-Console-HOWTO, автор этого HOWTO является
также автором пакета kbd, поэтому естественно, всех склоняет к
использованию kbd. ;-) <http://linuxdoc.org/HOWTO/Keyboard-and-
Console-HOWTO.html>
На "низком уровне" для русификации консоли достаточно выполнить
следующие команды (пакет kbd):
$ setfont Cyr_a8x16
$ mapscrn koi2alt
$ echo -ne "\033(K"
$ loadkeys ru1
Если используется пакет console-tools:
$ consolechars -f UniCyr_8x16 -m koi8-r
$ echo -ne "\033(K"
$ loadkeys ru1
См. man на соответствующие команды и 'man console_codes'. Описание,
что есть что, у console-tools в /usr/doc/console-tools*, довольно
внятное.
NB! К сожалению, в пакете console-tools некоторые русские фонты не
содержат UNICODE screen-font map (SFM) и в таком виде попадают во
многие дистрибутивы. Исправленные фонты живут в пакете console-tools-
cyrillic: <ftp://ftp.ice.ru/pub/fonts/linux/>
Как правило, настройка шрифтов и клавиатуры скрыта среди стартовых
скриптов, а ключевые управляющие параметры вынесены в отдельные
файлики. Иногда существуют даже специальные программы настройки.
"Идеологически правильно" не нарушать системную архитектуру
дистрибутива, а всего лишь поменять настройки в этих файликах.
К сожалению, в Linux только один загружаемый фонт на все виртуальные
консоли.
Если вы хотите видеть русские буквы и рамки (например в mc) на консоли
одновременно, используйте только TERM=linux .
У вас будут проблемы при работе консоли в CP-866 из-за того, что
некоторые русские буквы в этой кодировке совпадают со "старшими"
управляющими кодами C1, например буква "Ы" 0x9B совпадает со старшим
ESC (CSI). Работайте в KOI8-R.
3.3. Мне говорят "Настрой локаль!" Что это значит ?
Речь идет о настройке системной locale. Проверить установки можно,
просто сказав locale:
$ locale
LANG=ru_RU.KOI8-R
LC_CTYPE="ru_RU.KOI8-R"
LC_NUMERIC="ru_RU.KOI8-R"
LC_TIME="ru_RU.KOI8-R"
LC_COLLATE="ru_RU.KOI8-R"
LC_MONETARY="ru_RU.KOI8-R"
LC_MESSAGES="ru_RU.KOI8-R"
LC_ALL=
$
Если результат именно такой, значит настроена русская locale (ru_RU) в
кодировке KOI8-R. Проверить можно командами 'cal' или 'date' - даты
должны быть на русском.
На самом деле, для настройки locale достаточно всего лишь установить
переменную окружения LANG= из стартовых скриптов (например
/etc/profile) или руками.
$ export LANG=ru_RU.KOI8-R
В Red Hat-based дистрибутивах это делается путем редактирования файла
/etc/sysconfig/i18n где, кроме прочего, должна быть строчка
LANG=ru_RU.KOI8-R
3.4. * Как настроить locale ? Я установил LANG, но русских дат нет.
Прежде всего - подробная дока о locale имеется на
<http://www.sensi.org/~alec/locale>. Обращайтесь туда, если вам нужны
нестандартные варианты (например, отключение русскоязычного интерфейса
с сохранением правильной сортировки и т.д.)
Система X-Window и библиотеки Xlib и Xt имеют собственные механизмы
локализации (XLC_LOCALE) которые являются "надстройкой" над системной
locale. Подробности: {X11Root}/doc/i18n (в RedHat:
/usr/share/Xfree86-doc/i18n). Документация в .PS
<http://www.tsu.ru/~pascal/x_locale/>.
Хотя в принципе допустимо задавать короткое именование, вроде
LANG=ru_RU или даже LANG=ru, лучше использовать _полное_ имя :
LANG=ru_RU.KOI8-R . Совершенно недопустимо задавать LANG=ru_SU, такой
страны больше нет :-)
К сожалению, не все дистрибутивы "от рождения" позволяют использовать
ru_RU.KOI8-R . Воспользуйтесь 'locale -a' для получения списка
допустимых значений. Если в списке нет значения ru_RU.KOI8-R, его
нужно добавить, а то LANG= будет указывать "в пустоту" :
$ localedef -c -i ru_RU -f KOI8-R ru_RU.KOI8-R
Computing table size for character classes might take a while... done
Computing table size for collation information might take a while... done
$
$ cd /usr/lib/locale
$ mv ru_RU.koi8r ru_RU.KOI8-R
(в старых версиях - /usr/share/locale)
NB! Утилита localedef фомирует "сжатое" (mangled) имя кодировки, так
что имя превращается в "ru_RU.koi8r". Это приводит в замешательство
некоторые программы. Но к счастью, все же можно установить полное имя
LANG="ru_RU.KOI8-R" и благодаря mangling-у все будет работать и
программы будут счастливы. Еще один вариант -- переименовать каталог.
Некоторые дистрибутивы неправильно включают
LANG=ru
LC_ALL=ru_RU.KOI8-R
Это НЕПРАВИЛЬНО. Лучше не устанавливать переменную окружения LC_ALL
вообще (достаточно полного LANG=, а все переменные LC_xxxx
"унаследуются" от него). Подробнее смотрите на
<http://www.sensi.org/~alec/locale/> в главе "Как включить..."
3.5. Как отключить вывод сообщений на русском, сохранив при этом
остальные свойства русской локали ?
Нужно определить переменные окружения :
LANGUAGE=en_US
LC_MESSAGES=en_US
В RedHat эти строки можно вписать прямо в /etc/sysconfig/i18n .
3.6. Я настроил locale и русский в консоли, но bash все равно не
вводит русские буквы, пищит.
Хотя для большинства программ вполне достаточно установки
LANG=ru_RU.KOI8-R чтобы начать распознавать русские буквы, многие
программы, основанные на библиотеке readline (например bash), все
равно считают символы с кодами больше 128 особыми META-символами
(пищит при вводе).
Чтобы отучить библиотеку readline от этого, необходимо определить
переменную
INPUTRC=/etc/inputrc
Кроме того, создать файл /etc/inputrc
set meta-flag on
set convert-meta off
set output-meta on
После этого библиотека readline (и bash) начнет воспринимать русские
буквы.
Еще один вариант : Не задавать INPUTRC=, а прописать те же значения в
файл ~/.inputrc (в home-каталоге). Но тогда придется заводить такой
файл в домашнем каталоге каждого пользователя.
См. man readline.
3.7. Red Hat и русификация
Cоздаем файлик /etc/sysconfig/i18n. Внутри должно быть что-то вроде:
SYSFONT=UniCyr_8x16
SYSFONTACM=koi8-r
LANG=ru_RU.KOI8-R
Раскладка клавиатуры выбирается утилитой kbdconfig и прописывается в
файл /etc/sysconfig/keyboard, в виде:
KEYTABLE=ru1
Эти файлы используются в скриптах /etc/rc.d/rc.sysinit, /sbin/setsys-
font. Ознакомьтесь с ними, а также с /usr/doc/initscripts-x.xx/, если
возникли вопросы или проблемы.
3.8. Debian и русификация
Debian 2.2: Насторойка фонтов запускается из /etc/init.d/console-
screen.sh
/etc/console-tools/config:
#
SCREEN_FONT=Cyr_a8x16
APP_CHARSET_MAP=koi8-r
#
APP_CHARSET_MAP_vc2=koi8-r
APP_CHARSET_MAP_vc3=koi8-r
APP_CHARSET_MAP_vc4=koi8-r
APP_CHARSET_MAP_vc5=koi8-r
APP_CHARSET_MAP_vc6=koi8-r
Фонты нужно заменить, взяв правильные из console-tools-cyrillic.
Клавиатура настраивается из /etc/init.d/keymaps-lct.sh и загружает
раскладку /etc/console-tools/default.kmap.gz Именно под этим именем
нужно разместить требуемую раскладку или создать symlink. Для
интерактивного выбора клавиатуры есть полезная утилита: kbdconfig.
/etc/environment:
LANG=ru_RU.KOI8-R
3.9. Как установить русские фонты KOI8-R на XFree86 ?
В современных дистрибутивах они скорее всего уже стоят. Первым делом
(на работающем X сервере) запустите :
$ xlsfonts -fn "*-koi8-r"
Если список не пустой - примите наши поздравления :-)
Начиная с версии XFree86 3.3.2 русские фонты cronyx-* входят прямо в
дистрибутив XFree. Если фонтов нет -- их нужно установить. Для Red Hat
просто поставьте пакет XFree86-cyrillic-fonts-XXXX.rpm . Фонты
установятся в /usr/X11R6/lib/X11/fonts/cyrillic .
Далее нужно подключить шрифты к X Window. Убедитесь, что в файле
/etc/X11/XF86Config прописан путь :
Section "Files"
...
FontPath "/usr/X11R6/lib/X11/fonts/cyrillic"
FontPath "/usr/X11R6/lib/X11/fonts/75dpi"
...
EndSection
Путь с cyrillic лучше всего поставить первым. Перезапустите X сервер и
проверьте командой : xlsfonts -fn "*-koi8-r" .
Еще см. вопрос "Где найти хорошие русские шрифты для иксов?" Про
подключение шрифтов TrueType также имеется отдельный ответ, в разделе
про X Window.
Хорошим решением также будет использование фонт-сервера. Во-первых,
он может быть один на всю организацию, а во-вторых в современные
фонт-серверах можно использовать шрифты TrueType. Для Red Hat
фонт-сервер xfsft входит в пакет XFree86-xfs.
<http://www.dcs.ed.ac.uk/home/jec/programs/xfsft/>
3.10. Как сделать так, чтобы в X Window русские буквы вводились везде
?
Существует два основных способа русификации клавиатуры X :
╖ XKB, применяющийся в современном X11R6
╖ xmodmap, применявшийся в X11R5
При русификации X 3.3.x через XKB в /etc/X11/XF86Config должно быть
прописано:
Section "Keyboard"
...
XkbRules "xfree86"
XkbModel "pc101"
XkbLayout "ru"
XkbOptions "grp:shift_toggle"
EndSection
Для X 4.0.x
Section "InputDevice"
...
Driver "keyboard"
Option "XkbRules" "xfree86"
Option "XkbModel" "pc101"
Option "XkbLayout" "ru"
Option "XkbOptions" "grp:shift_toggle"
EndSection
В зависимости от клавиатуры опция Model может быть "pc101", "pc104"
или "pc105", а комбинации переключения:
grp:toggle правый Alt (с "фиксацией")
grp:caps_toggle Caps_Lock
grp:shift_toggle два Shift
grp:ctrl_shift_toggle Control+Shift
grp:ctrl_alt_toggle Control+Alt
Для 4.0.x добавились новые :
grp:alt_shift_toggle Alt+Shift
grp:menu_toggle Menu (модель должна быть pc104, pc105)
Если есть проблемы с XKB, прочтите <http://www.tsu.ru/~pas-
cal/other/xkb/> Там же есть ссылки на "переключатели клавиатуры",
например xxkb, описание, как использовать несколько раскладок
одновременно, назначать клавиши переключения раскладок и много других
интересных вещей.
Наиболее развитая программа для переключения клавиат