03.03.2013 Views

LXFDVD - Журнал Linux Format

LXFDVD - Журнал Linux Format

LXFDVD - Журнал Linux Format

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Решение некоторых проблем с USB<br />

Нет длинных имен<br />

В<br />

Я использую USB-брелок на<br />

компьютере с Windows и скачиваю<br />

на него файлы из интернета.<br />

Затем подключаю брелок к компьютеру<br />

с <strong>Linux</strong> дома и нахожу, что<br />

все файлы с длинными именами переименовались<br />

с использованием “~”<br />

Например, mylongfile3.mp3 переименовался<br />

в mylong~1.mp3.<br />

Если бы вы смогли помочь мне<br />

с этим, я был бы очень признателен,<br />

так как понятия не имею, что<br />

тут неправильно. Сперва я использовал<br />

grml.org – дистрибутив на основе<br />

Debian, но нашел, что проблема<br />

имеет место и на других дистрибутивах,<br />

например, Knoppix (тоже на базе<br />

Debian).<br />

Джорди Барнс [Jordi Barnes]<br />

О<br />

Это похоже на проблему с<br />

опциями, используемыми<br />

при монтировании файловой<br />

системы USB-брелка. По умолчанию<br />

на этих устройствах используется<br />

FAT16 или FAT32, которые не поддерживают<br />

длинные имена напрямую и<br />

поэтому используют клуджи (да,<br />

знаю: то, что Windows использует<br />

клуджи, может шокировать) для отображения<br />

видимых вами коротких имен<br />

в соответствующие корректные длинные.<br />

Файловая система vfat в ядре<br />

<strong>Linux</strong> поддерживает это, а msdos –<br />

нет. Запустите команду mount в терминале,<br />

и вы увидите строки типа этих<br />

для вашего USB-брелка.<br />

/dev/sda1 on /media/usbstick type<br />

msdos (rw)<br />

Если тип показывается как msdos,<br />

корень проблемы найден – теперь<br />

вам надо добиться, чтобы ваш брелок<br />

монтировался корректно. Если вы<br />

используете записи в /etc/fstab для<br />

монтирования, измените тип файловой<br />

системы, третий параметр в строке,<br />

с msdos на vfat или auto. Если вы<br />

используете систему автоматического<br />

монтирования вашего дистрибутива,<br />

то тип файловой системы должен<br />

идентифицироваться правильно.<br />

Происходит ли Ваша беда со всеми<br />

брелками, которые вы пробуете,<br />

или только с этим? Если только с<br />

ним, то, наверное, у вас есть повреждения<br />

файловой системы, из-за которых<br />

команда mount неверно определяет<br />

файловую систему. Существуют<br />

обходные способы, но лучшим реше-<br />

нием будет переформатирование<br />

брелка для устранения повреждения<br />

(или его замена, если это не поможет).<br />

Я не смог воспроизвести эту<br />

проблему на grml.org, поэтому подозреваю,<br />

что ваш USB-брелок поврежден<br />

или сломан. Память, используемая<br />

в этих устройствах, имеет ограниченный<br />

срок жизни, и, возможно, он<br />

уже вышел.<br />

Загрузка с USB<br />

В<br />

У меня ноутбук Pentium 3, 866<br />

MГц с жестким диском на 20 ГБ<br />

и Mandriva 2005LE, с загрузкой<br />

через Grub. Я хочу установить Ubuntu<br />

7.04 на внешний жесткий диск, сделав<br />

двойную загрузку. Я знаю, что доступ<br />

к внешнему диску USB2 будет медленным,<br />

так как моя машина имеет только<br />

порты USB1.1.<br />

Моя проблема в том, что BIOS<br />

ноутбука не может сделать USB-диск<br />

первым загрузочным устройством.<br />

Как модифицировать загрузчик для<br />

доступа к USB-диску или использовать<br />

дисковод для установки загрузчика?<br />

Я испытал трудности при поиске<br />

соответствующей информации по<br />

этому вопросу, но может быть эта<br />

тема уже обсуждалась в LXF…<br />

shoreacre, из форума<br />

О<br />

Для загрузки с USB-диска вы<br />

можете использовать имеющийся<br />

загрузчик. Для этого<br />

хорошо использовать альтернативный<br />

установочный CD Ubuntu, он дает<br />

больше контроля над параметрами<br />

установки.<br />

Установите Ubuntu на внешний<br />

диск обычным путем, но не разре-<br />

шайте записать загрузчик в MBR, как<br />

обычно делается. Вместо этого установите<br />

Grub в корневой раздел – это,<br />

скорее всего, /dev/sdb1, если внешний<br />

диск – /dev/sda. Затем загрузитесь<br />

в Mandriva как обычно и смонтируйте<br />

раздел с Ubuntu. Mandriva 2005<br />

использует /dev/hd* для IDE-дисков,<br />

так что ваш USB-диск теперь должен<br />

быть в /dev/sda. Откройте терминал<br />

суперпользователя и запустите<br />

mkdir /mnt/tmp<br />

mount /dev/sda1 /mnt/tmp<br />

ВашТекстовыйРедактор /boot/Grub/<br />

menu.lst /mnt/tmp/boot/Grub/menu.lst<br />

для загрузки обеих конфигураций<br />

загрузчиков в ваш любимый текстовый<br />

редактор. Теперь у вас есть<br />

выбор: быстрый и простой метод или<br />

вариант поприятнее-глазу-но-позаковыристей-в-установке.<br />

Для «быстрого<br />

и простого» добавьте следующие<br />

строчки в конец файла menu.lst<br />

Mandriva:<br />

title Ubuntu menu<br />

root (hd1,0)<br />

chainloader +1<br />

Эти строки добавят в меню запись,<br />

запускающую загрузчик Ubuntu.<br />

Чтобы все делать из одного меню, вам<br />

придется скопировать пункты меню<br />

загрузчика Ubuntu в меню Mandriva.<br />

Посмотрите на его основные опции,<br />

которые идут первыми. Они содержат<br />

три строчки: заголовок, показываемый<br />

в меню, ядро для загрузки<br />

с набором опций и используемый<br />

initrd. Скопируйте эти строки в menu.<br />

lst Mandriva и исправьте заголовок<br />

на что-нибудь более понятное, затем<br />

измените пути к устройствам для кор-<br />

Ответы<br />

ректного их определения. Grub считает<br />

от нуля, так что (hd1,0) – это первый<br />

раздел (0) на втором диске. вы можете<br />

просто включить этот путь в строки<br />

kernel и initrd, или (как я предпочитаю)<br />

как отдельную запись root.<br />

Содержимое вашего menu.lst<br />

должно выглядеть так (для Ubuntu<br />

7.10):<br />

title Ubuntu 7.10<br />

root(hd1,0)<br />

kernel /boot/vmlinuz-2.6.22-14<br />

root=/dev/sda1 quiet splash<br />

initrd /boot/initrd.img-2.6.22-14<br />

вы также должны скопировать другие<br />

пункты меню Ubuntu сходным<br />

образом, или оставить как было, для<br />

тех редких случаев, когда вам нужна<br />

только система по умолчанию.<br />

Если при выборе этого меню происходит<br />

ошибка File not found, значит,<br />

вы неверно задали путь. Порядок<br />

дисков задается в настройках BIOS,<br />

но даже после этого Grub не сможет<br />

загрузиться с USB на всех системах.<br />

Проверьте корректный путь к ядру,<br />

запустив grub в терминале суперпользователя<br />

(или нажав C в меню Grub)<br />

для входа в оболочку Grub. Затем<br />

запустите<br />

find /boot/vmlinuz-2.6.22-14<br />

Команда должна показать корректный<br />

путь к ядру, включая номер<br />

диска. Убедитесь, что он совпадает с<br />

командой root в вашем меню. LXF<br />

Январь 2008 <strong>Linux</strong> <strong>Format</strong> 119

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!