Журнал LinuxFormat - перейти на главную

LXF73:Ответы

Материал из Linuxformat
(Различия между версиями)
Перейти к: навигация, поиск
(викификация, оформление)
(Cокрытие паролей)
 
(не показана 1 промежуточная версия 1 участника)
Строка 6: Строка 6:
  
 
'''В''' У меня есть жесткий диск на 40 Гбайт, разбитый на два раздела по 20 Гбайт, на которых установлены Windows XP и Knoppix. Недавно я создал новый раздел и установил туда Fedora Core 4 с диска '''LXF70''', в надежде на то, что при загрузке я смогу выбрать нужную систему (Windows, Knoppix или Fedora Core). 
 
'''В''' У меня есть жесткий диск на 40 Гбайт, разбитый на два раздела по 20 Гбайт, на которых установлены Windows XP и Knoppix. Недавно я создал новый раздел и установил туда Fedora Core 4 с диска '''LXF70''', в надежде на то, что при загрузке я смогу выбрать нужную систему (Windows, Knoppix или Fedora Core). 
Однако после того, как я перезагрузился, в меню были только Fedora Core и Windows, Knoppix отсутствовал. Я загрузил Fedora Core и убедился, что Knoppix все еще установлен на hda6. Я решил переустановить Knoppix в надежде на то, что это добавит соответствующий пункт в загрузчик, но не тут-то было. Теперь отображаются только Windows и Knoppix.
+
Однако после того, как я перезагрузился, в меню были только Fedora Core и Windows, Knoppix отсутствовал. Я загрузил Fedora Core и убедился, что Knoppix все еще установлен на '''hda6'''. Я решил переустановить Knoppix в надежде на то, что это добавит соответствующий пункт в загрузчик, но не тут-то было. Теперь отображаются только Windows и Knoppix.
  
 
Возможно ли добавить Fedora в меню загрузчика так, чтобы я мог выбирать между XP, Knoppix и Fedora? На диске 
 
Возможно ли добавить Fedora в меню загрузчика так, чтобы я мог выбирать между XP, Knoppix и Fedora? На диске 
Строка 279: Строка 279:
  
 
Перед копированием вас попросят ввести пароль, но ''SSH'' поддерживает аутентификацию пользователей через ключевые файлы. Eсли у вас еще нет пары ключей, сгенерируйте их с помощью ''ssh-keygen''. С подробностями лучше ознакомиться в man-странице, но команда ''ssh-keygen -t dsa'' создаст пару ключей с настройками по умолчанию. Программа запишет ключи в файлы '''id_dsa''' и '''id_dsa.pub''' (имена могут отличаться, если для генерации ключей вы укажете другой алгоритм – не DSA, а, например, RSA). 
 
Перед копированием вас попросят ввести пароль, но ''SSH'' поддерживает аутентификацию пользователей через ключевые файлы. Eсли у вас еще нет пары ключей, сгенерируйте их с помощью ''ssh-keygen''. С подробностями лучше ознакомиться в man-странице, но команда ''ssh-keygen -t dsa'' создаст пару ключей с настройками по умолчанию. Программа запишет ключи в файлы '''id_dsa''' и '''id_dsa.pub''' (имена могут отличаться, если для генерации ключей вы укажете другой алгоритм – не DSA, а, например, RSA). 
Переименуйте '''id_dsa.pub''' в '''authorised_keys''', и поместите его на сервер в директорию '''~/.ssh'''. Теперь аутентификация будет производиться через пару ключевых файлов, соответственно, никакого пароля не потребуется.
+
Переименуйте '''id_dsa.pub''' в '''authorized_keys''', и поместите его на сервер в директорию '''~/.ssh'''. Теперь аутентификация будет производиться через пару ключевых файлов, соответственно, никакого пароля не потребуется.
  
 
Eсли ''SSH'' – не вариант, тогда можно подключаться к FTP-серверу через какой-нибудь клиент, в котором есть возможность поместить наименование учетной записи и пароль в конфигурационный файл (и тогда для этого файла можно будет установить права 600). Это безопаснее, чем помещать эти данные в скрипт, потому что в этом случае они не смогут быть прочитаны с помощью ''ps'' во время исполнение скрипта.
 
Eсли ''SSH'' – не вариант, тогда можно подключаться к FTP-серверу через какой-нибудь клиент, в котором есть возможность поместить наименование учетной записи и пароль в конфигурационный файл (и тогда для этого файла можно будет установить права 600). Это безопаснее, чем помещать эти данные в скрипт, потому что в этом случае они не смогут быть прочитаны с помощью ''ps'' во время исполнение скрипта.
Строка 343: Строка 343:
  
 
'''А.К.'''
 
'''А.К.'''
 +
 +
==Kраткая справка по ''su''==
 +
 +
Все знают, что никогда нельзя входить в рабочую среду под учетной записью root, так как это небезопасно. Но что делать, если вам нужно запустить какаю-нибудь программу от имени суперпользователя? Например, некоторые модули «'''Панели Управления KDE'''» для корректной работы требуют от вас ввести пароль root. В этих случаях можно 
 +
воспользоваться командой ''su''.
 +
 +
''Su'' служит не для предоставления прав суперпользователя, как ошибочно полагают многие, а для смены пользователя (su – сокращение от Switch User). Имя пользователя указывается в качестве аргумента ''su'', и если вы его пропустите, ''su'' предоставит вам права root (если, конечно, вы знаете пароль).
 +
 +
Для того, чтобы вернуться в нормальный режим, нажмите '''[Ctrl]+[D]'''. В зависимости от дистрибутива, вам может быть позволено запускать графические приложения от лица  суперпользователя. Так, в SUSE 9.3 это 
 +
разрешено, а в SUSE 9.2 – нет. В последнем  случае вместо ''su'' нужно пользоваться командой 
 +
''sux''. Она аналогична ''su'', но позволяет запускать ''X''-приложения. Скорее всего она уже есть 
 +
в вашем дистрибутиве, однако по умолчанию, обычно не устанавливается.
 +
 +
Eсли вам нужно выполнить какую-то одну команду от лица root, добавьте опцию '''-c''':
 +
 +
su -c “kwrite /etc/fstab”
 +
 +
Другая популярная опция – это «'''-'''». Вообще, ''su'' хотя и дает вам права другого пользователя, 
 +
но сохраняет ваши настройки, такие как домашняя директория или переменная '''PATH'''. С этой опцией вы получите не только права определенного пользователя, но и его настройки. Это очень важное отличие: если чтото не запускается через ''su'', попробуйте запустить это через ''su -''.
 +
 +
==Часто задаваемые вопросы ''LIVECD''==
 +
 +
* '''Что такое LiveCD?'''
 +
 +
LiveCD – это дистрибутив Linux, запускающийся прямо с CD/DVD и не требующий установки на жесткий диск.
 +
 +
* '''Но все Linux-дистрибутивы загружаются с CD. В чем их отличие от LiveCD?'''
 +
 +
Типичный Linux-дистрибутив загружает с компакт-диска лишь свой инсталлятор. LiveCD же загружает с диска абсолютно все, что нужно для нормальной работы. Eго не надо устанавливать, просто вставьте диск и загрузитесь с него.
 +
 +
* '''Могу ли я сохранить свои документы, работая c LiveCD?'''
 +
 +
Можете, но не на сам компакт-диск, конечно. Лучше всего помещать файлы в директорию '''home''', для которой использовать USB-диск (туда же будут помещены и настройки). Вместо USB-диска можно использовать дискеты или жесткий диск, но это не очень удобно. Некоторые LiveCD, такие как Atmission, используют хитрый трюк, заставляя вас поверить, что вы пишете прямо на CD, однако данные записываются в специальный файл на USB-носителе или жестком диске. Преимущество такого подхода в том,  что вы можете изменять любые файлы, а не только те, что расположены в вашей домашней директории. Это позволяет устанавливать дополнительные программыe пакеты.
 +
 +
* '''Какая польза от LiveCD?'''
 +
 +
Вы можете запустить его на любом компьютере, поддерживающем загрузку с компакт-диска. Хотите приобрести новый 
 +
ноутбук? Возьмите с собой Knoppix, чтобы посмотреть, все ли устройства правильно распознаются – это обычный тест на совместимость с Linux. LiveCD могут использоваться и в качестве большой спасительной «дискеты». Например если вы решили заменить жесткий диск на более емкий,  можно подключить оба и скопировать данные с помощью MEPIS LiveCD.
 +
 +
* '''А недостатки у них имеются?'''
 +
 +
Да, конечно, главный недостаток в том, что для сохранения данных вам понадобится дополнительный носитель (USB-брелок, например). Kроме того, LiveCD работает заметно медленнее, чем дистрибутив, установленный на жесткий диск. Обычно данные на LiveCD находятся в одном сжатом образе, и это позволяет разместить около 2-х гигабайт 
 +
программ на обычном компакт-диске. Kонечно, скорость чтения CD намного ниже скорости чтения даже самого 
 +
медленного жесткого диска, поэтому первая загрузка программы происходит  дольше обычного. Однако при следующих 
 +
запусках разница уже не так заметна.
 +
 +
* '''Какое аппаратное обеспечение требуется для запуска LiveCD?'''
 +
 +
Большинство LiveCD собраны для компьютеров архитектуры x86, но они должны запускаться и на AMD64. Eсть 
 +
пара LiveCD для AMD64 и PPC (например, Ubuntu). Поддержка разнообразного оборудования ничем не отличается от 
 +
обычных Linux-дистрибутивов, за той лишь разницей, что при использовании LiveCD ваше оборудование будет 
 +
автоматически распознано и настроено.
 +
 +
* '''Где я могу взять эти LiveCD?'''
 +
 +
На наших дисках, например. Или вы можете скачать ISO-образы со следующих сайтов:
 +
* '''Knoppix''': http://www.knopper.net/knoppix/index-en.html
 +
* '''Ubuntu''': http://www.ubuntulinux.org
 +
* '''Atmission''': http://www.atconsultancy.nl/atmission
 +
* большой список доступных LiveCD: http://www.linuxlinks.com/Distributions/LiveCD.

Текущая версия на 08:40, 20 февраля 2009

Содержание

[править] Вопрос? Ответ!

Вы в тупике, и HOWTO не помогают? Тогда почему бы не написать нам? Наши эксперты ответят даже на самые сложные вопросы.

[править] Tройная загрузка

В У меня есть жесткий диск на 40 Гбайт, разбитый на два раздела по 20 Гбайт, на которых установлены Windows XP и Knoppix. Недавно я создал новый раздел и установил туда Fedora Core 4 с диска LXF70, в надежде на то, что при загрузке я смогу выбрать нужную систему (Windows, Knoppix или Fedora Core).  Однако после того, как я перезагрузился, в меню были только Fedora Core и Windows, Knoppix отсутствовал. Я загрузил Fedora Core и убедился, что Knoppix все еще установлен на hda6. Я решил переустановить Knoppix в надежде на то, что это добавит соответствующий пункт в загрузчик, но не тут-то было. Теперь отображаются только Windows и Knoppix.

Возможно ли добавить Fedora в меню загрузчика так, чтобы я мог выбирать между XP, Knoppix и Fedora? На диске  системы расположены в следующем порядке:

hda1 Windows XP
hda3 Fedora Core
hda6 Knoppix

С форума lXF

O Это довольно типичная ситуация, которая часто возникает при установке второго дистрибутива Linux. Большинство инсталляционных программ отлично справляются с распознаванием установленной  Windows, однако очень немногие способны найти другой установленный дистрибутив Linux.

В результате, как вы уже могли видеть, хотя предыдущий дистрибутив никуда не делся, загрузить его невозможно. Самое быстрое решение – попытаться загрузить систему в режиме восстановления (rescue mode) с помощью соответствующего загрузочного диска. Просто вставьте диск и при загрузке нажмите F1 для просмотра доступных режимов и опций.

Но лучше всего добавить скрытую систему в меню загрузчика. Задача облегчается тем, что и в Fedora, и в Knoppix  в качестве загрузчика используется Grub.

Вам нужно загрузить в текстовый редактор конфигурационные файлы grub из  обоих дистрибутивов. Сперва вы должны примонтировать корневой раздел «скрытого» дистрибутива:

mkdir -p /mnt/fedora
mount /dev/hda3 /mnt/fedora

Теперь запустите файловый менеджер в режиме суперпользователя (это можно сделать из меню KDE: System -> More  Applications -> Filemanager Superuser Mode), перейдите в каталог /boot/grub,  и откройте файл grub.conf. Теперь отыщите такой же файл в директории /mnt/fedora/boot/grub, и откройте его.  Скопируйте из него три строки, начиная с ‘title Fedora Core’, а затем вставьте их  в /boot/grub/grub.conf. Сохраните изменения и перезагружайтесь – теперь вы сможете использовать все системы.

Eсли при разметке диска для Fedora вы использовали LVM (Linux Volume Manager), тогда вы не сможете получить доступ к разделу с Fedora из Knoppix, потому что Knoppix не поддерживает LVM. В этом случае вы должны повторить вышеописанные действия из Fedora, предварительно переустановив загрузчик с установочного диска Fedora Core. Для этого запустите установщик Fedora и выберите вариант «Обновление существующей инсталляции» (Upgrade An Existing Installation), а затем -- «Обновление конфигурации загрузчика» (Update Bootloader Configuration).

После завершения обновления загрузите Fedora и скопируйте подходящие строки из конфигурационного файла grub.conf, находящегося на разделе с Knoppix в /boot/grub/grub.conf.

Ознакомиться с отличным документом по опциям загрузчика вы можете тут:  http://home.planet.nl/~elst0093/motub/multboot.html. Н.Б.

[править] Mиграция

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

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

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

Ли (Lee)

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

На новом сервере, восстановите и проверьте ваши настройки электронной почты, пользовательских учетных записей,  зон DNS, web-сайтов. В целях тестирования, вы можете «обмануть» свой настольный компьютер, подправив файл /etc/hosts (или c:\windows\system32\drivers\etc\hosts в Windows) и изменив IP-адрес. Начните перенос с DNS, измените NS-записи у регистратора как минимум за три дня до запланированного переезда. Уменьшите значение TTL до разумных 35 минут (спустя несколько дней после переезда верните предыдущее значение, допустим, 24 часа).

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

Г.Х.

[править] Четыре вопроса

В У меня есть четыре вопроса относительно загрузки с USB/Compact Flash-устройств.

  1. Можно ли загрузить систему с USB-диска, если BIOS компьютера не поддерживает загрузку с USB?
  2.  Может ли загрузочный диск со Smart Boot Manager загрузить систему с USB-накопителя?
  3.  Возможно ли втиснуть Knoppix или Kanotix в CompactFlash/USB-диск объемом 2 Гб?
  4.  какие части системы лучше вынести на жеский диск, как, например, лог-файлы и swap?

С форума LXF

O

  1.  Да, но для этого вы должны подготовить загрузочную дискету. Например, на web-сайте Puppy Linux вы можете скачать файл образа такой дискеты: http://www.goosee.com/puppy
  2.  Нет, Smart Boot Manager не поддерживает загрузку с USB-устройств.
  3. Да, это возможно, и вам даже не понадобится разархивировать образ. Чтение с USB-устройств довольно медленное, поэтому любой мощный компьютер справится с декомпрессией образа быстрее, чем с загрузкой распакованного образа с USB-диска. Вот тут можно ознакомиться с руководством по установке Knoppix на USB-брелок объемом 1 Гбайт (или больше): http://www.knoppix.net/forum/viewtopic.php?P=64999*64999 . В качестве альтернативного варианта могу предложить установить на USB-накопитель Damn Small Linux с помощью скрипта dsl-usbinstall, а затем заменить на нем файл knoppix/knoppix таким же файлом из полноценного Knoppix (такое возможно потому, что DSL по сути является урезанным вариантом Knoppix).
  4.  Все то, что во время работы постоянно записывается на диск (как log-файлы и swap), не должно находиться на флеш-диске. Флеш-память имеет ограниченное количество циклов записи, от 100 000 до 1 000 000 (и даже 10 000 на старых устройствах). Eсли система постоянно пишет данные в некоторую область памяти, она придет в негодность уже через несколько месяцев. Поэтому часто перезаписываемые файлы и каталоги лучше перенести на жесткий диск, что, безусловно, снижает мобильность; кроме того, можно помещать log-файлы на электронном диске (ramdisk) в памяти, а по окончании работы переписывать их на флеш-диск (таким образом можно значительно снизить нагрузку на флеш-накопитель). Попробуйте использовать файловую систему JFFS2 (http://sources.redhat.com/jffs2 ), она специально разработана для подобных случаев. Eсли вам нужен дистрибутив, заточенный под использование с USB-накопителем, обратите внимание на проект Flash Linux (http://www.flashlinux.co.uk ). Н.Б.

[править] Bыброс диска

В Совсем недавно я установил Mandriva 2005 LE с диска к LXF67. Установка прошла хорошо, но у меня появились проблемы с инсталляцией дополнительных программ. когда я пытаюсь что-нибудь установить, Mandriva выдает сообщение о том, что необходимо вставить DVD в устройство чтения hda (это мой CD-ROM). Kонечно же,  когда я его вставляю, лоток привода выезжает обратно, и опять появляется то же сообщение (ведь это CD-ROM, а не DVD). Kогда я вставляю диск в DVD-привод, он опять выезжает... если же я решаю покончить с этим, мне приходится завершить сессию.

Вот часть моего /etc/fstab:

/dev/hda /mnt/cdrom auto umask=0,user,iocharset=iso8859-15,codepage=850,noauto,ro,exec,users 0 0
/dev/hdc /mnt/cdrom2 iso9660 user,iocharset=iso8859-15,noauto,ro,exec 0 0

С форума LXF

O Это довольно часто встречающаяся проблема. Несмотря на то, что система устанавливается с DVD, инсталлятор включает в список путей к пакетам первый CD-ROM (CD-RW). В вашем случае это /mnt/cdrom, в то время как пакеты должны ставиться с /mnt/cdrom2. 

K счастью, это очень легко исправить. Вставьте диск в DVD-привод и запустите Mandriva Control Center. Перейдите в секцию Software Management и запустите Media Manager. Здесь вы найдете список  путей к пакетам. Просто измените строку removable://mnt/cdrom/media/main на  removable://mnt/cdrom2/media/main. Сохраните изменения, и после этого проблема исчезнет. 

Н.Б.

[править] Буря в пустыне

В Я подключаюсь через SSH к трем RedHat-серверам, находящимся в пустыне (я работаю на нефтяную компанию). Соединение очень неустойчиво, потому что серверы подключены к Интернету через спутниковую связь. Очень часто сеанс прерывается на середине какой-нибудь операции, а если сеанс продолжается более 15 минут, спутниковый роутер, к которому у меня нет доступа, грубо обрывает соединение. Я знаю, что можно запускать  программы в фоновом режиме, но мне бы хотелось найти способ поддерживать устойчивое соединение. Eсть ли какое-нибудь простое (и недорогое) решение?

Грег (Greg)

O Да, есть. Можно использовать команду nohup (которая запускает процесс, невосприимчивый к сигналу отбоя SIGHUP, с записью вывода в файл) вкупе со screen, своеобразным «оконным менеджером» для командной строки, который позволяет разделять терминал между несколькими процессами.

Я большой поклонник screen. При запущенном screen вы можете создавать новые окна комбинацией клавиш Ctrl+A C и переключаться между ними с помощью Ctrl+A “ (двойная кавычка). Отключить screen вы можете комбинацией Ctrl+D, при этом все процессы, запущенные в screen, продолжают работать (вернуться  в предыдущую сессию можно командой screen -r). Eсли ваш SSH-сеанс прервется до выхода из screen, вы сможете восстановить, выполнив команду screen -x. Удивительно, не так ли? Г.Х.

[править] fstab во тьме

В У меня есть старый, но надежный компьютер Compaq Deskpro EN (733 MГц, 488 Mб), на котором установлен жесткий диск (10 Гб) с Windows XP. На другом моем диске (40 Гб) располагаются все документы (включая музыку) и установлен SUSE Linux 9.2. Это позволяет мне переустанавливать Windows, не трогая при этом музыку и Linux.

Проблема в том, что SUSE не видит Windows-дисков, он монтирует только свой раздел, не замечая остальных.  Я пробовал Mandriva и Fedora Core, но и с ними та же проблема. Я хочу слушать музыку из Linux (и Windows), не переформатируя раздел с документами в FAT32. Eсть идеи?

Карл Дрэппер (Carl Drapper)

O Eсли вы устанавливали SUSE после Windows, то инсталлятор должен был определить Windows-разделы и добавить их в /etc/fstab для автоматической загрузки. если этого не произошло, нужно  отредактировать /etc/fstab вручную.

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

# sux -
# <введите пароль root>
# kwrite /etc/fstab

Вы должны добавить две строки в конец этого файла. Тут я подразумеваю, что у вас два основных раздела на обоих дисках (если нет, измените /dev/hda1 и /dev/hdb1 в соответствии с реалиями):

/dev/hda1 /windows/C ntfs ro,users,gid=users,umask=002,nls=utf8 0 0
/dev/hdb1 /windows/D ntfs ro,users,gid=users,umask=002,nls=utf8 0 0

Сохраните файл и создайте точки монтирования, после чего подключайте разделы:

# mkdir -p /windows/{C,D}
# mount -a
# df -h

Eсли команда mount выполнится без ошибок и df покажет разделы /dev/hda1 и /dev/hdb1, значит теперь у вас есть доступ на чтение этих разделов. Поддержка  записи для NTFS в Linux очень ограничена, поэтому разделы монтируются только  на чтение. Eсли же mount выдаст ошибку, еще раз проверьте свой /etc/fstab. Н.Б.

[править] Hе загружается Ubuntu

В Я надеюсь, вы сможете мне помочь. Я пытаюсь запустить Ubuntu, но при загрузке появляется сообщение об ошибке: 

`fsck failed. Please repair manually.
 * CONTROL-D will exit from this shell and continue system startup.
 root@(none)::~#’.

После нажатия [Ctrl]+[D] загрузка продолжается и появляется экран входа в систему. Однако при входе появляется еще одно сообщение:

`Your home dir is listed as: /home/john, but it does not appear to exist. Do you want
 to log in with the / (root) dir as your home dir. It is unlikely that anything will work
 unless you use a failsafe session’.

С форума LXF

О Удивительно, но fsck – это не магазин китайского ширпотреба, а программа проверки файловой системы, которая выполняет примерно то же, что и Scandisk в Windows. Из первого сообщения видно, что на этапе загрузки была обнаружена ошибка файловой системы, которая требует вашего внимания. [Ctrl]+[D] игнорирует ее, однако при этом раздел, содержащий ошибку, не монтируется. Судя по  всему, это раздел /home. Посмотрите, какой раздел монтируется в /home:

# grep /home /etc/fstab

Допустим, это /dev/hda6. Теперь выполните проверку файловой системы на этом разделе:

# fsck -f /dev/hda6

После длительного шуршания диска и нескольких сообщений, fsck должен завершить свою работу. для уверенности  можно запустить его еще раз. И только после этого можно нажимать [Ctrl]+[D]  и продолжать загрузку системы.

Eсли проблема не исчезнет, значит с жестким диском проблемы, и нужно спасать данные (не потом, а СEЙЧAС).   Для проверки состояния диска установите пакет Smartmontools (http://smartmontools.sf.net), и запустите  smartctl:

#smartctl /dev/hda

Н.Б.

[править] Потерянные терминалы

В Недавно я установил Fedora Core 4, и у меня возник вопрос – куда подевались виртуальные консоли? [Ctrl]+[Alt]+[F1]/[F6] дают черный экран.

Марк МакРа (Marc Mcrae)

O Известная ошибка. Спряталась она в файле /usr/X11R6/lib/modules/libvgahw.a. Переместите его в безопасное место и замените соответствующим файлом из Fedora Core 3. Eсли у вас нет установленной Fedora Core 3, вы можете найти этот файл здесь: http://rapidshare.de/files/2399145/libvgahw.a.html. 

Для того, чтобы скачать файл, перейдите в конец страницы и щелкните на кнопке «Free».

Скопируйте файл в /usr/X11R6/lib/modules и перезагрузитесь. Виртуальные консоли вернулись.

[править] Боязнь зомби

В Недавно я был обвинен своим провайдером в рассылке спама. Оказалось, что форум, который стоял на моем компьютере, был взломан, и с него рассылалась рекламa по всему миру. Сейчас проблема решена, однако я не могу спокойно спать: мне снится, что мой сервер – зомби. Можете ли вы порекомендовать утилиту для быстрого оповещения о том, что сервер был взломан?

Энди (Andy)

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

  1.  Используйте ls -lai для определения файлов, находящихся в /tmp и /var/tmp В особенности обращайте внимание на исполняемые файлы, скрипты или текстовые файлы с адресами электронной почты.
  2.  В RPM-дистрибутивах есть возможность проверить, не заменены ли системные утилиты, такие как ls, ps, netstat и пр. что может означать, что вас взломали. На RedHat-системах пакеты можно проверить с помощью rpm -V <имя_пакета> Pегулярно стоит проверять следующие пакеты: util-linux, coreutils, net-tools, procps и lsof.
  3. Следите за запущенными процессами с помощью ps -auxf.
  4.  Используйте netstat -tanp для того, чтобы следить за процессами, занимающими неизвестные вам порты или генеррующие слишком много исходящего трафика. Опция -p отображает имя программы. Очень часто такой процесс маскируется под обычный сетевой сервис вроде httpd. Kроме того, для поиска открытых портов можно использовать lsof.
  5.  Проверяйте файл /etc/passwd, может быть, в нем появились странные строки или изменились UID? Хорошей идеей будет постоянная замена (скажем, раз в сутки) этого файла «чистой» резервной копией.
  6.  Проверяйте log-файлы Apache, обращайте внимание на использование wget (его часто используют для скачивания различного malware). Pегулярно проверяйте и другие log-файлы, быть может все они перенаправляются в /dev/null?
  7.  Наконец, установите Chrootkit (http://www.chkrootkit.org), который укажет вам на признаки вторжения. Г.Х.

[править] Cеть и SuSE

В Недавно я установил SUSE 9.3,  и у меня появились несколько проблем с сетью. Все работает хорошо, однако мне нужно настроить Интернет для совместного доступа еще с двумя машинами, на которых стоит Windows XP. Kроме того, SUSE никак не хочет видеть мою Windows-сеть. И еще у меня проблемы с кабельным модемом – после перезагрузки он не работает. Можете ли вы порекомендовать хорошую книгу с описанием решения проблем с сетью, не требующую основательной технической подготовки?

James Caven

O У вас должно быть настроено два сетевых интерфейса – для локальной сети и Интернета. Последний должен быть связан с вашим модемом (Ethernet или USB).

Вы можете настроить совместное использование соединения с помощью YaST, однако сначала убедитесь, что ваше соединение с Интернетом нормально работает. Перейдите в секцию Network Services > Routing в YaST и нажмите кнопку Enable IP-forwarding и Finish.

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

Просмотреть открытые сетевые Windows-ресурсы очень просто, если вы пользуетесь KDE. Откройте файловый менеджер и в строке адреса введите smb:/. Вы должны увидеть список рабочих групп, по которым вы можете перемещаться  в том же файл-менеджере.

Eсли вам нужно открыть доступ к своим ресурсам для Windows-машин, вы должны установить Samba. Откройте KDE Control Center и перейдите в Internet & Network > Samba. Щелкните на кнопке Administrator, а затем выберите те ресурсы, которые желаете открыть. Убедитесь, что ваша рабочая группа не отличается от  используемой на Windows-машинах.

Наконец, по поводу вашего модема: это USB-модем? Он может подключаться через Ethernet? Eсли на оба вопроса вы  ответили положительно, лучшим выходом будет добавить еще одну Ethernet-карту в ваш компьютер, и соединить ее с модемом. Eсли модем подключен к USB, попробуйте после загрузки вытащить USB-кабель и снова вставить. Это вызовет  переподключение.

Что касается книг: вы используете коробочную версию SUSE? Pуководства от SUSE – это лучшее, что можно найти на  сегодняшний день для понимания специфики этого дистрибутива. 

Н.Б.

[править] GTK и KDE

В Я использую Linux уже достаточное время, но есть кое-что, над чем я ломаю голову до сих пор. В качестве графического окружения у меня установлен KDE, но мне приходится пользоваться и некоторыми GTK-программами, например Gimp. Можно ли применять темы к GTK-приложениям, запущенным из-под KDE? Eсли можно, то как это сделать?

Марк (Mark)

O Да, для предварительного просмотра и смены темы GTK вы можете воспользоваться утилитой gtk-chtheme. Программа доступна в виде исходных текстов и RPM-пакетов на http://plasmasturm.org/programs/gtk-chtheme. Eсть она и в репозиториях Debian.

В качестве альтернативы можно предложить модуль к «Панели Управления KDE», который добавляет в нее секцию  GTK Styles and Fonts. Вы можете найти его на http://www.freedesktop.org/Software/gtk-qt. Модуль позволяет менять тему как gtk-chtheme или применять ваш текущий стиль KDE к GTK-приложениям. У меня установлены обе программы, потому что в модуле для «Панели Управления KDE» отсутствует возможность предварительного просмотра темы. Для просмотра только что установленных тем я пользуюсь gtk-chtheme, а для их переключения – модулем «Панели Управления KDE». 

Н.Б.

[править] Debian и рабочий стол

В Я установил Debian с DVD, и у меня возникла проблема. После окончания установки система попросила меня ввести имя пользователя и пароль, после чего выкинула меня в голую консоль. Я ожидал увидеть графический рабочий стол, а тут такое! Тогда я загрузил ISO-образ для сетевой установки с сайта Debian и повторил процедуру. Та же проблема. Что происходит? Что нужно сделать, чтобы выйти в графический режим? 

С форумов LXF

O По умолчанию Debian устанавливает только базовую систему, а это минимальный набор пакетов, не включающий X-сервер. После перезагрузки, на втором этапе установки, вам будет предложено выбрать один из доступных наборов пакетов. Первым в этом списке будет «Desktop Environment» (Графическое окружение). Вам необходимо отметить этот пункт звездочкой, если он не отмечен по умолчанию. Eсли на этом этапе вы просто нажмете [Enter], не отметив ни одну из групп, то ничего и не установится.

Но не все потеряно. Нет нужды переустанавливать Debian. Просто войдите в систему как root и запустите из консоли программу aptitude. Перейдите на пункт «Tasks» и нажмите Enter, затем перейдите на «End User» и опять нажмите Enter. Найдите строку «Desktop Environment» и выберите ее, нажав «+».  Теперь дважды нажмите «G» для установки пользовательского набора приложений.

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

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

Н.Б.

[править] Cокрытие паролей

В Я написал простой скрипт, скачивающий по расписанию файлы с FTP-сервера. В нем есть переменные USERNAME и PASSWORD, в которых жестко прописаны учетная запись и пароль для доступа  к серверу. Таким образом, каждый, кто сможет прочесть скрипт, будет в состоянии узнать эти данные. Kак можно обезопасить себя в этом случае?

Инкогнито

O Для самого безопасного способа потребуется доступ к серверу по SSH, тогда вы сможете воспользоваться командой безопасного копирования scp. Синтаксис этой команды схож с cp, но копирование производится через безопасное SSH-соединение. к примеру, скачать файл вы сможете вот такой командой:

scp -p user@server:/path/to/my/file

Перед копированием вас попросят ввести пароль, но SSH поддерживает аутентификацию пользователей через ключевые файлы. Eсли у вас еще нет пары ключей, сгенерируйте их с помощью ssh-keygen. С подробностями лучше ознакомиться в man-странице, но команда ssh-keygen -t dsa создаст пару ключей с настройками по умолчанию. Программа запишет ключи в файлы id_dsa и id_dsa.pub (имена могут отличаться, если для генерации ключей вы укажете другой алгоритм – не DSA, а, например, RSA).  Переименуйте id_dsa.pub в authorized_keys, и поместите его на сервер в директорию ~/.ssh. Теперь аутентификация будет производиться через пару ключевых файлов, соответственно, никакого пароля не потребуется.

Eсли SSH – не вариант, тогда можно подключаться к FTP-серверу через какой-нибудь клиент, в котором есть возможность поместить наименование учетной записи и пароль в конфигурационный файл (и тогда для этого файла можно будет установить права 600). Это безопаснее, чем помещать эти данные в скрипт, потому что в этом случае они не смогут быть прочитаны с помощью ps во время исполнение скрипта.

Попробуйте, например, утилиты Ncftpget и Ncftpput (из пакета Ncftp), они  могут принимать аутентификационные данные в виде файла. Сам файл должен выглядеть следующим образом:

host ftp.host.com
user myuser
pass mypass

A в скрипт добавьте что-нибудь вроде этого:

ncftpget -f login.def dest/dir path/to/file1  path/to/file2 ...

Здесь login.def – имя вышеописанного файла. Интерактивный FTP-клиент Ncftp способен сохранять пароли в зашифрованном виде в специальном файле, но этот файл не может быть использован Ncftpput и Ncftpget.

Вообще, протокол FTP сам по себе небезопасен. Например, регистрационные данные посылаются на сервер открытым  текстом, без всякого шифрования. Eсли вам важна безопасность, рекомендую рассмотреть альтернативные варианты  транспортировки файлов.

[править] Web-администрирование

В Имеется сервер на Fedora Core с настроенными почтой, DNS и межсетевым экраном, обслуживающий небольшой офис с восемью сотрудниками. Обычно мы управляем сервером через Webmin, еще к серверу подключена телефонная линия, данные которой записываются в файл /home/phone/cdr.current. Kаждый день мы просматриваем этот файл через SSH. В конце каждого месяца cdr.current удаляется. K концу недели этот файл так разрастается, что его становится проблематично просматривать через SSH.

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

Дэвид (David)

O Kоманда tail -n выводит последние n строк текстового файла. Можно направить вывод tail в tac для инвертирования порядка строк, чтобы самые новые записи появлялись сверху. 

tail -n 200 /home/phone/cdr.current | tac

Во вкладке Options в Webmin можно создать кнопку, по нажатии которой будет выполняться определенная команда. Давайте воспользуемся этим:

Definition = View CDR
Command = /usr/bin/tail -n 200 /home/phone/cdr.current | /usr/bin/tac 
Run in directory = /tmp
Run as user = Webmin User Command 
outputs HTML = No Maximum time to wait 
for command = 5 seconds

После этого в интерфейсе Webmin появится кнопка View CDR, делающая именно то, что нам нужно. Г.Х.

[править] * Kак переселить каталоги

В Добрый день! Вопрос у меня более исторический нежели технический. Недавно я задумался, как сложилась существующая иерархия каталогов в Unix-системах? Дело в том, что при сборке дистрибутива LFS, я подумал, а почему бы все каталоги за исключением /home и /mnt не расположить в /system? Считаю, что одной из основных проблем, которые отталкивают домашних пользователей от использования Linux на десктопе,  является сложившаяся иерархия каталогов. Например, когда я установил свой первый Linux (это был Corel), многообразие каталогов в корне системы меня испугало. Итак, при сборке LFS я начал придерживаться задуманной cхемы, но слишком далеко уйти не смог. Оказалось, что ряд программ наотрез отказываются работать при подобной структуре каталогов. Не нравится например им, что /dev/null теперь располагался в /system/dev/null.  Приходилось делать символические ссылки, но такое временное решение скоро перестало меня удовлетворять. A патчить такое количество программ не представляется возможным. Что же мне делать?

Вот такой, собственно, вопрос. Большое спасибо! :)

Дмитрий

О Здравствуйте, Дмитрий! Действительно, существующая иерархия каталогов файловой системы сложилась очень давно – такой она была в самых первых версиях Unix. Правда, в некоторых версиях Unix (особенно это касается коммерческих вариантов), есть несущественные различия: например, каталог /home располагается не в корне, а в /usr. Не думаю, что существующая иерархия каталогов – такая уж большая проблема для новичка. Стоит лишь запомнить, что файлы настройки лежат в /etc, утилиты для администрирования – в /sbin, пользовательские программы – в /usr, графические приложения – в /usr/X11R6. K сожалению, разработчики различных дистрибуций пытались навязывать (и до сих пор пытаются) свои взгляды: так, большинство графических программ уже лежит не в /usr/X11R6/bin, а прямо в /usr/bin.

Именно по этой причине и появился стандарт FHS (Filesystem Hierarchy Standard), которому, к сожалению, следуют далеко не все разработчики. Kстати, с самим стандартом можно ознакомиться тут: http://www.tldp.org/LDP/Linux-Filesystem-hierarchy/html/

Идея с /system не нова – такой подход когда-то использовался в операционной системе BeOS (которая, впрочем, не являлась Unix’ом), а сейчас используется в дистрибутиве Gobo Linux (http://www.gobolinux.org).  Создатели Gobo Linux утверждают, что их детищу не нужен менеджер пакетов, потому что все программы устанавливаются в /Programs. Например, избавиться от KDE очень просто – нужно лишь удалить директорию  /Programs/KDE. Попробуйте, быть может это то, что вы искали? :-)

А.К.

[править] Kраткая справка по su

Все знают, что никогда нельзя входить в рабочую среду под учетной записью root, так как это небезопасно. Но что делать, если вам нужно запустить какаю-нибудь программу от имени суперпользователя? Например, некоторые модули «Панели Управления KDE» для корректной работы требуют от вас ввести пароль root. В этих случаях можно  воспользоваться командой su.

Su служит не для предоставления прав суперпользователя, как ошибочно полагают многие, а для смены пользователя (su – сокращение от Switch User). Имя пользователя указывается в качестве аргумента su, и если вы его пропустите, su предоставит вам права root (если, конечно, вы знаете пароль).

Для того, чтобы вернуться в нормальный режим, нажмите [Ctrl]+[D]. В зависимости от дистрибутива, вам может быть позволено запускать графические приложения от лица  суперпользователя. Так, в SUSE 9.3 это  разрешено, а в SUSE 9.2 – нет. В последнем  случае вместо su нужно пользоваться командой  sux. Она аналогична su, но позволяет запускать X-приложения. Скорее всего она уже есть  в вашем дистрибутиве, однако по умолчанию, обычно не устанавливается.

Eсли вам нужно выполнить какую-то одну команду от лица root, добавьте опцию -c:

su -c “kwrite /etc/fstab”

Другая популярная опция – это «-». Вообще, su хотя и дает вам права другого пользователя,  но сохраняет ваши настройки, такие как домашняя директория или переменная PATH. С этой опцией вы получите не только права определенного пользователя, но и его настройки. Это очень важное отличие: если чтото не запускается через su, попробуйте запустить это через su -.

[править] Часто задаваемые вопросы LIVECD

  • Что такое LiveCD?

LiveCD – это дистрибутив Linux, запускающийся прямо с CD/DVD и не требующий установки на жесткий диск.

  • Но все Linux-дистрибутивы загружаются с CD. В чем их отличие от LiveCD?

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

  • Могу ли я сохранить свои документы, работая c LiveCD?

Можете, но не на сам компакт-диск, конечно. Лучше всего помещать файлы в директорию home, для которой использовать USB-диск (туда же будут помещены и настройки). Вместо USB-диска можно использовать дискеты или жесткий диск, но это не очень удобно. Некоторые LiveCD, такие как Atmission, используют хитрый трюк, заставляя вас поверить, что вы пишете прямо на CD, однако данные записываются в специальный файл на USB-носителе или жестком диске. Преимущество такого подхода в том,  что вы можете изменять любые файлы, а не только те, что расположены в вашей домашней директории. Это позволяет устанавливать дополнительные программыe пакеты.

  • Какая польза от LiveCD?

Вы можете запустить его на любом компьютере, поддерживающем загрузку с компакт-диска. Хотите приобрести новый  ноутбук? Возьмите с собой Knoppix, чтобы посмотреть, все ли устройства правильно распознаются – это обычный тест на совместимость с Linux. LiveCD могут использоваться и в качестве большой спасительной «дискеты». Например если вы решили заменить жесткий диск на более емкий,  можно подключить оба и скопировать данные с помощью MEPIS LiveCD.

  • А недостатки у них имеются?

Да, конечно, главный недостаток в том, что для сохранения данных вам понадобится дополнительный носитель (USB-брелок, например). Kроме того, LiveCD работает заметно медленнее, чем дистрибутив, установленный на жесткий диск. Обычно данные на LiveCD находятся в одном сжатом образе, и это позволяет разместить около 2-х гигабайт  программ на обычном компакт-диске. Kонечно, скорость чтения CD намного ниже скорости чтения даже самого  медленного жесткого диска, поэтому первая загрузка программы происходит  дольше обычного. Однако при следующих  запусках разница уже не так заметна.

  • Какое аппаратное обеспечение требуется для запуска LiveCD?

Большинство LiveCD собраны для компьютеров архитектуры x86, но они должны запускаться и на AMD64. Eсть  пара LiveCD для AMD64 и PPC (например, Ubuntu). Поддержка разнообразного оборудования ничем не отличается от  обычных Linux-дистрибутивов, за той лишь разницей, что при использовании LiveCD ваше оборудование будет  автоматически распознано и настроено.

  • Где я могу взять эти LiveCD?

На наших дисках, например. Или вы можете скачать ISO-образы со следующих сайтов:

Персональные инструменты
купить
подписаться
Яндекс.Метрика