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

LXF72:Ответы

Материал из Linuxformat
Версия от 21:34, 21 февраля 2009; Crazy Rebel (обсуждение | вклад)

(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к: навигация, поиск

Содержание

Вопрос? 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. 

Н.Б.

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