LINUX.ORG.RU Frequently Asked Questions v. 1.8.5

Составители - Метляев Евгений AKA jackill, Сергей Сикорский AKA fagot, Тимур Тучковенко AKA gr_buza и многие другие

28.10.2004


Я не буду писать тут о том, что такое Linux, зачем оно надо и т.д. Об этом уже много написано, в том числе и в других похожих документах. Просто хочется собрать воедино много полезных ответов на действительно часто задаваемые вопросы на форумах Linux.org.ru. Большое спасибо всем тем людям, которые не поленились в свое время отвечать на них. В принципе, все это уже есть в других FAQ и вообще в сети Интернет, но видимо стоит повториться :)

1. Легальная часть

Copyright (c) 2003 Sergey Sikorski, Melvyaev Eugene, Tuchkovenko Timur.

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation;

This document has following Invariant Sections: Об этом FAQ, Благодарности, Легальная часть, GNU Free Documentation License;

This document has Front-Cover Texts: "LINUX.ORG.RU Frequently AskedQuestions".

This document has no Back-Cover Texts. A copy of the license is included in the section entitled GNU Free Documentation License.

© Сикорский Сергей, Метляев Евгений, Тучковенко Тимур, 2003

Каждый имеет право воспроизводить, распространять и/или вносить изменения в настоящий Документ в соответствии с условиями GNU Free Documentation License, Версией 1.2 или любой более поздней версией, опубликованной Free Software Foundation;

Данный документ содержит следующие Неизменяемые разделы; Об этом FAQ, Благодарности, Легальная часть, GNU Free Documentation License.

Данный документ содержит следующий Текст, помещаемый на первой странице обложки: "LINUX.ORG.RU Frequently Asked Questions".

Данный документ не содержит теста, помещаемого на последней странице обложки. Копия настоящей Лицензии включена в раздел GNU Free Documentation License.

ОТКАЗ ОТ ПРЕДОСТАВЛЕНИЯ ГАРАНТИЙ

ИНФОРМАЦИЯ В ДАННОМ ДОКУМЕНТЕ ПРЕДОСТАВЛЯЕТСЯ "КАК ЕСТЬ" БЕЗ ЛЮБЫХ ГАРАНТИЙ КАКОГО-ЛИБО РОДА КАК ЯСНО ВЫРАЖЕННЫХ, ТАК И ПОДРАЗУМЕВАЕМЫХ, ВКЛЮЧАЯ, НО НЕ ОГРАНИЧИВАЯСЬ ПОДРАЗУМЕВАЕМЫМИ ГАРАНТИЯМИ УДОВЛЕТВОРИТЕЛЬНОГО КАЧЕСТВА, ПРИГОДНОСТИ ДЛЯ ЧАСТНЫХ, ОСОБЫХ ЦЕЛЕЙ, ПРАВ И НЕПОСЯГАТЕЛЬСТВ. АВТОРЫ НЕ БЕРУТ НА СЕБЯ ОТВЕТСТВЕННОСТЬ ЗА ТО, ЧТО ДОКУМЕНТ БУДЕТ СВОБОДЕН ОТ ОШИБОК ИЛИ ЧТО ПОДОБНЫЕ ОШИБКИ БУДУТ ИСПРАВЛЕНЫ. НИ ПРИ КАКИХ УСЛОВИЯХ АВТОРЫ НЕ БУДУТ НЕСТИ ОТВЕТСТВЕННОСТЬ НИ ЗА КАКИЕ ОСОБЫЕ ПОБОЧНЫЕ ИЛИ КОСВЕННЫЕ ПОТЕРИ, ПРОИЗОШЕДШИЕ ИЗ-ЗА ИСПОЛЬЗОВАНИЯ ДАННОГО ДОКУМЕНТА.

2. Linux-org-ru

Форум, даже технический - это в первую очередь средство общения, а не кладезь знаний, по-этому не стоит ожидать от участников исключительно трезвой логики, четких ответов на вопросы и вообще ответов по теме. Да, это конечно так и должно быть, но на практике выходит немножко иначе :)

2.1 Что почитать новичку?

Новичку стоит прочитать весь этот faq (хотя бы просмотреть глазами), а для общего понимания можно прочитать книгу Введение в системное администрирование Unix. Она хоть и старовата, но общее представление дает.

Здесь неплохие статьи для новичков.

И у нас есть подборка FAQ и документов.

2.2 Как получить ответ на свой вопрос

В первую очередь не лениться поискать. Предварительно хорошо бы подумать, где искать лучше всего. Хорошая подборка статей есть на портале Opennet.ru. Если возникли проблемы с какой-то программой, можно попробовать 'program --help' - авось что интересное и всплывет. Далее следует сделать 'man program' - там очень много интересной информации, если вопрос простой - все равно туда же пошлют. В лучшем случае... :)

Прочитать те FAQs, ссылки на которые имеются в этом FAQ, в разделе "Ссылки на другие FAQs и интересные ресурсы".

Поискать ответ в этом FAQ.

Поискать в Интернет. Пожалуй лучший поисковик это Google и Yandex - в РуНете. Поскольку многие форумы (в том числе и linux.org.ru) являются динамическим, то по найденным ссылкам можно уже ничего и не найти. В таком случае следует использовать механизм кеширования поисковиков - например в Google ссылка на страницу в кеше называется "Сохранено", рядом с найденной ссылкой.

Если ответа все еще нет, можно поискать на самом сайте - через поиск, или просто полистав пару страниц в форуме - заодно можно узнать много интересного.

И в последнюю очередь - спросить.

2.3 Как спрашивать, чтобы нормально ответили?

Не хамить.

Не писать так, как будто тебе кто-то что-то должен.

Не писать так, как будто вы во всем, в принципе, разбираетесь, но вот только тут... Это во-первых ":понты":, а во вторых неправда - будь ты такой умный - не писал бы.

В теме сообщения не писать "Памагите!!!!!!" или "Help me plz!". Тема должна быть информативной. Я бы вообще посоветовал писать по формуле "задача"+"ваши действия"+"проблема".

Не писать в стиле пАдонки и родственных ему, т.е. коверкание языка, транслит без реальной на то причины, сокращения типа plz, thnx и проч. - это, конечно, круто, но только не в случае, когда нужен толковый ответ.

Писать по возможности без орфографических ошибок или хотя бы более-менее правильно расставлять знаки препинания - без них текст трудно читать.

Не начинать пост со слов "ВСТАВИТЬ_НАЗВАНИЕ_ПРОГРАММЫ глючит!...". В абсолютном большинстве случаев "глючит" не программа, а ее пользователь, точнее - использует ее неправильно/неумело.

Не заканчивать сообщение фразой "к манам не отсылать!", если ответ на вопрос действительно можно найти в man-страницах, это говорит о том, что спрашивающий просто ленится напрячь мозги для его получения, а это не поощряется. Ну а если таки отсылают, следует все же глянуть в man и в крайнем случае переспросить на предмет каких опций ворошить страницы руководства.

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

Не просить выслать ответ на ящик - в 99% случаев никто этого делать не станет, потому что никому это не надо.

А лучше всего прочитать документ как правильно задавать вопросы.

2.4 Когда я написал комментарий, форум скомкал в кучу мое сообщение. Почему?

Сообщение можно отправлять в нескольких форматах. По умолчанию используется формат TeX paragraphs. В этом режиме для начала нового абзаца следует использовать пустую строку-разделитель (два раза Enter). Этот режим удобно использовать для простых комментариев (особенно в браузерах типа links).

Если выбрать режим User line break, то началом абзаца будет обычный одиночный Enter.

А для корректного отображения конфигов/кода и т.д. удобно использовать режим Preformatted text - он даже отступы сохраняет, но не следует забывать о длине строк - для удобочитаемости их не следует оставлять слишком длинными.

2.5 Форум "глючит" - я поместил сообщение, а их появилось два подряд.

Скорее всего это не форум "глючит"... :) Любое сообщение можно удалить в течении часа. Если есть желание просмотреть удаленные комментарии - внизу странички есть ссылка "Показать удаленные комментарии".

2.6 А можно сделать так, чтобы при ссылке на дискуссию из адреса вырезался кусок, отвечающий за профиль?

Следует пользоваться ссылкой внизу странички.

2.7 А зачем мне профиль/ник?

Nick - чтобы формировать мнение о себе у посетителей форума. И таким образом создать круг людей, которым вы интересны. А с недавних пор - просто для того, чтобы ваши сообщения видели все.

При выборе имени не стоит использовать вариации на тему root, xaker и т.д. и использовать цифры вместо букв - это ребячество, да и читать их иногда просто трудно. Возможно, владельцы ников вида "z3r0c00l" или "KOPEHb" очень даже хорошие люди, но очевидно они просто не представляют, насколько плохое мнение о себе формируют таким именем.

Профиль может быть полезен, если кроме темы интересуют другие настройки форума (показывать фотографии участников, например). Настройки профиля сохраняются в coockies браузера и при следующем входе подставляются автоматически.

Следует иметь ввиду, что пойдя по некорректно указанной ссылке вида http://www.linux.org.ru/profile/blue/index.jsp браузер запомнит настройки профиля blue автоматически.

2.8 Почему на l.o.r. пропускаются новости о BSD?

Так уж повелось. К тому же сайт раньше стоял на FreeBSD. Почему бы и нет? Читайте правила - там описано что можно пропускать.

2.9 Я зарегистрировался, а писать в обсуждениях, где стоит ограничение 'только для зарегистрированных пользователей' я не могу. В чем дело?

Пользователь считается зарегистрированным, как только его рейтинг 'Score' будет не менее 50 единиц.

2.10 Как посмотреть свой рейтинг (score)?

Вы можете выйти и загрузить профиль maxcom или mikhail (методом нажатия на ссылку http://www.linux.org.ru/edit-profile.jsp и вводом в открывшемся окне названия профиля).

2.11 А что за рейтинг, что за звезды?

Ребята, когда заходите на сайт, нужно читать его правила - обычно там содержатся все ответы на ваши вопросы.

2.12 А почему так слабо обновляются разделы документации/дистрибутивов, плохо работает поиск и т.п.?

Сайт работает на тех же принципах, что и линукс - им занимаются в свободное время. Кто-то модерирует, кто-то отвечает на вопросы, кто-то пишет faq и т.п. Если вы хотите что-то изменить, займитесь этой частью, заодно можете найти кого-нибудь себе в помощь.

2.13 Почему в вашем faq присутствуют ссылки на англоязычные ресурсы, это же русский faq и русский сайт?

Потому что самая свежая документация пишется, в основном, на английском языке. Переводить ее не успевают, да многим это и не нужно - научиться свободно читать английскую техническую документацию не так уж и сложно - никто не просит вас учиться говорить.

Учите английский - сэкономите себе кучу времени и будете всегда в курсе последних событий.

3. Slackware

http://slackware.com

http://slackware.ru

http://multilinux.sakh.com

http://www.oszone.net/linux/faq/faq_slackware.shtml - не ахти-какой, но Slackware FAQ.

Дополнительные пакеты к Slackware

Дополнительные пакеты к Slackware

3.1 Помогите установить Slackware, пожалуйста!

Думается, что эта статья должна решить вашу проблему - http://lug.kmv.ru/index.php?page=SimpleSlack>

3.2 Где найти готовые пакеты? Где взять Gnome?

На http://www.linuxpackages.net. Или попробовать скачать с http://www.rpmfind.net (или аналогичных ресурсов, указанных в разделе "Redhat/Fedora") RPM-пакет, затем сделать rpm2tgz - если повезет, будет работать.

Рабочая среда Gnome для Slackware находится теперь здесь - http://www.dropline.net/gnome/

3.3 А есть ли в Slackware менеджер пакетов?

Да. Не такой (на счастье?) навороченный, как rpm, но со своими функциями вполне справляется.

Установить новые пакеты, удалить, просмотреть список установленных, а также провести базовую настройку системы (мышь, сеть, временная зона и т.д.) можно с помощью утилиты pkgtool. Не хуже с этими процедурами справляются и отдельные утилиты - installpkg, removepkg, или upgradepkg.

Так, например, для того, чтобы обновить glibc можно сделать (предварительно прочитав UPGRADE.TXT)

root@linux# upgradepkg /root/slackware/a/glibc-solibs-*.tgz

А для обновления всей системы с установкой новых пакетов:

root@linux# upgradepkg --install-new /root/slackware/*/*.tgz

На втором установочном диске Slackware 9.1 в директории /extra имеется пара весьма удобных утилит - Slackpkg ( http://slackpkg.sourceforge.net)и Swaret( http://www.swaret.org), с помощью которых можно синхронизировать систему в соответствии с последними поступлениями на http/ftp/rsyn и локальных репозиториях.

Там же имеется и "заточенная под Slackware" версия checkinstall, которую рекомендуется использовать вместо оригинальной при установке программ из исходных кодов.

3.4 Как создать пакет?

С помощью утилиты makepkg, где-то так:

 
user@linux~$ cd /usr/src/program_name
user@linux:/usr/src/program_name$ ./configure
user@linux:/usr/src/program_name$ make
user@linux:/usr/src/prorgam-name$ su
root@linux:/usr/src/program_name# make install DESTDIR=/tmp/program_name
root@linux:/usr/src/program_name# cd /tmp/program_name
root@linux:/tmp# makepkg program_name-ver-build.tgz
root@linux:/tmp# installpkg prog-x.y.z.tgz
root@linux:/tmp# cd && rm -R /tmp/program_name

3.5 Как русифицировать?

Этот вопрос часто задают потому, что это один из немногих популярных дистрибутивов, в котором он еще не решен "из коробки".

Руссификация Slackware 9.

Руссификация Slackware 10 или эта же статья в текстовом файле.

В особо тяжелых случаях рекомендуется пойти в поиск - там найдутся ответы:)

4. Gentoo

Основной сайт Gentoo Linux

4.1 Как руссифицировать?

Официальное руководство по локализации Gentoo Linux.

5. Debian

Это один из первых дистрибутивов Linux. Прославился огромным количеством пакетов, наибольшим списком поддерживаемых архитектур, повышенными требованиями к лицензиям, качественным тестированием и фразой "Debian выпускается, когда приходит время", что означает, что релиз-цикл у Debian ОЧЕНЬ долгий.

5.1 Что ставить - stable/testing/unstable?

Начинать со stable. После детального понимания дистрибутива, десктопы можно проапгрейдить до testing. А unstable - для экстремалов.

5.2 Откуда брать пакеты, отсутствующие в дистрибутиве?

Всё зависит от того, что вы хотите поставить.

Большая часть необходимых пакетов обнаруживается на http://backports.org/ (Как следует из названия, это проект, занимающийся пересборкой некоторых программ из testing для stable.).

Остальные пакеты, как правило, можно найти, воспользовавшись поисковиком репозитариев http://www.apt-get.org/.

Примечание: все вышеупомянутые ресурсы неофициальны, разработчики Debian не оказывают никакой поддержки этим пакетам.

5.3 Woody, Sarge, Sid - что это такое?

Это кодовые названия релизов Debian.

Sid - кодовое название unstable. Этот релиз никогда не будет выпущен.

Sarge - текущий testing. В скором времени (или не очень) Sarge будет выпущен как Debian 3.1

Woody - текущий stable. Debian 3.0.

Кодовые названия старых релизов: buzz: 1.1, rex: 1.2, bo: 1.3.x, hamm: 2.0, slink: 2.1, potato: 2.2.

Эти названия берутся из мультфильма "Toy Story" компании Pixar.

5.4 Где можно получить ответы на вопросы, которых здесь нет?

Ответы на остальные вопросы можно получить на сайте http://www.debian.org/, например, в Debian FAQ.

Также можно писать в соответствующие рассылки (см. http://lists.debian.org/).

6. SuSe

Основной сайт Suse Linux

База знаний Suse

6.1 Как русифицировать?

Если бы не YAST, все было бы как обычно, а так...

Руссификация Suse 8.1 - http://www.opennet.ru/base/rus/suse_rus_console.txt.html

В 9.1 нормальная поддержка русского с UTF-8 будет если в начале установки выбрать русский. Русификация 9.0 приведена здесь: http://www.nixp.ru/cgi-bin/go.pl?q=articles;a=suse9ru

6.2 Как сделать, чтобы были видны русские имена файлов на дисках с fat?

YAST -> System -> Разбиение -> <раздел c fat32> -> Редактировать ->

Опции fstab -> Codepage for short FAT names -> 866

6.3 Как поставить драйвера для nvidia, ms ttf fonts?

YAST -> Software -> Online обновление- > там, среди необязательных обновлений, будет то, что вам нужно (а заодно и драйвера для некоторых wireless-карт).

7. Mandrake

Главный сайт Mandrake Soft

7.1 Как русифицировать Mandrake 8.0?

Источник проблемы - разработчики неправильно собрали glibc, перепутав локали. Решения:

  1. Скачать и установить locales-ru-2.3.1-8mdk.noarch.rpm.
  2. Установить locales (а заодно и glibc) с mdk 8.1 - так делал в свое время я (jackill).
  3. Нашел такое решение (странное):
    root@linux# localedef -c -i ru_RU -f KOI8-R ru_RU.KOI8-R
    root@linux# cd /usr/share/locale
    root@linux# mv ru_RU.koi8r ru_RU.KOI8-R
    

7.2 Почему не устанавливаются драйверы NVidia (на примере mandrake 9.2)?

Данная проблема может встречаться не только в mandrake!

В mandrake 9.2 на трех дисках исходные коды ядра не поставляются. Поэтому нужно зайти к ним на сайт, скачать себе их, распаковать, сделать `make mrproper`.

Далее находите свой конфиг, делаете с ним `make oldconfig` и `make dep`.

После чего выходим их графической оболочки, подав от root'а команду telinit 3.

После чего можете приступать к сборке модуля для nvidia (установке иными словами).

Собрав, проверяем работает ли X-сервер (набираем `X` - если сервер стартовал и на экране появился курсор, значит все в порядке - выходим по ctrl+alt+backspace) набираем из-под root'а telinit 5.

8. RedHat/Fedora

Официальный сайт компании Redhat

Официальный сайт дистрибутива Fedora Core

Сайт новостей и статей о Fedora Core

Неофициальное FAQ по Fedora Core - хорошая вещь, но на английском.

Репозиторий ATrpms - дополнительные пакеты для redhat и fedora core

Репозитарий Freshrpms - дополнительные пакеты для redhat и fedora core

Репозитарий Livna - дополнительные пакеты для redhat и fedora core

известный репозиторий свежих и дополнительных пакетов для redhat и fedora core

Обновления для дистрибутивов Redhat, достигших конца жизни

Репозитарий Pbone - основные и дополнительные пакеты преимущественно для Fedora Core

DAG RPM Repository - основные и дополнительные пакеты для Fedora Core

Сайт компании Инвента, официального представительства Redhat в России

http://fedora.com/

8.1 Почему xmms не играет mp3 в новых дистрибутивах от RedHat?

Компания RedHat исключила поддержку формата mp3 из своих дистрибутивов (начиная с RedHat Linux 8.x) в связи с изменением (ужесточением) условий его патентования - согласно новой лицензионной политики за каждый дистрибутив, содержащий компоненты для работы с mp3 нужно выплачивать деньги. Теперь пользователи дистрибутивов от RedHat, желающие слушать mp3 с помощью xmms могут:

  1. Скачать plug-in для xmms с http://mcmcc.bat.ru(перекодирует названия композиций в локальную кодировку)
  2. Можно скачать plug-in для xmms с сайта xmms - http://www.xmms.org
  3. Можно взять целиком xmms и mpg123 из поставки ASPLinux. ( ftp://ftp.asplinux.ru) (перекодирует названия композиций в локальную кодировку).
  4. Можно взять plug-in для xmms с одного из репозиториев дополнительных пакетов, указанных выше.

8.2 Как перевести последние дистрибутивы от RedHat на локаль koi8-r?

Не все программы работают с UNICODE, поэтому иногда такое желание возникает.

RedHat 8.0 - http://mcmcc.bat.ru

RedHat5 9.0 - http://mcmcc.bat.ru/rh9koi

Fedora core 1 - http://mcmcc.bat.ru/fedora

А на http://www.linux.org.ru/jump-message.jsp?msgid=332520 и http://www.linux.org.ru/jump-message.jsp?msgid=439250 несколько комментариев.

8.3 Где взять apt-get для Fedora?

Сам apt-get: http://apt4rpm.sourceforge.net, http://freshrpms.net/apt

А так же в дистрибутивах Fedora, например, http://ftp.g-int.net/apt/fedora/fedora/1/i386/RPMS.stable

Графическую оболочку Synaptic к нему можно взять здесь.

8.4 Где взять последние пакеты Gnome в сборке для Fedora Core?

Здесь http://people.ecsc.co.uk/~matt/repository.html

Или дождаться, пока они появятся в ветке development на официальном репозитории (обычно срок ожидания составляет около недели) download.fedora.redhat.com/pub/fedora/linux/core/development/

8.5 Где взять последние пакеты KDE в сборке для Redhat/Fedora Core?

На сайте проекта KDE for Redhat.

8.6 Я установил Fedora Core 2, а теперь мой Windows XP не грузится. Что делать? Как поставить Fedora Core 2, чтобы MS Windows грузился?

Данный баг описан здесь http://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=115980 Проявляется он не у всех. Читать это не надо - это для справки.

Решение описано здесь http://www.redhat.com/archives/fedora-devel-list/2004-May/msg00908.html

Для тех, кто плохо владеет английским, кратко перескажу.

Если вы собрались ставить fedora core 2, тогда

  1. загрузитесь с диска в режиме rescue (наберите при загрузке linux rescue)
  2. Выполните команду
    fdisk -l /dev/hda
    
    где hda - ваш диск (может быть другим!)
  3. Спишите значения цилиндров, головок и секторов
  4. Перегрузите машину и при установке укажите
    linux hda=цилиндры,головки,сектора
    

Если вы уже поставили fedora core 2 и у вас все навернулось, не паникуйте - ваши данные в целости и сохранности, как и ваш MS Windows.

Вам нужно выполнить шаги:

  1. Загрузиться в свой линукс
  2. Выполнить из-под рута строчку
    sfdisk -d /dev/hda | sfdisk --no-reread -H255 /dev/hda
    

Все.

8.7 Как обновить Fedora Core 1 до Fedora Core 2 (и по аналогии fc2 на fc3)

Это можно сделать с помощью утилиты apt. Статья об этом здесь http://www.fedoranews.com/ghenry/apt-fc2/

8.8 Как установить Redhat или Fedora Core по сети/через интернет?

В этом документе по-русски описан процесс установки redhat 8.0, который применим к любому продукту redhat http://www.opennet.ru/docs/RUS/install_redhat/

8.9 При установке Fedora Core 3 на reiserfs инсталлятор виснет. Что делать?

Нужно запускать инсталлятор так:

linux reiserfs selinux=0

8.10 Как собрать ядро из src.rpm? Как собрать собственное ядро из src.rpm?

Конечно, неплохо было бы вынести эту тему отдельным вопросом, но так уж получилось, что у меня (jackill) Fedora Core.

Самый простой случай

Мы скачали пакет вида kernel-2.x.x-1.xxx.src.rpm. Нас устраивает конфигурация по умолчанию, но не устраивает сборка под i386. Поэтому пишем:

root@localhost# rpmbuild --rebuild --target=i686 

и забираем из /usr/src/redhat/RPMS/i686 наши ядра (обычное и smp).

Собираем собственное ядро

Распакуем srpm:

root@localhost# rpm -i kernel-2.x.x-1.xxx.src.rpm

Далее перейдем в каталог /usr/src/redhat/SPECS и распакуем сами исходники, наложив при этом все патчи:

root@localhost# rpmbuild -bp --target=i686 kernel-2.x.spec

Теперь переходим в папку /usr/src/redhat/BUILD/kernel-2.x/linux-2.6/

Это исходники ядра с соответствующим конфигом. Здесь выполним две команды:

root@localhost# make oldconfig
root@localhost# make menuconfig

Теперь мы можем выставить желаемые параметры. В качестве помощи можете воспользоваться этим разделом. Я обычно включаю поддержку NTFS, выбираю свой тип процессора, убираю поддержку 4ГБ памяти, ставлю соответствующие параметры для samba, а если машина в домене MS Windows 2003, то добавляю поддержку CIFS, а лишнее убиваю.

После того, как вы закончили выставлять параметры, мы переименовываем наш файл конфигурации .config, например в kernel-2.6.8-i686.config и переписываем в папку /usr/src/redhat/SOURCES.

Далее в kernel-2.x.spec выставляем какое нам нужно собрать ядро (обычное или smp), нужно ли собирать пакет с исходниками и пакет с документацией:

Summary: The Linux kernel (the core of the Linux operating system)

# What parts do we want to build?  We must build at least one kernel.
# These are the kernels that are built IF the architecture allows it.

%define buildup 1
%define buildsmp 0
%define buildsource 1
%define builddoc 0

После строим как обычно.

Если нужно добавить патч

Алгоритм простой:

Накладываем этот патч на распакованные исходники, конфигурируем ядро, переписываем так же получившийся конфиг, затем прописываем патч в kernel.spec (в двух местах: в одном сам патч, например Patch10002: vesafb-tng-0.9-rc4-r3-2.6.9-rc3.patch, во втором способ его наложения, например, Patch10002 -p1 - все увидите и сделаете по аналогии).

Если после этого на сборке ядро вылетает, придется сделать make oldconfig для всех файлов конфигурации (повод научиться писать скрипты ;), или убить все конфиги, кроме нужного вам, после чего повторить сборку.

Правда все просто?

8.11 Как сделать, чтобы kppp можно было запускать от пользователя?

Предлагается быстрый костыль:

Если вы обновите пакет kdenetwork, то придется проделать всю операцию заново.

9. ASP Linux

ASP linux - это русский дистрибутив, выпускаемый на основе дистрибутива Fedora Core, но отличающийся иной программой установки, наличием драйверов nvidia и поддержкой mp3/divx и т.п. прямо из коробки. Поэтому большую часть вопросов, которые могут возникнуть у вас при использовании этого дистрибутива, можно решить так же, как для дистрибутива Fedora Core. Более того, их пакеты взаимно совместимы.

9.1 Где взять дополнительные пакеты для ASP linux?

На сайте сообщества ASPlinux и Mandrake http://linux.alhimia.ru/

Сайт обновлений дистрибутивов ASPLinux и Red Hat http://updates.msiu.ru/

9.2 У меня современная материнская плата на чипсете NForce2. Установится ли ASP Linux? Будет работать?

Обо всем об этом можно прочитать, пройдя по ссылке:

http://linux.alhimia.ru/pub/linux/doc/asplinux-install/1.0-2/asplinux-1.0-2.html

9.3 Как поставить ASP Linux 9.2 на SATA?

Не в эмуляции S-ATA -> P-ATA http://community.asplinux.ru/forum/6/3520/4046/

Есть такой вот ответ от ROOT, цитирую дословно:

В общем, есть 2 способа: 
1-й (негеморройный)- ставишь компатибл-режим и устанавливаешь. Но тогда загрузчик пропишется на 0-й жесткий диск в системе. И перевести на нативный режим станет довольно трудно (хотя и возможно). 
2-й (геморройный) - каким-то образом переносишь на винт загрузчик сетупа линуксового и loadlin (Ну и DOS, конечно). В случае Slackware - это будут файлы bzImage и initrd. Переносить можно в компатибл-режиме, с дискет, подцепив винт к другому компу и т. д. А можно вообще весь дистр перелить на винт, но это неприятно, поскольку мешает разбить винт по-другому. Грузишься с винта в нативном режиме (CDROM недоступен), потом Loadlin'ом грузишь Linux - ядро определит, что у тебя 4 IDE контроллера, всех их опросит и увидит сидюк. Конечно, можно сразу грузиться с дискет в Linux, если 7 дискет не ломает сидеть в дисковод пихать ;-). Разбиваешь fdisk'ом винт. Далее можешь запускать сетупилку. Только после установки внимательно просмотри fstab - скорее всего, винт у тебя будет определяться как /dev/hde, а в fstab'е прописано будет /dev/hda. 
 
2-й способ позволяет установить Linux в полностью нативном режиме, что хорошо если будет много винтов в системе. 
 
Это я делал на i875-м чипсете (мать ASUS P4C800 Gold). Как оно на других чипсетах (и тем болеЕ, на AMD) не знаю.

9.4 Как восстановить удаленный gpg-pubkey для rpm? Импортировать новый?

Например, так:

rpm --import ftp://ftp.asplinux.ru/pub/i386/9.2/asplinux/GPG-KEY

10. Поиск ПО

10.1 А есть ли аналог...

Очень может быть - http://linuxshop.ru/linuxbegin/win-lin-soft/table.shtml

Поищите в этой таблице - большая часть вопросов, которая возникала на LOR, покрываются ею или нашим разделом.

Существует еще один хороший ресурс - http://www.usinglinux.org/categories.html

10.2 Какие есть словари/переводчики?

Словари есть. Можно и Lingvo запустить под Wine - см. соотв. вопрос в этот FAQ. Некоторые небезосновательно полагают, что это лучший вариант, правда платный.

В остальном же, следует различать сами словари и интерфейсы к ним. Словарь - это файл с собственно данными, а интерфейс (front-end)- это программа (текстовая или графическая), которая понимает формат словаря и используется для работы с ним.

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

Самый популярный англо-русский словарь - это словарь Мюллера, но есть и еще кое-какие :). Ссылки на "несколько" словариков можно найти на http://selnix.narod.ru/dics.html

Из интерфейсов к ним можно использовать

Stardic X - http://sourceforge.net/projects/stardicx

MOVA - http://mueller-dic.chat.ru)

DictX - http://dictx.narod.ru/

Slowo - http://gambit.com.ru/~wolf/dic - на этой страничке вообще много интересного на эту тему

Groan - оболочка для словарей под Linux, работающая в консольном режиме, http://konst.org.ua/ru/groan

gdict - http://frustum.tomsk.ru/program/gdict

и еще целая туча разных *dict'ов.

Довольно популярен StarDict - http://stardict.sourceforge.net , умеет переводить выделенные слова; основным недостатком можно считать необходимость иметь базовые пакеты Gnome 2. Кстати, он может воспринимать словари из других форматов - для этого есть специальные конвертеры.

Обязательно зайдите сюда! Куча словарей и оригинальный метод работы с ними - http://selnix.narod.ru/dics.html

Из переводчиков (насколько я знаю), на сегодня имеется только "Правда" - http://www.prawda.newmail.ru, но увы, на данный момент от коммерческих аналогов она несколько отстает. Кажется есть еще кое-что от ПРОМТа, но я не уверен.

10.3 Какие есть менеджеры закачек? Например, как FlashGet или TeleportPro под MS Windows?

Самая функциональная качалка - это конечно же wget, но он не всегда удобен. Все остальное - это, *в_основном*, фронт-энды к нему: TkWget - http://www.inf.bme.hu/~zed/tkwget

Aria - http://aria.rednoah.com

Павук - http://www.pavuk.org

ProZilla - многопоточный менеждер закачек, http://prozilla.genesys.ro/

Особо можно выделить популярный русский менеджер закачек Downloader for X, http://www.krasu.ru/soft/chuchelo. Есть версии под gtk1 (больше не разрабатываются) и под gtk2. Умеет работать в консоли без графического интерфейса, умеет закачивать сайты, работать в несколько потоков, находить альтернативные сайты для закачки, регулировать скорость скачивания.

Это, IMHO, самые интересные. А вообще посредством нехитрой формулы "toolkit name"+"get" можно по поиску найти массу более-менее аналогичных продуктов.

Для закачки сайтов целиком можно использовать wget:

#!/bin/bash

URL=$1
DIR="~/dload/docs"

cd "$DIR"
wget -np -m -k -R *.rar,*.zip,*.gz*,*tar,*.rpm,*.bz2 $URL

Еще есть

HTTrack Website Copier и несколько front-end'ов к нему.

KWebGet

Pavuk

gtf - GTransferManager

10.4 Какие есть клиенты ICQ?

Разные :) Наиболее популярными графическими клиентами являются sim и licq. Интерфейс sim написан на графической библиотеке qt и клиент может быть собран под KDE. Кроме того, он поддерживает протоколы AIM, Yahoo, MSN, Jabber и худо-бедно позволяет писать в livejournal. Также похоже, что это единственный клиент, способный показывать фотографии в профиле ICQ. У licq помимо интерфейса на qt существует (как минимум) интерфейс на gtk+ и для работы в текстовом режиме; этот клиент также может быть собран под KDE. Сборка под KDE дает возможность прятаться в трей KDE, а также вызывать konqueror и kmail. Также В licq есть встроенный dock-app для wm, которые их поддерживают.

Для текстового режима отлично подходит centericq (поддерживает также IM протоколы yahoo, aim, msn, irc и jabber). Из текстовых есть еще неплохой клиент - micq.

Также существуют многофункциональные "комбайны", поддерживающие несколько протоколов, например Gaim (под GNOME) и Kopete (под KDE соответственно)

Для MSN существует программа KMerlin, для AIM в свою очередь можно воспользоваться вышеупомянутым GAIM'ом.

Еще два слова по поводу именно "комбайнов". Зачем нужна поддержка протокола Zephyr или Gadu-Gadu??? Про Zephyr не скажу ничего, т.к. не использовал, Gadu-Gadu же - практически единственный IM, используемый в Польше, например. К слову сказать, адрес IM для Gadu-Gadu - http://kadu.net

Если доступ в Интернет производится через SOCKS-сервер, проблем также возникнуть не должно.

SIM работает через SOCKS4, SOCKS5 и HTTPS. Через SOCKS5 также прекрасно работает licq. Для этого нужно собрать и установить socks-cap клиент. К сожалению, он был убран с сайта производителя, но на http://mcmcc.bat.ru его еще можно найти. После установки клиента НЕ НУЖНО сносить исходники - они нам понадобятся для сборки licq.

Кроме того, в принципе, можно любой IM-клиент заставить работать как обычную программу через socks-cap. По крайней мере с licq это получалось.

Где взять:

centricq - http://konst.org.ua/centericq

licq - http://www.licq.org

micq - http://micq.org

sim - http://sim-icq.sourceforge.net

gaim - http://gaim.sourceforge.net

Kopete - http://kopete.kde.org

KMerlin - http://www.olsd.de/portal

AIM - официальный AIM от AOL, http://www.aim.com/get_aim/linux/latest_linux.adp?aolp=

Еще ссылки на icq-клиенты можно взять на http://opennet.ru/prog/sml/36.html

10.5 Какие есть почтовые программы? Например, как MS Outlook или The Bat под MS Windows?

На MS Outlook очень похожа почтовая программа Evolution.

На The Bat! - Sylpheed (или Sylpheed Claws - по-идее, более функциональная) и KMail (последняя входит в состав KDE и отлично понимает html).

Также существует почтовый клиенты в составе Mozilla (для запуска сразу почтового клиента следует делать `mozilla -mail`) и Opera и Mozilla Thunderbird.

Для консольного режима лучше всего подходят mutt и pine (есть в любом дистрибутиве).

Ссылки:

Sylpheed - http://sylpheed.org

Sylpheed Claws - http://sylpheed-claws.sourceforge.net

KMail - http://kmail.kde.org

Evolution - http://www.ximian.com/products/evolution

Mozilla - http://mozilla.org

Mozilla Thunderbird - http://mozilla.org/products/thunderbird

Opera - http://www.opera.com

10.6 Какие есть браузеры (обозреватели интернет)? Какой браузер самый быстрый?

Много есть браузеров (думаю, при желании можно найти любой, кроме MS IE :), самые популярные (заслужено) - Mozilla и Opera. Понятие же "быстроты" - весьма субъективно. Во-первых, под ним можно понимать скорость отображения страниц, или работу самого интерфейса. И во-вторых, и то и другое - вещи весьма зависимые и спорные.

Думаю правильным решением будет попробовать несколько и самому решить, что здесь и сейчас удобнее. Самые популярные:

Mozilla - самый популярный браузер, имеет встроенные email/news-клиенты, IRC-чат, ардесную книгу и простенький компостер html-страниц. Кроме того, для него доступны довольно много plug-in'ов и боковых панелей, которые, при желании, весьма расширяют функциональность браузера вплоть до переводчика и игры "Пасьянс Косынка". Побочный эффект все этого - излишняя (сравнительно) тяжеловесность и тормознутость. 99 причин использовать Mozilla - http://linux-forever.narod.ru/writes/mozilla.htm

Mozilla Firefox (бывший Firebird) - попытка (IMHO, довольно удачная) отделить браузер от всего остального, сделать быстрее и всячески лучше.

Opera. Коммерческий, но очень неплохой браузер, стоит попробовать. Плагины и side-bar'ы от Mozilla к нему тоже подходят. Есть встроенный e-mail/news-клиент. Написан на Qt.

Konqueror. На kde.ru пишут: появившись в KDE 2, этот браузер прославился как единственный браузер в Linux, ставший подлинным технологическим прорывом. Полностью соответствующий основным стандартам, построенный на компонентной архитектуре, Konqueror предлагает функциональность Internet Explorer/Netscape и Windows Explorer "в одном флаконе". Konqueror поддерживает все современные стандарты: Javascript, Java, HTML 4.0, CSS-1/2, SSL, plugins Netscape (Flash, Shockwave, RealAudio, RealVideo) и даже такую модную новинку, как иконки сайтов. Сейчас правда эти возможности доступны и в вышеописанных браузерах. а так - на любителя. В новой версии konqueror обещают включить поддержку Gecko - движка mozilla.

Из совсем легких есть Dillo, но он умеет показывать разве что чистый html.

Также хочется отметить и консольные браузеры - lynx и links. Первый, правда, пригодится наверное только если совсем уж ничего нет, а вот второй - очень даже неплохо справляется с функцией штатного браузера. Если его запустить с опцией -g (если он собран с ее поддержкой) получится очень даже приятный простенький графический браузер, хоть и не без недостатков. А вот у его разновидности - eLinks - их гораздо меньше и даже более того. Кроме того, есть Hacked Links - табы + GUI (из Links2) + куча опций из eLinks. Где взять:

Mozilla - http://mozilla.org , http://www.mozilla.ru

Mozilla Firefox - http://mozilla.org/products/firefox

Opera - http://www.opera.com

Konqueror - http://kde.org

Dillo - http://www.dillo.org , патч для поддержки русского - http://stuphead.asplinux.ru/dillo/index.html.ru

lynx, links - есть в каждом дистрибутиве

Графический Links 2.1 http://atrey.karlin.mff.cuni.cz/~clock/twibright/links/

eLinks - http://elinks.or.cz

Hacked Links - http://xray.sai.msu.ru/~karpov/links-hacked

10.7 Какие есть просмотрщики картинок? Например, как ACDSee под MS Windows?

KuickShow - из KDE, входит почти в любой дистрибутив, http://kuickshow.sourceforge.net

XnView - говорят, самый функциональный, но страшный... :), http://www.xnview.com

GQview - входит почти в любой дистрибутив, http://gqview.sourceforge.net

PornView - http://sourceforge.net/projects/pornview

GTKSee - http://gtksee.berlios.de.

gThumb - стандартный просмотрщик Gnome с возможностью создания веб-альбомов http://gthumb.sourceforge.net/

ImageMagic - набор утилит для обработки графических файлов в скриптах - очень удобно. Утилиту display можно использовать как просмотрщик. http://www.imagemagick.org

xzgv - http://xzgv.browser.org

Консольные (без XFree):

fbi - framebuffer image viewer, http://bytesex.org/fbi.html

Seejpeg - JPEG image viewer, http://www.icewalkers.com/softlib/app/app_00013.html

zgv, http://www.svgalib.org/rus/zgv

10.8 Какие есть "звонилки"? (Чем звонить по модему?)

kppp - The KDE Internet Dialer, http://devel-home.kde.org/~kppp

X-ISP http://xisp.hellug.gr

gppp - http://mfcn.ilo.de/gppp

WvDial - http://open.nit.ca/wiki/?page=WvDial

DDial - http://www.ddial.com

minicom - http://alioth.debian.org/projects/minicom/

Но... rihad пишет:

ppp рулит! При условии, что провайдер вам дает статичный айпи адрес, можно поднять интерфейс ppp один раз на века, и используя demand dialing и некоторые заклинания в файле конфигурации (далее следует их набор):

/etc/ppp/options:

demand
persist
maxfail 0
holdoff 1
ipcp-accept-local
ipcp-accept-remote

Так можно всегда оставаться "онлайн" - никакие дисконнекты не страшны, tcp/ip сессия не аннулируется даже в случае реконнектов. Я таким макаром на плохой линии смог 20 меговый файл с ящика на mail.ru стянуть, штук 20 физических дисконнектов модема было за это время, но ни одного логического. Эх, сколько бы матюкался пытаясь стянуть этот файл на XP :)

10.9 Какие есть бухгалтерские программы, как 1С под linux, на русском?

Кое-что есть. Причем местами бесплатно и под GPL.

БЭСТ 4 - http://www.bestnet.ru/news/2004/123.htm

Hansa Financials - http://www.quik.ru/hansa, в России поддерживает компанией ALT Linux

Финансы Без проблем - http://hdru.com/russian

Ананас - http://ananas.linux.ru.net/main/welcome.php

Открытая бухгалтерия iceB - http://www.iceb.vinnitsa.com

E/AS - http://eas.lrn.ru/about.php

1L:Project - http://1l.w4b.ru

10.10 Какие есть антивирусы?

Пока что эта проблема не столь актуальна, как у пользователей MS Windows. В основном проверяют транзитный трафик (почта, samba-трафик), иногда - и файлы на диске. И несмотря на это:

Clam Antivius - открытый, http://clamav.elektrapro.com

aegis - платный, http://alerts.f-prot.com/cgi-bin/mf?lang=en

Panda Software Antivirus http://www.pandasoftware.com

Dr.Web - платный, http://www.drweb.ru

Kaspersky Anti Virus - платный, http://www.kaspersky.ru/

Trend's InterScan VirusWall Virus scanner, http://www.antivirus.com

Sophos's "sweep" virus scanner, http://www.sophos.com

H+BEDV's antivir scanner, http://www.hbedv.com

MacAfee's (NAI's) virus scanner, http://www.nai.com

Command's virus scanner, http://www.commandsoftware.com

F-Secure Anti-Virus scanner, http://f-secure.com/

F-Prot Anti-Virus scanner, http://www.f-prot.com/f-prot/products/fplin.html

InocuLAN Anti-Virus scanner, http://www.cai.com

Central Command's Vexira antivirus scanner, http://www.centralcommand.com

Sophie: Daemon front-end to Sophos Sweep, http://www.vanja.com/tools

Trophie: Daemon front-end to Trend iscan, http://www.vanja.com/tools

Если я что-то упустил, вы уж простите мою невнимательность :)

10.11 Есть под linux какой-нибудь аналог radmin?

Называется эта вещь x11vnc.

Качаете, собираете. Затем делаете следующее:

  1. Заходите на машину (comp1) пользователя по ssh
  2. Запускаете
    x11vnc -display :0 
    
  3. На своем локальном терминале (xterm, konsole и т.п.) запускаете vncviewer
    vncviewer comp1:0 
    

Этот пакет есть в репозитарии Debian. Пакеты для redhat/fedora core можено взять здесь.

10.12 Есть ли RAdmin под linux (не аналог)?

RAdmin может работать под wine. Как решить проблемы с клавиатурой можно почитать в этом обсуждении.

10.13 Какие есть программы для записи CD-R/CD-RW/DVD?

Для записи CDRW в linux используются консольные утилиты cdrtools. Все остальные программы так или иначе являются фронтэндами к ним.

Утилиты cdrtools поддерживают запись только дисков CD-R/CD-RW. Для записи DVD-минус на cdrecord нужно наложить патчи с этого сайта. Для записи DVD-плюс - отсюда.

Если у вас один из дистрибутивов RedHat или Suse, то запись DVD доступна сразу. Пожалуйста, обновляйте свои cdrtools из соответствующих репозитариев.

Графические утилиты для записи:

XCDRoast - умеет писать DVD только после соответствующих патчей.

K3B - рассчитан на применение в среде KDE, Умеет писать DVD и много еще чего. По функциональности похож на Nero.

CDBakeOven

Arson

krecord

gcombust - легкий gtk1 front-end. Удобен, когда не используется KDE/GNOME. Есть D-n-D, Data/Audio/Mixed CDs, etc.

Есть возможность организовать запись для пользователей по сети через web-интерфейс - http://joerghaeger.de/webCDwriter

Как настроить для записи свой привод CD-RW/DVD-RW, если по каким-то причинам он не может писать, читайте в вопросе Как заставить работать привод CD-RW/DVD-RW.

Как записывать диски читайте в вопросе Как записать компакт-диск (CD-R/CD-RW/DVD-RW)

10.14 Какие есть программы для черчения/рисования схем?

Коммерческие CAD/CAM пакеты:

VariCAD ( http://www.varicad.com) - пакет механического инженеринга (черчение в 2D, моделирование в 3D)

Cycas ( http://www.cycas.de) - архитектурное моделирование в 2D/3D

Octree ( http://www.octree.de) - система автоматического архитектурного проектирования (комплексные сетевые проекты)

LinuxCAD ( http://www.linuxcad.com) - нечто вроде AutoCAD.

Открытое ПО

Varcon ( http://varkon.berlios.de/index.html) - черчение, моделирование, визуализация.

QCAD ( http://www.qcad.org) - 2D CAD.

OpenDX ( http://www.opendx.org/index2.php)

Ghemical ( http://www.uku.fi/~thassine/ghemical) - молекулярное моделирование и визуализация в 3D.

Kivio - http://www.thekompany.com/projects/kivio

Eagle - рисование принципиальных схем и разводка печатных плат ( http://www.cadsoftusa.com)

gEDA - аналогично, но свободная ( http://www.geda.seul.org)

Dia - рисование всевозможных схем и диаграмм ( http://www.lysator.liu.se/~alla/dia)

gnuplot - рисование всевозможных графиков ( http://www.gnuplot.info)

Если не хватает их функциональности, попробуйте зайти на www.freshmeat.net и в строке запроса набрать CAD или GIS.

10.15 Какие есть программы для работы с дисками. Например, как PartitionMagic MS Windows?

Parted и фронтэнды к нему QTparted и Gparted. Первый входит в состав практически любого дистрибутива.

10.16 Какие есть программы для разработки flash (swf)?

Spalah - http://spalah.sourceforge.net

drawSWF - http://drawswf.sourceforge.net

ming - http://ming.sourceforge.net

F4L - http://f4l.sourceforge.net

SWFtools - http://www.quiss.org/swftools/documentation.html

и Maya...

10.17 Какие есть программы для просмотра *.chm (компилированные файлы справки)?

Хороший просмотрщик - http://xchm.sourceforge.net, а на http://66.93.236.84/~jedwin/projects/chmlib лежит нужная ему библиотека. Кроме того, ему нужны wxWindows - http://www.wxwindows.org

Консольный конвертер .chm в группу HTML-файлов - archmage (требует chmlib и Python), http://archmage.sourceforge.net

10.18 Чем распаковать rar-архив?

В дистрибутивы обычно стандартно входит unrar. А еще можно скачать Linux-версию rar (или unrar) с сайта производителя - http://www.rarsoft.com/download.htm

10.19 Какие есть эмуляторы cdrom?

Вы не поверите - никаких. Они не нужны - возможность монтировать образы iso9660 была изначально благодаря дизайну ОС.

Если образ не в формате iso9660, его можно сконвертировать.

10.20 Какие есть "эмуляторы" MS Windows, MS DOS? Чем они различаются?

Wine - http://www.winehq.com

Wine и его ветка WineX являются реализациями api win32 над Unix (и его графического сервера XFree86). Поэтому программу под MS Windows с помощью Wine можно запустить даже не на x86 машине. В этом и смысл проекта - дать возможность запускать программы Windows не только под un*x системами, но и на различных платформах. Название является акронимом: WINE - Wine Is Not Emulator. ОС Window для работы ему не нужен. Информация по установке - http://linuxshop.ru/linuxbegin/article702.html, http://www.oszone.net/linux/games/1.html, http://fedoranews.org/hoyt/wine, http://linux-forever.narod.ru/writes/wine.htm, http://holarse.wue.de/?content=emu_winex.

TransGaming Cedega (бывший WineX) - http://www.transgaming.com

Cedega (WineX) от Wine отличается платностью и ориентированностью на эмуляцию DirectX, т.е. в основном на запуск игр. Wine разрабатывается как полная реализация win32 API под un*x, WineX является ответвлением, заточенным исключительно под игры, причем зачастую определенные игры и поддерживает работу с рядом защит.

Разница между Cedega (WineX) в бинарном виде и Cedega (WineX) из CVS заключается в том, что WineX в бинарном виде содержит расширения от TransGaming относительно работы с DirectX, работы с защищенными компакт-дисками. У Cedega (WineX) из cvs есть только одно преимущество - можно накладывать различные патчи, серьезно повышающие производительность в каких-то конкретных играх.

Подробнее:

http://www.linuxshop.ru/linuxbegin/article140.html

http://linuxshop.ru/linuxbegin/article653.html

http://linuxshop.ru/linuxbegin/article300.html

http://linuxshop.ru/linuxbegin/article290.html

http://www.linuxshop.ru/linuxbegin/article354.html

http://www.twoostwo.ru/competitors/wine.php

CodeWeavers CrossOver Office - http://www.codeweavers.com

CrossOver Office используется для запуска нескольких Windows-приложений, а именно - Office 97 и 2000. Версия 2.0 правда позволяет работать и с Office XP, Internet Explorer версий 5.0 и 5.5, Microsoft Visio, Lotus Notes, Quicken и Adobe Photoshop. В целом довольно качественный продукт, но платный.

NeTraverse Win4Lin - http://www.netraverse.com

Win4Lin это коммерческая программа, являющаяся по сути оболочкой, позволяющей установить и запустить системы Windows 95, Windows 98, Windows ME (т.е. линейку win9.x) на Linux,на платформе x86. По сути транслирует запросы MS Windows к процессору, получает ответ и отдает назад. Не эмулирует файловую систему (в отличие от VMware), в последних версиях поддерживает аппаратное ускорение видеокарт.

Windows в Win4Lin может быть запущено как в окне уже существующих X Window, так и на отдельном X server'е в полный экран. Работает хорошо и быстро, но отвратительно поддерживает колесо мышки.

VMware - http://www.vmware.com

VMware - коммерческая виртуальная машина. Это значит, что данный продукт эмулирует все устройства. Позволяет установить любую систему для x86. Работает не слишком быстро по сравнению с вышеприведенными программами, так как эмуляция полная. По сути дорогая система для разработчиков, т.е. можно эмулировать не одну машину, а несколько и составлять из них сети и т.п.

Bochs - http://bochs.sourceforge.net

Bochs - эмулятор IA32, свободный аналог VMware с несколько ограниченными возможностями и менее стабильной работой. Имеет в своем составе дочерний проект по созданию BIOS, причем довольно успешный. Или оно у вас будет работать (и работать хорошо) или нет.

QEMU - http://bellard.org/qemu

QEMU - транслятор запросов процессора, построенный по принципу Fast! Позволяет эмулировать i386, PowerPC, SPARC и ARM. Есть сообщения об успешном запуске на нем Darwin OS.

DOSEMU - http://dosemu.sourceforge.net

Проверенный временем эмулятор MS DOS, даже включает в себя клон MS-DOS под названием FreeDOS.

DOSBox - http://dosbox.sourceforge.net

DOSBox - DOS эмулятор, эмулирующий также и 286/386-процессоры, умеет XMS/EMS, Tandy/Hercules/CGA/EGA/VGA/VESA-графику, SoundBlaster/Gravis Ultra Sound звук. При этом поддерживает OpenGL-вывод. Разрабатывался именнно для эмуляции старых игрушек.

Это самые популярные проекты, с некоторыми другими можно ознакомится в каталоге Google, например - http://directory.google.com/Top/Computers/Emulators

10.21 Какие есть программы для прослушивания радио при наличии тв-тюнера (радио тюнера)?

gqradio ( http://gqmpeg.sourceforge.net), gnomeradio ( http://mfcn.ilo.de/gnomeradio), OZRadio ( http://ozradio.sourceforge.net)

10.22 Какие есть программы для проигрывания WMA (звук/видео)?

С помощью плагинов с поддержкой WMA можно пользоваться alsaplayer или xmms.

Плагин под alsaplayer

Плагин под xmms

Раньше использовался plug-in под xmms, который использовал MPlayer. Находится он здесь: http://thegraveyard.org/xmmplayer.php

Понятно, что можно использовать сам MPlayer - http://www.mplayerhq.hu.

10.23 Какие есть программы организации в сети потоковое вещание видео и аудио?

ffmpeg - http://ffmpeg.sourceforge.net

darwin streaming server - http://developer.apple.com/darwin/projects/streaming

Helix Universal Server - http://www.realnetworks.com/products/server.

Неплохо заглянуть на http://www.videolan.org

10.24 Какие есть программы для разговора голосом по сети друг с другом?

Speakfree - http://www.fourmilab.ch/speakfree/unix

и xspeakfree http://www.spearce.org/projects/xspeakfree

Teamspeak - http://www.teamspeak.org

H323 Клиент - OhPhone, сервер - OpenMCU, http://www.openh323.org

Skype - http://www.skype.com/products/skype/linux/ Вся ценность в том, что есть клиенты и под Windows и под Linux.

GnomeMeeting - http://www.gnomemeeting.org/

10.25 С помощью чего организовать потоковое аудиовещание?

Вам понадобится один из серверов потокового аудиовещания:

Icecast - http://www.icecast.org

Sphinxter - http://www.geekbrain.com/sphinxter

GNUMP3d - http://gnump3d.sourceforge.net

Apmle - http://ample.sourceforge.net

SHOUTcast Linux server - http://www.shoutcast.com

И программа для создания аудиопотока:

Ices - http://www.icecast.org/ices.php

DarkIce http://darkice.sourceforge.net

SHOUTcast DSP Plug-In - http://www.shoutcast.com

О настройке SHOUTcast читайте тут - http://www.nixp.ru/cgi-bin/go.pl?q=articles;a=shoutcast_linux

10.26 Какие есть программы, для конвертации содержимого текстового файла из одной кодировки в другую?

Выяснить, в какой кодировке файл можно с помощью http://trific.ath.cx/software/enca, http://if-soft.narod.ru/net/shtrl4.zip (правда это только под Wine, зато и конвертирует сразу) или perl-модуля http://search.cpan.org/author/FARBER/Lingua-RU-Charset-0.02/Charset.pm (как этим пользоваться я не знаю).

Преобразовать можно с помощью стандартного (GNU) iconv (входит в состав пакета glibc). Пользоваться очень просто, например, команда

user@linux# iconv -fWINDOWS-1251 -tKOI8-R win.txt > koi.txt

сделает из файла win.txt в кодировке cp1251 файл koi.txt в кодировке koi8-r.

Если прописать в  /.bashrc нечто такое:

alias iconvkw='iconv -f KOI8-R -t WINDOWS-1251'
alias iconvwk='iconv -f WINDOWS-1251 -t KOI8-R'

то перекодировать файлы можно еще проще:

user@linux# iconvwk win.txt > koi.txt

Еще одна популярная программа, в которой отсутствую огрехи iconv и которая входит в состав любого приличного дистрибутива - recode.

recode KOI8-RU..windows-1251 <fn.koi >fn.win;
recode windows-1251..KOI8-RU <fn.win >fn.koi;

Еще есть rusconv. Перекодирует win <> koi <> alt при этом довольно корректно, также встроена функция удаления ^M в конце строк cp2151-файлов, так что про `col -b` можно забыть ( http://uucode.com/rusconv) Отлично документирован.

Также существует cyrconv, тоже неплох, но rusconv лучше.

Совсем неподготовленным пользователям можно глянуть на QTexTransformer ( http://girchenko.narod.ru).

Пользователи KDE наверняка порадуются возможности конвертировать файлы с помощью KWrite (заберите текст в буфер, выберите нужную кодировку и вставьте текст обратно).

10.27 Чем перекодировать ID3v1 тэги?

Программой EasyTag

Или особым скриптом compytag

10.28 Какие есть программы для конвертирования WMA в MP3?

Стоит пройти по ссылке и программе wma2wav.

Программа лежит здесь - http://mcmcc.bat.ru/xmms-wma/wma2wav/

10.29 Какие есть программы для конвертации audio-CD и wav-файлов в MP3, ogg vorbis и т.п.?

Можно это сделать из консоли или же воспользоваться утилитами с графическим интерфейсом:

grip - мощный граббер

Sound Juicer

Кто знает еще о таких программах - делитесь ссылками.

10.30 Есть ли графические инструменты для перекодирования DVD?

Есть.

10.31 Какие есть программы для просмотра man-страниц в виде гипер-текста?

man не просматривает ман-страницы. Об этом написано в man man.

Для просмотра используется внешняя прога (pager), а уж пейджером может быть всё что угодно (хоть сам пиши). На сегодня, очень многие программы просмотра чего-либо вообще понимают man:

xman

pinfo -m

konqueror (man:)

galeon (man:)

mc + [F3]

krusader + [F3]

10.32 Чем просматривать ресурсы MS Windows-сети (сетевое окружение)? Как сделать доступными машинам с MS Windows свои директории? Чем автоматически монтировать ресурсы samba?

Чтобы сделать доступными ресурсы для машин Windows нужно, чтобы был запущен и настроен демон samba.

Ресурсы сетевого окружения можно просматривать и монтировать из консоли или с помощью следующих утилит:

И наконец, автоматическое монтирование. Скрипт висит как демон и периодически сканирует сеть (хотя можно пускать и в ручном режиме). Он монтирует ресурсы подключающихся к вам машин, а запуск вручную позволит просмотреть все имеющиеся в наличие ресурсы и смонтировать нужный. Скрипт автоматически отмонтирует ресурс с машины, если она отключилась.

Называется эта вещь SambaMounter.

10.33 А что это за прога такая висит в левом/правом нижнем/верхнем углу с индикаторами и статистику по системе показывает? Какие существуют системные мониторы?

Это GKrellM ( http://web.wt.net/~billw/gkrellm/gkrellm.html). Имеет довольно много встроенных функций мониторинга (hdd, сеть, память, процессор, время, почта...) и еще больше plugins на самые разнообразные темы. Поддерживает темы оформления.

В последнее время под KDE вместо него стало возможным использовать Karamba ( http://www.efd.lth.se/~d98hk/karamba) или SuperKaramba ( http://netdragon.sourceforge.net), а под Gnome - gDesklets ( http://gdesklets.gnomedesktop.org/index.php).

Для wm, которые поддерживают dock-apps - AfterStep, WindowMaker, FVWM, BlackBox (и его клонов) и проч., для тех же целей можно использовать их (док-апы) - http://dockapps.org, http://www.bensinclair.com/dockapp.

Также существует TORSMO - TyopoytaORvelo System MOnitor ( http://torsmo.sourceforge.net/), менее приукрашенный, но не менее информативный монитор.

10.34 Чем сделать презентацию?

OpenOffice Impress

Active-DVI

10.35 Чем мне прочитать MS Word .doc по-быстрому? Без AbiWord/KWord/OOfice?

Можно попробовать конвертеры, однако они практически игнорируют форматирование.

Есть AntiWord (консольный, конвертирует в текст, знает много кодировок, в т.ч. ISO-8859-5, CP1251, KOI8, UTF8, портирован на NetWare и (!) Amiga), брать на http://antiword.cjb.net

Есть Catdoc (utf8,koi8,cp866/1251), также работает с .xls, есть встроенный tk front-end - http://www.45.free.net/~vitus/ice/catdoc

Есть еще word2x ( http://word2x.sourceforge.net), mswordview ( http://wvware.sourceforge.net) и др., но все же проще поставить Abi :)

10.36 Какой программой можно раскодировать вложение в письме?

Программы кодировки и раскодировки называются uuencode и uudecode. В rpm-based дистрибутивах вроде RedHat начиная с версии 8.0 и Fedora Core, Mandrake они входят в пакет shareutils. Suse, Slackware и redhat 7.x содержит пакет metamail с программами mmencode (aka mimencode).

10.37 Есть ли аналог Norton Ghost?

Прямой аналог Norton Ghost - это утилита dump, входящая в любой дистрибутив, но работающая на ограниченном числе файловых систем. Лучше почитайте о том, как забэкапить жесткий диск.

10.38 Есть ли аналог макинтошевской программы Drop Drawers?

BasKet, написана под KDE.

11. Русификация

11.1 Как мне настроить русский в ... ?

Вот отличная ссылка - чего там только нет - http://kedr.inp.nsk.su/~baldin/Cyrillic-HOWTO-russian

11.2 Как в xmms в playlist сделать русские буковки?

Здесь много вариантов ответа. Во-первых, можно взять xmms из какого-либо русского дистрибутива, например, у ASPLinux ( ftp://ftp.asplinux.ru) или AltLinux ( ftp://ftp.altlinux.ru) В них сразу присутствует возможность перекодировки названий песен из cp1251 в выбранную вами кодировку.

Можно взять patch отсюда ( http://rusxmms.sourceforge.net), наложить его на свой xmms и собрать заново.

Также есть plug-in к xmms - mpg123-ja. Представляет стандартный plug-in для работы с mp3 + c поддержкой перекодировки. Не требует патчить xmms и в есть в репозитории debian. (apt-cache show xmms-mpg123-ja). Взять можно тут - http://www3.big.or.jp/~sian/linux/products/xmms/

В debian достаточно сделать

apt-get install xmms-mpg123-ja

11.3 У меня в gkrellm в менюшках все хорошо, а на индикаторах вместо русских букв "кракозябры", почему?

С переходом на GTK2 возникли эти проблемы. Автор все никак не мог переделать кусок, пишущий текст "по нормальному". "Обходится" это путем убирания галки с "использовать альтернативные шрифты..." и вписывании руками в rc от темы свои значения. Например:

~/.gkrellm2/themes/Photon/gkrellmrc:

large_font = -monotype-arial-medium-r-normal-*-*-140-*-*-p-*-koi8-r
normal_font = -monotype-arial-medium-r-normal-*-*-140-*-*-p-*-koi8-r 
small_font = -monotype-arial-medium-r-normal-*-*-100-*-*-p-*-koi8-r

Или же можно (и нужно) скачать версию посвежее.

11.4 Как настроить русский в OpenOffice?

Ответ на этот вопрос логичнее искать здесь:

http://ru.openoffice.org http://www.openoffice.ru/index.php?module=faq

Добавим только, что при правильно настроенных шрифтах и локали openoffice работает из коробки без дополнительных исправлений.

12. General

12.1 Какой дистрибутив выбрать?

Да для чего бы вы ни выбирали - в принципе любой. Вопрос этот надоел - не задавайте его в форуме, он вызовет бесполезный флейм и злость.

Напоследок дадим хороший совет - лучше попробовать несколько. Вот тут - http://www.linux.org.ru/view-article.jsp?article=distr или тут - http://linux-forever.narod.ru/variant/index.htm можно почитать кое-что о том, что есть.

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

12.2 Где взять легальный линукс?

Это некорректный вопрос. Если вы внимательно прочтете лицензию GPL, то поймете, что любой дистрибутив Linux может распространяться кем угодно - вы можете давать его скопировать своим знакомым и друзьям и в свою очеред копировать у них, выкладывать в сети и т.п. Это не распространяется на коммерческие пакеты, которые включаются в некоторые дистрибутивы (Suse, Mandrake, ASP Linux) в виде демо-версий. Обычно они поставляются на отдельном диске.

12.3 Что такое LiveCD-дистрибутивы? Какие есть liveCD-дистрибутивы?

LiveCD - это дистрибутив linux, который помещается на один компакт-диск или DVD-диск (а также USB-flash), способный работать с этого диска, не устанавливаясь на жесткий диск. Обычно подобные дистрибутивы предоставляют выбор из нескольких DE и WM и имеет в своем составе инструменты для восстановления системы, приложения для работы в интернете, с документацией и мультимедиа.

LiveCD различаются по функциональности. Так называемые cached загружаются полностью в память компьютера и привод CDROM для работы им больше не требуется (Blin в редакции CD-Cache). Другие работают с использованием компакт-диска.

CoolLinux - http://www.linux.rodniki.ru/index.htm

BLin - http://blin.zp.ua

Knoppix - http://www.knoppix.org, http://www.knoppix.ru

FreeBSD LiveCD - http://livecd.sourceforge.net

Mandrake Linux 9.2+ base LiveCD - http://livecd.berlios.de

...

Список из 100 liveCD - здесь http://www.frozentech.com/content/livecd.php

На всякий случай вот еще один список - http://www.nationmaster.com/encyclopedia/LiveCD

12.4 Где мне найти Linux для моей слабенькой машинки?

В музее истории Linux. Там собраны всевозможные дистрибутивы, в том числе и для стареньких слабых машин - http://www.ibiblio.org/pub/Linux.

В принципе, на i386 пойдут все Slackware http://www.slackware.org до 8-ой включительно. Можно попробовать, хотя версии от 7-ой и выше скорее всего брать не стоит.

12.5 Где взять классные значки(иконки)/обои/темы?

http://kde-look.org, http://gnome-look.org, http://art.gnome.org, http://www.deviantart.com

12.6 Где взять спасательный (rescue) загрузочный компакт-диск c linux?

Первый диск любого дистрибутива является загрузочным и спасательным в одном флаконе. Чтобы войти в спасательный режим, нужно передать параметр загрузчику. Обычно по нажатию F1 можно узнать какой. Для дистрибутивов Redhat достаточно написать:

linux rescue

12.7 Почему все говорят, что нельзя сидеть под root'ом?

Итак, вы поставили себе линукс и первое время не вылезали из-под рута - пока все настроили, пока что-то сломали и заново восстановили...

И вот теперь ваш линукс прекрасно работает, вам удобно и вроде все замечательно. Так зачем же создавать пользователя? Тем более, вы один сидите за компьютером? К тому же:

Я (jackill) могу рассказать, зачем.

Ну если не убедил, пользуйтесь. Когда вспомните о модели безопасности, где нет места постоянной работе под рутом, будет поздно.

13. Desktop

13.1 Что такое WM, DE и чем они отличаются? Что лучше?

Есть X-сервер (XFree86, xorg). Он отвечает за устройства ввода-вывода, графику и вывод окон.

А еще есть менеджеры окон и рабочие среды, которые отвечают за поведение окон, число рабочих столов, вид окон, иными словами, за поведение и вид. К числу менеджеров окон можно отнести FluxBox (да любой *box), IceWM, Window Maker, FVWM, AfterStep и прочее. К группе вторых относятся вторым - KDE и Gnome, ну может еще XFCE. Где-то отдельно стоит Enlightenment - он вроде как теперь проходит по спецификациям к рабочим средам, но программ под его API почти нет.

Аббревиатура WM переводится как Window Manager (менеджер окон), коротко и довольно доступно об этом написано на здесь или здесь, вот кусочек:

X-сервер -- программа в определенном смысле довольно глупая. Все, что он умеет -- это выделять программам прямоугольные области экрана ("окна") и рисовать в них то, что программы попросят; плюс он знает, что одно окошко может располагаться поверх другого, и правильно их отрисовывает.

Но ведь надо еще изобразить рамку вокруг окошка, заголовок над ним, уметь "сворачивать" окно в пиктограмму и еще многое другое. Этим занимается специальная программа, называемая "Window Manager" (дословно - "менеджер окон").

В список функций хорошего window manager'а входят: декорирование окон (бордюр, заголовок, кнопочки), манипуляции с окнами (перемещение, изменение размера, свертывание в пиктограмму и т.д.), разнообразные меню и панели инструментов (например, для запуска программ), виртуальный экран.

Аббревиатура DE переводится как Desktop Environment (рабочая среда), на пальцах объясню - криво и коряво, зато понятно:

Рабочие среды имеют свои библиотеки (GTK, QT) и средства для более легкого создания приложений и их более тесной интеграции (собственный API). Соответственно, если я беру и собираю тот же licq с поддержкой KDE, то он будет убираться в трей, вызывать kmail, работать с Konqueror и получит поддержку arts. Если нет - получим тоже рабочее приложение, но без таких вкусностей.

Если программа собрана под рабочую среду, ее запуск и работа возможна и в оконном менеджере, но она утащит за собой необходимые библиотеки из своей рабочей среды. Например, kppp утащит kdeinit, а тот - kaccess и кучу еще всего, а StarDict (который работает только с Gnome) возьмет с собой еще и bonobo-activation-server.

Кстати, если программа написана к примеру на GTK, это еще не значит, что она написана под Gnome. Во-первых это значит, что такая программа не обязательно будет "прятаться в трей" и т.д. в этом самом Gnome, и во-вторых - она не будет "тянуть за собой" его сервисы.

Многие менеджеры могут собираться с поддержкой рабочей среды - тогда программы из сред смогут работать корректнее - например, убираться в тот же трей менеджера (который работает иначе, чем у рабочей среды).

В принципе, DE - это более прогрессивный (хоть и не unix-way) подход, если проблем с ресурсами нет, проще поставить рабочую среду.

Если хочется чего-нить эдакого, а используемые программы в рабочей среде не нуждаются, можно ставить что нравится.

Вопрос же о том, что лучше WM или DE весьма спорный - эффективно работать можно и там и там, а вопрос красивости - это дело вкуса (многим просто НЕ нравится тот-же KDE на генном уровне). Т.е. стоит попробовать несколько и выбрать то, что /просто нравится именно вам/.

Здесь имеется рейтинг самых разнообразных WM и DE, с описанием и ссылками на их домашние странички.

Несколько интересных, хоть и местами спорных, статей имеется на http://linux-forever.narod.ru/winman/index.htm

На http://linuxportal.ru/entry.php/P491_0_3_0 можно почитать о том, "Как поменять Display Manager" в подробностях.

13.2 Размер десктопа == разрешению монитора при переключении разрешения. Это возможно? Как поменять разрешение, не завершая X-сервер?

В KDE 3.1.x и выше есть программа "Screen Resize & Rotate". Пускаете ее как апплет, она садится в трей. Ею переключаете разрешение - размер десктопа тоже будет меняться.

Что-то такое планируется (или уже есть) в Gnome.

Или же можно переключить вручную (если wm поддерживает расширение xrandr):

Запустите xrandr, он выдаст нечто вроде:

 SZ:    Pixels          Physical       Refresh
*0   1152 x 864    ( 333mm x 252mm )  *78  
 1   1024 x 768    ( 333mm x 252mm )   84  
 2    800 x 600    ( 333mm x 252mm )   88  
 3    640 x 480    ( 333mm x 252mm )   84  
 4    400 x 300    ( 333mm x 252mm )   84  
 5    832 x 624    ( 333mm x 252mm )   74  
 6    640 x 512    ( 333mm x 252mm )   60  
 7    720 x 400    ( 333mm x 252mm )   85  
 8    640 x 400    ( 333mm x 252mm )   85  
 9    576 x 432    ( 333mm x 252mm )   75  
 10   640 x 350    ( 333mm x 252mm )   85  
 11   512 x 384    ( 333mm x 252mm )   84   75   70   60  
 12   416 x 312    ( 333mm x 252mm )   74  
 13   320 x 240    ( 333mm x 252mm )   85   75   72   60  
 14   320 x 200    ( 333mm x 252mm )   89  
 15   320 x 175    ( 333mm x 252mm )   85  
Current rotation - normal
Current reflection - none
Rotations possible - normal 
Reflections possible - none

Теперь напишете, например, xrandr 1 и вы получите 1024x768 с изменившимся размером окон.

13.3 Как в KDE переключать языки по Ctrl+Shift?

Вообще-то никак :) Лучше выключить эту возможность в KDE, и использовать средства X-сервера, а в качестве индикатора - xxkb или kkbswitch.

Видел предположение, что если в файле  /.kde/share/apps/kcmkeys/my.kksrc поменять строку

Switch to Next Keyboard Layout=Ctrl+Alt+K
на
Switch to Next Keyboard Layout=Ctrl+Shift_L;Ctrl+Shift_R

то работать будет как надо. На KDE версий выше 3.1.4 этот способ не работал.

13.4 Как отключить сглаживание шрифтов (anti-aliasing) в приложениях GTK?

Для GTK-приложений - в консоли выполнить export GDK_USE_XFT=0 или прописать эту команду в  /.gtkrc. Если после этого приложения перестанут видеть TTF-шрифты, нужно прописать директорию с ними в файле конфигурации X-сервера, либо FontServer'а. Читайте Как настроить шрифты?

Также можно добавить параметр в $HOME/.Xresources

Xft.antialias: false

13.5 Как отключить сглаживание шрифтов (anti-aliasing) в приложениях QT?

Для Qt-приложений можно через Центр Управления KDE - Центр Управления -> Внешний вид -> Шрифты -> Использовать сглаживание для шрифтов (Control Center -> Appearance & Themes -> Fonts -> Use anti-alising for fonts)

13.6 Как включить "нормальное" сглаживание шрифтов (anti-aliasing)?

Из-за проблем с лицензированием алгоритма сглаживания FreeType распространяется с выключенными по умолчанию функциями сглаживания шрифтов, где используются пропиетарные алгоритмы. В нашей России патенты на эти алгоритмы не действуют, поэтому мы можем включить их использование и пересобрать FreeType. В общем случае подойдет способ, описанный здесь.

В redhat/fedora вы можете поправить соответствующий параметр в spec-файле и пересобрать пакет.

Есть дополнительные способы по улучшению вида шрифтов: http://www.freebsd.org/gnome/docs/faq2.html#q11

13.7 Какие файлы отвечают за внешний вид (шрифт, тема, стиль...) GTK приложений? Дайте пример такого файла.

Это файлы gtkrc. Существуют глобальные настройки и локальные. Локальные хранятся в домашней папке, в файле &.gtkrc, глобальные в /etc/gtk/gtkrc и /etc/gtk/gtcrc.ru.

Настройки внешнего вида приложений GTK 1.x

Файл /etc/gtk/gtkrc в общем случае выглядит так и трогать его не нужно:

style "gtk-tooltips-style" {
  bg[NORMAL] = "#ffffc0"
  fg[NORMAL] = "#000000"
}

widget "gtk-tooltips" style "gtk-tooltips-style"

style "gtk-progressbar-style" {
  bg[NORMAL] = "#ffffff"
  bg[PRELIGHT] = "#a0a0a0"
}

class "GtkProgressBar" style "gtk-progressbar-style"

Файл /etc/gtk/gtkrc.ru выглядит примерно так:

style "gtk-default-ru" {
        fontset = "-*-arial-medium-r-normal--12-*-*-*-*-*-koi8-r,\
                   -*-helvetica-medium-r-normal--12-*-*-*-*-*-koi8-r,\
                   -*-arial-medium-r-normal--12-*-*-*-*-*-koi8-r,*-r-*,\
                   -adobe-helvetica-medium-r-normal--12-*-*-*-*-*-koi8-r-*
                   "
 }
 class "GtkWidget" style "gtk-default-ru"

Мы можем настроить gtk исключительно под себя, если создадим подобный файл в домашнем каталоге ( /.gtkrc или gtkrc.ru):

include "/home/fagot/.themes/Industrial/gtk/gtkrc"

style "user-font"
{
  font="-monotype-arial-medium-r-normal-*-*-140-*-*-p-*-koi8-ru"
}
widget_class "*" style "user-font"

include "/home/fagot/.gtkrc.mine"

Настройки внешнего вида приложений GTK 2.x

Глобальные настройки зависят от выбранной темы /etc/gtk-2.0/gtkrc:

gtk-theme-name = "Bluecurve"
<verb>

Локальные настройки для приложений GTK 2.x хранятся в ~/.gtkrc-2.0:

<verb>
~/.gtkrc-2.0:

include "/usr/local/share/themes/Default/gtk-2.0/gtkrc"
style "user-font" 
{
        font_name="sans 12" 
}
widget_class "*" style "user-font" 

include "/home/sk/.gtkrc.mine"

Файл  .gtkrc-kde - раньше был нужен для указания шрифтов GTK-приложений, теперь - нет. Если не ошибаюсь, можно удалить и выключить галку KDE Control Center -> Appearance & Themes -> Apply Colors to non-KDE Applications.

Для некоторых тем кроме "картинок" (из  /.themes/Theme-name/gtk-* например) также нужны библиотеки, которые должны быть правильно размещены. При сборке темы следует указать ./configure --prefix=PREFIX, где PREFIX тот же что и у установленного GTK (для Slackware это /usr, к примеру).

Дополнение от eRazor:

Для GTK2-приложений в KDE используются настройки из конфигурационных файлов перечисленных в переменной GTK2_RC_FILES, например:

$GTK2_RC_FILES:

/etc/opt/gnome/gtk-2.0/gtkrc: /opt/gnome/share/themes/Qt/gtk-2.0/gtkrc: ~/.gtkrc-2.0-plastik: ~/.kde/share/config/gtkrc 

Обратите внимание на то, что суффикс в имени rc-файла содержит имя темы. Когда вы в KDE, используется не  /.gtkrc-2.0, а  /.gtkrc-2.0-plastic, если он есть конечно.

13.8 Как переключить тему в gnome или приложениях gtk?

Скачиваем тему, распаковываем ее куда-нибудь, вроде $HOME/themes/_название_темы_

Далее в файле .gtkrc пишем include "$HOME/themes/_название_темы_/gtkrc"

Если есть файл .gtkrc.ru или gtkrc.ru проще всего сделать их ссылками на .gtkrc

Если у вас стоит KDE, то влияние на тему оказывает файл gtkrc-kde. Чтобы этого не происходило, вы можете снять галку в Центре Управления: Appearance & Themes -> Colors KDE -> Apply colors to non-KDE applications.

Если у вас стоит Gnome, проще (и лучше всего - со слов пользователя Gnome) воспользоваться gtk-theme-switch. Если у вас его нет, вы можете скачать его здесь: http://www.muhri.net/nav.php3?node=gts (отдельно версия для приложений gtk-1 и gtk-2) или попробовать найти в своем дистрибутиве.

13.9 Почему в GTK-программах, например VWware, xmms, jpilot вместо русских букв квадраты?

Это происходит потому, что в файле /etc/gtk/gtkrc.utf8 (или /etc/gtkrc.ru - в файле, соответвующим вашей локали) фигурирует ссылка на шрифт семейства helvetica, в котором отсутствуют русские символы или указан несушествующий шрифт.

Данную неприятность легко исправить, вписав вместо него любой шрифт, который реально присутствует в системе. Например, на RedHat или Fedora Core, файл может выглядеть так:

style "default-text" { 
                     fontset = "-urw-urw bookman l-medium-r-normal-*-14-*-*-*-p-*-koi8-uni" 
} 


class "GtkWidget" style "default-text"

Также примеры для redhat можно посмотреть в предыдущем вопросе.

13.10 Как настроить шрифты в Motif-приложениях?

man editres

man xrdb

13.11 Как сделать, чтобы xmms можно было свернуть в трэй KDE/Gnome?

Данный плагин работает и в GNOME и в KDE - http://www.hellion.org.uk/xmms-status-plugin/index.html. Для Fedora Core готовый пакет можно взять на сайте http://freshrpm.org

Или скачать и поставить соответствующий plug-in:

http://xmms-kde.sourceforge.net/download.html.

На сайте также есть бинарники (rpm) под SuSe и RedHat.

13.12 Как сделать, чтобы xxkb "висел" в трее IceWM?

Waso отвечает :

~/.xxkbrc:

XXkb.mainwindow.enable: yes                                                     
XXkb.mainwindow.geometry: 15x15+985-31 !Цифры можно подобрать и другие

и

~/.icewm/winoptions:

XXkb.dTitleBar:0
XXkb.dBorder:0
XXkb.dResize:0
XXkb.ignoreTaskBar:1
XXkb.ignoreWinList:0
XXkb.dTitleBar:0
XXkb.dBorder:0
XXkb.dSysMenu:0
XXkb.dResize:0
XXkb.dClose:0
XXkb.allWorkspaces:1
XXkb.layer:AboveDock

13.13 Почему Mozilla грузит процессор на 100%?

Скорее всего это не Mozilla, а контент открытых страниц. Одным из радикальных, но довольно действенных методов борьбы с этим явлением является отказ от использования flash-plugin (просто не устанавливать). Как вариант, можно поставить Adblock ( http://adblock.mozdev.org) и запретить *.swf.

13.14 Как ускорить проигрывание FLASH (заставить его использовать меньше ресурсов)?

Задать такую переменную:

export FLASH_GTK_LIBRARY=libgtk-x11-2.0.so.0

13.15 Как включить java в mozilla?

13.16 Как поменять в KPPP тоновый набор на импульсный?

Либо перед номером телефона пишем букву 'P' (латинская!), либо заходим в свойства kppp, команды и пишем вместо ATDT команду ATDP.

13.17 Что делать, если при запуске wvdial не от рута программа пишет device busy?

Дайте пользователю права на запись в директорию /var/lock (скажем, включив его в группу, владеющую данной папкой)

13.18 А можно пример конфига для wvdial?

/etc/wvdial.conf:

[Dialer Defaults]
Modem = /dev/ttyS0
Baud = 112500
Init = ATZ
Init2 = AT S11=50
Dial Command = ATDP
Phone = 9955555
Username = int1104221
Password = LyQSptAy
New PPPD = yes
#Init3 = ATM0

[Dialer phone2]
Phone = 9955556

[Dialer phone3]
Phone = 1055555

[Dialer phone4]
Phone=9519024

[Dialer phone5]
Phone=9613332

[Dialer norm]
Init3 = ATM1

[Dialer phone6]
Phone=7132245

[Dialer phone7]
Phone=7113676

13.19 Как отключить beep?

Если хочется отключить писк в консоли (для bash и программ, использующих readline), можно добавить в  /.inputrc строку `set bell-style off`, или `xset -b` (что эквивалентно `xset b off`), затем выйти из нее (консоли) и зайти снова - должно получиться. Или сделать setterm -blength 0.

Для xterm, rxvt и других графических эмуляторов также можно использовать команду `xset b off`.

Для более глубокого ознакомления со способами управления звуком (и не только) в консоли рекомендую поселить http://gazette.linux.ru.net/rus/articles/hobcon.html и http://linuxdoc.ru/HOWTO/mini/Visual-Bell.html

13.20 Как запустить программу в фоне, без привязки к терминалу?

user@linux# nohup COMMAND [ARG]...

Программа nohup запускает COMMAND таким образом, что она игнорирует сигнал hangup, что позволяет ей продолжать работу и после выхода из терминала. Также, она перенаправляет весь вывод программы в файл $HOME/nohup.out и понижает приоритет выполняемой программы.

13.21 Как понизить/повысить приоритет запускаемой программе?

Воспользуйтесь командой nice. Чтобы понизить приоритет, напишите нечто вроде:

user@linux$ nice -n 10 myprogram

Подробности можно узнать, набрав man nice

13.22 Как сделать терминал без рамки?

Это настройка не терминала, а WindowManager'а.

Для FluxBox, это можна сделть например так: добавить в  /.fluxbox/keys строку

~/.fluxbox/keys:

"Mod4 d : ToggleDecor"

После этого нажатием на [Win+d] можно управлять наличием рамки у любого окна.

Для WindowMaker - Свойства окна (правая кнопка мыши по заголовку)->Атрибуты->Скрыть строку заголовка

13.23 Как разделить tar.gz на равные части?

man tar в районе -M

Либо man split и натравить split на tar.gz.

13.24 Как просматривать ресурсы сети Windows (сетевое окружение) из консоли? Как его смонтировать?

Для начала нужно посмотреть ресурсы при помощи команды smbclient -L winmachine. На данный момент ресурсы с названием более 16 символов поддерживаются некорректно, т.е. все символы в названии после 16-го отсекаются.

Чтобы смонтировать нужный ресурс, дайте примерно такую команду:

smbmount //winmachine/movie /home/jackill/mnt/movie -o  iocharset=koi8-r,rw,codepage=cp866,umask=0

Для ресурсов с паролем дайте команду:

smbmount //winmachine/work /home/jackill/mnt/work -o  iocharset=koi8-r,rw,umask=0,codepage=cp866,username=_username_,password=_password_

Также существуют GUI-утилиты и специальный скрипт, искать ресурсы которыми и монтировать значительно удобнее.

13.25 Как перевести текстовый файл из одной кодировки в другую?

Вот так.

13.26 Как провести операцию по преобразованию группы графических файлов (например, уменьшить размер ста файлов)?

Есть такой пакет ImageMagick, Входит он практически в любой дистрибутив и содержит группу утилит, предназначенных для различного преобразования файлов. Полный список поддерживаемых форматов вы можете узнать, набрав man ImageMagick.

В качестве примера возьмем задачу по уменьшению группы файлов (jpeg уменьшить пропорционально, чтобы координата x равнялась 800 пикселям).

Пишем такой скрипт, у меня он называется conv (автор неизвестен):

#!/bin/sh
for i in $@ ; do convert -geometry 800 $i small/$i ; done

Дальше делаем просто:

13.27 Как установить Maya 4.5 (В том числе под RedHat 9/ASP 9/Fedora Core 1 и прочее)?

  1. Ставим maya из rpm.
  2. Переходим в /usr/aw/maya/bin
  3. Находим файлик Maya 4.5
  4. В этом файле ищем строчки (27 строка):
    case Linux:
    set lib = lib
    
    После них ставим
    set lsFlags = '-l'
    setenv LD_ASSUME_KERNEL 2.4.2
    
    И весь кусок у нас выглядит так:
    /usr/aw/maya/bin/Maya4.5:
    
    case Linux:
    set lib = lib
    set lsFlags = '-l'
    setenv LD_ASSUME_KERNEL 2.4.2
    breaksw
    

13.28 Как установить в консоли развертку больше 60Гц при использовании framebuffer?

Нужно настроить buffer.

Но есть тонкость - если вы используете родные модули для карт от ATI, Matrox и NVIDIA (и в случае последней карты остаетесь без драйверов с поддержкой 3D), то проблем не будет.

Но если вы используете универсальный vesa framebuffer, ядро придется предварительно патчить, потому как 60Гц на мониторе при высоком разрешении никому не нужно. Есть небольшая тонкость - кажется, что карты GForce FX 5600 и 5900 игнорируют команды переключения частоты.

Вот страница патча http://dev.gentoo.org/~spock/projects/vesafb-tng/. Прочитать немного о патче можно в этом обсуждении. Подходит только для карт, поддерживающих VBE 3.0 (например, GeForce), для VBE 2.0 (например, Radeon 8500) придется делать дополнительные телодвижения.

13.29 Как изменить разрешение в консоли? Как настроить framebuffer?

Нужно настроить framebuffer, а если он уже настроен и драйвер не стандартная vesafb, а специфичный драйвер карты, то можете для изменения частоты использовать утилиту fbset (иначе частоту придется менять при загрузке).

Почитать о том, как все настроить, можно здесь и по материалу этой статьи написана еще одна.

Есть две тонкости:

  1. Стандартный драйвер vesafb выдает только 60Гц, но это можно обойти.
  2. Русский шрифт будет только в первой консоли. Для руссификации остальных придется сделать скрипт (или взять готовый из документа по русификации Slackware.

13.30 Как увеличить разрешение и частоту развертки консоли не используя framebuffer?

Для этого нужна специальная утилита SVGATextMode. Лежит она здесь: ftp://sunsite.unc.edu/pub/Linux/utils/console/

Чтобы она нормально собралась на современных системах, нужно в файл cfgfile.y добавить после строки #include <stdlib.h> строчку #include <stdio.h>

Также рекомендуется посмотреть на патчи под определенные карточки.

За ответ благодарим lumag.

13.31 Как ускорить работу KDE?

Помимо пересборки ядра под свою систему, X-сервера, выключения ненужных системных служб и сервисов самого KDE можно прочитать вот эту статью.

14. X-сервер

Неплохая подборка статей лежит здесь. Не все актуально, но дает базовые понятия и представление намного лучше, чем может дать любое faq.

Вот это FAQ по видеокартам от NVidia и статьи по настройке видеокарт ATI под Linux возможно сэкономят вам не один час времени.

14.1 Х-сервер не находит шрифты, указанные в FontPath раздела Files (xorg.conf или XF86Config). Ничего не менял. Вылетает с ошибкой "Could not init font path element "unix/:7100". Что делать?

Началось это потому, что в /tmp лежит lock-файл сервера шрифтов. Решение: почистить /tmp и перезапустить фонтсервер (например, service xfs restart).

Если вы не планируете раздавать шрифты по сети на бездисковые рабочие станции, то сервер шрифтов вам скорее всего не нужен.

Поэтому уберем его. Для этого берем и в вашем конфигурационном файле X-сервера (/etc/X11/xorg.conf или /etc/X11/XF86Config, /usr/X11R6/lib/X11/XF86Config-4) прописываем в разделе "Files" путь для каждой папки со шрифтами (FontPath).

При этом пути с русскими шрифтам помещаем выше, чем с другими.

Упоминание unix/:7100 убираем.

Далее ищем, где у нас запускается сервер шрифтов (xfs). Для RedHat'топодобных дистрибутивов запуск производится демоном xfs.

Делаете так: от рута

root@localhost# service xfs stop
Затем заходим в /etc/rc.d/rc.x, где x - номер инита, и удаляем все упоминания вида S??xfs (или переименовываем в K??xfs). Чтобы так не напрягаться, в redhat существует команда chkconfig.
root@localhost# chkconfig --del xfs

14.2 X-сервер падает на старте с ошибкой Xlib: extension "SHAPE" missing on display ":0.0". Что делать?

Проверьте у себя в файле конфигурации x-сервера (/etc/XF86Config или /etc/Xorg) наличие следующих строчек в Section "Module":

Load  "extmod"
SubSection  "extmod"
        Option  "omit xfree86-dga"
EndSubSection

Если их нет, вставьте и попробуйте запустить еще раз. Все должно работать.

14.3 Как настроить переключение раскладок в X-сервере (XFree86,xorg)?

В современных дистрибутивах обычно более-менее правильные настройки доступны из коробки. В файле настроек (для xorg - /etc/X11/xorg.conf, для XFree86 - /etc/X11/XF86Config или /usr/X11R6/lib/X11/XF86Config-4) нужно указать настройки своей клавиатуры. В секции настроек клавиатуры есть отличия. Настройки XFree86 версий ниже 4.3 отличаются от XFree версий 4.3 и 4.4 и xorg. Версию XFree86 можно узнать, выполнив XFree86 -version.

Для примера возьмем переключение по Ctrl+Shift двух языков (en, rus) с включением scroll lock на русской раскладке:

XF86Config:

Section "InputDevice"
        Identifier "Keyboard0"
        Driver "keyboard"
        Option "XkbRules" "xfree86"
        Option "XkbModel" "pc104"
        Option "XkbLayout" "ru(winkeys)"
        Option "Autorepeat" "250 30"
        Option "XkbOptions" "grp:ctrl_shift_toggle,grp_led:scroll"
EndSection

Для XFree86 версий 4.3.0 и выше секция параметров клавиатуры выглядит так:

XF86Config:

Section "InputDevice"
        Identifier "Keyboard0"
        Driver "keyboard"
        Option "XkbRules" "xfree86"
        Option "XkbModel" "pc104"
        Option "XkbLayout" "us,ru"
        Option "XkbOptions" "grp:ctrl_shift_toggle,grp_led:scroll"
EndSection

Т.е. изменился формат параметра "XkbLayout". Теперь через запятую можно перечислять сколько угодно раскладок. Если вместо .ru написать winkeys - получим раскладку a-la MS Windows.

Для xorg секция параметров клавиатуры выглядит так:

Section "InputDevice"
        Identifier  "Keyboard0"
        Driver      "kbd"
        Option      "XkbModel" "pc105"
        Option      "XkbLayout" "us,ru(winkeys)"
        Option      "XkbOptions" "grp:ctrl_shift_toggle,grp_led:scroll"
EndSection

Т.е. изменилось название драйвера клавиатуры.

Теперь непосредственно рассмотрим переключатель. Во всех примерах по умолчанию стоит английский. Переключатель описывается в последней строке.

Для того, чтобы переключаться по ctrl+shift указывается параметр ctrl_shift_toggle, по alt+shift - параметр alt_shift_toggle.

Значение grp_led:scroll говорит о том, что после переключения будет загораться индикатор scroll lock.

Чтобы переключаться через Menu-key (такая клавиша на многих "Windows98" клавиатурах, слева от правого Ctrl), напишите:

Option  "XkbOptions" "grp:menu_toggle,grp_led:caps"

Еще пара интересных примеров.

Для X 4.2.х настройки раскладки выглядят так:

XF86Config:

Section "InputDevice"
        Option "XkbRules" "xfree86"
        Option "XkbModel" "microsoft"
        Option "XkbLayout" "ru"
        Option "XkbVariant" "winkeys"
        Option "XkbOptions" "grp:ctrl_shift_toggle,grp_led:scroll"
EndSection

Аналогичные для XFree 4.3 будут выглядеть так:

XF86Config:

Section "InputDevice"
        Option "XkbRules" "xfree86"
        Option "XkbModel" "microsoft"
        Option "XkbLayout" "us,ru"
        Option "XkbVariant" ",winkeys"
        Option "XkbOptions" "grp:ctrl_shift_toggle,grp_led:scroll"
EndSection

В этом примере обратите внимание на запятую перед winkeys, это важно. Многие забывают ее поставить и как следствие, X-сервер функционирует неверно.

Пример с переключением трех языков (взято с http://lafox.net/docs/MDKman2/MDKman.html/ch02s02.html):

XF86Config:

Section "InputDevice"
        Identifier "Keyboard1"
        Driver "Keyboard"
        Option "XkbModel" "pc105" #тут оставить свое
        Option "XkbLayout" "us,ru(winkeys),ua(winkeys)" #для 3-х языков (eng,rus,ukr)
        #Option "XkbLayout" "us,ru(winkeys)" #для  2-х языков (eng,rus)
        Option "XkbOptions" "grp:ctrl_shift_toggle,grp_led:scroll" #индикатор ScrollLock
EndSection

Аналогично настройки прописываются для xorg, меняется лишь название драйвера клавиатуры (см. выше). Для XFree86 версий 4.2.х и ниже для переключения на три и более языков требуется установить и настроить xxkb (см. ниже).

После внесения изменений X-сервер нужно перезапустить.

Общее замечание. Для того, чтобы все это работало должна быть верно настроена локаль.

Замечание пользователям KDE. В Центре управления KDE имеется секция управления раскладками клавиатуры - Центр Управления -> Периферия -> Региональные стандарты -> Раскладки клавиатуры (Control Center -> Regional & Accessibility -> Keyboard Layout). Для использования настроек X-сервера галочку "Включить раскладки клавиатуры" (Enable keyboard layouts) следует выключить. Или использовать возможности KDE и убрать поддержку нескольких языков в настройках X-сервера.

Для более гибкой настройки можно использовать xxkb ( http://netadmin1.ic.tsu.ru/other/xxkb/, http://www.sourceforge.net/projects/xxkb, http://gnome.org.ru/xxkb.shtml). xxkb имеет достаточно богатые настройки по управлению раскладками и, в частности, настройки совместимости со средой - он может "висеть" на каждом (поддерживаются исключения) окне или только на активном в виде переключателя в указанном месте, может находится в трее KDE и Gnome (для этого нужно наложить патч - http://gnome.org.ru/xxkb.shtml), а может быть и dock-app'ом для WMaker'а.

Кстати, последние версии xxkb поддерживают трей и без патча, правда иконка в трее появляется из главного окна, которая слишком большая. Вместо файлов en48.xpm и ru.48.xpm нужно записать файлы с иконками поменьше, в качестве временной меры можно заменить их на en15.xpm и ru15.xpm.

В среде Gnome ниже версии 2.6 вместо xxkb можно использовать ( GSwitchIt), он несколько богаче функциональностью. Начиная с версии 2.6 gswitchit включен в состав Gnome!

В среде KDE вместо xxkb можно использовать kkbswitch.

Благодарим ответы saper, svu и неизвестного anonimous'а.

14.4 Как настроить нормальную частоту и разрешение в X-сервере?

Нужно прописать в конфигурационном файле X-сервера нечто такое:

/etc/X11/XF86Config (/etc/X11/xorg.conf):

Section "Monitor"
        Identifier  "My Monitor"
        HorizSync   31.5 - 79.0
        VertRefresh 50-90
EndSection

HorizSync и VertRefresh нужно взять из книжки к монитору.

Если это способ по каким-либо причинам не устраивает, можно вычислить нужную modeline и прописать ее.

Узнать нужную modeline можно с помошью стандартной утилиты gtf, KDE'шной kvideogen, videogen ( http://www.dynaweb.hu/opensource/videogen), и прочих. Или on-line калькулятора - http://koala.ilog.fr/cgi-bin/nph-colas-modelines

Например:

user@linux# gtf 1024 768 85

выдаст

# 1024x768 @ 100.00 Hz (GTF) hsync: 81.40 kHz; pclk: 113.31 MHz
  Modeline "1024x768_100.00"  113.31  1024 1096 1208 1392  768 769 772 814  -HSync +Vsync

Полученную строчку нужно прописать в XF86Config (xorg.conf) в раздел Monitor, чтобы получилось примерно так:

Section "Monitor"
        Identifier   "Monitor0"
        VendorName   "Monitor Vendor"
        ModelName    "CTX5378"
        DisplaySize  330        250
        HorizSync    30.0 - 72.0
        VertRefresh  50.0 - 130.0
        ModeLine     "1152x864" 108.0 1152 1200 1328 1528 864 865 868 904 +hsync +vsync
        ModeLine     "1024x768" 94.5 1024 1076 1172 1372 768 769 772 812 +hsync +vsync
        ModeLine     "800x600" 56.3 800 832 896 1032 600 601 604 619 +hsync +vsync
        ModeLine     "640x480" 36.0 640 712 768 808 480 485 488 525 -hsync -vsync
        ModeLine     "400x300" 28.1 400 412 444 508 300 304 306 327 +hsync +vsync doublescan
        ModeLine     "320x200" 15.8 320 360 392 396 200 204 206 222 -hsync +vsync doublescan
        Modeline     "1024x768_100.00"  113.31  1024 1096 1208 1392  768 769 772 814  -HSync +Vsync
        Option      "dpms"
EndSection

После перезапуска X-сервера можно провести тонкую настройку (чтобы края не вылезали и т.п.) программой xvidtune - заходим в консоль, делаем xvidtune, когда нам все понравится, делаем apply и получаем в консоли исправленную строчку для modline. Ее записываем вместо первоначальной.

14.5 Где взять драйвер под монитор?

Нигде. Если вы не в курсе, в "драйверах для монитора" MS Windows обычно пишутся его рабочие частоты (которые современные мониторы и так отдают операционной системе) иногда рабочую температуру цвета, цветовые профили.

Кстати, если вы думаете, что у вас нельзя поставить 100Гц вместо 85Гц из-за того, что у вас отсутствуют данные драйверы, то вы ошибаетесь. Виноват драйвер видеокарты (например, такое наблюдается на картах S3).

14.6 Как правильно настроить шрифты?

Для начала определимся. Есть старая схема работы со шрифтами и новая. Основные графические тулкиты, такие как QT версий 3.0.x и выше, а также GTK2 работают по новой схеме. Тем не менее еще полно приложений, основанных на gtk1, motif и т.п., работающие по старой.

Итак, мы хотим красивые ttf-шрифты. Отлично. Скачаем отсюда или отсюда шрифты Microsoft. Ставим их. Пользователи Suse могут сделать это через YAST. Лучше брать со второй ссылки. Тогда не придется их распаковывать и формировать в каталоге файлы fonts.dir и fonts.scale (на всякий случай, команда ttmkfdir -o fonts.dir, а fonts.scale - это копия fonts.dir).

Далее открываем файл конфигурации X-сервера (/etc/X11/xorg.conf или /etc/X11/XF86Config) и прописываем каталог с нашими шрифтами. Потом прописываем со шрифтами Type1, которые содержат русские глифы. В моем случае весь раздел выглядит так:

Section "Files"
        RgbPath      "/usr/X11R6/lib/X11/rgb"
        ModulePath   "/usr/X11R6/lib/modules"
        FontPath     "/usr/share/fonts/default/TTF"
        FontPath     "/usr/X11R6/lib/X11/fonts/cyrillic/"
        FontPath     "/usr/X11R6/lib/X11/fonts/75dpi/"
        FontPath     "/usr/X11R6/lib/X11/fonts/100dpi/"
        FontPath     "/usr/X11R6/lib/X11/fonts/misc/"
        FontPath     "/usr/X11R6/lib/X11/fonts/Type1/"
EndSection

Далее, если у нас xorg, а не XFree86, отменяем загрузку модуля type1, потому что его функции теперь выполняет модуль freetype:

#       Load  "type1"
и сохранив наш файл переходим к настройке xft2, известного больше как fontconfig.

Смотрим, что у нас лежит в папке /etc/fonts. По идее там должно быть три файла: fonts.conf, fonts.dtd и local.conf.

Заходим в наш local.conf и прописываем наши добавленные папки со шрифтами. Весь файл будет выглядеть для моего случая так:

<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<!-- /etc/fonts/local.conf file for local customizations -->
<fontconfig>
<!--
  Enable sub-pixel rendering
        <match target="font">
                <test qual="all" name="rgba">
                        <const>unknown</const>
                </test>
                <edit name="rgba" mode="assign"><const>rgb</const></edit>
        </match>
-->

        <dir>/usr/share/fonts/default/TTF></dir>
        <dir>/usr/java/j2re1.4.0_01/lib/fonts</dir>

</fontconfig>

Отлично. Теперь выполняем две команды:

root@localhost# fc-cache
root@localhost# fc-list

После второй команды у вас на экране должен появиться список шрифтов со всеми возможными кодировками.

Все у вас будет работать и будет работать верно, если... если вы не используете xft - сервер для раздачи шрифтов по сети. Вам он не нужен, если вы не раздаете шрифты по сети. Т.е. на домашней машине его лучше всего отключить (или же вообще удалить - для xorg пакет называется xorg-x11-xft).

Если вы настаиваете на его работе, то принцип указания шрифтов и папок в нем тот же - русские наверх, остальные - вниз. Открываем файл конфигурации (/etc/X11/fs/config) и пишем примерно так:

catalogue = /usr/share/fonts/KOI8-R/misc:unscaled,
        /usr/share/fonts/KOI8-R/100dpi:unscaled,
        /usr/share/fonts/KOI8-R/misc,
        /usr/share/fonts/KOI8-R/100dpi,
        /usr/X11R6/lib/X11/fonts/misc:unscaled,
        /usr/X11R6/lib/X11/fonts/75dpi:unscaled,
        /usr/X11R6/lib/X11/fonts/100dpi:unscaled,
        /usr/X11R6/lib/X11/fonts/misc,
        /usr/X11R6/lib/X11/fonts/Speedo,
        /usr/X11R6/lib/X11/fonts/Type1,
        /usr/X11R6/lib/X11/fonts/cyrillic,
        /usr/X11R6/lib/X11/fonts/75dpi,
        /usr/X11R6/lib/X11/fonts/100dpi
/usr/X11R6/lib/X11/fonts/cyrillic,
/usr/share/fonts/default/TTF,
,
/usr/X11R6/lib/X11/fonts/misc:unscaled,
/usr/X11R6/lib/X11/fonts/75dpi:unscaled,
/usr/X11R6/lib/X11/fonts/100dpi:unscaled,
/usr/X11R6/lib/X11/fonts/Type1

X-сервер мы настроили. Шрифт в программах QT настраивается через qt-config, а программы KDE заберут настройки из самого KDE, которые указываются в Центре Управления (Control Center).

После настройки X-сервера может потребоваться настройка шрифтов для тулкитов gtk1 и gtk2 и тем к ним.

14.7 Переключаюсь в консоль и вижу буквы, похожие на китайские иероглифы, что делать? При выключении машины сообщения от сервисов идут кракозябрами, потом включается английский, что делать?

Происходит такой глюк при переключении из X-сервера в консоль на машинах с картами NVidia и некоторыми Trident, где версия X-сервера Xfree86 до версии 4.4 включительно и xorg до версии 6.7.0 включительно.

Лечится командой

root@linux# /sbin/setsysfont cyr-sun16 
данной от рута.

Шрифт восстанавливается. Но если вы снова перейдете в графический режим (например, просто по ctrl+F7), он пропадет и при заходе в консоль понадобится опять выполнить данную команду.

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

И есть еще один способ - обновить свой X-сервер до xorg версии >=6.8.0

14.8 Все русские шрифты установлены, система их видит, но в некоторых программах/интерфейсе по прежнему нет русского языка. Что делать?

Самый простой вариант - папки со шрифтами прописаны не в том порядке. Читайте об этом здесь

Вариант сложнее - шрифты для тулкита gtk настроены неверно. Читайте об этом здесь.

И последний вариант - вы используете WM (О разнице между WM и DE читайте здесь). Во многих WM шрифты прописываются прямо в файле настроек темы и влияют на шрифты интерфейса. Обратитесь к соответствующей документации своего WM.

14.9 Как покинуть/перезапустить/перезагрузить X-сервер (XFree86/xorg) или как сделать, чтобы первоначально "иксы" не грузились?

Выгрузить X-сервер (xorg/XFree86) можно, нажав [ctrl+alt+backspace], если вы грузили их с помощью startx (т.е. система грузилась по сценарию загрузки 3, известному под названиями init 3 или runlevel 3).

Если вы грузили систему по сценарию загрузки 5 (т.е. имели графическое приглашение к работе) и вам нужно выгрузить графическую среду, например, для установки драйверов (этого требуют драйверы nvidia), тогда откройте свой терминал (aterm, xterm, Eterm, konsole), станьте рутом (команда su -) и наберите в терминале /sbin/telinit 3. После чего, проделав необходимые действия, можете вернуться в графический режим, набрав из-под рута /sbin/telinit 5. При этом сценарий загрузки у вас не поменяется!

Чтобы при загрузке система не загружалась в графический режим, нужно в /etc/inittab выбрать другой сценарий загрузки (runlevel). Графический режим - это 5 runlevel (в Slackware - 4), а текстовый - 3 (в Debian - 2).

Для этого находим строчку

/etc/inittab:

id:N:initdefault:

где N - номер режима загрузки и меняем на '3' или '2' (текстовый).

Не забудьте, что после этого будут грузиться сервисы, указанные в /etc/rc3.d, а не /etc/rc5.d (это для RedHat).

Если вам нужно выгрузить X-сервер только для того, чтобы переставить драйверы для своей видеокарты (например, для карт nvidia), откройте программу терминала, станьте рутом, и наберите telinit 3. После чего проделав необходимые действия можете вернуться в графический режим, набрав из-под рута telinit 5. Сценарий загрузки при этом у вас не меняется!.

Для mandrake linux существует еще один способ выгрузки X-сервера:

root@localhost# service dm stop

14.10 Как предотвратить отключение монитора?

см. /etc/X11/XF86Config на предмет опции dpms в секции Monitor

14.11 Как запустить второй X-сервер?

Командой startx -- :N, где N - номер сервера. Нумерация начинается с нуля и если один сервер уже запущен, то он, скорее всего, имеет нулевой номер.

14.12 Как запустить X-вую программу с другого компьютера по сети?

Как вариант, поставить какой-нибудь vnc.

Или запускать по telnet или ssh. Сначала рассмотрим простой вариант - обе машины работают под управлением linux.

Назовем компьютер, с которого вы хотите запустить программу и ресурсами которого вы хотите пользоваться сервером и компьютер, на котором будет отображаться программа, рабочей станцией.

На сервере должен работать telnet или ssh (лучше второе).

Тогда вы в терминале своей рабочей станции пишете

user@localhost$ xhost +server

и логинитесь на сервер по протоколу telnet или ssh:

user@localhost$ telnet server

user@localhost$ ssh server -l user

Затем после логина пишете в терминале (для ssh можно не писать, переменная выставляется автоматом):

user@localhost$ export DISPLAY=workstation:0.0

или

user@localhost$ env DISPLAY=workstation:0.0

После можете запускать программы с сервера - все должно работать.

Теперь рассмотрим вариант сложнее: linux - сервер, MS Windows - клиент. Дополнение от eRazor.

Это сделать очень легко. Ставим Cygwin, в них поднимаем X-сервер (это делается выбором софта во время установки). К X-серверу дополнительно ставится пакет OpenSSH. Далее на машине с linux запускается демон ssh.

Далее в запущенном в Cygwin X-сервере, в консоли набираем:

ssh -Y -l username remote_hostname_or_ip_address
логинимся на машину с linux и все работает.

Очевидно, в старых версиях Cygwin надо было предварительно устанавливать переменную DISPLAY для утилиты ssh:

 
$ DISPLAY=localhost:0.0 
$ export DISPLAY 
$ ssh -Y remotehost 

сейчас этого делать не надо, это уже устанавлено по-умолчаною для OpenSSH цигвиновского.

Можно из под MS Windows использовать putty совместно с cygwin. Зачем это надо не знаю :-), но что бы из putty запускать иксовые приложения, необходимо сделать следущее: указываем в hostname IP адрес линукса и в Connection-->SSH->Tunnels отмечаем чекбокс Enable X11 forwarding. Коннектимся и просто запускаем X приложения. Всё.

Из cygwin можно не только SSH использовать, для запуска X приложений, а ещё и обыкновенный телнет. Единственное, надо пользоваться телнетом из цигвина из пакета inetutils, а не майкрософтовским, т.к. последний падает при запуске из X-сервера.

Последовательность действий:

  1. В запущенном X-сервере в терминале делаем /usr/X11R6/bin/xhost remote_hostname_or_ip_address
  2. В терминале /usr/bin/telnet remote_hostname_or_ip_address. Путь к телнету указывать обязательно, см. выше.
  3. Логинимся к линуксу
  4. В телнетовской сессии набираем DISPLAY=windows_hostname_or_ip_address:0.0
  5. Далее: export DISPLAY
  6. Запускаем иксовые приложения.

Ну и дорогой вариант - citrix metaframe.

14.13 Как запустить X-сервер с другой машины по сети?

Для этого на машине, с которой вы собираетесь запускать X-сервер, должен работать xdm (или его ориентированные под kde или gnome аналоги - kdm или gdm).

Вам придется или запустить его вручную или сервер (машина с которой мы будем запускать X-сервер) должна изначально грузиться в графический режим (тогда xdm стартует автоматически).

На рабочей станции X-сервер должен быть правильно настроен.

Теперь на сервере надо привести в соответствие следующие файлы:

/etc/xdm/Xaccess здесь мы ничего не меняем

*               CHOOSER BROADCAST       #any indirect host can get a chooser

/etc/xdm/Xservers здесь мы ничего не меняем

:0 local /usr/X11R6/bin/X

/etc/xdm/xdm-config меняем одну строчку (ставим перед ней !)

! DisplayManager.requestPort:   0

/etc/xmd/kdmrc меняем один параметр (ставим true)

# Whether KDM should listen to XDMCP requests. Default is true.
Enable=true

X-сервер на клиенте запускается командой

user@localhost$ X --query server_with_xdm

Вот хорошая статья на эту тему http://linuxportal.ru/entry.php/P1318_0_3_0/

14.14 Можно ли запустить внутри иксов еще одни иксы?

Можно - воспользуйтесь xnest и переопределите для новых иксов переменную DISPLAY=":1"

Для чего это нужно? Например, для запуска игр, не работающих в оконном режиме.

14.15 Как сделать управление интерфейсом пользователя по типу radmin?

Смотрите вопрос Есть под linux какой-нибудь аналог radmin?

14.16 Как запустить X-вую программу по графику?

Указать в команде DISPLAY=:0, например, для at:

~/dozvon:

#!/bin/sh

wvdial &
DISPLAY=:0 nt

и запуск:

user@linux$ at -f ~/dozvon 0220

Означает исполнить в 02-20 wvdial и запустить на первом X-сервере nt.

В рабочей среде KDE существует графическая программа для запуска программ по времени - kalarm. Находится в Accessories->More Accessories.

14.17 Где хранятся настройки стандартных X-вых программ?

В /etc/X11/app-defaults.

Для того, чтобы настроить их под конкретного пользователя нужно в файле  /.Xdefaults или  /.Xresources прописать свои параметры, например для rxvt:

~/.Xdefaults:

# Запускать как логин-шелл, а не суб-шелл текущего
Rxvt*loginShell: true
# Шрифт
Rxvt*font: -monotype-courier new-medium-r-normal-*-*-180-*-*-m-*-koi8-r
# Цвет фона
Rxvt*background: black
# Цвет шрифта
Rxvt*foreground: gray
# Писать о логинах в системный лог, а не файл utmp.log
Rxvt*utmpInhibit: false
#
Rxvt*scrollBar_floating: true
#
Rxvt*iconName: rxvt
# Тип терминала
Rxvt*termName: xterm-color
# Сколько строк запоминать в буфер
Rxvt*saveLines: 1000
#
Rxvt*colorBD: red
#
Rxvt*colorUL: green
# Скролл справа
Rxvt*scrollBar_right: True
#
#Rxvt*backspacekey: Backspace
#
Rxvt*modifier: alt

Или еще пример:

user@linux# echo '*xmessage*Background:   cornsilk2' >> ~/.Xdefaults
user@linux# xrdb -load ~/.Xdefaults

14.18 Alt в xterm не работает. Как исправить?

~/.Xresources:

XTerm*eightBitInput: false
XTerm*metaSendsEscape: true 

14.19 Как сделать прокрутку колесиком мыши в Adobe Acrobat Reader?

В  /.Xdefaults пишем такие строчки:

AcroRead*XmScrollBar.baseTranslations: #augment \ 
<Btn4Down>: IncrementUpOrLeft(0)IncrementUpOrLeft(0)IncrementUpOrLeft(0) \n \ 
<Btn5Down>: IncrementDownOrRight(0)IncrementDownOrRight(0)IncrementDownOrRight(0) \n 

Неудобство будет одно - прокрутка идет только когда указатель мыши находится над полосой прокрутки. (Проблема в motif, который не работает с колесиком мыши).

14.20 У меня тормозят "иксы" (X-сервер, XFree86, xorg), что делать?

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

Если тормозит видеовывод - фильмы, игры, OpenGL только программный, значит у вас стоят стандартные драйвера под вашу видеокарту. Скачайте драйвера от производителя и установите их.

Для карт с чипом nvidia: TNT, TNT2, Geforce - http://www.nvidia.com/object/linux.html

Для карт с чипом ati: radeon - http://www.ati.com/support/driver.html, mach64 (например, ati 3d rage pro) смотрите здесь. Для не слишком новых карт (например, radeon 9200) есть открытые драйвера, которые работают не хуже, а подчас и лучше пропиетарных. Они входят в состав X-серверов.

Чтобы проверить, программный или аппаратный у вас OpenGL, выполните glxinfo. Если у Вас direct rendering: Yes, то OpenGL аппаратный. если direct rendering: No, то нет :) Также если glxgears выдает не менее 300 fps, то это также говорит об аппаратном ускорении (на GF2 MX400 1100-1300 fps)

Если тормозит сам оконный менеджер или оконная среда - поменяйте ее или попробуйте убрать все ненужные рюшечки и (для rpm-based дистрибутивов) пересобрать под свой процессор ядро, X-сервер, оконную среду и, возможно, программы, с которыми вы чаще всего работаете.

Как вариант, может тормозить не X-сервер, а вся система. Происходит это из-за того, что отключена поддержка DMA (т.е. нет поддержки чипсета матери).

14.21 У меня под root'ом 3D-ускорение работает, а под пользователем - нет.

Нужно добавить в XF86Config такие строчки:

XF86Config:

Section "DRI"
        Mode 0666
EndSection

или

Section "DRI"
        Group        0
        Mode         0666
EndSection

14.22 Как настроить двухколесную мышь?

http://linuxportal.ru/entry.php/P12_0_3_0

14.23 Как настроить многокнопочную мышь?

Этот документ должен помочь - http://forall.ru-board.com/Demetrio/lor/imwheel.txt

Спасибо Demetrio

14.24 Как настроить работу двойного клика на тачпаде?

Section "InputDevice"
    Identifier "Mouse1"
    Driver "synaptics"
    Option "Protocol" "auto-dev"
    Option "Device" "/dev/psaux"
    Option "MaxSpeed" "0.18"
    Option "MinSpeed" "0.02"
    Option "BottomEdge" "4000"
    Option "SHMConfig" "on"
# Option "Repeater"      "/dev/ps2mouse"
    Option "LeftEdge" "1900"
    Option "FingerLow" "25"
    Option "MaxTapTime" "180"
    Option "MaxTapMove" "220"
    Option "FingerHigh" "30"
    Option "VertScrollDelta" "100"
    Option "TopEdge" "1900"
    Option "RightEdge" "5400"
    Option "AccelFactor" "0.0010"
EndSection

14.25 Как регулировать скорость мыши в X-сервере (без KDE/GNOME/XFCE)?

xset m Х

где Х - желаемая скорость (обычно 4-6)

14.26 Какие трудности меня ждут при переходе с XFree86 на xorg? Будут ли работать пропиетарные драйверы для nvidia/ATI?

Трудностей особо никаких. Вы ставите свой xorg, затем заходите в /etc/X11 и переименовываете XF86Config в xorg.conf (или же делаете соответствующий симлинк).

Далее открываете этот файл на редактирование и в разделе описания клавиатуры меняете значение параметра Driver на kbd.

Если вы переходите на xorg версии 6.8.0 и выше, то можете закоментировать загрузку модуля Type1. Его функции взял на себя FreeType, а разработка и поддержка Type1 прекращена (пока что он оставлен для совместимости).

Драйверы NVIDIA работают как работают - с любыми версиями xorg. С драйверами ATI ситуация неоднозначная, но по последним сообщениям они работают с любым xorg.

14.27 Как включить аппаратную прозрачность в xorg-6.8.0 и выше?

Открываем /etc/X11/xorg.conf и добавляем такой кусок:

Section "Extensions"
    Option "Composite"
EndSection

Если карта nvidia или radeon 7x00,8x00,9100 с драйверами dri, то чтобы X-сервер не тормозил в раздел "Device" добавляем строчку

Option  "RenderAccel" "true"

Перезапускаем X-сервер.

Далее скачиваем из CVS две утититы - xcompmgr и transset - согласно данному руководству:

cvs -d :pserver:anoncvs@cvs.freedesktop.org:/cvs/xapps login
[Пароль не нужен, просто нажмите Enter]
cvs -d :pserver:anoncvs@cvs.freedesktop.org:/cvs/xapps co transset
cvs -d :pserver:anoncvs@cvs.freedesktop.org:/cvs/xapps co xcompmgr

Собираем их, Кстати, для alt linux есть соответствующие пакеты.

После этого запускаем xcompmgr -c и transset .5

Запуск xcompmgr обязателен. -с включает тени.

transset .5 - прозрачность. Небольшим курсором нужно отметить окно, которое вы хотите сделать прозрачным.

14.28 Как установить драйвер Nvidia? Где скачать драйвер nvidia?

  1. Скачиваем драйвер с сайта Nvidia (удивлены? :)
  2. Проверяем, установлены ли у нас исходники ядра (пользователи mdk версии выше 9.1 - скачайте kernel-???.src.rpm с одного из сайтов Mandrake, потому как в 9.2 исходников на дисках просто нет, а в версии 10 они на четвертом диске). Исходники должны лежать в районе /usr/src (у меня, например, /usr/src/linux-2.4.22) и в там же было бы неплохо сделать на них ссылку вида /usr/src/linux и /usr/src/linux-2.4
  3. Выходим из графического режима (из X-сервера). Комментарий для новичков: если вы грузитесь в Linux и у вас графическое приглашение к работе, то скорее всего у вас идет загрузка по пятому init-level. Если черный экран в текстовой консоли - то третий. Для третьего init-level - просто покидаем наш менеджер окон. Для пятого - исполняем с рутовыми правами команду
    root@linux# /sbin/telinit 3
    
  4. Оказавшись в консоли, получаем права рута (команда su -, если кто не знает). Исполняем инсталлятор, для чего либо сделаем файл исполняемым, либо наберем sh название_файла.
  5. Мы согласимся с условиями лицензионного соглашения, но откажемся от поиска драйвера в интернете. Дальше будет построен и загружен ядерный модуль, а драйверы скопированы.
  6. Ищем файл /etc/X11/xorg.conf, или /etc/X11/XF86Config, или /usr/X11R6/lib/X11/XF86Config-4 (смотрите сами, какой у вас используется). Исправляем в названии драйвера nv на nvidia (Driver "nvidia"), а из грузящихся модулей убираем GLcore и dri и добавляем glx. После данный действий у меня раздел Moduleвыглядит так:
    Section "Module"
            Load  "extmod"
            Load  "glx"
            #Load  "dri"
            #Load  "dbe"
            #Load  "GLcore"
            Load  "record"
            Load  "xtrap"
            Load  "v4l"
            #Load  "speedo"
            Load  "type1"
            Load  "freetype"
            SubSection  "extmod"
                    Option  "omit xfree86-dga"
            EndSubSection
    EndSection
    
  7. Делаем пробный запуск X-сервера:
    user@linux# X
    
    Если вы загрузились в графический режим (черный или серый экран с указателем мыши в виде креста), значит все в порядке. Выходим из него, нажав ctrl+alt+backspace. Далее в случае третьего init-level как обычно запускаете startx. В случае третьего - выполняете команду:
    user@linux# telinit 5
    
    Появится графическое приглашение к работе. Дальше - все как обычно.
  8. Если не все в порядке, внимательно смотрим лог /var/log/XFree86.0.log - тут уже все от вас зависит, но скорее всего ошибки связаны с несовпадающими в разных разделах идентификаторами.

Киноманы также могут посмотреть вопрос Как на NVidia настроить TV-Out так, чтобы фильм из mplayer выводился на TV, а монитор оставался свободным?

Для Suse все устанавливается через YAST.

14.29 Как собрать ядерный модуль драйверов Nvidia версий 1.6106 и 1.6111 к ядру 2.6.9 и старше?

Вообще-то для каждого дистрибутива этот вопрос решается по-своему. Где-то накладывают патчи на ядро, где-то на исходники nvidia.

Второй способ работает и для Fedora Core и для Gentoo:

14.30 Установил linux. Карта GeForce, монитор LCD с DVI - иксы не грузятся, что делать?

Смените драйвер nv на vesa. Потому что nv не поддерживает DVI.

14.31 Как установить драйвера ATI? Как настроить TV-OUT на видеокартах ATI?

В прошлый раз никто не видел ссылки на ресурс, где все это описано по-русски. Попробуем еще раз. Все, что вам нужно, это зайти на сайт Ati in Linux.

Но если у вас карта на старом чипсете mach64, то вам сюда.

14.32 Покажите мне конфиги обычных настроек TV-OUT на Nvidia/Ati!

Ну если они отсюда еще не пропали, то вот - ftp://ftp.kraft-s.ru/pub/linux/XFree86/TV-Out/

Спасибо AS.

15. Диски и файловые системы

15.1 Как записать компакт-диск (CD-R/CD-RW/DVD-RW)?

Можно записывать диск из консоли, можно воспользоваться программой с графическим интерфейсом. Во втором случае обычно используются программы K3B или XCDroast, отличающиеся дружественным интерфейсом, посему вопросов по их использованию почти не возникает.

Запись из консоли немного сложнее.

Для начала определимся - можно писать "налету", а можно сначала собрать образ, а потом записать его.

При работе с cdrtools, чтобы записать компакт-диск с русскими названиями файлов, чтобы MS Windows видела русские буквы, нужно собрать образ следующим образом:

user@linux$ mkisofs -jcharset koi8-r /one_of_your_folder | cdrecord -опции
или
user@linux$ mkisofs -r -jcharset koi8-r -o /path/to/image.iso  /one_of_your_folder 
user@linux$ cdrecord -опции /path/to/image.iso

Вышеприведенный пример работает для локали koi8-r. Если у вас иная локаль, подставьте свое название!

У mkisofs опция -o указывает файл, в который будет записан образ. Опция -r почти наверняка нужна, без нее диск будет *читабелен* только под MS Windows. Опция -J при использовании -jcharset не нужна. Параметр у опции -jcharset - это кодировка (набранная в нижнем регистре), в которой "хранятся" имена записываемых файлов. Список поддерживаемых кодировок можно узнать из вывода mkisofs -jcharset help.

После создания образа его нужно записать с помощью программы cdrecord. Например, так:

user@localhost$ cdrecord dev=1,1,0 -dao -v image.iso

Если вы хотите писать налету, то делаете простой pipeline:

user@linux$ mkisofs -v -jcharset koi8-r -r /one_of_your_folder | cdrecord -dao -v fs=6m speed=24 dev=1,1,0 -
Обратите внимание на "лишний" знак -. Он нужен для того, чтобы программа брала данные из потока, а не из конкретного файла.

Рекомендуем прочесть man cdrecord - там хорошее и подробное описание с объяснением команд.

15.2 Как сделать, чтобы mkisofs писал файлы вместе с папками, а не скидывал все в корень?

Чтобы mkisofs сохраняя структуру, например, папки images и htmls, выполните:

user@linux$ mkisofs -v -J -r -graft-points images=~/images htmls=~/htmls | cdrecord ...

15.3 Как сделать, чтобы русские имена файлов, записанные xcdroast/k3b правильно читались на MS Windows?

В xcdroast кодировка указывается в "Скомпоновать дорожки->Параметры ISO9660 закладка Входная кодировка". Выходную оставьте по умолчанию (default). Если при указании кодировки все равно русских букв в MS Windows не видно, (например, в RedHat 9 без обновлений), попробуйте обновить свой mkisofs.

В K3B такой проблемы при правильно настроенной локали не возникает. Но нужно при выставлении настроек записи отметить в закладке "Файловая система" галочки "Создать расширение RockRidge" и "Создать расширение Joliet", после чего нажать кнопку "Сохранить настройки пользователя" - тогда вам не придется делать это каждый раз.

15.4 Как снять образ с компакт-диска (CD/DVD)?

Воспользоваться командой dd, например

user@linux# dd if=/dev/cdrom of=cd.iso

снимает образ с cdrom.

Таким образом можно снять образ с любого раздела с любой файловой системой

Или поставить cdrtools и использовать readcd, например

user@linux# readcd dev=0,0,0 speed=16 -clone

Устройство вычисляется таким же образом, как и в cdrecord (cdrecord -scanbus)

Еще можно пользоваться командой cat:

user@linux# cat /dev/cdrom > ~/cdrom.iso

Графические программы XCDRoast и K3B тоже способны снимать имиджи.

15.5 Как смонтировать имидж компакт-диска? (Как получить доступ к содержимому образа в iso9660)?

Есть два способа - один простой, другой чуть сложнее :)

Для обоих в ядре нужна поддержка loopback

  1. root@linux# mount -o loop -t fstype x.img /mnt/x
    
    замонтирует образ x.img с файловой системой fstype в директорию /mnt/x.
  2. Через losetup можно ассоциировать образ с /dev/loopX:
    root@linux# losetup /dev/loop1 x.img
    root@linux# mount -t fstype /dev/loop1 /mnt/x
    
    после окончания работы:
    root@linux# umount /mnt/x
    root@linux# losetup -d /dev/loop1
    
    Этот способ дает возможность работать с образами, на которых несколько разделов - такое часто встречается у пользователей Apple. Для этого надо только знать смещение начала раздела, которое указывается параметром -o у losetup.

15.6 Как смонтировать имидж в формате .img, .bin .cue или .nrg? Как сконвертировать имидж из формата .img, .bin .cue или .nrg в iso9660?

Для начала давайте разберемся с форматами.

Формат .img понятие относительное, потому что в .img пишет и Nero и K3B, но в случае K3B это обычный iso9660 (часто такие файлы имеют расширения .iso).

Закрытые форматы .bin или .cue можно сконвертировать с помощью программы bchunk.

Формат .nrg можно сконвертировать с помощью программы nrg2iso. На сайте помимо исходников есть rpm.

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

15.7 Как считать файлы с битого компакт-диска?

Если на диске фильм, например, и потеря некоторых данных не критична, можно снять образ с него вот такой командой:

user@linux# dd if=/dev/cdrom of=~/cd-image.iso bs=4b conv=noerror

Или подробнее,

user@linux# dd if=/dev/cdrom of=~/cd.iso conv=noerror,sync
user@linux# mkdir ~/iso
root@linux# mount -o loop ~/cd.iso ~/iso
user@linux# cp ~/iso/ruleznyi_film.avi ~
root@linux# umount ~/iso
user@linux# del cd.iso
user@linux# mplayer -ao arts ~/ruleznyi_film.avi

Также можно использовать recoverdm ( http://www.vanheusden.com/recoverdm), sdd ( http://freshmeat.net/projects/sdd), readcd из пакета cdrtools.

Для надежности можно выставить скорость чтения с CD-ROM поменьше.

15.8 Как проверить читаемость записанного компакт-диска?

15.9 Как мне установить скорость CDROM?

Если это IDE-устройство и не используется ide-scsi (в ядрах 2.4 для записи CDR/RW), то можно пользоваться hdparm (команда -E):

root@linux# hdparm -E 8 /dev/cdrom

Аргумент команды -E - желаемая скорость (в данном случае 8x)

Вместо hdparm можно использовать eject:

eject -x 8 /dev/cdrom

Если CDROM SCSI-устройство или используется ide-scsi, то hdparm не сработает. В этом случае можно попробовать программу cdspeed ( http://linuxfocus.org/~guido). Она работает с любым CDROM (IDE/SCSI), но часто сбрасывается при remount :(

Использование:

root@linux# cdspeed -s 8 

Cкорость 8х, устройство по умолчанию /dev/cdrom, если устройство, например, /dev/hdc, то:

root@linux# cdspeed -s 8 -d /dev/hdc

Появились сообщения о том, что программа не работает с приводами, подключенными по USB.

15.10 Что где должно "лежать" в системе?

Возможно, поможет `man hier`. Если нет - Filesystem Hierarchy Standard

15.11 Чем и как создать/"отформатировать" разделы под linux?

В любой дистрибутив входит программа fdisk. После создания раздела нужно создать файловую систему (то, что в MS Windows называется "отформатировать"). Делается это с помощью программы mkfs.* Вместо * идет название файловой системы. Например:

 
mkfs.ext3
mkfs.vfat
mkfs.reiserfs

15.12 Я поменял локаль и все русские названия файлов на ext3 (по вкусу) стали нечитаемыми. Как перекодировать?

Обычно мучаются при переходе с utf8 на koi8-r и наоборот. Есть специальная програмка на эту тему. convmv. Она точно работает.

Есть еще скрипт, но работает он или нет - не в курсе. Если кто рискнет проверить - сообщите о результатах. http://linux.alhimia.ru/projects/bash-scripts/NLS_repair/.

15.13 Как перекодировать русские названия файлов в транслит?

A: Нужна программа translit и 2 нижеуказанных скрипта. http://rpm.pbone.net/index.php3/stat/4/idpl/423272/com/translit-1.03-1.i386.rpm.html

$ cat tr-walker.sh
----------------------------------------
#!/bin/bash
TPWD=`pwd`

`/usr/local/bin/mp3-translit.pl`;

for f in *; do
    cd "$TPWD/$f";
    TTPWD=`pwd`
    echo "Converting: $TTPWD";
    `/usr/local/bin/mp3-translit.pl`;
    cd "$TPWD";
done

$ cat mp3-translit.pl
--------------------------------------
#!/usr/bin/perl -w

use strict;

use File::Copy;

my $dirName=$ARGV[0];
$dirName ||='.';
my $file='';
my $cnt=0;
opendir(DIR, "$dirName") or die "Can't opendir $dirName: $!";
while (defined($file=readdir(DIR))) {
    next if $file=~/^\.\.?$/;
    my $trFile=getTRname($file);
    if (-f $file) { `chmod 0644 "$file"` };
    if (-d $file) { `chmod 0755 "$file"` };
    move("$dirName/$file","$dirName/$trFile");
}

closedir(DIR);

sub getTRname {
    my $input=$_[0];
    my $trFile=`echo "$input" | iconv -f UTF-8 -t KOI8-R  | translit koi8-phg.rus`;
    $trFile=~s/[^a-zA-Z0-9\_\-\.\ ]//gs;
    $trFile=~s/\.+/\./g;
    $trFile=~s/\ /_/g;
    $trFile=~s/\_+/\_/g;
    $trFile=~s/\-+/\-/g;
    return $trFile;
}

15.14 Как посмотреть раздел ext2/ext3 под MS Windows?

Для NT и win 9.x - explore2fs: http://uranus.it.swin.edu.au/~jn/linux/

ext2 драйверы:

http://sourceforge.net/projects/ext2fsd/

http://sourceforge.net/projects/winext2fsd/

Plug-in под TotalCommander для ext2 и reiserfs - http://www.ghisler.com/plugins.htm

15.15 Как увидеть раздел ReiserFS из-под Windows?

Зайдите сюда - http://p-nand-q.com/download/rfstool.html

15.16 Как правильно смонтировать CD-ROM?

В /dev можно сделать ссылку c названием cdrom на /dev/hdx, где x - IDE-устройство. Для scsi-устройств, или ide, работающих в режиме эмуляции scsi это может быть scd0.

/etc/fstab:

/dev/cdrom /mnt/cdrom iso9660 user,unhide,noauto,owner,ro,users,iocharset=koi8-r 0 0

После этого cdrom можно монтировать командой mount /dev/cdrom.

Если используемая locale utf8, а не koi8-r, то iocharset=utf8.

15.17 Как правильно смонтировать FAT-раздел?

Добавить в /etc/fstab запись вида

/dev/hda1 /mnt/dos vfat iocharset=koi8-r,codepage=866,nouser,suid,rw,umask=000,showexec,quiet 0 0

Где, /dev/hda1 - /это FAT-раздел, а koi8-r - используемая в вашей системе локаль. Если локаль другая, пропишите ее!

Для suse все нужно сделать через YAST.

15.18 Все файлы на FAT-разделе отображаются исполняемыми, noexec тоже не помогает. Как это убрать?

В данном случае noexec не поможет, добавьте в /etc/fstab параметр showexec

15.19 При копировании файлов на раздел fat32 mc выдает сообщение об ошибке, но файлы копирует. Что делать?

Посмотреть как этот раздел прописан у вас в fstab - не хватает параметра quiet. Пример строчки здесь.

15.20 Есть раздел под NTFS, как мне его увидеть из-под Linux? Могу ли я писать на NTFS?

Прописываем в /etc/fstab строчку вроде

для локали koi8-r:

/dev/hda1 /mnt/disk_c ntfs dmask=0,fmask=0111,iocharset=koi8-r,ro 0 0
для локали utf8:
/dev/hda1 /mnt/disk_c ntfs dmask=0,fmask=0111,utf8,ro 0 0

где /dev/hda1 - название вашего диска, а /mnt/disk_c - каталог, который вы под него создали. В новых ядрах вместо "iocharset=..." лучше использовать "nls=...".

В ядрах дистрибутивов RedHat по умолчанию поддержка NTFS не собирается. Поэтому нужно зайти в любой репозиторий дополнительных программ и скачать пакет с поддержкой под свое ядро или собрать ядро самостоятельно, включив поддержку.

Настроить sudo на предмет разрешения вызова mount/umount с определёнными параметрами.

Начнем с того, что это опасно и вы можете повредить свои данные на NTFS. Не говорите, что не предупреждал. Существует три способа:

15.21 Как перейти с ext2 на ext3?

Собираем ядро с поддержкой ext3. Если ext2 была жестко вкомпилена в ядро (т.е. не модулем и вы не пользуетесь initrd), то так же собираем ext3.

Грузимся, в /etc/fstab пишем вместо ext2 ext3. Затем перегружаемся и грузимся с компашки (можем не перегружаться и просто смонтировать систему в read only) и даем команду вроде этой:

root@linux# tune2fs -j /dev/hda1

(hda1 - меняете на свой раздел). Перегружаемся. Если все работает, собираем ядро без поддержки ext2 - она не нужна.

15.22 Как без потери данных перевести раздел с ext3 на reiserfs, reiserfs на ext3, xfs на raiserfs и т.п.

Вы уже догадались? НИКАК. И об этом написано в руководстве к тому же reiserfs, которое вы не читали. Переход с fat32 на ntfs на живом разделе обусловлен лишь тем, что ntfs специально писали с этим расчетом. Но никто не будет портить новую файловую систему лишь для того, чтобы оставить совместимость.

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

Если кто-то узнает информацию о переходе с reiserfs3 на reiserfs4, пишите.

15.23 Как восстановить удаленный файл на ext2 (возможно 3)

Можно почитать об это здесь

И попробовать утилиту testdisk

15.24 Как восстановить таблицу разделов?

Попробовать утилиту gpart. Пользуйтесь очень осторожно.

15.25 Проверил ext3 с помощью e2fsck на разделе, смонтированном на запись. Утилита нашла кучу ошибок и вроде как их исправила. Когда я зашел на диск, оказалось, что половины файлов нет, у папок поменялись названия и т.п. Как все исправить?

Долго исправлялось? Тогда уже, наверно, никак. Можно глянуть предыдущий вопрос, может что выйдет.

15.26 Как подмонтировать одну директорию к другой?

Для Linux:

root@linux# mount --bind src_dir dest_dir

Для FreeBSD:

root@freebsd# mount -t union src_dir dest_dir

Размонтировать соответственно можно комадной

root@linux# umount dest_dir

15.27 Как создать жесткую ссылку на директорию?

Согласно man ln можно:

В существующих реализациях, если команда ln может создавать жесткую ссылку на каталог, то она может это делать только от лица суперпользователя. POSIX запрещает системному вызову link(2) и утилите ln создавать жесткие ссылки на каталоги (но не запрещает создавать жесткие ссылки на файлы, которые находятся на других файловых системах).

Директории также можно примонтировать одну к другой).

15.28 Чем проверить жесткие диски на наличие плохих секторов (badblocks)?

В состав e2fsprogs входит программа badblocks. Можно сразу использовать ее. И есть специальный скрипт, написанный под эту программу.

15.29 Как пометить плохой сектор на жестком диске?

Запустить программу проверки fsck с ключом -c.

Внимание! Никогда, ни при каких обстоятельствах, не проверяйте смонтированные разделы!

15.30 Как сделать так, чтобы при подключении нового винта система автоматически его монтировала?

Воспользоваться скриптом hdmount проекта Алхимия (я, jackill, им сам пользуюсь и уже давно).

16. Admin

16.1 Как перейти на ядро 2.6? У меня не грузятся модули на ядре 2.6, проблемы ядер 2.6 (QM_MODULES)

Читаем

http://fine.kalinovka.net/index.php?name=PagEd&topictoview=11

http://www.mojoholder.narod.ru

http://www.fedoranews.org/jorge/howto/howto01.shtml

16.2 Как провести тонкую настройку использования памяти?

Помогут эти статьи:

Описание параметров и значений О выставлении параметров

16.3 Как сделать, чтобы линукс на ядре 2.6 не так интенсивно использовал файл подкачки (swap)?

Указать где-нибудь при загрузке (например, в /etc/rc.d/rc.local):

echo 20 > /proc/sys/vm/swappiness

Изменять параметр swappiness также можно через интерфейс /etc/sysctl

Ключ называется vm.swappiness

На машинах, выполняющих, например, кодирование видео, можно порекомендовать значение 0, поскольку во-первых, это более отвечает поведению ядра 2.4, а во-вторых позоляет избежать так называемой пробуксовки, когда постоянно активен процесс своппинга. Единственное исключение - машины с менее чем 128М памяти.

Есть еще ключ vm.vfs_cache_pressure, который рекомендуется повысить хотя бы до 1000

Тем, кому интересно, могут прочитать обсуждение на lkml: http://kerneltrap.org/node/view/3000

А также обсуждения патча Con Kolivas'а по регулированию этого параметра "на лету" http://kerneltrap.org/node/view/1044.

За дополнение спасибо annoynimous.

16.4 Как собрать программу из исходников?

Обычно -

root@linux# ./configure
root@linux# make
root@linux# make install

Если после любого из пунктов возникли сообщения об ошибках, значит не все вышло так, как хотелось. Можно попробовать `./configure --help` для вывода опций настройки и попробовать использовать некоторые из них.

Поскольку при таком способе установки информация о том, что ставилось и куда, остается только в памяти админа (которая частенько еще какая временная :), лучше для контроля этого процесса использовать checkinstall - http://checkinstall.izto.org, или похожие программы.

После того, как вы ее установите (прочитав документацию) и настроите ее конфиг, на этапе установки программного обеспечения вместо sudo make install будете писать sudo checkinstall. Checkinstall соберет "настоящий" пакет для указанной (tgz, rpm и deb в зависимости от настроек), установит его в систему и поместит в указанный в конфигурационном файле каталог (удобно для централизованного обновления нескольких машин). Удаление установленных таким образом программ осуществляется стандартными средствами дистрибутива, например, removepkg для Slackware.

Также будет полезным прочитать о том, как уменьшить размер бинарных файлов.

16.5 Как удалить программу, собранную из исходников?

A: Это неоднозначный вопрос. Дело в том, что если вы просто собрали программу с помощью

root@linux# ./configure
root@linux# make
root@linux# make install

то все зависит лишь от того, позаботился ли автор об удалении.

Для того, чтобы удалить программу, нужно зайти в каталог ее исходников, из которого она собиралась, и сделать make uninstall.

Если каталог не сохранился, распакуйте исходники, сделайте ./configure с теми же параметрами, с которыми собирали программу, и выполните make uninstall.

А чтобы не полагаться на приличия автора, рекомендуется посмотреть предыдущий вопрос,

Внимание: в rpm-based дистрибутивах собирайте программы из srpm или с использованием spec-файлов (для создания rpm). Не превращайте свою систему в помойку из программ.

16.6 Ставлю программу в rpm, а она не ставится, rpm висит или выдает ошибку обращения к базе. Как лечить?

Лечить достаточно просто.

  1. Логинимся под root'ом.
  2. Заходим в /var/lib/rpm и удаляем файлики __db.001, __db.002 и __db.003.
  3. После чего даем команду rpm --rebuilddb

16.7 Помогите собрать ядро

Помогаем:

Хорошая, свежая документация

Русское пошаговое описание для новичков

Если у вас rpm-based дистрибутив, тогда прочитайте сначала этот вопрос.

16.8 При сборке ядра `make menuconfig` ругается, что ncurses не установлен.

Установите ncurses-devel (ncurses-dev) или как он там называется в вашем дистрибутиве.

16.9 Собрал ядро. Запускаю. Kernel panic: no init found. или Unable to find root fs. Что делать?

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

1-й случай. Смотрим как собрали поддержку корневой файловой системы. Если она собрана модулем, то у вас должен быть создан initrd (и лежать в папке /boot) и прописан в вашем загрузчике. Данный файл должен создаваться на новое ядро ЗАНОВО!

В загрузчике запись об initrd выглядит примерно так для lilo:

/etc/lilo.conf:

initrd = /boot/initrd-2.6.3-prep5.img

и так для grub:

initrd /boot/initrd-2.6.3-prep5.img

Дело в том, что в этом файле находятся модули ядра и при загрузке ядро в состоянии обратиться к ним в отличие от модулей, что лежат в /lib и не могут быть подключены, т.к. ядро не видит раздел (потому что нет соответствующего модуля - замкнутый круг).

2-й случай. Тут все несколько сложнее. Дело в параметрах загрузчика. Если вы собираете поддержку корневой файловой системы не модулем, то не нужно передавать ядру параметр root=/ или root=LABEL=/ (кстати, root можно прописать отдельно, а не как параметр, например, так: root = /dev/hda2 ) - все эти вещи нужны системе, чтобы нормально запуститься после установки.

Для grub стоит проверить правильность записи о рутовом разделе, т.е. наличие строчки вроде такой:

root (hd0,1)

Если вы собираете поддержку корневой файловой системы модулем, а эти строчки прописаны, значит скорее всего не прописан initrd (или он старый и в нем нет или не грузится данный модуль).

Общий совет: Если вы не собираетесь таскать систему с винта на винт, проще собрать поддержку корневой файловой системы в ядре и обойтись без указывания корневого раздела (root =) и создания и использования initrd.

16.10 Драйверы под мое устройство есть только под ядро 2.2, а под 2.4 таких же нет, что делать?

Зайдите на http://mcmcc.bat.ru/fedora/#12.1

Примерчик работы того же - http://www.linux.org.ru/view-message.jsp?msgid=318591

16.11 Как накладывать патчи? Как накладывать патчи на ядро? (patch, diff)? Как убирать патчи?

Вообще было бы неплохо просто сделать man patch и все стало бы ясно (кстати, сделайте). А как накладывать патчи на ядро написано в самом README к ядру. Тем не менее.

Несжатый патч

patch -p1 < my_patch.patch

p1 - уровень. Т.е. я захожу в каталог, где непосредственно находятся нужные мне файлы, копирую туда патч и оттуда запускаю эту команду.

p0 - нулевой уровень вложенности

Сжатый патч

Это патчи вида mypatch.gz и mypatch.bz2, соответственно:

bzip2 -dc mypatch.bz2 | patch -p0
gzip -cd mypatch.gz | patch -p0

Чтобы убрать патч, нужно добавить в команду patch ключик -R

16.12 Нужно ли накладывать промежуточные патчи на ядро?

Пример. Есть ядро версии 2.6.6. Надо получить ядро 2.6.9. Нужно ли накладывать ли patch-2.6.7 и patch-2.6.8? Нужно.

16.13 Где взять патч на SUPERMOUNT?

Это ссылка на домашнюю страницу проекта, однако она какая-то мертвая.

Зато очень живая страница товарища Con Kolivas. В своих патчсетах он использует supermount. И все, что он использует, можно по отдельности забрать отсюда.

16.14 Где узнать список параметров, которые можно передать ядру при загрузке?

man bootparam

16.15 Как включить acpi в lilo или grub?

Передать параметр acpi=force. Для систем с Hyper Threading или многопроцессорных лучше передать параметр acpismp=force. Например, для lilo:

image=/boot/vmlinuz-2.4.22-1.2135.2
        label=Stable
        read-only
        append="hdc=ide-scsi acpi=force"

Для grub

title Fedora Core (2.6.8-1.598)
        root (hd0,1)
        kernel /vmlinuz-2.6.8-1.598.2 ro acpi=force

16.16 Как узнать параметры, которые можно передавать модулю?

root@linux# modinfo module_name

16.17 Как устанавливать/загружать модули?

 
user@linux$ man insmod
user@linux$ man modprobe
user@linux$ man modules.conf

ну и

 
depmod -A

Кроме информации о авторе, лицензии и проч., если модуль может принимать некие параметры, они будут описаны строками вида

parm:       debug int, description "3c59x debug level (0-6)"
parm:           ...
parm:           ...

16.18 Почему после сборки через `./configure; make; make install` у программ получается большой размер?

По умолчанию программы собираются с отладочной информацией. Это, соответственно, увеличивает их размер, но на быстродействие и занимаемую оперативную память не влияет.

Можно собрать программу без отладочной информации, указав

./configure --disable-debug

Удалить секции с отладочной информацией из уже собранной программы можно командой

user@linux# strip progfile

Посмотреть, что вышло можно командой

user@linux# file progfile

она напишет - stripped или not stripped.

Можно сделать более правильно:

find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 
find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded

16.19 Что делать если configure говорит, что xxx не установлен, а на самом деле он установлен?

Для сборки нужны заголовочные файлы(headers). Во многих дистрибутивах библиотеки(программы) поделены на два пакета - xxx и xxx-devel(rh-based) и xxx-dev(debian).

Соответственно нужно поставить xxx-devel (xxx-dev).

Примечание - в пакетах Slackware всё вместе (ну, кроме xfree86-devel).

16.20 Какой командой собираются rpm из src.rpm (srpm)?

Для redhat < 8.0, ASP Linux < 9 и Mandrake -

root@linux# rpm --rebuild название_пакета.src.rpm

Для redhat > 8.0, Fedora Core и ASP Linux = 9 -

root@linux# rpmbuild --rebuild название_пакета.src.rpm

Если вместо ожидаемого результата, на экран выводится список параметров командной строки, нужно установить rpm-devel. Ну а если все получилось, то пакеты будут лежать в /usr/src/название_дистрибутива/BUILD/название_архитектуры_процессора, например

/usr/src/redhat/BUILD/i386.

16.21 Как правильно собрать Gnome из исходников?

Порядок действий описан здесь http://www.karubik.de/gig

16.22 Как собрать KDE из исходников?

Есть два варианта. Можно собрать KDE, используя утилиту konstruct.

Можно собрать из исходников. Порядок описан здесь.

Вкратце:

  1. Проверяете требования к собираемой вами версии на www.kde.org
  2. Собираете в такой последовательности:
  3. Далее можно собирать как угодно (если обратного не требует пакет)

16.23 Как обновить glibc в rpm-based дистрибутиве?

Обновляем следующие пакеты (версии взяты для примера):

Если вы планируете собирать программы:

Вообще, обычно умные люди делают сначала `rpm -qa | grep glibc`, дабы посмотреть, какие пакеты из glibc у них установлены, а потом уже их обновляют.

После этого, можно смело перегружаться.

Примечание - бывает, что сначала требуется обновить rpm, к rpm вполне возможно потребуется обновление db4 и cpio и точно придется обновлять popt. Например, при обновлении последних glibc под RedHat.

16.24 Можно ли поставить дистрибутив xxx на SATA?

Скорее всего можно, если ядро дистрибутива не ниже 2.4.22

Рекомендуется прочитать статью о том, как поставить ASP Linux на SATA и проверить список поддерживаемого оборудования

16.25 Как найти нужный файл в кучах rpm?

Можно вот так:

user@linux# for i in *.rpm; do rpm -qpl $i | grep /filename >/dev/null 2>&1 && echo $i; done

или (говорят, быстрее)

user@linux# find -name '*.rpm' | xargs rpm -qpil | sed -ne '/^Name/h;/filename/{H;x;p;}' | uniq

16.26 Как создать загрузочную дискету?

Воспользоваться программой mkbootdisk

16.27 Как отформатировать дискету?

Воспрользоваться программой fdformat. Пользователи KDE могут использовать программу KFloppy.

16.28 Как настроить samba? Как сделать, чтобы в ресурсах samba были видны русские буквы?

Настройка samba

Для простой одноранговой сети пример файла настроек samba (/etc/samba/smb.conf) можно скачать здесь.

Из примера должно быть понятно, как сделать доступными свои ресурсы.

Русский язык

Чтобы русские названия файлов отображались правильно, ядро должна быть собрано с определенными параметрами:

File systems -> Network File Systems

<M> SMB file system support (to mount Windows shares etc.)
[*]   Use a default NLS
Default Remote NLS Option: "cp866"

Иными словами:

CONFIG_SMB_FS=m
CONFIG_SMB_NLS_DEFAULT=y
CONFIG_SMB_NLS_REMOTE="cp866"

(проверялось на ядрах серии 2.4.х и 2.6.х)

Далее собираем Samba с поддержкой locales. Для третьей Samba может потребоваться установить libiconv. При этом вторая Samba соберет себе файлы кодовых страниц в /$PREFIX/share/samba/codepages.

Затем в конфигурационном файле samba (для RedHat-подобных систем это /etc/samba/smb.conf) пишем

для samba 2.2.x:

character set = KOI8-R
client code page = 866

для samba 3.x.x:

unix charset = KOI8-R
display charset = KOI8-R
dos charset = 866

Если локаль не koi8-r, а utf8, то в вышеприведенных примерах поменяйте koi8-r на utf8.

Как просмотреть чужие ресурсы Теперь, чтобы получить доступ к ресурсам сети MS Windows, ресурс можно "подмонтировать" (прямо как NFS, только опций больше):

root@linux# mount -t smbfs -o fmask=666,dmask=777,rw,iocharset=koi8-r,codepage=cp866 //winmachine/share /mnt/smb/share

или

user@linux# smbmount //winmachine/share /mnt/smb/share -o iocharset=koi8-r,rw,codepage=cp866,username=your_name,password=your_password

Если ваша локаль не koi8-r, то поставьте в iocharset свою локаль.

Чем можно просмотреть "Сетевое окружение" и смонтировать ресурсы с другой машины смотрите здесь.

Как сделать это из консоли, читайте здесь.

16.29 Не получается смонтировать ресурсы сервера MS Windows 2003 в домене. Что делать?

Сначала собираем в ядре поддержку Client VFS (CIFS):

CONFIG_CIFS=m
# CONFIG_CIFS_STATS is not set
CONFIG_CIFS_XATTR=y
CONFIG_CIFS_POSIX=y

Затем нужно обновить samba до версии минимум 3.0.7.

Монтируются ресурсы командой mount.cifs

16.30 Как соединить MS Windows (hyperterminal) и linux по телефонной линии?

Воспользоваться программой minicom.

Если под MS Windows мы делаем HyperTerminal->Call->телефон, то в minicom просто набираем ATDP телефон (для импульсных линий) или ATDT телефон (для тоновых).

Протокол подключения называется zmodem.

16.31 Как соединить два компа через компорты?

Выполняем на первой машине:

pppd /dev/ttyS0 115200 local nocrtscts nocdtrcts noxonxoff 192.168.0.1:192.168.0.2 netmask 255.255.255.252 noauth

на второй машине:

pppd /dev/ttyS0 115200 local nocrtscts nocdtrcts noxonxoff 192.168.0.2:192.168.0.1 netmask 255.255.255.252 noauth

Получаем локалку со всеми вытекающими.

16.32 Как настроить подключение к Microsoft VPN Server?

Прочитайте об этом - http://www.nixp.ru/cgi-bin/go.pl?q=articles;a=ms_vpn_client, http://fine.kalinovka.net/modules.php?op=modload&name=News&file=article&sid=3

16.33 Какой выбрать сервер VPN?

Вот здесь лежат ссылки на статью, сравнивающую функциональность различных VPN-серверов, а также ведущая на небольшие статьи со ссылками на полную документацию к большинству основных дистрибутивов. Не везде документация свежая, но в сочетании с манами по ней можно легко настроить нужное вам решение.

16.34 Как настроить шифрование в pptp, если сам он уже работает?

Найти и скачать пакет kernel_ppp_mppe http://sourceforge.net/project/showfiles.php?group_id=44827&package_id=120221&release_id=244156 или патчик в ядро http://www.polbox.com/h/hs001/ (тогда его придется пересобирать).

Узнать, поддерживает ли твой pppd mschap v2. Наверно нет. Наверно стоит сходить на mcmcc.bat.ru - там они вроде патченные. Или опять же скачать патчик.

Добавим в /etc/modules.conf строчку

alias ppp-compress-18 ppp_mppe_mppc 

А в /etc/ppp/options.pptpd запишем

 
lock 
require-mppe 
require-mschap-v2 

Остальное в меру своей испорченности - у меня (jackill), например, прописан плагин к радиусу.

Далее заходим в наши винды, во вкладку соединения, там выставляем "дополнительные" параметры вместо всяческих типовых и отмечаем mschap v2. Галочку с mschap (который первой версии) убираем, иначе не будет подключаться.

16.35 Как из консоли установить дату/время?

man date

Простой пример

root@linux# date --set 4/13/2004 
root@linux# date --set 14:46:27

16.36 Хочу синхронизировать время с серверами времени в интернете. Как это сделать?

Довольно просто - берем пакет ntp и устанавливаем себе на машину. В большинстве дистрибутивов (Fedora Core, Mandrake, SuSe) он поставляется сразу.

Список серверов можно взять здесь:

16.37 Как узнать, какое приложение заблокировало файл/директорию/раздел?

Вообще-то `man lsof`, `man fuser` :)

Например, команда

user@linux# lsof|grep /home

покажет все открытые файлы в каталоге /home. А команда

root@linux# fuser -km /home

Завершит выполнение всех процессов, работающих с файловой сисмемой /home. Будьте внимательны, если /home является не отдельной файловой системой, а частью корневой, то результат может превзойти ваши ожидания :)

16.38 Что это за ошибка - "Segmentation fault"?

По смыслу очень похоже на "Access violation at adress[0000:0000]" и т. д. в другой довольно популярной ОС. Причина - приложение сделало попытку выйти за пределы сегмента.

Если есть исходные коды программы, можно попробовать пересобрать ее, включив отладочную информацию, может повезет узнать больше.

Если есть только бинарник, можно поставить gdb, запустить `gdb program` и в приглашении сказать run. Если выполнение программы останавливается - пишите next. Ну и читайте, что пишет.

16.39 Будут ли работать бинарные пакеты из другого дистрибутива?

Будут, но вы должны точно знать, что вы делаете.

Самое большое препятствие при запуске - системный уровень. Однако встречаются такие вещи редко. Например, кардинальное изменение, внесенное в glibc, с которым собраны все программы, сильно измененное ядро.

Самое маленькое, но часто встречающееся препятствие - это нехватка библиотек, а точнее библиотек нужной версии.

Проще всего поставить программу и проверить, будет ли она работать. Если она попросит какие-либо библиотеки, нужно их доставить, причем желательно из своего дистрибутива (в крайнем случае, собрать посвежее те, что нужны).

Если у вас rpm-based дистрибутив, то вы должны быть готовыми к тому, что зависимости не будут выполняться. Дело в том, что почти все дистрибутивы используют свою систему наименования пакетов и, например, пакет a52dec в redhat называется liba52dec в mandrake. Бояться этого не нужно. Максимум, у вас будет ругаться apt (если вы его используете).

В общем случае хватает, чтобы версии требуемых библиотек были приблизительно такими же, как у вас в системе. Например, программы из alt linux легко работают в asp linux или fedora core несмотря на разные версии базовой системной библиотеки glibc.

16.40 Подключаюсь к интернету по модему. Соединение проходит, но ни один браузер не может ничего открыть. Что делать?

Нет маршрута по умолчанию или проблема с файрволлом.

Скорее всего это первая проблема. Попробуйте выполнить в консоли

root@linux~:# route add default ppp0

Если все заработало, то поставьте себе эту строчку в /etc/ppp/if-up.local

На всякий случай проверьте скрипт if-up - в старых дистрибутивах иногда отсутствовал вызов if-up.local. Строчка там должна быть примерно такой:

 
[ -x /etc/ppp/ip-up.local ] && /etc/ppp/ip-up.local "$@"

Возможно, что у вас в /etc/resolv.conf не прописаны dns-серверы провайдера. Пропишите.

16.41 Как узнать, подключен ли сетевой кабель?

user@linux:~$ /sbin/mii-tol
eth0: negotiated 100baseTx-FD, link ok

где link ok - подключен.

16.42 etho смотрит в сеть 10.0.0.0, eth1 смотрит в 192.168.0.0. Как создать маршрут, чтобы машины из сети 192* видели сеть 10*?

root@linux:~# route add -net 10.0.0.0 netmask x.x.x.x dev eth0 
root@linux:~# route add -net 192.168.0.0 netmask y.y.y.y dev eth1 
root@linux:~# echo "1" > /proc/sys/net/ipv4/ip_forward

Чтобы последняя команда выполнялась на старте, в fedora core нужно выставить 1 на одноименном параметре в /etc/sysctl.conf, а в redhat 7.3 - 9 в /etc/sysconfig/network.

netmask обычно 255.255.255.0

16.43 Как сделать прозрачный мост?

Попробовать воспользоваться how-to для debian http://fssg.st-oskol.ru/doc/how-to/bridging_in_Debian/bridging_in_Debian.html#toc6

16.44 Как мне защитить свою домашнюю машину под управлением ОС Linux от атак из интернета и из локальной сети?

Это очень обширная тема, в силу чего я не очень хотел бы помещать такие вопросы тут, но вот кратенько об основном:

#!/bin/bash

for table in INPUT OUTPUT FORWARD ; do
        iptables -P $table DROP
done

iptables -A INPUT -p TCP -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -p ALL -j ACCEPT

Этими командами мы разрешаем выход в мир с нашей машины и запрещаем все отстальное. Обычно, такой скрипт называется /etc/rc.d/rc.firewall и запускается из стартовых скриптов (например, /etc/rc.d/rc.local.

Для более подробного ознакомления с возможностями iptables следует почитать хотя-бы это - http://www.opennet.ru/docs/RUS/iptables/index.html.

16.45 Как поместить линукс на USB-flash?

Пошаговая инструкция здесь http://www.opennet.ru/base/sys/usb_flash_boot.txt.html

Там же можно узнать об оптимизации вашего линукса для работы с USB-flash.

16.46 Поставил MS Windows (98, ME), как теперь вернуть загрузку Linux? Как восстановить загрузчик?

Обычно грузимся с первого диска. Выбираем помощь. Смотрим, как загрузиться в спасательный режим (rescue mode). Для redhat, например, нужно в строке boot: набрать linux rescue. После загрузки читаем что пишется. ВНИМАТЕЛЬНО. Может быть у вас такой хороший дистрибутив, что нашел ваш корневой раздел и примонтировал его куда-нибудь (например, в /mnt/sysimage).

Подсказка: Если этого не произошло, заходим в /mnt и монтируем свой корневой раздел в любую пустую папку (я думаю, вы знаете, где у вас корневой раздел). Например, mount /dev/hda2 /mnt/sysimage.

После чего выполняем chroot /mnt/sysimage. (Еще раз - если корневой раздел примонтирован сюда).

Теперь вспомним, какой у нас загрузчик - grub или lilo (у любителей экзотики может стоять Anacronis OS Selector).

Для lilo:

Если у нас и раньше стоял MS Windows (и вы его просто переставили), тогда просто выполняем lilo и перегружаемся. Если раньше MS Windows не стоял, запускаем mc, открываем файл /etc/lilo.conf, добавляем нечто вроде

 
other=/dev/hda1
       optional
       label=Windows

/dev/hda1 - это раздел с MS Windows. Указываете свой (см. соответствующий вопрос).

Сохраняем файл. А дальше, естественно, выполняем lilo.

Для grub:

Если у нас раньше стоял MS Windows (и вы его просто переставили), тогда выполняем grub, а затем в его консоли пишем:

 
grub> root (hd0,0)
grub> setup (hd0)
grub> quit

где hd0 - ваш диск. Первой строчкой мы указываем раздел, где размещается /boot, второй устанавливаем загрузчик в MBR, а третьей - выходим из консоли загрузчика.

Если они не стояли, добавляем в файл /etc/grub.conf (или /boot/grub/grub.conf) такие строчки:

 
title=Windows
rootnoverify (hd0,4)
chainloader +1

В данном примере MS Windows находится на 5-м разделе, /dev/hda5

А дальше точно так же выполняем grub и в появившейся консоли загрузчика пишем:

 
grub> root (hd0,0)          (Specify where your /boot partition resides)
grub> setup (hd0)           (Install GRUB in the MBR)
grub> quit                  (Exit the GRUB shell)

16.47 Как прописать linux в NT Loader?

Написано об этом здесь.

Кратко процесс можно описать так:

  1. Ставите lilo в первый сектор раздела /boot (например, /dev/hda2).
  2. Забираете в файлик загрузочный сектор
    dd if=/dev/hda2 of=~/bootsect.bin count=1
    
  3. Записываете bootsect.bin в корень диска C:\
  4. исправляете c:\boot.ini примерно следующим образом:
     
    [boot loader] 
    timeout=30 
    default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS 
    [operating systems] 
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /fastdetect 
    c:\bootsect.bin="Linux" 
    

16.48 Как удалить linux и его загрузчик?

Вам на ваш любимый сайт

16.49 Как прикрутить проверку архивов rar3 к Clamav?

Существует решение от McMCC. Читать и качать отсюда

16.50 Как прикрутить Clamav к Squid? Как сделать проверку того, что пользователи качают к себе на компьютер?

Компьютер понадобится не самый слабый.

Делается это через DansGuardian. Вот здесь можно взять на эту тему pdf. Описание сделано для Mandrake и потому порядком разбавлено описанием их графических утилит. Но настроить по нему можно, потому что на каждый шаг есть описание того, что нужно делать.

16.51 Как и чем забэкапить раздел или папку и сохранить права и симлинки?

Чтобы сохранились все разрешения и т.п. нужно пользоваться tar'ом. Например, сожмем папку (а у кого и раздел) /usr и положим архив на другой раздел, смонтированный в /mnt/backup:

root@localhost# tar cvpjf /mnt/backup/usr.tar.bz2 /usr

16.52 Как перенести установленный linux с одного винта на другой? Как создать образ установленного linux?

Тут существует два пути.

Сожмем в архив все нужные нам файлы, сохраняя права (tar)

Используем dd

Есть винт такой же, как и тот, с которого копировали, делаем просто

root@localhost# dd if=/mnt/backup/myhda.img of=/dev/disk bs=10M

Если винт больше, то неоднократно советовалось создать на нем раздел примерно одного размера, что и старый винт, после чего восстановить образ на этот раздел. Насколько действенен этот метод, неизвестно.

16.53 Как перенести установленный линукс на новый жесткий диск?

Ну если вы жесткий диск только купили, пришли домой и решили - пора, то вот отличная статья на http://opennet.ru.

Ну а если вы в целях создания бэкапа, или жесткий диск везти нужно, то читайте предыдущий вопрос.

17. Hardware

17.1 Как использовать дополнительные клавиши? Как назначить любую клавишу на запуск чего-либо?

Большинство современных сред имеют инструменты для их использования.

В Gnome задействовать эти клавиши можно с помощью утилиты acme и настроить с помощью acme-properties (Gnome Control Center->Настройки Рабочего Стола->Мульмедийные Клавиши).

В KDE 3.1 и раньше в kmenuedit - на запуск приложений и настройка клавиш в соответствующих программах.

В KDE 3.2 ещё и отдельный пункт в Центре управления KDE.

В WindowMaker это делается с помощью WPrefs

В других - или тоже используется утилита, или комбинации прописываются в файлах конфигурации.

Кроме того, можно использовать lineakd - http://lineak.sourceforge.net, им же можно назначить клавиши на запуск приложений.

Или Hotkeys ( http://freshmeat.net/projects/hotkeys/) - если разобраться, то можно вообще любыми клавишами "рулить" :).

Или xev & xmodmap. О том, как узнать коды клавиш и их использовать - http://www.nixp.ru/cgi-bin/go.pl?q=articles;a=multikeyboard.

А как эффективно использовать сами клавиши, тут - http://www.linux.org.ru/jump-message.jsp?msgid=452963

Если вы хотите, чтобы клавиши были доступны для всех пользователей, внесите работающие изменения в файл /etc/X11/Xmodmap.

17.2 Как в /dev именуются IDE-устройства (жесткие диски, накопители CD-ROM)?

hda - primary master
hdb - primary slave
hdc - secondary master
hdd - secondary slave

Цифры означают раздел - hda1 - первый раздел, hda2 - второй раздел и т.п.

17.3 Как включить DMA (UDMA)?

ВНИМАНИЕ: Неверные настройки могут привести к порче жесткого диска и/или пропаже данных!!!

Обычно все просто. Существует специальная программа, поставляемая в любом дистрибутиве, называется hdparm. В общем случае достаточно сделать следующее: `hdparm -c1 <устройство>` - установки 32-битного асинхронного режима - большинство дисков прекрасно работают с ним, `hdparm -d1 <устройство>` - собственно, включаем сам режим DMA.

PIO режим и DMA режим можно изменять и одной командой. `hdparm -X<число>`. Хочу обратить внимание, что если режим не поддерживается, то команда не сработает.

В дистрибутивах от RedHat постоянные настройки hdparm хранятся в /etc/sysconfig/harddisk.

Подробнее о параметрах hdparm можно прочитать на http://www.linuxshop.ru/linuxbegin/article102.html

Вот пример использования hdparm:

#!/bin/sh
# hdparm script

PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

MAXTOR=/dev/hda
WD=/dev/hdb
DVD=/dev/hdc
BURNER=/dev/hdd

case "$1" in
  start)
        echo -n "Adjusting drive parameters using hdparm... "

        # d1 = dma on
        # c3 = 32bit io w/sync
        # m16 = read upto 16 sectors at a time
        # u1 = unmask other interrupts while processing disk interrupt

        if [ `hostname` == "marsala" ]
        then
            hdparm -d1 -c3 -m16 -u1 $MAXTOR
            hdparm -d1 -c3 -m16 -u1 $WD
            hdparm -d1 -u1 $DVD
            # hdparm -d1 -u1 $BURNER
        fi

        echo "done."
        ;;
  stop)
        ;;
  restart|force-reload)
        ;;
  *)
        ;;
esac

exit 0

17.4 hdparm выдает ошибку HDIO_SET_DMA failed: Operation not permitted using_dma = 0 (off), что делать?

У вас не включена поддержка чипсета вашей материнской платы в разделе поддержки винтов. Или же поддержка собрана модулем (для 2.6.х). В первом случае нужно пересобрать ядро, включив поддержку, а во втором случае - загружать при старте модуль, прописав его в modprobe.conf

Есть еще вариант для чипсетов с SATA, когда в биосе выставлен неверный режим работы SATA-контроллера.

17.5 Q: Какая в линуксе поддержка SATA для ядер 2.4? Как поставить линукс с ядром, не поддерживающим SATA?

Вот здесь море документации и список оборудования http://www.linuxmafia.com/faq/Hardware/sata.html Стоит заглянуть и сюда http://linux.yyz.us/sata/faq-sata-raid.html

17.6 Как заставить работать тв-тюнер? Как подключить пульт (lirc)?

Для примера возьмем avermedia tvstudio 203.

Для начала сконфигурим ядро:

make menuconfig:

Раздел Character devices, I2C support

I2C support
I2C bit-banging interfaces
<*> ELV adapter
<*> Velleman K9000 adapter
<*> NatSemi SCx200 I2C using GPIO pins
<*> NatSemi SCx200 ACCESS.bus
<*> I2C PCF 8584 interfaces
I2C device interface
I2C /proc interface (required for hardware sensors)

Раздел Multimedia devices:
Video For Linux
Video For Linux --->
Radio Adapters --->

Подраздел Video For Linux:

[*] V4L information in proc filesystem
--- Video Adapters
BT848 Video For Linux
<*> Mediavision Pro Movie Studio Video For Linux
<*> CPiA Video For Linux
SAA5249 Teletext processor
<*> SAB3036 tuner
<*> Stradis 4:2:2 MPEG-2 video driver (EXPERIMENTAL)
<*> Zoran ZR36057/36060 Video For Linux
<*> Zoran ZR36120/36125 Video For Linux

Раздел Sound:

Sound card support

BT878 audio dma

TV card (bt848) mixer support

Собираем ядро. Далее берем lirc (www.lirc.org) и собираем его. Lirc представляет собой модули для ядра и полезные утилиты для конфигурации и настройки пульта.

Теперь в /etc/modules.conf пропишем наш тюнер и пульт:

/etc/modules.conf:

# i2c
alias char-major-89 i2c-dev
options i2c-core i2c_debug=1
options i2c-algo-bit bit_test=1

# lirc
alias char-major-61 lirc_gpio

# bttv
alias char-major-81 videodev
alias char-major-81-0 bttv
options bttv card=41 tuner=5 radio=1 pll=1 automute=0
options tuner debug=1

Как видно выше, сам тв-тюнер задается номером. В данном случае card=41. Список карт и чипсетов есть в поставке bttv ( http://bytesex.org). Если конкретно вашего тюнера в списке нет, попробуйте просто перебрать номера карточек.

Наверно понятно, что после установки нового ядра придется перегрузиться :)

Теперь займемся конфигурацией:

/etc/lircd.conf - это файл настройки параметров пульта. Для большей части пультов такие файлы настройки уже есть. Они поставляются в составе lirc. Вам лишь нужно найти свой пульт и переписать файл в /etc.

/etc/.lircrc - файл настройки команд пульта. Поскольку толковых примеров нет, а читать документацию все боятся, приведу свой (jackill) - http://fine.kalinovka.net/articles/hobby/lorFAQ/files/lircrc.tgz

irexec и irxevent - утилиты из lirc. За более подробной информацией обращайтесь к документации.

В $HOME/.xinitrc перед запуском своего оконного менеджера пропишите irexec.

17.7 Как настроить USB-устройство в Linux?

Прочитайте статью http://vikos.lrn.ru//kos.php?name=papers/usb/USB-Lin.html

17.8 Как настроить и использовать USB-вебкамеру в Linux?

Общаться можно с помощью gnomemeeting ( http://www.gnomemeeting.org/index.php?rub=2&pos=0)

О настройке написано здесь - http://www.aboutdebian.com/webcam.htm . Для тех, у кого большие сложности с английским, быстро перескажу (jackill):

Нужно собрать (если нет) следующие модули:

videodev (иными словами video4linux или 4vl); usbcore; input; usb-uhci (если не получится установить этот модуль, попробуйте usb-ohcl или uhcl); и модуль поддержки камеры ibmcam для камер ibm, ov511 (например, для камер Creative WebCam III) или dc2xx (для камер Kodak).

Далее разрешаем всем обращаться к видео-устройству: chmod 666 /dev/video0

Ставим xawtv и перегружаемся.

После перезагрузки, если нет ошибок, запускаем xawtv. В TV-norm указываем вид сигнала с вашей камеры (PAL/NTSC), на предложение просканировать диапазон отвечаем нет (а в последних версиях xawtv эту возможность вообще убрали).

По большой и светлой идее теперь мы должны получить изображение с камеры в окне xawtv.

17.9 Как заставить работать привод CD-RW/DVD-RW?

В современных дистрибутивах поддержка CD-RW/DVD-RW идет прямо из коробки, как и программы для записи дисков. Тем не менее, если вы сами решили настроить и собрать ядро, или что-то пошло не так, полезно знать, что и где подкрутить, чтобы ваш привод мог писать диски.

1. Для ядер серии 2.6.х эмуляции scsi для поддержи записи не требуется. Поэтому ниже приводится сборка ядер серии 2.4.х:

Раздел ATA/IDE/MFM/RLL support, IDE, ATA and ATAPI Block devices:

<M>   Include IDE/ATAPI CDROM support

<M>   SCSI emulation support

Раздел SCSI support:

<M> SCSI support
 --- SCSI support type (disk, tape, CD-ROM)
<M>   SCSI disk support
(40) Maximum number of SCSI disks that can be loaded as modules
< >   SCSI tape support
< >   SCSI OnStream SC-x0 tape support
<M>   SCSI CD-ROM support
[*]     Enable vendor-specific extensions (for SCSI CDROM)
(8) Maximum number of CDROM devices that can be loaded as modules
<M>   SCSI generic support
 --- Some SCSI devices (e.g. CD jukebox) support multiple LUNs
[*]   Enable extra checks in new queueing code
[*]   Probe all LUNs on each SCSI device
[*]   Verbose SCSI error reporting (kernel size +=12K)
[ ]   SCSI logging facility
SCSI low-level drivers  --->

2. Собираем и ставим в систему пакеты. Они входят в состав любого дистрибутива, кроме узкоспециализированных на работу с сетью:

cdda2wav cdrdao cdrecord mkisofs

Это программы необходимы для создания образов дисков и записи.

3. Для ядер серии 2.4.х нужно передать в загрузчик строку о том, что наш привод работает как scsi:

а) если у нас стоит lilo, то в /etc/lilo.conf добавляем строчку

/etc/lilo.conf:

append="hdX=ide-scsi"

где X - буква вашего привода и выполняем lilo,

б) если у нас стоит grub, то в /etc/grub.conf добавляем напротив названия ядра строчку hdX=ide-scsi, например, вот так:

/etc/grub.conf:

kernel /boot/vmlinuz-2.4.25 ro hdc=ide-scsi

Чем записывать, читайте в вопросе Какие есть программы для записи CD-R/CD-RW/DVD?

Как записывать, читайте в вопросе Как записать компакт-диск (CD-R/CD-RW/DVD-RW)

Дополнительные статьи на тему настройки и записи дисков:

http://linuxshop.ru/linuxbegin/article307.html

http://www-106.ibm.com/developerworks/linux/library/l-cdburn.html?ca=dgr-lnxw16BurnCDs

http://linuxdoc.ru/HOWTO/html/CD-Writing-HOWTO.html

17.10 Где найти драйверы под модем (winmodem, HCF, HSF)?

Если модем аппаратный т.е. не является win-модемом, то драйверы для него не нужны - достаточно поддержки com-порта, собранной в ядре (по умолчанию у всех есть). Это старые модемы, работающие через шину ISA, некоторые новые и дорогие на pci (часто имеют в своем составе абревиатуру HCF), внешние подключаемые через com-порт, и некоторые подключаемые через USB (обычно имеют аналогичную модель, подключаемую через компорт).

Если модем программный, смотрите на каком чипе он собран (можно найти в документации или сразу посмотреть на маркировку микросхемы).

После чего отправляйтесь на сайт www.linmodems.org и посмотрите список поддерживаемых модемов - есть ли среди них ваш модем, или чип как у него.

Ниже в этом faq даны инструкции по установке некоторых модемов.

17.11 Как включить сжатие ip-заголовков microsoft (MPPE/MPPC)?

В виндах этот алгоритм называется MPPC сжатием (компрессией), Обычно в дистрибутивах linux поддержи по умолчанию нет,

Для того, чтобы ее включить, понадобится скачать патч для ядра http://www.polbox.com/h/hs001/ или отдельный модуль http://sourceforge.net/project/showfiles.php?group_id=44827&package_id=120221&release_id=244156.

Далее нужно пропатчить pppd (патч там же, где патч под ядро). А в /etc/modprobe.conf или /etc/modules.conf нужно добавить пару строчек, чтобы получилось следующее:

alias ppp-compress-18   ppp_mppe_mppc
alias char-major-108    ppp_generic
alias ppp-compress-21   bsd_comp
alias ppp-compress-24   ppp_deflate
alias ppp-compress-26   ppp_deflate
alias tty-ldisc-3       ppp_async
alias tty-ldisc-14      ppp_synctty

17.12 Как установить винмодем Modem: Intel Corp. 82801DB (ICH4) AC'97 на ядро 2.6.х?

Речь идет о модеме smartlink. Согласно lspci чип выглядит так:

00:1f.6 Modem: Intel Corp. 82801DB (ICH4) AC'97 Modem Controller (rev 03)

Для установки драйвера под данный модем понадобится следующее ПО: alsa-driver не ниже версии 1.0.3 ( http://www.alsa-project.org) slmodem версии 2.9.6 ( http://www.smlink.com)

Часть 1 - ядерная.

В последних версиях драйверов alsa есть драйвер snd-intel8x0m (буква m принципиальна), который нам и нужен. В alsa'е, включенной в ядра 2.6.х (на момент 2.6.3) этого модуля нет, поэтому его нужно добавить туда самому.

Итак, берем alsa-drivers, и slmodem-2.9.6.tar.gz и распаковываем в подходящие для этого директории.

Далее накладываем на ядро патч, поставляемый в составе slmodem. Если ядро из поставки RedHat, то придется подредактировать патч. Исправленная версия есть здесь - http://fine.kalinovka.net/articles/hobby/lorFAQ/files/alsa-linux-2.6.0.patch.gz

Если у нас ядро версии ниже 2.6.5, то заменяем файл intel8x0m.c на более свежий из alsa-driver - иначе просто не соберется.

В конфиге ядра включаем соответствующий модуль (CONFIG_SND_INTEL8X0M=m).

Собираем ядро.

Часть 2 - пользовательская.

После чего заменяем в modprobe.conf строчку

alias sound-slot-0 snd-intel8x0

на

alias sound-slot-0 snd-intel8x0m.

Перегружаемся.

Далее заходим в slmodem и делаем "make SUPPORT_ALSA=1". Получаем приложение slmodemd.

Как только мы его запускаем, автоматически появляется устройство /dev/ttySL0 :maj 136, min 1 (точнее, /dev/pts/1 т.к. /dev/ttySL0 - только ссылка). Это и есть наш винмодем.

За инфо благодарим Sergey V. Udaltsov AKA svu и Sasha Khapyorsky из smlink.com

17.13 Как установить драйверы к модему на чипсете Lucent?

Ответ от dn2010:

  1. скачал дрова версии 8.26-a9 с linmodems.org;
  2. поставил ./build_module ./ltinst2 ./autoload
  3. можно прописать загрузку lt_modem и lt_serial в /etc/rc.d/rc.modules (хотя у меня они нормально тягались и тягаются hotplugом).
  4. проверил, что /dev/modem --- это symlink на /dev/ttyLT0 ls -al /dev/modem
  5. дописал юзеров, которые могут звонить по модему в группу uucp (man usermod) или можно сделать права 666 на /dev/ttyLT0 (я выбрал первое).
  6. сказал kppp, что модем --- это /dev/modem

17.14 Как установить USB-модем ZyXEL Omni 56K (ZyXEL Omni 56K PLUS и DUO, ZyXEL Omni 56K UNO)?

Прочитать об этом можно на страничке McMCC http://mcmcc.bat.ru/omniusb/index.html

17.15 Как установить Zyxel OMNI ADSL USB (стрим)?

Качаем libatm-2.4.1( http://linux-atm.sourceforge.net/) и cxacru ( http://accessrunner.sourceforge.net, собственно сам драйвер)

Далее нужно настроить поддержку atm-а в ядре как написано в how-to к libatm ( http://www.tldp.org/HOWTO/ATM-Linux-HOWTO/) и собрать ядро и libatm.

Перегружаемся с новым ядром.

Осталось собрать cxacru. Для начала надо его пропатчить таким патчем:

diff -urN cxacru-orig/init/cxioctl.c cxacru/init/cxioctl.c
--- cxacru-orig/init/cxioctl.c  2004-05-11 11:05:25.000000000 +0400
+++ cxacru/init/cxioctl.c       2004-09-27 23:13:43.000000000 +0400
@@ -295,6 +295,9 @@
   /* Vendor = Zoom, Product = 5510 */
   else if (vid == 0x1803 && pid == 0x5510)
     return 6;
+  /* zyxel omni */
+  else if (vid == 0x0586 && pid == 0x330a)
+    return 5;

   return -1;
 }
diff -urN cxacru-orig/init/cxload.c cxacru/init/cxload.c
--- cxacru-orig/init/cxload.c   2004-05-11 11:05:25.000000000 +0400
+++ cxacru/init/cxload.c        2004-09-27 23:16:59.000000000 +0400
@@ -1136,6 +1136,10 @@
   /* Vendor = Zoom, Product = 5510 */
   else if (vid == 0x1803 && pid == 0x5510)
     return 6;
+  /* zyxel omni */
+  else if (vid == 0x0586 && pid == 0x330a)
+    return 5;
+

   return -1;
 }
diff -urN cxacru-orig/module2/xdslusb.c cxacru/module2/xdslusb.c
--- cxacru-orig/module2/xdslusb.c       2004-05-11 11:05:26.000000000 +0400
+++ cxacru/module2/xdslusb.c    2004-09-27 23:18:54.000000000 +0400
@@ -154,6 +154,9 @@
 #define CXACRU_PRODUCTID8               0x5510  /* Product = 5510 */
 #define CXACRU_VENDORID9                0x0675  /* Vendor = Draytek */
 #define CXACRU_PRODUCTID9               0x0200  /* Product = Vigor 318 */
+
+#define ZYXEL_VID 0x0586
+#define ZYXEL_PID 0x330a

 /* 3Com reference design (Alcatel DSP) */
 #define CP4218_VENDORID                 0x0506  /* Vendor = 3Com */
@@ -238,6 +241,7 @@

 #define hex2int(c) ( (c >= '0') && (c <= '9') ? (c - '0') : ((c & 0xf) + 9) )

+
 static struct usb_device_id udsl_usb_ids [] = {
        { USB_DEVICE (SPEEDTOUCH_VENDORID, SPEEDTOUCH_PRODUCTID) },
        { USB_DEVICE (AME_VENDORID, AME_PRODUCTID) },
@@ -251,6 +255,7 @@
        { USB_DEVICE (CXACRU_VENDORID8, CXACRU_PRODUCTID8) },
        { USB_DEVICE (CXACRU_VENDORID9, CXACRU_PRODUCTID9) },
        { USB_DEVICE (CP4218_VENDORID, CP4218_PRODUCTID) },
+       { USB_DEVICE (ZYXEL_VID, ZYXEL_PID) },
        { }
 };

@@ -1238,6 +1243,9 @@
        else if (vid == CP4218_VENDORID && pid == CP4218_PRODUCTID && cl == USB_CLASS_VENDOR_SPEC && ifn == 0)
                return UDSL_MODEM_TYPE3;

+       else if (vid == ZYXEL_VID && pid == ZYXEL_PID && cl == USB_CLASS_VENDOR_SPEC && ifn == 0)
+               return UDSL_MODEM_TYPE2;
+
        return -1;
 }

Дальше скомпилировать, он заодно и установится.

В /etc он засунет файл cxacru.conf

#
# Config file for Conexant AccessRunner
#

# Driver mode
DRIVER_MODE=1  # 1 = normal, 2 = debug, 3 = normal+max speed (without ask adsl status), 4 = debug+max speed (without ask adsl status)

# Protocol
PROTOCOL_MODE=4  # 1 = RFC1483/2684 routed, 2 = PPP over ATM (pppoa), 3 = RFC1483/2684 bridged, 4 = PPP over Ethernet (pppoe)

# Paths
BINARY_PATH="/usr/sbin"
ATM_PATH=""

# ADSL
#  if OPEN_MODE is blank then cxload uses default mode acoording VID & PID
#  Values for OPEN_MODE are:
#    0 = auto selection, G.Handshake
#    1 = auto selection, T1.413
#    2 = G.Handshake
#    3 = ANSI T1.413
#    4 = ITU-T G.992.1 (G.DMT)
#    5 = ITU-T G.992.2 (G.LITE)
OPEN_MODE=3

# ATM
VPI=1
VCI=50

# Specific for RFC1483/2684 routed/bridged
#  if IP_ADDRESS is blank in bridged mode then it uses DHCP to get IP
IP_ADDRESS=
NETMASK=
GATEWAY=

Затем нужно настроить pppoe на интерфейс nas0 и запустить cxstart.sh. У меня (no1sm) slackware и pppoe настраивается командой adsl-setup из пакета rp-pppoe.

Скорее всего придется еще что-нибудь подкрутить,но вобщем эта конфигурация должна быть рабочей.

17.16 Как настроить СТРИМ?

Как любое ADSL соединение:

Для некоего питерского провайдера, предоставляющего сходные услуги, есть подробная статья.

17.17 Как настроить USB-мышь/скролл у USB-мышки?

У большинства людей устройство скорее всего будет называться /dev/input/mice

Для подключения должно быть соответствующая нода. В большинстве дистрибутивов она есть. Если нет, ее можно создать:

 
mkdir /dev/input
mknod /dev/input/mice c 13 63

Ссылка на хорошее английское руководство - http://www.linux-usb.org/USB-guide/x194.html

Ядро должно быть собрано с опциями:

/usr/src/linux/.config:

CONFIG_INPUT                    #Обязательно.

CONFIG_INPUT_MOUSEDEV   #Для использования USB-мыши.

CONFIG_USB                              #Для использования USB-устройств вообще.

CONFIG_USB_DEVICEFS             #После этого появится /proc/bus/usb/devices, где видно что подключено.

CONFIG_USB_HID                  #Тоже нужно.

CONFIG_USB_HIDINPUT             #Аналогично.

CONFIG_USB_UHCI                 #Для компьютеров с материнками на базе чипсетов от Intel (intel 430TX, 440FX, 440LX, 440BX, i810, i820), VIA (VIA VP2, VP3, MVP3, Apollo Pro, Apollo Pro II or Apollo Pro 133).

#
# ИЛИ
#

CONFIG_USB_OHCI                 #Для SiS или ALi (ALi IV, ALi V, Aladdin Pro)

Если включена поддержка usbfs, ее нужно прописать в /etc/fstab:

/etc/fstab:

none  /proc/bus/usb   usbfs defaults  0   0

Далее - настройка программ, которым нужна мышь.

Для gpm:

/etc/gpm.conf:

device=/dev/input/mice
responsiveness=
repeat_type=
type=autops2
append=""
sample_rate=

Для X-сервера (xorg, XFree86), в /etc/X11/xorg.conf (/etc/X11/XF86Config или /etc/X11/XF86Config-4):

XF86Config:

Section "InputDevice"
        Identifier  "Configured Mouse"
        Driver      "mouse"
        Option      "CorePointer"
        Option      "Device" "/dev/input/mice"
        Option      "Protocol" "ImPS/2"
        Option      "ZAxisMapping" "4 5"
EndSection

За ответы спасибо Zulu.

Кстати, на http://koala.ilog.fr/colas/mouse-wheel-scroll лежит сборник рекомендаций по настройке скролла "в чем угодно" :)

17.18 У меня проблема с клавиатурой/мышью при использовании ядра 2.6.x. Как исправить?

http://www.kerneltrap.org/node/view/2199

И вопрос "Как перейти на ядро 2.6? У меня не грузятся модули на ядре 2.6, что делать? (QM_MODULES)"

17.19 Как примонтировать hard USB/flash-карту?

Если в ядре включена поддержка SCSI и USB (в частности, USB Mass Storage), то в общем случае хватит команды:

root@localhost# mount /dev/sda1 /mnt/your_location -t vfat

vfat - название файловой fat32, которая используется в большинстве устройств, your_location - ваша папка.

Чтобы узнать как не монтировать из-под рута, читайте следующий вопрос.

А если что-то пошло не так, вам поможет эта статья - http://linuxportal.ru/entry.php/17_0_3_0_C

17.20 Как сделать, чтобы flash монтировалась не из под рута?

Добавить в fstab строчку вида

/dev/sda1 /mnt/flash auto users,noauto,rw,iocharset=koi8-r 0 0

или привести свою к этому виду. В iocharset укажите свою локаль.

Можно сделать совсем красиво, установив себе usbmount

17.21 Как слить фотографии с цифрового фотоаппарата с интерфейсом USB?

Многие цифровые фотоаппараты представляются системе как USB Flash

17.22 Мой фотоаппарат не является USB Mass Storage, что делать?

Попробуйте разобраться, какой протокол обмена он использует. Возможно, этот протокол поддерживается gphoto2. Gphoto2 - это набор текстовых утилит, но есть программыс графическим интерфейсом, которые с ним работают - Digikam и gtkam.

К примеру фотокамеры Canon используют протокол PTP (Picture Transfer Protocol), можно выбрать либо конкретную модель Canon, либо, при отсутствии нужной модели, просто указать USB PTP Class Camera.

17.23 Как подключить GPRS?

На русском - http://www.opennet.ru/base/net/gprs_linux.txt.html, http://dvtl.pisem.net/gprs_moto.html

http://turtiainen.dna.fi/GPRS-HOWTO

Если мобильный телефон определяется как AT-совместимый модем, идем на http://www.easyconnect.linuxuser.hu/ и качаем программу 'GPRS Easy Connect', собираем и запускаем

17.24 У меня старая карта ATI 3D Rage Pro. Хочу смотреть фильмы в MPlayer, но xv (да и OpenGL) не работает. Где взять драйвера?

Если нам нужно только xv и стабильность, идем на http://gatos.sourceforge.net и забираем драйвер ati.2 (чип нашей карты именуется Mach64). Можем забрать модуль и скопировать его файлы в папку X-сервера или собрать его сами.

СМОТРИТЕ ПОД КАКУЮ ВЕРСИЮ X-сервера ВЫ КАЧАЕТЕ МОДУЛЬ!!!

Но OpenGL у нас на этих драйверах не будет.

Чтобы получить еще и OpenGL, мы отправимся на http://www.retinalburn.net/linux и скачаем либо готовый драйвер.

Для ядер 2.4.х и XFree86-4.2-4.3 подойдет вот этот http://www.retinalburn.net/linux/dri-xv/mach64-dri-xv-20030413.i386.tar.bz2

Там же можно взять патч под Х-сервер, если вы испытываете особое желание собирать все самостоятельно. Однако в этом случае X-сервер придется выкачивать из CVS (есть там две ветки под mach64) и накладывать патч на них.

Драйвер имеет свойство сбоить и машина может зависнуть ЦЕЛИКОМ!

Для ядер 2.4-2.6 и xorg нужно скачать два файла: common-20041025-linux.i386.tar.bz2 и mach64-20041025-linux.i386.tar.bz2 и распаковать их в той же последовательности

После этого имеем: dri, OpenGL и xv (TV-out только в консоли: mplayer -vo vesa)

Можно туда ( http://www.freedesktop.org/~dri/snapshots/) периодически заглядывать, работа ведется и обновления выходят.

Способ для Gentoo Linux

VIDEO_CARDS="mach64" emerge x11-dri

Имеем: dri, OpenGL и xv (TV-out пока не проверялся)

ToDo: прикрутить TV-out патч к x11-drm.

Везде используется драйвер ati

Желательно до запуска иксов грузить agpgart agp_модуль чипсета и, собственно mach64.

За часть ответа об xorg благодарим kilolife.

17.25 Где можно найти материалы по подключению мобильных устройств к Linux?

http://www.tuxmobile.org

17.26 Как подключить кардридер?

http://hot-orange.narod.ru/chtivo/card-reader.htm

17.27 Кардридер читает только первый слот, что делать?

В вашем дистрибутиве чуть-чуть недокрутили настройки ядра. Дайте команду:

echo "scsi scsi-add-single-device <scsi instance> <scsi channel> <scsi id> <scsi lun>">/proc/scsi/scsi

Например, для шестипортового кардридера:

root@localhost# echo "scsi add-single-device 1 0 0 5" > /proc/scsi/scsi
root@localhost# echo "scsi add-single-device 1 0 0 4" > /proc/scsi/scsi
root@localhost# echo "scsi add-single-device 1 0 0 3" > /proc/scsi/scsi
root@localhost# echo "scsi add-single-device 1 0 0 2" > /proc/scsi/scsi
root@localhost# echo "scsi add-single-device 1 0 0 1" > /proc/scsi/scsi
root@localhost# echo "scsi add-single-device 1 0 0 0" > /proc/scsi/scsi

17.28 Поставил альсу (alsa), а звука нет. Что делать?

По умолчанию после установки alsa (если ранее она не стояла), все каналы находятся в заглушенном положении (mute). Поэтому запустите alsamixer и снимите mute клавишей m с каналов Master и PCM.

Кнопки курсора вверх и вниз позволят установить требуемый уровень звука.

17.29 Как сохранить настройки микшера при использовании ALSA? Как сделать, чтобы они восстанавливались?

Для сохранения настроек выполните команду

user@linux# /usr/sbin/alsactrl store

А чтобы они восстанавливались (и записывались) нужно, чтобы в ваших инициализационных скриптах стартовал демон alsasound. Устанавливается он вместе с alsa-driver.

В дистрибутивах Fedora Core запись и восстановление настроек прописано двумя строчками в /etc/modules.conf (/etc/modprobe.conf), например:

install snd-intel8x0 /sbin/modprobe --ignore-install snd-intel8x0 && /usr/sbin/alsactl restore >/dev/null 2>&1 ¦¦ &colon;
remove snd-intel8x0 { /usr/sbin/alsactl store >/dev/null 2>&1 ¦¦ &colon; &colon; }&semi; /sbin/modprobe -r --ignore-remove snd-intel8x0

Уберите эти строчки и установите демон alsasound (его можно взять, например, в пакете alsa-driver с www.alsaproject.org). Это позволит нормально выгружать драйверы в случае необходимости.

17.30 Как сделать программное микширование с ALSA на картах, не поддерживающих аппаратное?

Кидаем в /etc такой конфиг (назвается asound.conf)

/etc/asound.conf:

pcm.!default {
    type plug
    slave.pcm "dmixer"
}
 
pcm.dsp0 {
    type plug
    slave.pcm "dmixer"
}
 
pcm.dmixer  {
    type dmix
    ipc_key 1024
    slave {
        pcm "hw:0,0"
        period_time 0
        period_size 1024
        buffer_size 8192
        #buffer_size 32768
        #periods 128
        rate 44100
    }
    bindings {
        0 0
        1 1
    }
}
 
ctl.mixer0 {
    type hw
    card 0
}

За ответ спасибо McMcc. Готовый файл лежит на http://mcmcc.bat.ru/mypatches/asound.conf

17.31 Q: Что за ошибка FATAL: Error running install command for sound_slot_0?

Есть три варианта - простой, сложный, очень сложный.

17.32 Как подключить wireless-карточку?

Желающим сделать это - прямая дорожка на Yandex.ru & Google.com со словами "настройка wireless linux" на устах. Проверено - информации вполне достаточно.

Пример для Planet ???. Эта карта собрана на базе чипа acx100.

Для начала смотрим что у на есть:

root@linux:~# lspci
...
00:0a.0 Network controller: Texas Instruments ACX 100 22Mbps Wireless Interface
...

Да, устройство с чипом acx100 в системе имеется. Идем дальше.

root@fhome:~# cd /lib/modules/
root@fhome:/lib/modules# mkdir acx100_fmwe
root@fhome:/lib/modules# cd ./acx100_fmwe/
root@fhome:/lib/modules# tar -xvzf ~/acx100/acx100_firmware.tar.gz
root@fhome:/lib/modules/acx100_fmwe# cd ../2.4.22/kernel/drivers/net/
root@fhome:/lib/modules/2.4.22/kernel/drivers/net# tar -xvzf ~/acx100/acx100_pci-v0.2.0pre7-2.4.22.tar.gz

Этими командами мы установили в систему модуль acx100_pci, собранный под ядро 2.4.22 и firmware, необходиое для его работы.

Для того, чтоб модуль загружался во время старта правим /etc/modules.conf.

/etc/modules.conf:
alias eth0 acx100_pci
options acx100_cpi use_eth_name=1 debug=0x01 formware_dir=/lib/modules/acx100_fmwe
post-install acx100_pci /etc/rc.d/rc.acx100_pci

Первая строка - объявляем псевдоним eth1 для беспроводного устройства (у меня eth0 уже есть)

Вторая - устанавливаем параметры, без которых модуль не загрузится.

Третья - указываем, что после загрузки модуля нужно запустить скрипт /etc/rc.d/rc.acx100_pci, в котором производится настройка беспроводного соединения.

Далее:

root@fhome:~# depmod -a
root@fhome:~# grep acx100_pci /lib/modules/2.4.22/modules.pcimap
acx100_pci           0x0000104c 0x00008400 0xffffffff 0xffffffff 0x00000000 0x00000000 0x00000000
acx100_pci           0x0000104c 0x00008401 0xffffffff 0xffffffff 0x00000000 0x00000000 0x00000000
acx100_pci           0x0000104c 0x00009066 0xffffffff 0xffffffff 0x00000000 0x00000000 0x00000000

Модуль нормально установился. Пробуем его загрузить:

root@fhome:~# modprobe acx100_pci

Если получилось что-то такое:

/lib/modules/2.4.22/kernel/drivers/net/acx100_pci.o: init_module: No such device/lib/modules/2.4.22/kernel/drivers/net/acx100_pci.o: Hint: insmod errors can be
caused by incorrect module parameters, including invalid IO or IRQ parameters.
      You may find more information in syslog or the output from dmesg
/lib/modules/2.4.22/kernel/drivers/net/acx100_pci.o: insmod /lib/modules/2.4.22/kernel/drivers/net/acx100_pci.o failed
/lib/modules/2.4.22/kernel/drivers/net/acx100_pci.o: insmod acx100_pci failed

Это либо нету устройства в системе, либо в /etc/modules.conf ошибка и "options acx100_pсi" это "options acx100_cpi" например, или... что-то еще :)

Если все прошло нормально, проверяем, загрузился ли модуль:

root@fhome:~# lsmod|grep acx100_pci
acx100_pci            124512   0  (unused)

17.33 Как узнать температуру процессора, чипсета? Как настроить lm_sensors?

Нужно установить и настроить lm sensors.

Пакет lm_sensors входит практически в любой дистрибутив. Документация к нему идет подробная.

Чтобы установить lm_sensors в общем случае нужно:

Температуру в консоли можно посмотреть, набрав sensors.

В графическом режиме температуру можно снять с помощью gkrellm.

17.34 Могу ли я посмотреть температуру своего жесткого диска?

Конечно. Утилита называется hddtemp. Прямо на сайте помимо тарбола выложены пакеты для Gentoo, Debian, Alt Linux, Redhat/Fedora Core, Slackware.

Там же можно взять плагин для gkrellm, показывающий температуру.

17.35 Чем протестировать оперативную память?

Программой memtest86. Обычно она входит в состав большинства дистрибутивов, а также в rescue-часть.

17.36 Как протестировать процессор под нагрузкой (например, если он разогнан)?

Есть программа под названием cpuburn и еще одна cpuburn-in.

Читаете ридми, собираете, запускаете. Ждете минут сорок.

Есть тест прошел, запускаете quake 3, который известен вылетами на нестабильном железе в linux - минут сорока должно хватить. Обычно вылетает на пятнадцатой-двадцатой минуте.

Далее ставите на сборку что-нибудь, что у вас раньше нормально собиралось. Сначала ядро. Потом какой-нить kdelibs.

Если не вылетит, тогда можно на случай атомной войны попробовать пожать что-нить огромное rar'ом.

Если все это работает, значит система стабильна.

17.37 Какую взять видеокарточку под linux - ATI или Nvidia?

ATI хорошие карты, у них отличное 2D, но поддержка у них отвратительная - драйверы под linux выходят поздно, не успевая за появлением новых возможностей X-серверов и ядер. Поэтому топовые карты, поддержка которых осуществляется силами ATI, зачастую не могут показать свой потенциал. Хорошо, если они вообще работают на более-менее новом дистрибутиве. Старые карты поддерживаются силами сообщества, так как ATI отдает разработку драйверов под такие карты проекту DRI. И они работают хорошо.

Думаю, никому не нужно напоминать о ситуации с Doom III, который уже два месяца как вышел под Windows и более недели работает в linux, а на карточках ATI запустить его по-прежнему нельзя (а в windows требуется наложить на игру отдельный патч, чтобы достичь нормальной производительности).

В ближайшем будущем ATI, согласно ее заявлению, не собирается улучшать свою поддержу драйверов под linux.

Nvidia тоже не всегда успевает за новыми возможностями, но они выпускают драйверы практически вслед за драйверами под Windows, не ограничивают их возможности, стараются писать их с учетом возможностей и особенностей современных ядер linux. Драйвера ставятся просто и поддерживают весь спектр современных карт, независимо от того, riva tnt это или Geforce 6800 (на момент написания этих строк данная карточка последняя в линейке).

Посему если вам нужно 3D (быстрое 3D) и вы хотите стабильной поддержки от производителя, берите nvidia.

18. Multimedia

Для начала ссылка на некоторые ресурсы (присылайте ссылки и мы их включим):

Неофициальный FAQ по MPlayer

18.1 Как сделать, чтобы MPlayer использовал rtc, не ставя на него suid бит?

Для тех, у кого в системе есть /etc/sysctl.conf:

/etc/sysctl.conf:

dev/rtc/max-user-freq=1024

Для остальных:

/etc/rc.local:

echo 1024 > /proc/sys/dev/rtc/max-user-freq

18.2 При просмотре фильмов в MPlayer включается скринсейвер (или монитора "засыпает"), что делать?

user@linux$ man mplayer

На предмет опции -stop_xscreensaver

Если у вас просто mplayer, без графического интерфейса, берем ваш файл конфигурации  /.mplayer/config и пишем в нем строчку

~/.mplayer/config:

stopxscreensaver = 1

Для gmplayer мы пропишем строчку

~/.mplayer/gui.conf:

stopxscreensaver = "yes"

Это можно сделать и средствами интерфейса.

Из командной строки можно добавить ключ -stop-xscreensaver

Важно: В руководстве ключ назван неверно -stop_xscreensaver (с подчеркиванием вместо тире).

18.3 После перекомпиляции ядра mplayer стал вылетать с segmentation fault. Куда копать?

Можно попробовать включить в ядре параметр CONFIG_BSD_PROCESS_ACCT пересобрать его.

18.4 Как записать тв-программу, используя mencoder?

Для ядра 2.4 и ранних 2.6:

#!/bin/bash

DATE="`date +%H%M%d`"

nice -n 0 mencoder tv:// -tv driver=v4l:width=384:height=288:norm=SECAM: \
brightness=10:contrast=-20:hue=-70:saturation=-60: \
audiorate=22050:alsa:forcechan=1:adevice=hw.0: \
buffersize=32:fps=22 -ovc lavc -lavcopts vcodec=mpeg4: \
vbitrate=2100:vme=5:vqscale=3:vb_strategy=1: \
keyint=300 -oac pcm -o "output-"$DATE".avi"

Для ядер 2.6.6 и выше:

!/bin/bash
DATE="`date +%H%M%d`"
PH=/mnt/dos/dvd/tv

mencoder -tv driver=v4l2:width=512:height=384:device=/dev/video0:\
norm=SECAM:buffersize=128:fps=24:brightness=10:contrast=-20:hue=-70:\
saturation=-60:\
audiorate=22050:alsa:forcechan=1 \
-oac pcm \
tv:// \
-o $PH/$DATE".avi" \
-ovc lavc -lavcopts \
vcodec=mpeg4:vbitrate=1200:vme=4:vqscale=3:vb_strategy=1:keyint=300 \
-vf pp=lb

Первая строчка для Celeron 500, вторая для PIII-966. Подбирайте свои значения. Название файла формируется, используя время.Кодируем в MPlayer 1.0pre5. Параметр "on" больше не используется.

Важно что - указать во что кодируем и каким кодеком что для видео, что для аудио.

Аудио лучше пускать в pcm, это написано еще в рассылках MPlayer, а потом уже пережать такой строчкой:

#!/bin/bash

mencoder -ovc copy -oac mp3lame -lameopts aq=0:ratio=100 pcm_file.avi -o your_ready.avi

Если хочется почистить картинку от помех, это можно сделать примерно так:

#!/bin/bash

nice -n 15 mencoder -ovc lavc -lavcopts vcodec=mpeg4:vme=4:vbitrate=1800: \
keyint=300 -oac copy -vf scale=640:480,pp=hb/vb/dr/al/lb,hqdn3d,lavcdeint,eq=05: \
10 /mnt/dos/part2.avi -o ready2.avi

Естественно, можно и совместить. Читайте о постпроцессинге.

Есть еще момент - многие жалуются, что несмотря на сильные машины (piv 2600, например) через некоторое время идет framedrop. Лично я (jackill) боролся с этим, указав число кадров, получаемых с тюнера (опция fps, на более мощной машине можно поставить больше) и можно жестко задать буфер (чем больше разрешение, тем больше буфер), чтобы вся память не забилась (если будет framedrop при динамическом буфере, то сначала кончится память, затем пойдет framedrop). В рассылке говорили, что звук лучше забирать в pcm (мол, lame тоже может стать причиной сбоя).

18.5 Сделал все, как написано здесь, но картинка с тв-тюнера пишется, а звук - нет. Звуковая система - alsa. Что делать?

Запускаем alsamixer и в нем снимаем, если есть, mute с канала Line (клавиша m), далее ставим capture на каналы Line и Capture (клавиша пробел).

18.6 Как посылать именно фильм на телевизор, а все остальное - на монитор?

При настроенном X-сервере - легко:

user@linux# alias mplayertv='export DISPLAY=:0.1 & qut;" mplayer -fs'

О настройках карточек nvidia через TwinView читайте в документации nvidia, если нужны более хитрые настройки, читайте здесь. О настройке карт ATI читайте здесь.

18.7 Как на Nvidia настроить TV-Out так, чтобы фильм из mplayer выводился на TV, а монитор оставался свободным?

A: Например, так. Приведены только интересующие нас разделы /etc/X11/xorg.conf (ранее /etc/X11/XF86Config)

Section "ServerLayout"
        Identifier "Default Layout"
        Screen 0 "Monitor" 0 0
        Screen 1 "TVout" RightOf "Monitor"
        InputDevice "Mouse1" "CorePointer"
        InputDevice "Keyboard1" "CoreKeyboard"
EndSection

Section "Monitor"
        Identifier "CRTmonitor"
        ModelName "LG 795FT"
        HorizSync 30.0 - 96.0
        VertRefresh 50.0 - 160.0
EndSection

Section "Monitor"
        Identifier "HomeTV"
        ModelName "TVset"
        HorizSync 30.0 - 50.0
        VertRefresh 50.0 - 60.0
EndSection

Section "Device"
        Identifier "NVGF4-1"
        Driver "nvidia"
        BoardName "Ti4800-VDT8X (MS-8900)"
        VideoRam 131072
        Option "NvAGP" "3"
        Option "NoLogo" "1"
        Option "RenderAccel" "1"
        Option "TwinView" "1"
        Option "DPMS" ""
        BusID "PCI:1:0:0"
EndSection

Section "Device"
        Identifer "NVGF4-2"
        Driver "nvidia"
        BoardName "Ti4800-VDT8X (MS-8900)"
        VideoRam 131072
        Option "NvAGP" "3"
        Option "NoLogo" "1"
        Option "RenderAccel" "1"
        Option "TVOutFormat" "COMPOSITE"
        Option "ConnectedMonitor" "TV"
        Option "TVStandard" "NTSC-M"
        BusID "PCI:1:0:0"
        Screen 1
EndSection

Section "Screen"
        Identifier "Monitor"
        Device "NVGF4-1"
        Monitor "CRTmonitor"
        DefaultDepth 16

        SubSection "Display"
                Depth 8
                Modes "1600x1200" "1280x1024" "1280x960" "1152x864" "1024x768" "800x600" "640x480"
        EndSubSection

        SubSection "Display"
                Depth 16
                Modes "1600x1200" "1400x1050" "1280x1024" "1280x960" "1152x864" "1024x768" "800x600" "640x480"
        EndSubSection

        SubSection "Display"
                Depth 24
                Modes "1600x1200" "1280x1024" "1280x960" "1152x864" "1024x768" "800x600" "640x480"
        EndSubSection
EndSection

Section "Screen"
        Identifier "TVout"
        Device "NVGF4-2"
        Monitor "HomeTV"
        DefaultDepth 16

        SubSection "Display"
                Depth 8
                Modes "800x600" "640x480"
        EndSubSection

        SubSection "Display"
                Depth 16
                Modes "800x600" "640x480"
        EndSubSection

        SubSection "Display"
                Depth 24
                Modes "800x600" "640x480"
        EndSubSection
EndSection

18.8 Почему при попытке просмотра фильма в MPlayer в полноэкранном режиме фон только меняется на черный, а размер картинки остается прежним?

DiMoN отвечает:

Список того, какой вывод поддерживается:

user@linux# mplayer film.avi -vo help

Лучшие варианты:

user@linux# mplayer film.avi -vo xv -fs
user@linux# mplayer film.avi -vo xvidix -fs

Когда-то через SDL добился нормального воспроизведения на Celeron333/64Mb/S3Trio64V+:

user@linux# mplayer film.avi -vo sdl -fs

C остальными могут быть проблемы по скорости воспроизведения:

user@linux# mplayer film.avi -vo gl2 -fs
user@linux# mplayer film.avi -vo gl -fs
user@linux# mplayer film.avi -vo dga -fs

Консольные варианты:

user@linux# mplayer film.avi -vo vesa -fs
user@linux# mplayer film.avi -vo svga -fs
user@linux# mplayer film.avi -vo vidix -fs
user@linux# mplayer film.avi -vo cvidix -fs

Текстовыми символами:

user@linux# mplayer film.avi -vo aa -fs

На худой конец так (тормоза + потеря кадров):

user@linux# mplayer film.avi -vo x11 -fs -zoom -framedrop -hardframedrop

18.9 MPlayer - проблемы с интерфейсом: любой "скин" он показывает черным, элементов управления тоже не видно. Что делать?

Это проявляется на определенных картах. Попробуйте поменять битность цвета. Должно сработать.

18.10 Как в MPlayer просмотреть VCD?

1. Не надо монтировать диск.

2. mplayer -vcd://номер_трека [остальные ключи].

18.11 Как в сграбить audio-CD в mp3 (в том числе из консоли)?

Можно воспользоваться либо грабберами или программами для записи компакт-дисков с поддержкой таких функций.

user@linux:~$ mpg123 --cdr file.cdr file.mp3
user@linux:~$ cdrecord -v speed=4 dev=0,0,0 -pad -audio *.cdr

Для группы файлов:

 
user@linux:~$ find . -name "*.mp3" -exec mpg123 --cdr {}.cdr {} \;

Если полученный wav файл не в формате "16 bit, stereo, 44100 Hz" (проверить можно: "file file.wav", обычно mpg123 осуществляет преобразование автоматически):

 
user@linux:~$ mpg123 -w file.wav file.mp3
user@linux:~$ sox file.wav -r 44100 file_new.wav

Для нормализации громкости удобно использовать:

 
normalize -m *.wav

Можно воспользоваться этим скриптом (автор мне, увы, неизвестен):

#!/bin/bash
rm -v track*.wav
disc-cover -e -o tracks -t txt &&
mv tracks.txt tracks.cddb &&
disc-cover -o cover -t ps &&
ARTIST=`cat tracks.cddb | grep -E '^Artist\:'| gawk -F\: '{print $2}' | sed -e's/^ *//' -e's/ *$//'`
ALBUM=`cat tracks.cddb | grep -E '^Title\:'| gawk -F\: '{print $2}' | sed -e's/^ *//' -e's/ *$//'`
echo "$ARTIST/$ALBUM"
#echo $ALBUM
mkdir -p "$ARTIST/$ALBUM"

cdparanoia -sQ 2>&1 | tee toc &&
cdparanoia -w -z5 -B 2>&1 | tee cdparanoia.log || exit
#grep -E '^( )+([0-9])+\.' toc | gawk -F. '{print $1}'
for i in track*.cdda.wav; do
num=`echo $i | sed -e's/^track\([0-9]*\)\.cdda\.wav/\1/'`
#echo -n $num " - "
num1=`echo $num | sed -e's/^0//'`
#echo $num1
title=`grep -E "^([0])*$num1\ " tracks.cddb | \
        gawk 'BEGIN {ORS=" "} {for(n=2;n<NF-1;n++) print $n;}' | sed -e's/^ *//' -e's/ *$//'`
        #echo $title
        nice oggenc -b 192 -N $num -a "$ARTIST" -l "$ALBUM" -t "$title" -n "$ARTIST/$ALBUM/$num - %t.ogg" $i || exit
        #mv -v $i $ii
        done;

18.12 Как перегнать mp3 в ogg (в том числе из консоли)?

Вы можете воспользоваться программой ecasound.

Для преобразования из консоли воспользуйтесь скриптом mp32ogg. Это не домашняя страница проекта, а сам скрипт, исправленный svyatogor для перекодировки тэгов сразу в unicode.

Внимание! Преобразование mp3 в ogg и наоборот ведет к потере качества звука!

18.13 Как записать audio-CD из mp3 (wav)?

Пользователи KDE скорее всего записывают диски программой k3b, поэтому могут воспользоваться ею. Очень удобно.

Многие пользуются программой xcdroast. Поскольку интерфейс слегка запутан, пара слов о процессе. В каталог для cd-образов копируются wav, сделанные из mp3. Далее делаем "Создать диск" -> "Записать дорожки". В закладке "Раскладка дорожек в правом окне выделяем все wav-файлы и нажимаем кнопку "Добавить". Переходим в закладку "Записать дорожки" и нажимаем на кнопку "Записать дорожки".

Примечание: в старой локализации xcdroast дорожки называются треками.

Также, можно чудесно записать все из консоли

user@linux:~$ cdrecord -audio -pad -dev=0,0,0 1.wav 2.wav 3.wav

Подробнее смотрите man cdrecord.

mp3split Для склеивания mp3wrap (rezound, cutmp3) И есть еще ecasound.

18.15 Чем под Linux сделать DVD-диск из avi-файла?

Можно попробовать графическую утилиту (и она вам пригодится для создания менюшек и т.п.) под названием QDVDAuthor или же сделать все скриптами как показано ниже (но удобнее всего совмещать оба способа).

Алгоритм кодирования в dvd такой:

  1. Звук конвертируете в pcm, ac3, mp2 (mpeg 1 layer2).
  2. Видео конвертируете в mpeg2video. Это можно сделать с помощью mplex из комплекта mjpegtools, или с помощью mencoder (output format: -of mpeg), но лучше первым. К тому же mencoder не умеет делать звук mp2.
  3. Далее можно пропустить это через dvdauthor, чтобы сформировать структуру каталогов.
  4. Затем делается image.
  5. Запись.

Все прочитали? Можно автоматизировать процесс с помощью mkdvd. Или скрипта Obidos'а:

1-й случай. PAL (в исходном avi 25fps).

#!/bin/sh

mkdir tmp
ORIG=tmp/`basename $1 .avi`
echo "Doing transcode..."
transcode -i $1 -V -y mpeg2enc,mp2enc -F "5,-S 800" -E 44100 -b 128  -o $ORIG -Z 480x576
echo "Doing mplex..."
mplex -f 4 -S 800 -o $ORIG%d.mpg $ORIG.m2v $ORIG.mpa

2-й случай. NTSC (в исходном avi 29.97fps либо 23.976fps).

#!/bin/sh

mkdir tmp
ORIG=tmp/`basename $1 .avi`
echo "Doing transcode..."
transcode -i $1 -V -y mpeg2enc,mp2enc -F "5,-S 800" -E 44100 -b 128  -o $ORIG -j -92 -Z 480x480
echo "Doing mplex..."
mplex -f 4 -S 800 -o $ORIG%d.mpg $ORIG.m2v $ORIG.mpa
#end

3. Скрипт сборки образа диска для прожига

#!/bin/sh

TITLE=`basename $1 .mpg`
echo "Doing VCDImager..."
vcdimager -p -t svcd -b $TITLE.bin -c $TITLE.cue $@

4. Скрипт прожига

#!/bin/sh
# первый параметр -- имя .cue-файла, второй -- скорость.

cdrdao write -v 2 --speed $2 $1

Замечания.

  1. Для NTSC материала нужно правильно подобрать значение параметра -j. Указанное значение (-92) корректно для фильмов им. тов. Гоблина (тех, что я кодировал).
  2. Максимальный размер диска -- 800Мб, что отлично влезает на 700Мб болванку из-за того, что пишется "полный" сектор. Грубо можно считать "800Мб == 80 мин".

Где взять: mkdvd http://fredrik.hubbe.net/hacks/ mjpegtools http://mjpeg.sourceforge.net/ dvdauthor http://dvdauthor.sourceforge.net mencoder http://www.mplayerhq.hu transcode http://zebra.fh-weingarten.de/~transcode/

Дополнительное инфо по сборке DVD и редактированию видео с помощью kino: http://www.linuxmafia.com/faq/Apps/AV/consumer-video-to-dvd.html

Дополнительное инфо по правам файловой структуры на получаемом DVD: http://dvd.chevelless230.com/

Дополнительное инфо о том, как писать: http://www.freesoftware.fsf.org/dvdrtools/

18.16 Как в Linux работать с видео? Какие есть программы для работы с видео?

Внимательно читайте список требований. Обычно для работы нужны

transcode mencoder (MPlayer) и иногда mjpegtools Где взять см. предыдущий вопрос.

Работа с Linux Video Studio на карте Pinnacle Studio DC 10 Plus: http://genphys.phys.msu.su/~dmitriy/site/mv/howto_linuxvideostudio.html

Программа для примитивного монтирования: http://fixounet.free.fr/avidemux/ (IMHO лучше брать из altlinux sysiphus

Программа посложнее: http://www.schirmacher.de/arne/kino/

Если нравится mencoder, но хочется получить графический интерфейс - вам поможет kmencoder ( http://sourceforge.net/projects/kmencoder/).

18.17 Как перекодировать DVD в mpeg4 (dvd2mpeg)?

Пришлось отдельно выносить этот вопрос, потому что предыдущий вопрос-ответ никто не читает.

Перекодировать ваш DVD в mpeg4 можно с помощью консольных утилит mencoder и transcode.

Посчитать битрейт можно с помощью калькулятора DivXcalc.

Кодирование в 3 прохода с двумя звуковыми дорожками на два cd можно сделать таким скриптом (в mpeg4):

#!/bin/bash

PH=/mnt/dos/dvd
READYPH=/mnt/dos/dvd/ready
BITRATE=1600
NICE=15
ENG=129
RUS=128
FPS=25
DATE="`date +%H%M%d`"

cp divx2pass.log "divx2pass-"$DATE".log"

cat $PH/*vob | nice -n $NICE mencoder - -ofps $FPS -ni -aid $RUS \
-ovc frameno \
-oac mp3lame -lameopts vbr=3:br=192:q=0:aq=0 \
-o $READYPH/"sound-"$RUS".avi"

cat $PH/*.vob | nice -n $NICE mencoder - -ofps $FPS -ni -aid $ENG \
-ovc frameno \
-oac mp3lame -lameopts vbr=3:br=192:q=0:aq=0 \
-o $READYPH/"sound-"$ENG".avi"

cat $PH/*.vob | nice -n $NICE mencoder - -ofps $FPS \
-ovc lavc -lavcopts vcodec=mpeg4:vpass=1:vhq:vbitrate=$BITRATE:vme=5:keyint=300:v4mv:mv0:qpel:trell:cbp:naq \
-vf scale=640:360,pp=hb/vb/dr -sws 2 \
-nosound \
-o /dev/null

cat $PH/*.vob | nice -n $NICE mencoder - -ofps $FPS \
-ovc lavc -lavcopts vcodec=mpeg4:vpass=2:vhq:vbitrate=$BITRATE:vme=5:keyint=300:v4mv:mv0:qpel:trell:cbp:naq \
-vf scale=640:360,pp=hb/vb/dr -sws 2 \
-nosound \
-o $READYPH/final-f2.avi

rm -f $PH/*.vob

nice -n $NICE avimerge -i $READYPH/final-rc1.avi -p $READYPH/"sound-"$RUS".avi" -o $READYPH/final-rc2.avi
nice -n $NICE avimerge -i $READYPH/final-rc2.avi -p $READYPH/"sound-"$ENG".avi" -o $READYPH/final.avi

Или в этом скрипте можно поменять несколько строчек и кодировать в xvid:

меняем строчку с cp:

cp xvid-twopass.stats "xvid-twopass-"$DATE".stats"

и меняем строчки с кодированием видео

cat $PH/*.vob | nice -n $NICE mencoder - -ofps $FPS -ni \
-ovc xvid -xvidencopts pass=1:vhq=1:qpel:trellis \
-nosound \
-vf crop=718:422:2:66,scale=640:356,pp=hb/vb/dr -sws 2 \
-o /dev/null

cat $PH/*.vob | nice -n $NICE mencoder - -ofps $FPS -aid $RUS -ni \
-ovc xvid -xvidencopts bitrate=$BITRATE:pass=2:vhq=1:qpel:trellis \
-nosound \
-vf crop=718:422:2:66,scale=640:356,pp=hb/vb/dr -sws 2 \
-o $READYPH/final-rc1.avi

Если вы хотите оставить звук в ac3 (как он идет в dvd), то вместо строчек перекодирования в mp3 поставьте

-oac copy

19. Wine/WineX/Cedega

19.1 Как включить русский язык в Wine, WineX, Cedega?

Для Wine находим в домашней папке каталог .wine, для WineX каталог .trangaming.

В них открываем файл config.

И смотрим раздел [fonts] и [FontPatterns] (если последнее есть).

Пишем нечто вроде такого:

;; default TrueType fonts with russian koi8-r encoding
"Default" = "-monotype-arial-*-*-*--*-*-*-*-*-*-koi8-r"
"DefaultFixed" = "-monotype-courier new-*-*-*--*-*-*-*-*-*-koi8-r"
"DefaultSerif" = "-monotype-times new roman-*-*-*--*-*-*-*-*-*-koi8-r"
"DefaultSansSerif" = "-monotype-arial-*-*-*--*-*-*-*-*-*-koi8-r"

Если ttf-шрифты не установлены, то скорее всего у вас есть шрифты cronix, тогда русификация будет выглядеть так:

;"Default" = "-cronyx-helvetica-"
;"DefaultFixed" = "fixed"
;"DefaultSerif" = "-cronyx-times-"
;"DefaultSansSerif" = "-cronyx-helvetica-"

Как вариант, для WineX у меня работает такая настройка:

[fonts]
;Read documentation/fonts before adding aliases
"Resolution" = "96"
"Default" = "-cronix-times-"

[FontPatterns]
"Pattern0" = "-cronix-times*"
"Pattern1" = "-cronix-helvetica*"
"Pattern2" = "-cronix-courier*"
"Pattern3" = "-monotype-Arial-*-*-*--*-*-*-*-*-*-koi8-r"

С Cedega ситуация несколько изменилась. Если шрифты и локаль верно настроены, то с выводом русских символов не возникнет проблем.

19.2 У меня под Wine (WineX/Cedega) в игре портится звук - шипит как-то. Что мне делать?

Посмотреть, не запущены ли звуковые серверы типа esd или arts. Если да - выключить их и попробовать еще раз. Если это не помогает - значит поддержка этой игры в WineX (возможно, в сочетании с имеющейся звуковой картой) сделана недостаточно хорошо. Как вариант, можно попробовать сменить герцовку звука, если игра это позволяет.

Чтобы выбрать, какой звуковой API будет использовать WINE/WineX, смотрите файл  /.wine/config (для WINE) или  /.transgaming/config (для WineX/Cedega):

~/.wine/config:

[WinMM]
        ; Uncomment the "Drivers" line matching your sound setting.
        "Drivers" = "wineoss.drv"      ; default for most common configurations
        ;"Drivers" = "winearts.drv"    ; for KDE
        ;"Drivers" = "winealsa.drv"    ; for ALSA users
        ;"Drivers" = "winejack.drv"    ; for Jack sound server
        ;"Drivers" = "winenas.drv"     ; for NAS sound system
        ;"Drivers" = "wineaudioio.drv" ; for Solaris machines
        ;"Drivers" = ""                ; to disable sound

Закомментируйте ненужный "Drivers" (поставьте перед ним ";") и откомментируйте нужный (соответственно, уберите ";")

19.3 Cedega (WineX) вылетает с сообщением error=21, что делать?

Для начала придется разобраться в чем проблема, потому что это слишком общая ошибка и вылетает она по каждому поводу.

Для fedora core, в ядре которой включен exec-shield, проблему можно решить следующим образом:

После этого можете запускать свою игру.

19.4 Как запустить игру ... под Wine/WineX/Cedega?

Зайдите в раздел Games.

Если не помогло - ваш путь лежит на сайт Transgaming, в их поиск по играм.

19.5 Как заставить Lingvo работать под Wine?

Есть три пути:

  1. Ставим копированием Lingvo 5 - он работает.
  2. Устанавливаем Lingvo 7.0 под виндами, а затем указываем в конфиге каталог виндов как рабочий. Кусочек конфига с путями будет выглядеть так - http://fine.kalinovka.net/articles/hobby/lorFAQ/files/wine.tgz
  3. Ставим crossover office и на него ставим lingvo 7 или lingvo 8 ML.

19.6 Как поставить на autocad 2000 под wine?

Для этого надо установить wine, потом Autocad, потом перейти в каталог с установленным автокадом (у меня %HOME%/.wine/c/Program Files/acad2000) и в строке набрать wine acad.exe после этого вывалится список библиотек, которых не хватает автокаду. Их нужно скопировать из дистрибутива автокада (я просто скопировал все библиотеки и *.xmx файлы). После этого все должно работать.

Примечание: Если копировать с дистрибутива, лучше копировать не все сразу(т.к. скопируется много лишних) а выделить список dll's и скопировать их, а после отредостировать--что бы названия\высота букв совпадала. А вот xmx's скопировать все, в них пока неразобрался.

19.7 Можно ли запустить 1С под wine?

Есть сайт, посвященный интеграции 1C и linux

На L.O.R периодически всплывает информация об успешном запуске и работе. Вот здесь небольшое обсуждение и вот здесь.

Доподлинно известно, что у 1C должен быть сразу отключен splashscreen, иначе падает тут же.

Многие вместо wine запускают 1C в MS Windows 98se, который в свою очередь работает с win4lin.

20. Games

Для начала - список портированных под Linux игр можно найти на http://www.icculus.org/lgfaq/gamelist.php или http://tuxgames.ru/

20.1 Какие Linux-установщики есть под Windows-игры (т.е. бинарники игр, которые работают с виндовыми ресурсами)?

http://icculus.org/~ravage

20.2 Как временно выйти из игры, запущенной в WineX?

Если у вас несколько рабочих столов, попробуйте переключиться на один из них. В том же KDE, например, Ctrl+F2 - второй стол и т.п.

Примечание: в KDE 3.2 по умолчанию клавиши перехода на определенный стол не заданы (теперь ctrl+alt+стрелка)

20.3 Хочу играть Quake под Linux, как? Где взять quake (1,2,3) под linux?

Существуют родные Quake под Linux. Причем все части.

Конкретно Quake III стоит брать на www.idsoftware.com (для версии 1.32 - ftp://www.idsoftware.com/idstuff/quake3/linux/linuxq3apoint-1.32b-3.x86.run, качаете, ставите, в соответствующий каталог закидываете паки из Windows-версии и все).

Quake I и II имеют многочисленные модификации. Для первого рекомендуется брать quakeforge ( http://www.quakeforge.net) или красивейшую модификацию http://tenebrae.sourceforge.net/index.php?page=download.txt.

Любители 'выжимать кадры' могут собрать quake I и II из исходников ( http://www.icculus.org/quake2) под свою машину.

Вот только с переключением из Quake на другую программу (не выходя) есть сложности - она полностью захватывает управление. Я (jackill) ее пытался на второй копии иксов пускать - работать оно работает, но при переключении в другую копию - падает.

А для настоящих линуксоидов :) имеется особый Q - TEXTMODE QUAKE, http://webpages.mr.net/bobz/ttyquake/

20.4 Quake III вываливается с ошибкой...

Если QIII вываливается с сообщением вида

...loading libGL.so.1: Initializing OpenGL display
...setting mode 3: 640 480
Xlib: connection ti ":0.0" refused by server
Xlib: No protocol specified

Error couldn`t open the X display
... Warning: could not set the given mode (3)
-------- CL_Shutdown ----------
RE_Shutdown( 1 )
-------------------------------
--------- CL_Shutdown ---------
-------------------------------
Sys_Error: FLimp_Init() - could not load OpenGL subsystem

Значит нигде не прописана команда вроде `xhost +localhost`. Лучше всего записать ее в один из стартовых скриптов или в .xinitrc (после чего перезапустить X-сервер)

20.5 В quake III не работает мышь. Что делать?

Вы скачали версию 1.32 вместо 1.32b. Качать quake III нужно отсюда ftp://www.idsoftware.com/idstuff/quake3/linux/linuxq3apoint-1.32b-3.x86.run.

20.6 Как включить звук в Quake 1/2/3 и вообще игр id software?

Как я понимаю, в других программах звук есть :)

1 случай: Наверняка у вас в качестве десктопа стоит KDE или Gnome. Тогда потребуется отключить соответствующий звуковой сервер arts (KDE) или esd (Gnome). Хотя Quake3 умеет работать с arts, делает он это плохо.

2 случай: Установлена ALSA, собранная без поддержки эмуляции OSS. Придется пересобрать драйвер ALSA с опцией --with-oss=yes.

3 случай: Попробуем дать звук напрямую. Для quake 3:

echo "quake 0 0 direct" > /proc/asound/card0/pcm0p/oss
ehho "quake.x86 0 0 disable" > /proc/asound/card0/pcm0c/oss

В остальных quake это тоже сработает - нужно лишь заменить исполняемый файл в данном примере на соответствующий.

20.7 Как настроить игровой сервер с различными типами игры под quake III?

Вот хорошая статья http://www.opennet.ru/docs/HOWTO/Game-Server-HOWTO/quake3.html.

20.8 А есть ли CS под Linux?

К сожалению, нет. Под Linux есть только сервер. А если вы хотите поиграть в него, придется ставить Wine или WineX. Многие утверждают, что под обычным Wine CS идет быстрее.

20.9 Почему Counter Strike под WineX 3.1 не запускается? Висит надпись "Loading..." и все.

Потому что у вас цвет в XFree 24-х битный. Поставьте 16-битный - опция DefaultDepth 16 в XF86Config или startx -- -depth 16.

20.10 Тормозит/Виснет WarCraft3 под Wine, как запустить?

Начнем с того, что карта должна аппаратно поддерживать openGL. Смотрите соответствующие вопросы по установке драйверов к картам ATI и Nvidia.

Запустите war3 так:

user@linux# war3.exe -opengl

Или допишите в  /.transgaming/.config строчку:

~/.transgaming/.config:

;; Warcraft III settings
[AppDefaults\\War3.exe\\transgaming]
"cmdlineadd" = "-opengl"

Все остальное можно узнать здесь - http://www.kerneltraffic.org/wine/wn20020710_128.html

Также можно почитать это - http://bsddoc.ru/index.php?stati_raznoe&submit=dalee#=1

20.11 Многие игры выводят изображение с частотой 60Гц. Как это исправить?

Есть очень простой, хотя и неочевидный метод. Нужно прописать modline'ы под каждое разрешение. Как рассчитывать модлайны - смотрите соответствующий вопрос.

Метод поможет, например, любителям hmm3.

Два раздела, ответственные за герцовку, выглядят у меня так:

Section "Monitor"
        Identifier   "Monitor0"
        VendorName   "Monitor Vendor"
        ModelName    "CTX5378"
        DisplaySize  330        250
        HorizSync    30.0 - 72.0
        VertRefresh  50.0 - 130.0
        ModeLine     "1152x864" 108.0 1152 1200 1328 1528 864 865 868 904 +hsync +vsync
        ModeLine     "1024x768" 94.5 1024 1076 1172 1372 768 769 772 812 +hsync +vsync
        ModeLine     "800x600" 56.3 800 832 896 1032 600 601 604 619 +hsync +vsync
        ModeLine     "640x480" 36.0 640 712 768 808 480 485 488 525 -hsync -vsync
        ModeLine     "400x300" 28.1 400 412 444 508 300 304 306 327 +hsync +vsync doublescan
        ModeLine     "320x200" 15.8 320 360 392 396 200 204 206 222 -hsync +vsync doublescan
        Option      "dpms"
EndSection

Section "Screen"
        Identifier "Screen0"
        Device     "Videocard0"
        Monitor    "Monitor0"
        DefaultDepth     24

        SubSection "Display"
                Depth   8
                Modes   "1152x864" "1024x768" "800x600" "640x480" "400x300" "320x200"
        EndSubSection

        SubSection "Display"
                Depth   16
                Modes   "1152x864" "1024x768" "800x600" "640x480" "400x300" "360x200"
        EndSubSection

        SubSection "Display"
                Depth   24
                Modes   "1152x864" "1024x768" "800x600" "640x480" "400x300" "360x200"
        EndSubSection
EndSection

Обратите внимание на названия разрешения - мы не пишем ничего лишнего, иначе герцовка так и будет низкой (почему - загадка).

20.12 Некоторые игры после завершения не восстанавливают разрешение экрана. Как мне восстановить разрешение не перезапуская X-сервер?

Прочитать ответ на этот вопрос.

21. Linux Security FAQ

Является отдельным документом и поддерживается Vladimir Ivanov AKA oxonian.

http://ivlad.unixgods.net/lor-faq

22. Глоссарий (ну совсем неформальный :)

Сам-то я (fagot) не в восторге от этого раздела, да и самого его существования... Но ведь спрашивают :) А я (jackill) удивляюсь, как можно не догадаться об их значении.

Must Die, он же "Мастдай" или просто "масдай" - желают скорой кончины чему либо, часто и в основном - ОС Microsoft Windows (tm), вплоть до употребления как синонима :)

В оффтопике, под оффтопиком В MS Windows, под MS Windows.

R.I.P - Rest In Peace, покойся в мире, но обычно употребляют в том же контексте, что и must die.

[в] Биореактор [им. Луговского] - тоже, что и в "ф топку", т.е. "нафиг надо"

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

Красноглазые - имеются ввиду линуксоиды, компилирующие свои программы по ночам, обычно в худшем значении этого слова :)

"Запарили скриншоты с ЛОР" - имеется ввиду открытый браузер с загруженным linux.org.ru на картинке. Действительно, таких бывает очень много. Не пишите этого, модераторы удалят, что может отразиться на ваших звездочках.

ПНХ - пошел к черту, но еще дальше ;)

ССЗБ - Сам Себе Злобный Буратино, обычно - "сам виноват"

ХЗ - буквально с "эсперанто" - "я не знаю" ;)

КГ/АМ - Статья плохая, автор - нехороший человек (подробности на udaff.com).

Телепаты в отпуске - Вопрос сформулирован отвратительно: нечетко описана проблема, нечетко описаны условия возникновения проблемы. Нужно поучиться задавать вопросы,

Иксы - слэнговое название X-сервера (XFree86, xorg).

Мясо - слэнговое название сайта http://freshmeat.net

Посмотри в осле - Воспользуйся пиринговой сетью EDonkey.

23. Путеводитель по FAQ

В данном разделе в группы собраны вопросы, которые имеют общие корни, но не могут сосуществовать в одном и том же разделе этого документа.

Шрифты (антиалиазинг, fontconfig, xft, настройки программ)

Карты Nvidia

Карты Ati

Русификация дистрибутивов:

Русификация программ:

KDE

Gnome

Ссылки на другие FAQs и интересные ресурсы - это стоит почитать!

24. Благодарности

Большое спасибо всем, кто помогал и помогает создавать данный документ. Помните, вы помогаете и себе тоже.

Особые благодарности:

Используются ники пользователей сайта linux.org.ru

25. Об этом FAQ

25.1 Где можно найти последнюю версию этого документа?

На http://www.linux.org.ru/books/lor-faq/faq.html - надежнее

И http://fine.kalinovka.net/modules.php?op=modload&name=PagEd&file=index&page_id=2 - возможно, свежее.

25.2 У меня есть вопросы/критика/предложения по этому FAQ, к кому мне обратиться?

Если возникли вопросы по _сути_ ответов, данных в FAQ, их можно задать в форуме linux-org-ru со ссылкой на этот FAQ.

Создателем и ведущим, на сегодня, этого FAQ являюсь я - Сикорский Сергей AKA fagot. Также коррекцией и сбором ответов занимается Метляев Евгений AKA jackill.

Любые замечания/уточнения/предложения в отношении FAQ мною приветствуются. Оставить их можно также в форуме, или написать на fagot собака kalinovka точка net. Я попытаюсь вразумительно ответить (если смогу) на письма, содержание которых будет того стоить.

Пожалуйста, указывайте в теме слово "FAQ", иначе сообщение будет неверно отфильтровано и я его НЕ УВИЖУ!

26. GNU Free Documentation License

GNU Free Documentation License Version 1.2, November 2002

 Copyright (C) 2000,2001,2002  Free Software Foundation, Inc.
     59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 Everyone is permitted to copy and distribute verbatim copies
 of this license document, but changing it is not allowed.

0. PREAMBLE

The purpose of this License is to make a manual, textbook, or other functional and useful document "free" in the sense of freedom: to assure everyone the effective freedom to copy and redistribute it, with or without modifying it, either commercially or noncommercially.Secondarily, this License preserves for the author and publisher a way to get credit for their work, while not being considered responsible for modifications made by others.

This License is a kind of "copyleft", which means that derivative works of the document must themselves be free in the same sense. It complements the GNU General Public License, which is a copyleft license designed for free software.

We have designed this License in order to use it for manuals for free software, because free software needs free documentation: a free program should come with manuals providing the same freedoms that the software does. But this License is not limited to software manuals; it can be used for any textual work, regardless of subject matter or whether it is published as a printed book. We recommend this License principally for works whose purpose is instruction or reference.

1. APPLICABILITY AND DEFINITIONS

This License applies to any manual or other work, in any medium, that contains a notice placed by the copyright holder saying it can be distributed under the terms of this License. Such a notice grants a world-wide, royalty-free license, unlimited in duration, to use that work under the conditions stated herein. The "Document", below, refers to any such manual or work. Any member of the public is a licensee, and is addressed as "you". You accept the license if you copy, modify or distribute the work in a way requiring permission under copyright law.

A "Modified Version" of the Document means any work containing the Document or a portion of it, either copied verbatim, or with modifications and/or translated into another language.

A "Secondary Section" is a named appendix or a front-matter section of the Document that deals exclusively with the relationship of the publishers or authors of the Document to the Document's overall subject (or to related matters) and contains nothing that could fall directly within that overall subject. (Thus, if the Document is in part a textbook of mathematics, a Secondary Section may not explain any mathematics.) The relationship could be a matter of historical connection with the subject or with related matters, or of legal, commercial, philosophical, ethical or political position regarding them.

The "Invariant Sections" are certain Secondary Sections whose titles are designated, as being those of Invariant Sections, in the notice that says that the Document is released under this License. If a section does not fit the above definition of Secondary then it is not allowed to be designated as Invariant. The Document may contain zero Invariant Sections. If the Document does not identify any Invariant Sections then there are none.

The "Cover Texts" are certain short passages of text that are listed, as Front-Cover Texts or Back-Cover Texts, in the notice that says that the Document is released under this License. A Front-Cover Text may be at most 5 words, and a Back-Cover Text may be at most 25 words.

A "Transparent" copy of the Document means a machine-readable copy, represented in a format whose specification is available to the general public, that is suitable for revising the document straightforwardly with generic text editors or (for images composed of pixels) generic paint programs or (for drawings) some widely available drawing editor, and that is suitable for input to text formatters or for automatic translation to a variety of formats suitable for input to text formatters. A copy made in an otherwise Transparent file format whose markup, or absence of markup, has been arranged to thwart or discourage subsequent modification by readers is not Transparent. An image format is not Transparent if used for any substantial amount of text. A copy that is not "Transparent" is called "Opaque".

Examples of suitable formats for Transparent copies include plain ASCII without markup, Texinfo input format, LaTeX input format, SGML or XML using a publicly available DTD, and standard-conforming simple HTML, PostScript or PDF designed for human modification. Examples of transparent image formats include PNG, XCF and JPG. Opaque formats include proprietary formats that can be read and edited only by proprietary word processors, SGML or XML for which the DTD and/or processing tools are not generally available, and the machine-generated HTML, PostScript or PDF produced by some word processors for output purposes only.

The "Title Page" means, for a printed book, the title page itself, plus such following pages as are needed to hold, legibly, the material this License requires to appear in the title page. For works in formats which do not have any title page as such, "Title Page" means the text near the most prominent appearance of the work's title, preceding the beginning of the body of the text.

A section "Entitled XYZ" means a named subunit of the Document whose title either is precisely XYZ or contains XYZ in parentheses following text that translates XYZ in another language. (Here XYZ stands for a specific section name mentioned below, such as "Acknowledgements", "Dedications", "Endorsements", or "History".) To "Preserve the Title" of such a section when you modify the Document means that it remains a section "Entitled XYZ" according to this definition.

The Document may include Warranty Disclaimers next to the notice which states that this License applies to the Document. These Warranty Disclaimers are considered to be included by reference in this License, but only as regards disclaiming warranties: any other implication that these Warranty Disclaimers may have is void and has no effect on the meaning of this License.

2. VERBATIM COPYING

You may copy and distribute the Document in any medium, either commercially or noncommercially, provided that this License, the copyright notices, and the license notice saying this License applies to the Document are reproduced in all copies, and that you add no other conditions whatsoever to those of this License. You may not use technical measures to obstruct or control the reading or furthercopying of the copies you make or distribute. However, you may accept compensation in exchange for copies. If you distribute a large enough number of copies you must also follow the conditions in section 3.

You may also lend copies, under the same conditions stated above, and you may publicly display copies.

3. COPYING IN QUANTITY

If you publish printed copies (or copies in media that commonly have printed covers) of the Document, numbering more than 100, and the Document's license notice requires Cover Texts, you must enclose the copies in covers that carry, clearly and legibly, all these Cover Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on the back cover. Both covers must also clearly and legibly identify you as the publisher of these copies. The front cover must present the full title with all words of the title equally prominent and visible. You may add other material on the covers in addition. Copying with changes limited to the covers, as long as they preserve the title of the Document and satisfy these conditions, can be treated as verbatim copying in other respects.

If the required texts for either cover are too voluminous to fit legibly, you should put the first ones listed (as many as fit reasonably) on the actual cover, and continue the rest onto adjacent pages.

If you publish or distribute Opaque copies of the Document numbering more than 100, you must either include a machine-readable Transparent copy along with each Opaque copy, or state in or with each Opaque copy a computer-network location from which the general network-using public has access to download using public-standard network protocols a complete Transparent copy of the Document, free of added material. If you use the latter option, you must take reasonably prudent steps, when you begin distribution of Opaque copies in quantity, to ensure that this Transparent copy will remain thus accessible at the stated location until at least one year after the last time you distribute an Opaque copy (directly or through your agents or retailers) of that edition to the public.

It is requested, but not required, that you contact the authors of the Document well before redistributing any large number of copies, to give them a chance to provide you with an updated version of the Document.

4. MODIFICATIONS

You may copy and distribute a Modified Version of the Document under the conditions of sections 2 and 3 above, provided that you release the Modified Version under precisely this License, with the Modified Version filling the role of the Document, thus licensing distribution and modification of the Modified Version to whoever possesses a copy of it. In addition, you must do these things in the Modified Version:

A. Use in the Title Page (and on the covers, if any) a title distinct from that of the Document, and from those of previous versions (which should, if there were any, be listed in the History section of the Document). You may use the same title as a previous version if the original publisher of that version gives permission.

B. List on the Title Page, as authors, one or more persons or entities responsible for authorship of the modifications in the Modified Version, together with at least five of the principal authors of the Document (all of its principal authors, if it has fewer than five), unless they release you from this requirement.

C. State on the Title page the name of the publisher of the Modified Version, as the publisher.

D. Preserve all the copyright notices of the Document.

E. Add an appropriate copyright notice for your modifications adjacent to the other copyright notices.

F. Include, immediately after the copyright notices, a license notice giving the public permission to use the Modified Version under the terms of this License, in the form shown in the Addendum below.

G. Preserve in that license notice the full lists of Invariant Sections and required Cover Texts given in the Document's license notice.

H. Include an unaltered copy of this License.

I. Preserve the section Entitled "History", Preserve its Title, and add to it an item stating at least the title, year, new authors, and publisher of the Modified Version as given on the Title Page. If there is no section Entitled "History" in the Document, create one stating the title, year, authors, and publisher of the Document as given on its Title Page, then add an item describing the Modified Version as stated in the previous sentence.

J. Preserve the network location, if any, given in the Document for public access to a Transparent copy of the Document, and likewise the network locations given in the Document for previous versions it was based on. These may be placed in the "History" section. You may omit a network location for a work that was published at least four years before the Document itself, or if the original publisher of the version it refers to gives permission.

K. For any section Entitled "Acknowledgements" or "Dedications", Preserve the Title of the section, and preserve in the section all the substance and tone of each of the contributor acknowledgements and/or dedications given therein.

L. Preserve all the Invariant Sections of the Document, unaltered in their text and in their titles. Section numbers or the equivalent are not considered part of the section titles.

M. Delete any section Entitled "Endorsements". Such a section may not be included in the Modified Version.

N. Do not retitle any existing section to be Entitled "Endorsements" or to conflict in title with any Invariant Section.

O. Preserve any Warranty Disclaimers.

If the Modified Version includes new front-matter sections or appendices that qualify as Secondary Sections and contain no material copied from the Document, you may at your option designate some or all of these sections as invariant. To do this, add their titles to the list of Invariant Sections in the Modified Version's license notice. These titles must be distinct from any other section titles.

You may add a section Entitled "Endorsements", provided it contains nothing but endorsements of your Modified Version by various parties--for example, statements of peer review or that the text has been approved by an organization as the authoritative definition of a standard.

You may add a passage of up to five words as a Front-Cover Text, and a passage of up to 25 words as a Back-Cover Text, to the end of the list of Cover Texts in the Modified Version. Only one passage of Front-Cover Text and one of Back-Cover Text may be added by (or through arrangements made by) any one entity. If the Document already includes a cover text for the same cover, previously added by you or by arrangement made by the same entity you are acting on behalf of, you may not add another; but you may replace the old one, on explicit permission from the previous publisher that added the old one.

The author(s) and publisher(s) of the Document do not by this License give permission to use their names for publicity for or to assert or imply endorsement of any Modified Version.

5. COMBINING DOCUMENTS

You may combine the Document with other documents released under this License, under the terms defined in section 4 above for modified versions, provided that you include in the combination all of the Invariant Sections of all of the original documents, unmodified, and list them all as Invariant Sections of your combined work in its license notice, and that you preserve all their Warranty Disclaimers.

The combined work need only contain one copy of this License, and multiple identical Invariant Sections may be replaced with a single copy. If there are multiple Invariant Sections with the same name but different contents, make the title of each such section unique by adding at the end of it, in parentheses, the name of the original author or publisher of that section if known, or else a unique number. Make the same adjustment to the section titles in the list of Invariant Sections in the license notice of the combined work.

In the combination, you must combine any sections Entitled "History" in the various original documents, forming one section Entitled "History"; likewise combine any sections Entitled "Acknowledgements", and any sections Entitled "Dedications". You must delete all sections Entitled "Endorsements".

6. COLLECTIONS OF DOCUMENTS

You may make a collection consisting of the Document and other documents released under this License, and replace the individual copies of this License in the various documents with a single copy that is included in the collection, provided that you follow the rules of this License for verbatim copying of each of the documents in all other respects.

You may extract a single document from such a collection, and distribute it individually under this License, provided you insert a copy of this License into the extracted document, and follow this License in all other respects regarding verbatim copying of that document.

7. AGGREGATION WITH INDEPENDENT WORKS

A compilation of the Document or its derivatives with other separate and independent documents or works, in or on a volume of a storage or distribution medium, is called an "aggregate" if the copyright resulting from the compilation is not used to limit the legal rights of the compilation's users beyond what the individual works permit. When the Document is included in an aggregate, this License does not apply to the other works in the aggregate which are not themselves derivative works of the Document.

If the Cover Text requirement of section 3 is applicable to these copies of the Document, then if the Document is less than one half of the entire aggregate, the Document's Cover Texts may be placed on covers that bracket the Document within the aggregate, or the electronic equivalent of covers if the Document is in electronic form. Otherwise they must appear on printed covers that bracket the whole aggregate.

8. TRANSLATION

Translation is considered a kind of modification, so you may distribute translations of the Document under the terms of section 4. Replacing Invariant Sections with translations requires special permission from their copyright holders, but you may include translations of some or all Invariant Sections in addition to the original versions of these Invariant Sections. You may include a translation of this License, and all the license notices in the Document, and any Warranty Disclaimers, provided that you also include the original English version of this License and the original versions of those notices and disclaimers. In case of a disagreement between the translation and the original version of this License or a notice or disclaimer, the original version will prevail.

If a section in the Document is Entitled "Acknowledgements", "Dedications", or "History", the requirement (section 4) to Preserve its Title (section 1) will typically require changing the actual title.

9. TERMINATION

You may not copy, modify, sublicense, or distribute the Document except as expressly provided for under this License. Any other attempt to copy, modify, sublicense or distribute the Document is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.

10. FUTURE REVISIONS OF THIS LICENSE

The Free Software Foundation may publish new, revised versions of the GNU Free Documentation License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. See http://www.gnu.org/copyleft/.

Each version of the License is given a distinguishing version number. If the Document specifies that a particular numbered version of this License "or any later version" applies to it, you have the option of following the terms and conditions either of that specified version or of any later version that has been published (not as a draft) by the Free Software Foundation. If the Document does not specify a version number of this License, you may choose any version ever published (not as a draft) by the Free Software Foundation.

ADDENDUM: How to use this License for your documents

To use this License in a document you have written, include a copy of the License in the document and put the following copyright and license notices just after the title page:

    Copyright (c)  YEAR  YOUR NAME.
    Permission is granted to copy, distribute and/or modify this document
    under the terms of the GNU Free Documentation License, Version 1.2
    or any later version published by the Free Software Foundation;
    with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
    A copy of the license is included in the section entitled "GNU
    Free Documentation License".
If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts, replace the "with...Texts." line with this:
    with the Invariant Sections being LIST THEIR TITLES, with the
    Front-Cover Texts being LIST, and with the Back-Cover Texts being LIST.
If you have Invariant Sections without Cover Texts, or some other combination of the three, merge those two alternatives to suit the situation.

If your document contains nontrivial examples of program code, we recommend releasing these examples in parallel under your choice of free software license, such as the GNU General Public License, to permit their use in free software.

Неофициальный перевод данной лицензии можно получить здесь - http://www.infolex.narod.ru/gpl_gnu/gfdlrus.html