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

LXF98:Ответы

Материал из Linuxformat
Перейти к: навигация, поиск

Важно! Расрасить, докинуть изображения

Содержание

Ответы

BIOS с «тараканами»

Вопрос

Я купил, как мне казалось, самый лучший компьютер по соотношению цена-производительность, и продолжаю считать его таковым. Но кое-что меня беспокоит. При включении компьютера и выборе загрузки Ubuntu из Grub, на экран выводится сообщение об ошибке MP-BIOS 8254 и каком-то неподключенном таймере. Также почти все дистрибутивы с DVD журнала не запускаются без опции noapic в строке загрузки. При загрузке LXFDVD95 выводится текст

MP-BIOS bug: 8254 timer not connected to IO_APIC
Kernel panic - not syncing: OI_APIC + timer doesn't work!

Искал и в Google, и в справке Ubuntu, но нашел только скудные заявления, что мой таймер не работает. Думаю, что это как-то связано с моей видеокартой NVIDIA 7300LE (известно, что дешевые вещи обходятся дорого), но в чем все-таки причина? Возможно, пригодится другой факт. Все 3D-изображения на моем компьютере становятся нестабильными и содержат множество ошибок. Нужно ли мне покупать видеокарту получше?

Иво Иванов [Ivo Ivanov]

Ответ

Дело не в видеокарте: причиной ваших проблем с графикой может быть APIC (Advanced Programmable Interrupt Controller [Расширенный программируемый контроллер прерываний, – прим. пер.]), управляющий таймингами и прерываниями для различных компонентов вашей материнской платы, включая контроллер дисков и разъемы видеокарт. Контроллеры ACPI довольно часто отходят от спецификаций: многие изготовители полагают, что если плата «работает в Windows», то стандартам следовать не обязательно. Вы уже обнаружили, что надо добавить noapic в параметры загрузки LiveCD, но необходимо также делать это при загрузке с жесткого диска.

Но сначала проверьте наличие обновлений BIOS на сайте изготовителя: вполне возможно, что ваша проблема была решена в последней версии прошивки. Если нет, придется переделать меню загрузки, чтобы всегда использовалась опция noapic. Ubuntu не включает программу для настройки процесса загрузки, и Вам придется править файл конфигурации вручную. Нажмите Alt+F2 и наберите

sudo gedit /boot/grub/menu.lst

Это откроет файл конфигурации меню загрузки в текстовом редакторе. Большинство строк там начинаются с # – это комментарии, и их можно игнорировать. Найдите первую строку, начинающуюся с title; это первый пункт меню загрузки. Вам нужно изменить следующую строчку, начинающуюся с kernel, добавив noapic в ее конец, обязательно через пробел после последнего слова в строке. Файл сохраните. После перезагрузки сообщение об ошибке BIOS исчезнет, и 3D-графика станет стабильной. Видимо, будут и другие улучшения в работе, потому что «глючная» прошивка APIC способна вызывать разные проблемы, от снижения скорости доступа к дискам до неверного хода часов.

Нейл Ботвик

Беспроводная сеть, ау!

Вопрос

Я уже использовал Linux в 1996–1997 годах для запуска UNIX-приложений на ноутбуке, так как Linux был бесплатным, а Sparcbook стоил 10 000 фунтов. Позже я решил, что было бы неплохо использовать его снова и установить его на моем домашнем DELL XPS m1210. Порывшись в Интернете, я нашел, что для моей машины идеален Slackware 10, благополучно установил его и использовал Lilo для двойной загрузки Windows Vista и Linux.

К сожалению, я не смог заставить работать беспроводную сетевую карту; точнее, я не знаю, как это сделать. Я смотрел в Сети, находил там решения, но все они были на чуждом для меня языке. За прошедшие десять лет я очень многое перезабыл и чувствую себя полным «чайником». Моя беспроводная карта: Intel PRO/Wireless 3945ABG Network Connection.

Грег [Greg]

Ответ

Существует официальный драйвер от Intel для этой беспроводной карты, найти его можно здесь: http://ipw3945.sourceforge.net, но он требует довольно свежего ядра для работы, как минимум 2.6.13. Slackware 10 старше трех лет и значительно старше этого драйвера, и использует ядро версии 2.4. Для нормальной работы нового аппаратного обеспечения Вам нужен дистрибутив – и в частности, ядро – такой же новый, как оборудование. Если вы хотите держаться Slackware, то установите новейшую версию 12.0: это первый релиз с ядром 2.6, которое необходимо вашей беспроводной карте, по умолчанию. Пакеты для использования вашей карты со Slackware 12 есть на сайте ftp://ftp.slackware.at/slackware-12.0/extra/intel-wlan-ipw3945.

Как альтернативу, можно установить любой другой дистрибутив, в репозитории которого есть пакет ipw3945. Неплохой выбор – Ubuntu c DVDLXF94, поскольку драйвер ipw3945 включен в установку по умолчанию и должен «просто работать». В Fedora 7 с DVDLXF95 также имеется ipw3945, но перед его установкой требуется добавить репозиторий ATrpms в менеджер пакетов. Как добавить репозиторий, можно прочитать по адресу http://atrpms.net/install.html. Этот сайт содержит отнюдь не одни беспроводные драйверы – там множество самых разнообразных пакетов – и заслуживает добавления в ваш список репозиториев.

Майк Сондерс

Желание синхронности

Вопрос

Хочу перейти на Linux, но боюсь, что синхронизация Microsoft Outlook на моем PDA не будет работать. Еще у меня на PDA стоит Money for PPC, это важная для меня программа – предоставляет ли GnuCash похожие возможности?

Герхард Штигер [Gerhard Stieger]

Ответ

Синхронизацию Linux-приложений с устройствами Windows Pocket PC позволяет производить каркас SyncCE (www.synce.org/index.php/SynCE-Wiki); степень его дружелюбия к пользователю и качество зависят от приложения. Проще всего синхронизируются приложения пакета KDE PIM – KMail, Kontact, KAddressBook и KOrganiser. Чтобы сделать это, необходимо установить пакет synce-kde, присутствующий во многих дистрибутивах, но не во всех устанавливаемый по умолчанию. После установки системы запустите менеджер пакетов и установите synce-kde, если он не помечен как установленный. После этого вы сможете синхронизировать свою почту и контакты.

Однако это потребует запуска системы на базе KDE, типа Mandriva, Kubuntu, PCLinuxOS или SUSE. Все они присутствуют на DVD-дисках LinuxFormat, но вы также можете найти ссылки на них и на множество других дистрибутивов на www.distrowatch.com.

Синхронизация ваших записей о финансах – это другая тема. GnuCash может импортировать стандартные учетные записи QIF, но не экспортировать их. Зато KMyMoney (http://kmymoney2.sourceforge.net) умеет делать и импорт, и экспорт, так что Вы сможете импортировать файлы с вашего PDA и переносить их назад после модификации. Те, кто не разбираются в бухгалтерском учете профессионально или не имеют опыта работы, вероятно, сочтут KMyMoney более легким, чем GnuCash. KMyMoney – тоже KDE-приложение, оно должно присутствовать в любом из перечисленных выше дистрибутивов.

Ник Вейч

Перезапись URL

Вопрос

Пишу web-сайт со множеством PNG-изображений – большинство из них использует прозрачность. Он великолепно работает во всех последних версиях браузеров, но (как и ожидалось) не в IE6. Чтобы исправить это, я создал GIF-версии для каждой картинки (а также таблицу стилей), загружаемые вместо PNG, если пользователь использует IE6.

Я хочу сделать это с помощью mod_rewrite и .htaccess, чтобы images/png/image1.png переписывался в images/gif/image1.gif. Вот мой файл .htaccess:

RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} "MSIE 6"
RewriteRule /images/png/([A-Za-z0-9])+\.png$/images/gif/$1+\.gif
RewriteCond %{HTTP_USER_AGENT} "MSIE 6"
RewriteRule css/style.css css/iestyle.css

Перезапись CSS работает четко, но картинки (PNG на GIF) не заменяются.

OnlyTheTony, с форумов

Ответ

Вы предложили хорошую идею использовать mod_rewrite для смены URL. Сбой происходит потому, что Вы используете + для объединения строк, а mod_rewrite работает с регулярными выражениями, где + означает «одно или более повторений», а не оператор конкатенации.

В регулярных выражениях не нужно соединять строки: чтобы отметить неизменяемые части, используются скобки, а $1, $2... включат их в путь назначения, как у Вас и делается, и все является либо текстом, либо символами регулярных выражений. Так, чтобы заменить последнее вхождение foo в строке на bar, потребуется выражение

/(.*)foo(.*)/$1bar$2/

В вашем случае надо взять нечто, начинающееся с image/png и заканчивающееся на .png, и заменить везде png на gif. Вы можете сделать это, вставив одну из следующих строк вместо первого правила RewriteRule:

 RewriteRule /images/png/(.*)\.png$ /images/gif/$1\.gif
 RewriteRule /(.*)/png/(.*)\.png$ /$1/gif/$2\.gif

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

Нейл Ботвик

Восстановить NTFS

Вопрос

У меня внешний жесткий диск, отформатированный в NTFS. Мне нужно произвести его дефрагментацию, но я не хочу потерять все данные на нем. Можно ли выполнить дефрагментацию NTFS из Linux? Я запускаю Ubuntu Feisty Fawn на старом компьютере PC2800.

churst1, с форумов

Ответ

Короткий ответ – нет, нельзя. Во-первых, почему на этом диске NTFS? Если с него загружают Windows, любые попытки выполнить дефрагментацию из-под Linux могут привести к ее незагружаемости. Но если диск уже содержит Windows, то почему бы не провести дефрагментацию из нее – Windows ведь не только для того, чтобы баловаться игрушками. Если же диск используется только для хранения данных, вы можете снизить фрагментацию, скопировав все их с него, отформатировав диск и записав данные обратно. Это действие требует драйвера файловой системы NTFS с полной поддержкой записи, такой, как коммерческая Paragon NTFS for Linux, которую мы рассматривали в прошлом месяце, или NTFS-3G, включенная в репозиторий Ubuntu. Также необходим пакет ntfsprogs, поэтому запустите Synaptic и инсталлируйте оба.

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

tar cf ntfs.tar /mnt/ntfs && umount /mnt/ntfs && mkntfs /dev/sda1 && mount /dev/sda1/mnt/ntfs -t ntfs-3g && tar xf ntfs.tar -C /mnt/ntfs

Мы сцепили вместе две долгоиграющих команды tar и mkntfs – это позволит Вам не быть сиделкой у компьютера, но каждая следующая команда выполнится, только если предыдущая отработает без ошибок (совершенно незачем переформатировать диск, если произойдет сбой в копировании). Данный пример подразумевает, что Ваш диск – /dev/sda1 и смонтирован он в /mnt/NTFS. Перед запуском команды убедитесь, что подставлены правильные пути для Вашего компьютера.

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

tar czf ntfs.tar.gz /mnt/ntfs && umount /mnt/ntfs && mkntfs /dev/sda1 && mount /dev/sda1 /mnt/ntfs -t ntfs-3g && tar xf ntfs.tar.gz -C /mnt/ntfs

Если Вы используете NTFS только ради чтения из Windows (а зачем она еще нужна?) и только с Вашим компьютером, где стоит Windows, лучшим решением будет переформатирование диска в ext2 и установка драйвера ext2 с www.fs-driver.org в Windows. Это снимет проблему фрагментации, и Вы получите лучшее быстродействие в Linux. В вышеприведенных командах для этого надо заменить mkntfs на mke2fs и удалить

-t ntfs-3g

из команды mount.

Нейл Ботвик

Нужен легковес

Вопрос

Я присматриваю ОС для AMD K6/200. Думал, что NetBSD – лучший выбор, но максимум, чего я добился в результате установки – это режим командной строки. XFree86 (не XOrg) требует отдельной настройки. Я инвалид, и лишние усилия для меня проблема. Существуют ли «простые» версии, наподобие PC-BSD или Desktop BSD – легких версий FreeBSD?

Пробовал DSL на машине P2/400 – ничего особенного, но я открыл DSL-N. Там даже был настоящий тестовый процессор! Что будет с производительностью, если установить Gnome или KDE на NetBSD или DSL-N? Fedora Core с Gnome работает на P2/400 с жуткими тормозами.

Гэри Причард [Gary Prichard]

Ответ

Процессор K6/200 по нынешним меркам очень медленный, поэтому необходим «легкий» дистрибутив для получения терпимой производительности. А в первую очередь нужен нетребовательный оконный менеджер: среды Gnome и KDE к таковым не относятся. Гораздо лучше FluxBox, Xfce или IceWM. С учетом текстового процессора, Xfce был бы лучшим выбором: он использует GTK, как и AbiWord. Раз ресурсы у вас ограничены, выбирайте набор приложений, использующих одни и те же библиотеки, чтобы Ваша система работала более эффективно.

Кстати о ресурсах: один из лучших способов увеличения производительности любой Linux-системы – увеличение объема ОЗУ. Потратив немного фунтов/ долларов/евро/песо на дополнительную память, вы получите больший прирост скорости, чем при вложении тех же средств в более быстрый процессор.

Есть целый набор дистрибутивов, предназначенных для «слабых» систем: вы уже открыли для себя DSL и DSL-N, но советую также изучить Puppy Linux с www.puppylinux.org. DSL ограничен объемом ISO-образа в 50 МБ, а Puppy Linux больше раза в два. Это означает, что он включает гораздо больше программ, например, текстовый процессор AbiWord и сопутствующие офисные приложения, SeaMonkey (новое имя Mozilla) для Web и почты и много чего еще. Недостаток Puppy в том, что процесс инсталляции на жесткий диск очень запутан, так как он спроектирован как LiveCD-система. Зато вы можете запускать его прямо с CD, используя жесткий диск только для хранения данных и настроек.

Другая альтернатива – правда, потяжелее – это Zenwalk (www.zenwalk.org). Если объем Вашего ОЗУ такой, какой обычно использовался на 200 МГц машинах, когда они были в новинку, то его не хватит; но Zenwalk дает больше функций, чем маленькие дистрибутивы.

Запуск любой ОС на K-6/200 – это всегда компромисс между возможностями и производительностью, но он вполне возможен; тем более, если увеличить ОЗУ.

Нейл Ботвик

Работка для Ubuntu

Вопрос

Пытаясь запустить или инсталлировать Ubuntu, я получаю следующее сообщение после появления заставки:

unable to access tty job control turned off

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

Дэвид Лоусон [David Lowson]

Ответ

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

Первое заключается в загрузке с установочного диска и правке fstab в установленной системе. Если ваш корневой раздел находится на /dev/sda1, нужны следующие команды:

sudo -i
mount /dev/sda1 /mnt
gedit /mnt/etc/fstab

В fstab вы должны найти строчку, где монтируется корневой раздел, она выглядит примерно так:

# /dev/sda1
UUID=71f72f22-0a14-45b7-9057-f7b0bd9d819c /ext3
defaults....

UUID (Universally Unique IDentifier [Универсальный Уникальный Идентификатор]) позволяет Ubuntu находить корневой раздел, даже если сменилась точка подключения устройства (например, при добавлении нового диска), но здесь бывают проблемы. Смените UUID=xyz на путь вашего устройства, и система снова начнет загружаться. Fstab в этом случае должен выглядеть так:

# /dev/sda1
/dev/sda1 / ext3 defaults....

Другое решение более экстремальное, так что используйте его только в случае провала трюка с fstab. Вы должны открыть корпус вашего компьютера и отключить все лишние дисковые устройства, оставив только загрузочный диск и DVD, с которого выполнялась установка – но не забудьте сперва выключить компьютер! Дисковод также отключите – достаточно отсоединить кабели питания от неиспользуемых устройств. После этого ваша система должна загружаться. Затем добавьте модуль piix к образу, который Ubuntu загружает при запуске, с помощью команд

sudo echo piix >>/etc/initramfs-tools/modules
sudo update-initramfs -u

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

Ник Вейч

Сервис резервирования

Вопрос

Откликаясь на Сравнение «Онлайн-резервирование» (LXF94), расскажу о мелкой, но, надеюсь, решаемой проблеме. Я использую iBackup, потому что делаю резервное копирование с моего ПК (Ubuntu) и компьютера жены с Windows. Она справляется с резервным копированием без моей помощи.

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

Сервер iBackup не позволяет настраивать время или дату для копируемых файлов, поэтому все файлы имеют дату и время копирования. Из-за этого я копирую сжатые в tar файлы и теряю возможности rsync.

Это хороший повод переключиться на использование Rsync.net, но мне надо копировать файлы также и с компьютера моей жены. С iBackup у нее свое соединение и URL.

Гуус [Guus]

Ответ

Если Вы используете rsync, рестарт резервирования не должен вызывать проблем, потому что rsync «поднимается» с того места, где произошел сбой. Не исключено, что сервер устанавливает время копирования как время создания файлов, потому что так указано в опциях rsync. Вам нужно вызывать rsync с опцией --times для сохранения времени файлов. Опция --archive – комбинация нескольких опций резервирования, включая --times. Это снимет необходимость копирования tar-архивов на сервер и позволит копировать индивидуальные файлы в том виде, в котором они хранятся на вашей машине, что сильно упрощает перезапуск копирования.

Я попробовал Rsync.net после чтения статьи (раньше у меня был Strongspace) и переключился на него полностью. Резервирование нескольких машин выполняется легко, если Вы можете более или менее свободно обращаться с имеющейся памятью – удобно будет создать по директории на резервную копию каждой машины. Rsync.net использует SSH для работы rsync, так что в stunnel нужды нет, и вы можете применить Duplicity для шифрования данных.

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

Новый диск хромает

Вопрос

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

Я сделал копии разделов /, /boot, /usr, /home и некоторых других. Я также создал swap-раздел. /boot, первый основной раздел, сделал загрузочным. Я cписал MBR, используя lilo -M /dev/hdb. Далее монтировал /boot и / разделы, редактируя новую копию /etc/lilo.conf, (теперь на /mnt/hdb5) и запускал lilo -C /hdb5/etc/lilo.conf -b /dev/hdb1 – на вид вроде работало.

Когда я пытаюсь загрузиться с нового диска, я прохожу через стадию загрузочного окна Lilo и вижу сообщения, заканчивающиеся на

initrd finished
Freeing unused kernel memory
Warning: Unable to open an input console

После этого только нажатие на reset выводит компьютер из ступора. У меня стоит "Mandrakelinux release 10.2 (Limited Edition 2005) for i586".

Родни М. Бэйтс [Rodney M Bates]

Ответ

Проблема не в загрузчике. Раз уж ядро загрузилось, значит, загрузчик свое дело сделал. Такая ошибка показывает на отсутствие файла в /dev – возможно, в /dev/console. Хотя динамические файловые системы dev, типа udev и ее предшественника devfs, создают записи устройств в /dev автоматически, некоторые из них нужны еще до запуска devfs/udev. Подозреваю, что вы пропустили содержимое /dev, копируя свой корневой раздел – забыли включить его в команду копирования или исключили «прочие» файловые системы при копировании (вы не пояснили, как именно копировали файловые системы, но cp, rsync и tar имеют опции по исключению других файловых систем).

Содержимое вашей исходной директории /dev теперь скрыто, потому что новая, динамическая /dev была примонтирована поверх нее, но, как вы можете видеть, все еще доступна.

mkdir /mnt/tmp
mount --bind / /mnt/tmp

позволит обратиться ко всему корневому разделу через /mnt/tmp без других подмонтированных файловых систем. /mnt/tmp/home должен быть пуст, а /tmp/mnt/dev должен содержать файлы устройств. Скопируйте их в /dev на Вашем новом разделе, и ошибка при загрузке исчезнет. Самый простой способ убедиться, что новый корневой раздел содержит все файлы со старого –

rsync -a --delete /mnt/tmp/ /mnt/newroot/
Пол Хадсон

Рота, подъем!

Вопрос

Для Mac OS X и Windows существуют специальные программы, которые позволяют организовать включение компьютера по расписанию. А есть ли что-нибудь подобное в Linux?

Анатолий Евдокимов

Ответ

Самый простой способ организовать «подъем по распорядку» – это воспользоваться функцией ACPI WakeUp, которой обладает большинство современных материнских плат. Linux предоставляет к ней два интерфейса.

В ядрах старше 2.6.22 используется файл /proc/acpi/alarm, в который можно записать дату в формате «ГГГГ-ММ-ДД ЧЧ:ММ:СС», например,

echo "2007-10-18 23:30:00" >/proc/acpi/alarm

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

Ядра 2.6.22 и выше предоставляют новый интерфейс через файл /sys/class/rtc/rtcX/wakealarm. Для установки «будильника» в него следует записать желаемый момент времени в виде числа секунд, прошедших с начала эпохи (1 января 1970 года, 00:00:00) – формате, столь любимом ветеранами Unix. Чтобы отменить пробуждение, достаточно записать в файл значение 0. Кроме того, необходимо удостовериться, что аппаратные часы вашего компьютера настроены на UTC, иначе пробуждение произойдет не в то время.

Несмотря на свою простоту, данный способ не лишен недостатков. Так, некоторые материнские платы отказываются принимать во внимание значение, установленное программно, и отдают предпочтение времени, указанному непосредственно через BIOS. Исходя из этого, рекомендуется отключить в BIOS данную функцию – обычно она называется как-то вроде Wake from RTC/Alarm. Иногда пробуждение по таймеру автоматически отменяется, если после его установки в аппаратные часы были внесены изменения – а это делают многие дистрибутивы при выключении. Поищите команду hwclock в скриптах /etc/init.d, и если она там встречается, обеспечьте, чтобы время пробуждения устанавливалось после нее повторно.

Можно пойти другим путем и воспользоваться программой nvram-wakeup (http://http//sourceforge.net/projects/nvram-wakeup), изменяющей установки прямо в энергонезависимой памяти BIOS (отсюда и название). Поскольку формат хранения данных в памяти меняется от производителя к производителю, это получится только на поддерживаемых программой материнских платах, зато будет работать, как часы.

Валентин Синицын

Grub, который загрузит всех

Вопрос

Надоело каждый раз устанавливать в BIOS загрузку с CD, чтобы попробовать новый дистрибутив. Есть ли способ добавить соответствующую опцию в Grub?

Иван Пуренко

Ответ

Научить Grub запускать загрузчик с CD несложно, но для решения этой задачи придется привлечь два других проекта: MEMDISK (http://syslinux.zytor.com/memdisk.php) и Smart Boot Manager (http://btmgr.sourceforge.net/about.html или Главное/SBM на нашем DVD). MEMDISK является частью SYSLINUX и должен быть доступен в вашем дистрибутиве в виде одноименного пакета. Разверните данный пакет и извлеките из него файл memdisk, который следует скопировать в каталог /boot. Далее, возьмите из каталога Главное/SBM на первой стороне нашего DVD файл btmgr.floppy.bz2 – это образ загрузочной дискеты Smart Boot Manager. Нам потребуются ее первые 18 КБ: откройте root-терминал и наберите

dd if=btmgr.floppy of=/boot/sbm.bin bs=1k count=18

Наконец, необходимо создать соответствующую запись в меню Grub:

title Boot from CD
             kernel /boot/memdisk
             initrd /boot/sbm.bin
Валентин Синицын

Врезки

Коротко про…

MD5

Как избежать сравнения больших потоков чисел.

Если вы загружали ISO-образы различных дистрибутивов, то, безусловно, видели рядом с ISO-файлами файлы с именами типа cooldistro1.0.iso.md5, и, возможно, задавались вопросом: а зачем они? Сумма MD5 – это 128-битный криптографический хэш содержимого файла. Один и тот же файл всегда генерирует одну и ту же сумму, но стоит изменить в нем всего один бит, и сумма окажется совершенно иной. MD5 был первоначально разработан для обеспечения безопасности. Проверив сумму MD5, вы можете убедиться, что файл не был подменен.

Ныне MD5 также используется для проверки случайного повреждения во время передачи. При загрузке ISO-образа, скачайте заодно и файл MD5. Прежде чем тратить время на запись файла на компакт-диск и попытки с него загрузиться, проверьте, не был ли файл поврежден, командой:

md5sum cooldistro1.0.iso

Она вернет строку шестнадцатеричных символов, подобную хранящейся в cooldistro1.0.iso.md5. Конечно, ручное сличение 128-битных шестнадцатеричных чисел друг с другом, возможно, не самое лучшее времяпрепровождение (спешу добавить – для меня), особенно если вы скачали много файлов, так что предоставим программе сделать это за нас:

md5sum --check cooldistro1.0.iso.md5

Эта команда позволит узнать, соответствует ли контрольная сумма оригиналу или нет. MD5-файл может содержать контрольные суммы нескольких файлов. Например, исходные тексты Gnome состоят из множества файлов, а их суммы MD5 содержатся в одном. По договоренности, этот файл часто называется MD5SUMS. Можно загрузить все необходимые вам файлы и проверить их за один раз:

md5sum -c MD5SUMS

Кроме того, можно создать файл MD5SUMS:

ms5sum *.iso >MD5SUMS

SHA1-файлы работают по аналогичному принципу, но с несколько более высоким уровнем безопасности. Синтаксис тот же, только используется программа sha1sum.

Часто задаваемые вопросы

FISH

Не путайте с языком программирования FISh…

  • Тогда что это такое?

Это сокращение от FIles (Файлов), передаваемых через протокол (оболочки) SHell.

  • Стоп, не так заумно. Что он делает? Проще говоря, он дает доступ к файлам на удаленной машине только через SSH (или RSH). На удаленной машине не

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

  • Где такое ПО можно взять?

Скорее всего, оно у вас есть; наберите

cd /#sh:user@hostname/some/path

в Midnight Commander, и вы получите список содержимого /some/path на удаленной машине. Если вы опустите часть user@, то будет использоваться текущее имя пользователя.

  • Выходит, через FISH кто-то может читать файлы на моем компьютере?

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

  • Ну, ладно, но Midnight Commander малость устарел, верно? В смысле, это ведь консольная программа, а как насчет GUI?

Если у вас KDE, откройте Konqueror (или мини-консоль Alt+F2) и наберите

fish://user@hostname/some/path

Используя магию kio_slaves, эта команда загрузит удаленную директорию в Konqueror. Благодаря свойству разбиения Konqueror на два окна, легко сравнивать или переписывать локальную и удаленную копии директорий.

  • Итак, я могу использовать это для управления файлами в Konqueror или Midnight Commander?

Управление файлами – это еще не все. Любое приложение KDE, работающее с файлами, может получать их через FISH. Хотите отредактировать файл на вашем web-сервере на другом конце земного шара? Просто наберите

kate fish://me@my.server iffypagename.html

для загрузки его в Kate, и при нажатии Save модифицированный файл отправится обратно на сервер. Конечно, web-страницами вы не ограничены: столь же удобно использовать это для редактирования файлов конфигурации.

  • Значит, можно использовать FISH для управления файлами на службах удаленного резервирования, вроде Rsync.net или StrongSpace?

К сожалению, нет. FISH предусмотрен только для входа через учетную запись с правами запуска базовых команд оболочки. Эти сервисы не дают установить полный вход в оболочку, и FISH не работает, но есть альтернатива. SSHFS (http://fuse.sourceforge.net/sshfs.html) – файловая система FUSE, позволяющая монтировать себя на учетных записях с возможностью только копировать файлы (scp или rsync), но требуется монтировать удаленную файловую систему, даже если вам нужно взять всего один файл.

Вопрос-победитель (английская версия)

Загружаясь с DVD

Вопрос

Я хочу установить DVD с LXF94 на старый ПК в двойную загрузу с Windows 98SE. Это 7-летний Athlon 600 на материнской плате MSI со 128 МБ ОЗУ, двумя жесткими дисками и приводами DVD и CD-RW. Его BIOS не имеет опции загрузки с DVD. Загрузочная последовательность позволяет мне использовать CD-ROM как первое устройство, и я спокойно могу ее изменить. На форумах мне советовали установить сперва Windows, если нужна двойная загрузка (а так и есть). Я использовал Partition Magic V5 для создания и FAT, и Linux-разделов.

По-моему, Linux использует другой формат файлов по сравнению с FAT, но я пытался использовать загрузочную дискету Windows для «установки» или «инсталляции» с DVD, и неудачно. Будет ли это работать, если диск будет CD-ROM? Дискета Red Hat 6.1 позволила мне запустить CD Red Hat, но она требует именно CD Red Hat и не работает с DVD LXF94. С CD Red Hat CD все получилось, но я прервал установку, потому что предпочитаю (K)ubuntu. Могу ли я сделать загрузочную дискету с DVD-драйверами на ней для установки DVD LXF94?

Джон Паттерсон [John Patterson]

Ответ

С точки зрения BIOS, загрузка с CD и DVD – одно и тоже: DVD распознается просто как большой CD-ROM. Старые дистрибутивы Linux использовали загрузочную дискету для быстрого старта установки с CD, поскольку в то время множество компьютеров не поддерживало загрузку с CD. Ваше поколение техники должно поддерживать загрузку с оптических дисков – неважно, CD это или DVD. Установив в BIOS загрузку с CD, Вы не должны иметь проблем. Но могут сказываться личные особенности BIOS: некоторые старые BIOS дают сбой, если подключено более одного оптического привода. Если вы установили в BIOS загрузку с CD и не можете загрузиться с DVD, попробуйте отсоединить кабель от вашего CD-RW, чтобы остался только один оптический привод.

В наше время использование загрузочной дискеты для установки с CD или DVD – это уже экзотика, но на всякий случай мы поместили одну на DVD. Smart Boot Manager в каталоге Essential/SBM на DVD как раз и есть загрузочная дискета для запуска с оптического или жесткого диска. Запустите RAWWRITE.EXE в Windows, вставьте чистую дискету в дисковод и выберите sbootmgr.dsk как исходный образ. Загрузившись с этой дискеты, вы сможете загрузить ваш DVD.

Различия в файловых системах Windows и Linux в этом случае к делу не относятся, так как все данные поступают с DVD, имеющего другую файловую систему (ту же, что у CD). Использование Windows-инструментов для создания разделов Linux способно порождать трудности. Посредством Partition Magic удалите созданные Linux-разделы, включая swap, и оставьте просто неразмеченное место. Затем велите установщику Ubuntu использовать все свободное место на диске («свободное» в этом случае означает «неразмеченное», а не место внутри размеченных разделов).

Ваш компьютер может «тормозить» также из-за памяти. 128 МБ – очень мало по сегодняшним стандартам: современный рабочий стол, вроде KDE в Kubuntu, будет работать очень медленно. Версия Ubuntu на LXFDVD наряду с жадными до ресурсов Gnome и KDE включает нетребовательный рабочий стол Xfce, используемый в Xubuntu.

Большой вопрос

Администратор через браузер

Вопрос

У нас учетная запись web-хостинга, предоставляющего Apache, PHP и MySQL. Мы имеем FTP-доступ для загрузки файлов, но не доступ к командам оболочки, из-за чего настройка базы данных SQL и других вещей затруднительна. Нам нельзя устанавливать на сервер дополнительное ПО. Мы могли бы поискать другое место с shell-доступом, но нам нравится та цена, которую мы здесь платим. Есть ли способ получить административный доступ через web-браузер, и что для этого надо сделать?

Ответ

Хотя переход на хостинг, поддерживающий SSH-доступ, добавит гибкости, существуют решения, привлекательные даже в случае отсутствия командной строки. Основное из них – phphMyAdmin (www.phpmyadmin.net). Как видно из имени, это программа администрирования MySQL, написанная на PHP; она устанавливается как набор файлов в вашей учетной записи после настройки безопасности и конфигурации. Многие web-хостинги предоставляют доступ к базам данных только с локальных IP, чтобы скрипты запускались на сервере, а не на вашей машине.

Загрузите и распакуйте один из tar-архивов с сайта phpMyAdmin (они различаются только языком и методом сжатия). Традиционный метод конфигурирования phpMyAdmin – создать подходящий файл config.inc.php, взяв за основу включенные примеры, но есть также и скрипт установки, который запускается всего один раз после копирования файлов на сервер. Прежде чем что-то делать, убедитесь, что это безопасно. Любой получивший доступ к директории phpMyAdmin может читать и изменять вашу базу данных, так что обезопасьте себя с помощью файла .htaccess (или другим способом), чтобы подключение было возможно только с защищенной паролем учетной записи. По возможности, включите его на раздел вашего пространства хостинга, доступный через HTTPS, ведь вы передаете пароль при запуске установочного скрипта. Создайте директорию config в директории phpmyadmin и скопируйте всю директорию (включая .htaccess) на сервер хостинга.

Зайдите на https://www.ваш.сайт/phpmyadmindir/setup.php и заполните поля своего подключения к MySQL. Теперь перейдите на https://www.ваш.сайт/phphmyadmindir/ – вы увидите список ваших баз данных. Выбор одной из них покажет входящие в нее таблицы. Отсюда можно просматривать, выполнять запросы и модифицировать ваши SQL-таблицы, как вам нравится. Если у вас PostgreSQL, а не MySQL, то существует аналогичная программа, phpPgAdm, доступная по адресу http://phppgadmin.sourceforge.net.

Не только SQL-базы можно администрировать через web-интерфейс. Webmin позволяет изменять все, что вообще разрешено менять на *nix-машинах, не ограничиваясь серверами. В вашем случае Webmin невыгоден потому, что должен быть установлен и запущен от имени root, поскольку использует собственный встроенный сервер, отличающийся от подобных Apache. Спросите об этом своего хостинг-провайдера: может, он уже установил Webmin или его бедного родственника Usermin. Если нет, то он может захотеть его установить: это будет выгодно всем заказчикам. Он также может установить для вас phpMyAdmin, и у вас не будет нужды тратить на это свою дисковую квоту и трафик.

Шаг за шагом: соединяемся с phpMyAdmin

  1. Прячем свой пароль
    Перед копированием файлов phpMyAdmin (pMA) на ваш web-сервер, убедитесь, что они защищены от посторонних взглядов.
  2. Мастер конфигурации
    Загрузив setup.php в своем браузере, вы сможете легко настроить phpMyAdmin, но подключайтесь через HTTPS, чтобы держать пароль в секрете.
  3. Ручная конфигурация
    Или же сконфигурируйте pMA перед загрузкой файлов на web-сервер, отредактировав config.sample.inc.php и сохранив его как config.inc.php.
  4. Вот оно!
    pMA позволяет работать с данными и схемами MySQL одним кликом мышки. Его можно использовать и для создания резервных копий вашей базы.
  5. А также PostgreSQL
    Пользователям PostgreSQL не придется терять чувство превосходства – для них есть phpPgAdm, эквивалент pMA.
  6. Глобальная конфигурация
    C Webmin вы можете сконфигурировать на компьютере все что угодно... точнее, все, что позволит владелец компьютера.
Персональные инструменты
купить
подписаться
Яндекс.Метрика