- Подписка на печатную версию:
- Подписка на электронную версию:
- Подшивки старых номеров журнала (печатные версии)
LXF72:Ответы
Материал из Linuxformat.
Содержание |
Вопрос? Oтвет!
- Eсли вы завязли в какой-то проблеме и ничего не помогает, поему бы не написать нам? Наши постоянные эксперты помогут решить даже самые сложные вопросы.
Консольная Mandriva?
В Будучи абсолютным новичком в Linux, я решительно купил ваш специальный выпуск, посвященный Mandriva Linux (Get Started With Mandriva). Все шло отлично до тех пор, пока не настало время перезагрузиться и войти в систему. Меня встретил черный экран, где было предложено ввести имя пользователя и пароль, что я и сделал. Oднако дальше этого я не продвинулся.
В журнале был вопрос, описывающий приблизительно такую же проблему, и я решил последовать данным там рекомендациям: зашел в систему от имени root и ввёл команду Xfdrake. Система ответила, что такая команда не найдена (‘Command not found’). Я попробовал выполнить команду less/var/log/Xorg.O.log, чтобы узнать подробности, но получил сообщение ‘No such file or directory’.
Стэн Грейвс (Stan Graves)
O Это довольно частая проблема, возникающая в процессе установки Mandriva (и Mandrake). Иногда становщик не настраивает графическое окружение автоматически. Oбычно это происходит из-за того, что он не может корректно распознать вашу видеокарту или монитор. Когда это происходит, на этапе Summary напротив секции «Графический интерфейс» (Graphical Interface) появляется уведомление «не настроен» (Not Configured). Pешение проблемы, как было написано в спецвыпуске о Mandriva, состоит в следующем: нужно войти в систему в качестве root и запустить программу XFdrake. Команды в Linux зависят от регистра символов (то есть заглавные и строчные буквы различаются), в чем вы уже смогли убедиться на своем опыте. Мы приносим свои извинения за допущенную в журнале неточность. человек, перепутавший ‘F’ и ‘f’, получит выговор.
Н. Б.
Расширение
В Я установил SuSE 9.2 на свой новый компьютер, и так как пол ная установка занимает около 5 Гбайт, я зарезервировал 6 Гбайт под корневой раздел, а все остальное отвел под раздел /home. После установки OpenGroupware.org и некоторых других пакетов, у меня закончилось место в корневом разделе. Будучи профессиональным фото графом и сохраняя все изображения в /home, я подумал, что неплохо было бы обзавестись дополнительным жестким диском, для резервных копий моих фотогра фий, а также использовать его как расширение корневого раздела.
Я хочу разбить новый диск на два раздела. На одном должна быть точная и актуальная копия моей папки /home/mydir/mypictures. Другой будет новым разделом /usr, и на нем нужно сохранить содержимое старого раздела /usr.
Можете ли вы мне посоветовать, как лучше действовать в этой ситуации?
Эрик Bан Тичель (Eric Van tichel)
O Используйте YaST для разметки вашего нового диска, а затем отформатируйте оба раздела.
Если сомневаетесь, какую файловую систему использовать, выберите ReiserFS, которая предлагается по умолчанию. В качестве точки монтирования вашего нового раздела укажите папку /newusr (обратите внимание — не /usr, иначе ваша система перестанет нормально работать). После этого выполните следующие команды (от имени root):
rsync -a /usr/ /newusr/ umount /newusr rmdir /newusr
Затем откройте в любимом текстовом редакторе файл /etc/fstab, замените в нем /newusr на /usr и выполните команду mount /usr. С этого момента вы используете новый раздел /usr, но теперь вам нужно удалить содержимое старой папки /usr:
mkdir /tmp/root mount --bind / /tmp/root rm -fr /tmp/root/usr/* umount /tmp/root df -h / /usr
Последняя команда должна показать, что на корневом разделе действительно стало больше свободного места. Если в дальнейшем вам понадобится переразметить диск, воспользуйтесь LVM. о том, как это сделать, можно прочесть здесь: http://www.tldp.org/HOWTO/LVM-HOWTO/index.html. Для того, чтобы регулярно синхронизировать резервную копию ваших фотографий с папкой mypictures, я рекомендую воспользоваться утилитой rdiff-backup (http://www.nongnu.org/rdiff-backup). Кроме самого копирования, эта программа сохраняет в резервной папке старые версии файлов, которые вы могли удалить или изменить. Rdiff-backup можно запускать с помощью планировщика cron, чтобы обновлять копию так часто, как вы этого захотите. например, для того, чтобы обновлять копию ежедневно, напишите следующий скрипт и добавьте его в /etc/cron.daily:
#!/bin/sh rdiff-backup /home/mydir/mypictures /mnt/backup/mypictures.
Н. Б.
Заблокированый /home
В У меня проблема с доступом к моей домашней папке из Red Hat 8.0 и Debian Sarge (с диска LXF70), и я надеюсь, что вы сможете мне помочь.
Я использую три жестких диска. Два из них (40 и 20 Гбайт) — съемные, они поочередно используются как системные (hda) (я переключаю их в зависимости от того, с каким дистрибутивом нужно работать). Hа каждом из них содержатся разделы /, /boot, /swap, /tmp, /var и /usr, отформатированные в ext3. Третий диск (hdb, 6.4 Гбайт) содержит только мой домашний раздел (/home/stuart/), в файловой системе ext2, в котором я храню свои данные. Hа одном из съемных дисков установлен Mandrake 10.1, и из него я могу нормально получить доступ к /home как под root, так и под обычным пользователем. на другом установлен Red Hat 8.0, и здесь как раз появляются проблемы.
Когда я использую RH и вхожу в систему как root, никаких сложностей с доступом к папке /home/stuart не возникает. однако когда я пытаюсь зайти под обычным пользователем, система выдает ошибку: «Пожалуйста, свяжитесь с вашим системным администратором: невозможно создать файл /home /stuart /.gconf-test. Это значит, что у вас могут быть проблемы с настройкой, так как многим программам необходимо создавать файлы в вашей домашней папке». Oшибка выглядела, как «доступ запрещен» (errno=13).
Я попробовал заменить Red Hat 8.0 на Debian Sarge (который установился без сучка и задоринки), однако, получил лишь другое сообщение об ошибке: «невозможно установить права 0700 для папки личных настроек gnome `/home /stuart /.gnome2_private /’: операция не разрешена (Operation not permitted)’».
Во время установки я позаботился о том, чтобы диск с домашней папкой был распознан установщиком и подключен, но не отформатирован. Hа /home/stuart установлены права 711, на /home/stuart/.gnome2_private/ — 700.
Стюарт Эллиот (Stuart Elliott)
О Тут проблема с правами. Hесмотря на то, что вы используете одинаковые имена пользователей в обеих системах, пользовательские идентификаторы (UID — User ID) в этих дистрибутивах разные — а для выставления прав используются именно числовые идентификаторы. Эту проблему очень легко исправить, однако в будущем это может повлечь за собой серьезные неприятности. Вы должны иметь отдельную домашнюю папку для каждой системы, пусть даже они будут находиться на одном разделе /home.
Для того, чтобы исправить проблему с идентификатором, вы должны присвоить своему пользователю в Debian тот же UID, что используется вами в Mandrake. Процесс несколько усложняется по той причине, что вы не можете одновременно получить доступ к файлам Debian и Mandrake. загрузите Debian и выполните следующую команду:
grep stuart /etc/passwd
Вы должны увидеть что-нибудь вроде этого:
stuart:x:1000:1000:Stuart Elliott,,,:/home /stuart:/bin/bash
Запишите первое число: это ваш пользовательский идентификатор (UID). Теперь загрузитесь в Mandrake и отредактируйте от лица root файл /etc/passwd. Hайдите строку, содержащую ‘stuart’, и измените UID на тот же, что был в Debian. Причина, по которой идентификатор нужно менять в Mandrake, а не в Debian, состоит в том, что в Mandrake пользовательские идентификаторы начинаются с 501, в то время как в большинстве дистрибутивов минимальным UID может быть только 1000. Сохраните измененный файл passwd и измените владельца домашней папки:
chown stuart: -R ~stuart
Теперь можете перезагрузиться в любую систему и свободно получить доступ к своей домашней папке.
Oднако в этом случае вы можете столкнуться с проблемами, потому что в одной и той же папке сохраняются настройки разных дистрибутивов. Если, например, в этих системах есть оболочки Gnome разных версий, то они могут конфликтовать, затирая настройки друг друга.
Самым разумным выходом будет создание отдельных домашних папок для разных дистрибутивов, например /home/stuart-mdk и /home/stuart-deb. Для этого смонтируйте свой раздел с данными как /home, а не как /home/stuart, создайте соответствующие папки и скопируйте в них файлы. Затем отредактируйте файлы /etc/passwd в обоих дистрибутивах для того, чтобы исправить путь к домашним папкам.
Также, есть смысл выделить папку для общих данных, например /home/stuart-common, а затем создать ссылки на данные из на нее в домашних каталогах. Hапример так:
ln -s /home/stuart-common/Mail /home/stuart-deb/Mail ln -s /home/stuart-common/Mail /home/stuart-mdk/Mail
Это позволит вам пользоваться одним почтовым ящиком в разных системах. Используйте существующую папку /home/stuart в качестве шаблона. Я успешно применил этот метод для работы в нескольких системах, и не имел тех проблем с файлами настроек, которые проявляются при единой /home.
Н. Б.
Хранитель шлюза…
В Я хотел помочь своему другу настроить простейший шлюз, но у меня ничего не вышло. Hужно лишь заполнить NAT для него. Я понимаю, что полная реализация скрипта для этого может потребовать много времени, но, может быть, вы хотя бы укажете мне, с чего начать?
Bикрам (Vikram)
O Xорошо, вот краткое руководство. Oно предполагает, что ваша таблица маршрутизации пуста. Выполните следующие команды:
# iptables -F INPUT # iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT # iptables -A INPUT -i lo -j ACCEPT # iptables -P INPUT DROP # iptables -F FORWARD # iptables -P FORWARD ACCEPT # iptables -t nat -F # iptables -t nat -A POSTROUTING -j MASQUERADE
Последнее правило мне не очень нравится: хоть это и самый простой способ, он не очень красив. Лучше заменить эту команду на:
# iptables -t nat -A POSTROUTING -o <внешний интерфейс> -j SNAT to <внешний IP>
Если у вашего шлюза динамический IP-адрес, выполните следующее:
# iptables -t nat -A POSTROUTING -o <внешний интерфейс> -j MASQUERADE
При этом вы должны заменить параметр <внешний интерфейс> на ваш интернет-интерфейс, например на eth0, eth1 или другой.
Г. Х.
Зависание
В Недавно я решил дать Linux еще один шанс. Я разметил свой винчестер на 3 логических раздела: FAT32, Linux и Linux swap (2 Гбайта). Сначала я поставил Windows, а затем попытался установить Mandriva с диска LXF67.
Все шло отлично, пока дело не дошло до запуска установленной системы. При загрузке постоянно происходило зависание. Я решил использовать режим подробного протокола (verbose) и увидел, что зависание случается при инициации swap-раздела. Я несколько раз переразмечал диск, форматировал его, но толку не было. В итоге я решил, что проблема кроется в жестком диске. Дождавшись зарплаты, я купил новый диск, однако проблема осталась. Установка проходит без проблем, корневой раздел монтируется нормально, но как только дело доходит до свопа, все зависает.
Я попытался заново отформатировать swap-раздел и проверить его на ошибки с помощью Partition Magic, однако теперь при загрузке я получаю ошибку. Быть может, разделы должны располагаться в каком-то строгом порядке? или я обязан установить точку монтирования для swap-раздела? В чем тут может быть проблема?
Зигмонт Kонрад (Zygmont Conrad)
O Невозможно точно сказать, в чем проблема, не зная, какая именно ошибка происходит при загрузке. Swap-раздел должен быть отформатирован и иметь соответствующую запись в файле /etc/fstab. В большинстве подобных ситуаций виновником оказывается Partition Magic. Замечено, что у этой программы наблюдаются определенные проблемы с созданием Linux-разделов.
Я бы порекомендовал не создавать разделы для Linux с помощью Partition Magic, а поручить это установщику используемого вами дистрибутива. Тем более, что установщик Mandriva содержит отличный инструмент разметки диска. В Partition Magic просто оставьте место для Linux неразмеченным для того, чтобы инсталлятор мог использовать его для создания разделов. Возможно, на месте Linux-раздела вам придется создать FAT-диск, потому что некоторые версии Partition Magic не любят оставлять неразмеченное дисковое пространство.
Во время установки вы сможете его удалить, либо сразу переформатировать для Linux. Такой вариант предпочтителен: во-первых, разделы создаются системой, которая будет их использовать, а это гарантирует правильность их создания. Во-вторых, установщик сможет правильно их смонтировать с самого начала.
Проблема может быть всего лишь в том, что swap-раздел неправильно отформатирован, но если на диске у вас нет важных данных, я бы все же порекомендовал удалить существующие диски и создать их заново из инсталлятора Mandriva.
Н. Б.
Беспроводное недоразумение
В Я использую два ноутбука Toshiba. Hа одном из них (Toshiba Satellite 522) имеется встроенный WiFi- адаптер Atheros AR5001, соответствующий спецификации 802.11a/b, другой (Toshiba 8000) оснащен картой NETGEAR WG511. SUSE 9.3 распознает карту NETGEAR, однако не хочет ее включать! В качестве беспроводного ADSL-роутера используется NETGEAR DG834G.
Имеется установленный, но не настроенный SUSE 9.3. Что я должен сделать, чтобы настроить свое оборудование?
Джон Г. (John G)
O В SUSE 9.3 есть поддержка чипа prism54, на котором построен адаптер NETGEAR WG511, и она включена по умолчанию. К сожалению, спецификации prism54 не так давно изменились, и драйвер пока не работает с его новыми модификациями.
Xуже всего то, что вы не можете определить, какую модификацию чипа использует ваша карта. Производители оборудования имеют раздражающую привычку модифицировать чип, не меняя номера модели…
Чип требует специальный драйвер с частями закрытого (firmware) кода, который сообщество OpenSource не может использовать. Oднако из этой ситуации есть выход — можно воспользоваться программой NdisWrapper, позволяющей использовать Windows-драйверы, поставляемые с картой.
В первую очередь, вы должны установить NdisWrapper из YaST. Затем нужно достать сам драйвер: воспользоваться диском, поставляемым с картой или загрузить через интернет. Для установки найдите на диске папки, содержащие файлы .inf и .sys для вашего адаптера. затем от имени root выполните следующие команды:
ndiswrapper -i /путь/к_драйверу/driver.inf ndiswrapper -l modprobe ndiswrapper
Первая команда устанавливает драйвер, вторая выводит информацию об установленных драйверах, чтобы вы могли проверить, все ли верно. Третья загружает сам драйвер, и с этого момента ваша карта должна заработать.
Теперь вы можете настроить вашу карту из YaST, войдя в раздел Network Devices > Network Cards. Для получения информации о соединении от вашего маршрутизатора, достаточно выставить автоматическую настройку адреса.
Если у вас не получается установить драйвер с компакт-диска, следуйте инструкциям на http://ndiswrapper.sourceforge.net/mediawiki/index.php/Installation#Install_Windows_driver.
Кстати, этот метод работает и с адаптером Atheros, который установлен на вашем втором ноутбуке.
Н. Б.
Битва драйверов
В Я работаю в фирме, специализирующейся на разработке web- сайтов для дизайнерских компаний. наше программное обеспечение обрабатывает большие массивы мультимедиа-данных и обращается к функциям GPU современных видеокарт. Сейчас мы используем видеокарты от nVIDIA, и вынуждены переустанавливать драйвера после каждой пересборки ядра — а это случается довольно часто.
Когда мы возвращаемся к старому ядру, имеющийся модуль перестает работать, и нам вновь приходится переустанавливать весь драйвер. Можете ли вы нам помочь?
Дункан, Лондон (Duncan, London)
О NVIDIA часто обновляет драйверы для своих видеокарт (и это хорошо), а ваша проблема кроется в привязке драйвера к конкретному ядру. К счастью, вы можете добавить модуль для нового ядра без переустановки всего драйвера, а это значит, что вы можете сохранить старый драйвер, и он будет работать на новом ядре.
Скачайте пакет драйверов с сайта NVIDIA и попробуйте выполнить следующее:
./NVIDIA-Linux-x86-1.0-7667-pkg1.run -A -K
Эта команда установит новый драйвер, но при этом оставит и старую версию.
Н. Б.'
Устанавливаем Kanotix
В Я записал на СD ISO-образ Kanotix, который вы поместили на диск LXF69, и к счастью, он без проблем запускается на моей машине. Мне действительно понравилось как удобство этого дистрибутива, как и разнообразие поставляемых с ним программ.
Hо вопрос в том, как установить его на жесткий диск? Загрузка с компакт-диска занимает слишком много времени, а я хочу научиться работать с этой необычной системой.
Я поискал в документации, там написа- но что-то про параметр ToHD=/dev/hdXX, но у меня так ничего и не получилось (у меня установлен один жесткий диск ATA/100 и пишущий DVD-привод).
Кстати, не могли бы вы мне посоветовать хороший дистрибутив для моего старого ноутбука (Dell P3-500, 256) с поддержкой беспроводных PCMCIA-адаптеров? Я пробовал Fedora 2 и SUSE 9.1 с тремя различными картами (Buffalo, D-Link и Linksys), но так и не добился приемлемого результата.
Боб Дженнер (Bob Jenner)
O Сначала вы должны правильно разметить свой жесткий диск. Для запуска соответствующей программы, нажмите Alt+F2 и в появившемся диалоге запуска наберите:
sudo qtparted
С помощью программы QtParted вы сможете изменить размер существующих логических дисков, создать и удалять разделы. Вам необходимо создать, по крайней мере, два новых раздела: корневой и swap. Oбратите внимание, что под корневой раздел нужно отвести не меньше 3 Гбайт. После этого сохраните изменения, закройте QtParted, и снова вызовите диалог запуска программ (Alt+F2), в котором введите:
sudo kanotix-installer
Для установки выберите вариант «Configure» и следуйте дальнейшим инструкциям. Если вы захотите что-то настроить после установки, воспользуйтесь разделом «Kanotix» меню KDE. Так, например, на нашей тестовой машине установочный скрипт не настроил сеть, однако нам потребовалось совсем немного времени, чтобы это исправить.
Теперь по поводу вашего второго вопроса. Slackware и Debian — хороший выбор для в меру устаревшего оборудования. Поддержка беспроводных адаптеров не зависит от дистрибутива, однако в некоторых из них имеются удобные инструменты настройки сети. Используемые вами адаптеры поддерживали скорость 11 Мб/сек или 54 Мб/сек? Полная поддержка последних пока возможна только с использованием программы NdisWrapper совместно с Windows-драйверами. Узнать больше об использовании NdisWrapper можно на http://ndiswrapper.sourceforge.net.
Н. Б.
Легкий Linux
В Я приобрел старый ноутбук, и хочу использовать на нем Linux. На данный момент там установлен Red Hat 8, но он работает слишком медленно. Привожу параметры ноутбука:
- Процессор Intel Pentium 133
- OЗУ 48 Мб
- Bидеоадаптер C&T HIQV32 (CT65550) с 2 Мб OЗУ
- Жесткий диск 2.02 Гб (разве бывают 2.02? наверно просто 2 Гб…)
- CD-ROM
Какой дистрибутив вы можете посоветовать для такой конфигурации?
Джеймс Мартин (James Martin)
Hеудивительно, что Red Hat работает очень медленно на таком компьютере. По умолчанию в Red Hat используется рабочая среда Gnome, которая очень требовательна к ресурсам. Я представляю, как она работает на 48 Мб памяти. Вам нужен легкий дистрибутив, нацеленный на работу со старым оборудованием.
Скорее всего, Vector Linux будет разумным выбором. Он основан на дистрибутиве Slackware, который знаменит своей нетребовательностью к аппаратному обеспечению, и включает в себя оконный менеджер IceWM. несмотря на то, что IceWM потребляет намного меньше памяти, чем Gnome или KDE, он, тем не менее, имеет неплохую функциональность. Для большего быстродействия можно заменить его на Fluxbox, который, правда, имеет меньше функций. Выбрать оконный менеджер можно во время установки. несмотря на то, что дистрибутив предназначен для старых компьютеров, в состав Vector Linux входят последние версии программ. Версия 5.1 является самой свежей на данный момент.
Вы можете получить Vector Linux на http://www.vectorlinux.com. Убедитесь, что загружаете версию 5.1, а не 5.0 SOHO, так как последняя содержит KDE, и будет работать примерно так же, как Red Hat.
Если в ноутбук можно добавить памяти, я очень рекомендую вам это сделать. Прирост производительности после этого будет гораздо больше, чем от замены процессора. У вас очень маленький жесткий диск, и при этом нужно еще пространство для swap-раздела, поэтому рекомендую быть очень разборчивым при установке и ставить только те пакеты, которые вы действительно будете использовать. Базовой системы и графического окружения вполне хватит для начала.
Н. Б.
Это терминал
В Hе могли бы вы посоветовать программу, подобную HyperTerminal, работающую под Linux?
Eл Скотт (Earl Scott)
O Да, такие программы есть, несмотря на то, что они практически не востребованы. Стоит присмотреться к утилите Minicom (http://alioth.debian.org/projects/minicom), работающей прямо из командной строки. Для любителей графических интерфейсов есть Komport, терминальная программа для KDE. Hа сайте http://komport.sourceforge.net доступны RPM и DEB пакеты, а также исходные тексты.
Н. Б.
Bопросы по Gnome
В У меня, в принципе, 2 вопроса:
1) После того, как я обновил версию GNOME до 2.10 (до этого была версия 2.8) у меня вместо имени папок, в которые были примонтированы мои разделы жёсткого диска (разделы NTFS) начал показываться размер этого раздела, а не имя папки, что крайне не удобно, так как я именовал эти папки соответственно меткам разделов в Windows.
Мой дистрибутив — Debian Etch.
При установке начисто (на другой компьютер) наблюдалось аналогичное поведение GNOME. Мой вопрос заключается собственно в следующем: как вернуть старое поведение при именовании примонтированных разделов?
2) Pаньше Nautilus размещал иконки примонтированных разделов на рабочий стол, как его заставить делать то же самое в новой версии?
Bиталий Ищенко
O Многие приверженцы KDE шутят, что в панель управления Gnome вынесены самые ненужные опции, а самые нужные приходится редактировать в «редакторе конфигурации GConf», неком подобии реестра Microsoft Windows…
Для изменения порядка именования папок в Nautilus следует запустить GConf (Приложения->Системные->Pедактор Конфигурации) и перейти в ветвь apps>nautilus->icon_view. Hас интересует ключ «captions», который отвечает за отображение названий файлов и папок. Значение ключа представляет собой список строк. Вам нужно отредактировать его так, чтобы на первом месте вместо значения «'size» стояло «none». Hовые настройки вступят в силу как только вы нажмете «OК» в диалоге редактирования.
Для того, чтобы включить отображение иконок примонтированных устройств, следует открыть ветвь apps->nautilus>desktop и поставить галочку напротив ключа «volumes_visible». Pезультат будет заметен сразу же.
А.K.
Путь дзен
В Задача простая: Есть ОС — Mandriva 2005, есть принтер Canon iP1000. И нет поддержки принтера в Linux от производителя. Hа страдания пользователей, имевших принтеры от Canon серии i***, в свое время откликнулась фирма Turboprint, написавшая коммерческий драйвер и был драйвер для Canon i250, написанный программистами Canon для употребления в японии, поскольку был выложен на японском сайте Canon. Теперь собственно вопрос: как написать драйвер для принтеров Canon серии i***, используя имеющиеся исходные данные? Вероятность того, что удовлетворительного ответа Вам не удастся придумать, очень большая! Поздравляю с головоломкой!
Щетинин Александр
O Pазработка драйвера — задача непростая, но достойная настоящего дзен-буддиста: если вам это удастся, сообщество вас не забудет. Выпросить у Canon спецификации для написания свободного драйвера не так уж и просто, однако попробуйте, если Будда одарил вас даром убеждения. В любом случае лучше сначала ознакомиться с документацией по CUPS DDK: http://www.cups.org/ddk/cupsddk.html. Xорошим подспорьем будет свободный драйвер для i250, который доступен на новозеландском сайте Canon (http://www.canon.co.nz/products/printers/colour_bj_printers/i250_drivers.html). Всего этого должно быть достаточно для настоящего последователя дзен. Да снизойдет на вас просветление!
Если же вы цените свое время, рекомендую все-таки поддержать немецких программистов, подаривших миру TurboPrint (http://www.turboprint.de). Вспомните, что у них есть жены и дети, которым, быть может, сейчас нечего есть… заплатите им эти 30 евро.
А.K.