LXF70:Ответы

Материал из Linuxformat.

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

Содержание

Вопрос? Ответ!

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

Магия пасует

В: Не так давно я установил Fedora Core 3 на свой ноутбук Dell 510M в режиме двойной загрузки с Windows XP и это привело к проблемам. Один из разделов Linux (/) практически полон, тогда как другой (/home1) почти пуст.

Перед установкой FC 3 я изменил размер раздела XP при помощи Partition Magic 8.0, но когда я попробовал использовать эту программу для изменения размера раздела Linux (на другой машине), она привела его в непригодное состояние (система не загружалась и мне пришлось переустанавливать все с нуля), так что у меня нет особого желания применять PM еще раз.

Я установил на своем ноутбуке QtParted, но он не позволяет работать с подмонтированными разделами. Я могу прочитать параметры, но не изменить их. Каким образом можно переместить неиспользуемое пространство с раздела /home1 в /, не уничтожая инсталляцию Linux и не рискуя потерять данные? Я потратил много времени, устанавливая и конфигурируя все, что нужно, и я нисколько не хочу начинать все с начала. Винсент Борро

О: Поскольку вы используете разделы, а не тома, изменить их размер, не трогая данные будет весьма непросто. Правильным решением будет произвести резервное копирование данных перед изменением таблицы разделов или даже перенести все необходимое на второй диск (или на раздел Windows, если он не использует NTFS), а затем начать все сначала и переустановить Linux.

Я бы порекомендовал создать отдельный раздел /home, в добавление к обязательному корневому (/) и разделу подкачки еще во время первой установки Linux. Таким образом, вы разграничите данные и системные файлы и сможете обновлять или переустанавливать ОС, не рискуя потерять важную информацию.

Если QtParted не работает, вы можете попробовать урезать файловую систему ext2 или ext3 с помощью утилиты resize2fs, а затем изменить структуру разделов. К сожалению, сказать наверняка, что у вас получится корректно разместить раздел в данном случае, нельзя.

Чтобы установить размер файловой системы на /dev/hda1 равным 512 Мб, следует подать следующую команду (выполняется от имени root):

resize2fs /dev/hda1 512M

Не забывайте отмонтировать раздел перед любыми изменениями, затрагивающими структуру файловой системы. Д. К.

Ловушка для Radeon

В: Я столкнулся с проблемой при использовании дистрибутива Linspire 5.0 Live. Я могу запустить Live CD, но когда я пытаюсь начать установку, введя команду startx в момент, когда появляется курсор и экран становится серым — все застывает. Я не знаю, что делать, чтобы заставить его работать. Буду благодарен за любую помощь. Вот конфигурация моего компьютера:

Pentium 4 3.00 GHz
512MB DDR2 RAM
Жесткий диск 200GB ATA
Материнская плата ABIt AA8 DuraMAX
Видеокарта AtI PCIe Radeon vGuru series RX600.

Linspire предоставляет голосовое руководство о том, как работать в Linux — но не о том, как установить его! PJ

О: Похоже, что Linspire не нравится ваша видеокарта. Возможно, она некорректно распознается или не поддерживается вовсе.

Поскольку вы используете высококлассный и достаточно новый чипсет Radeon, существует вероятность того, что Linspire даже не подозревает о его существовании. Свежие драйвера видеокарт для X появляются сравнительно регулярно, но некоторые дистрибутивы отстают на несколько ревизий, а другие обновляются не так часто.

Вы можете попробовать другой дистрибутив Linux, например SuSe (для которого ваша карта помечена как полностью поддерживаемая в версиях 9.2 и 9.3), Fedora или Mandriva, просто чтобы проверить, как они обходятся с вашим видеоадапетром. Эти дистрибутивы, как правило, обновляются чаще Linspire. Кроме того, они обладают лучшей поддержкой со стороны сообщества и раньше подхватывают различные новшества.

Для Linspire также выпускаются обновления, однако, если вы не можете запустить графическую среду, ими будет тяжело воспользоваться. Д. К.

Отправляемся в вояж

В: Я попробовал Knoppix Live CD с обложки вашего журнала [LXF63] и он определил практически все оборудование, кроме ADSL-модема — на мой взгляд, самого полезного устройства на милю вокруг.

Я использую модем Bt Voyager 100 uSB ADSL Modem, который достался мне, когда я впервые подключался к AOL. Я использую его и с моим текущим провайдером, Central Point. Я не имею понятия, куда идти за драйверами к модему и как их устанавливать.

Те драйвера, что у меня уже есть, запускаются из диалога для ввода пароля. Linux-драйвера будут вести себя так же? Я бы хотел настроить этот модем в Fedora Core или SuSe. Джеймс

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

Я рекомендую вам посетить страницу http://eciadsl.flashtux.org/download.php?lang=en и прокрутить ее вниз до секции eciAdsl Nortek. Загрузите файл .bz2 и перезагрузитесь в Linux. Скопируйте файл .bz2 куда-нибудь в каталог /usr/src и введите следующие команды в ответ на приглашение оболочки:

tar -jxvf eciadsl-usermode-0.10-nortek-alpha.tar.bz2
cd eciadsl-usermode-0.10-nortek-alpha
./configure
make install
make cfg
cp GS7470_SynchFiles/gs7470_synch01*.bin /etc/eciadsl

Теперь необходимо сконфигурировать драйвер с помощью настроек, предоставленных вам Bt. VPI равняется 0, VCI — 38, а пароль может быть любым. Когда вам будет предложено выбрать модем, введите 10 и укажите GS7470 в качестве чипсета. В качестве файла синхронизации используйте gs7470_synch01.bin. В архиве содержится дополнительная информация на тот случай, если у вас возникнут проблемы, однако, приведенных здесь сведений должно вполне хватить для того, чтобы все работало. Д. К.

Приручаем Apache

В: Я новичок в Linux и в настоящий момент тестирую дистрибутив Mandriva, собираясь перейти на него с Windows. В моей инсталляции Windows установлены Apache, PHP и MySQL — я использую их для локального тестирования web-сайтов перед публикацией онлайн. Все работает прекрасно. В Linux, Apache стартует автоматически (я заметил это в предыдущей инсталляции Mandrake). Я также установил PHP и MySQL.

До сих пор все было хорошо. Проблема состоит в том, что все мои данные расположены на диске FAt32 / Windows и я не хочу переносить их на раздел Linux, поскольку тогда я потеряю возможность работать с ними из Windows. Я хочу узнать, можно ли настроить Apache из Linux на доступ к Windows-разделу и что конкретно я должен написать в конфигурационном файле httpd.conf.

Я обратил внимание, что httpd.conf для Linux гораздо короче, чем для Windows, и поэтому я не могу решить, как лучше вносить изменения в данный файл. Редактирование файлов с символом перевода строки в стиле Linux из Windows — не проблема, у меня есть программа, которая читает и пишет текстовые файлы как в формате Windows, так и в формате Linux. C форумов LXF


О: Вы можете отредактировать конфигурационный файл httpd.conf и изменить параметр DocumentRoot так, чтоб он указывал на ваш web-каталог, находящийся на смонтированном разделе FAt32. Чтобы узнать, в какую точку смонтирована эта файловая система, используйте команду mount. Имейте в виду, что Apache не особенно любит файлы, в именах которых используются пробелы, а в Linux, кроме того, чувствителен к регистру символов. Таким образом, ваши существующие web-сайты могут не работать в Linux в точности, как в Windows.

Файл httpd.conf расположен в каталоге /etc/apache. В случае с Linux он, как правило, хорошо прокомментирован, так что вы сможете легко выставить нужные параметры, не особенно заботясь о том, что они делают. Д. К.

Пинг-понг

В: В моей сети три машины и я никак не могу настроить взаимодействие между ними. Назовем их так:
LinBox под управлением Mandrake 10.0
WinBox под управлением Windows 2000
WebBox под управлением Mandrake 9.1 — внутренний web-сервер.

Все выглядит так, как будто сеть работает лишь частично. Связь между компьютерами с Windows и Linux нормальная — ping проходит как от одной машины до другой, так и от WebBox до каждой из них. Однако, в обратную сторону это не верно — WebBox отказывается отвечать на запросы.

Тем не менее, я могу открыть страницу по умолчанию, предоставляемую Apache на WebBox http://192.168.0.3:80. LinBox и WinBox видны в LinNeighborhood с любого из трех компьютеров, но WebBox опять же отсутствует. Все машины принадлежат одной рабочей группе — INteGRANe. Вы можете мне что-нибудь посоветовать? Майк

О: Похоже, ваш web-сервер не настроен на работу в сети Windows, хотя его конфигурация IP в порядке. Возможно, в системе запущен межсетевой экран, который блокирует SMB-трафик, приходящий из сети.

Чтобы проверить это предположение, выполните команду iptables -nvL.

Если вы можете «дозвониться» до системы (с помощью ping) по ее IP-адресу, в нашем случае — 192.168.0.3, я не думаю, что проблема связана с таблицей маршрутизации. Тот факт, что вы можете получить доступ напрямую к web-серверу почти наверняка означает, что с настройками IP все в порядке.

Я предлагаю сравнить файлы smb.conf на LinBox и WebBox, чтобы установить все различия в настройках Samba и удостовериться, что Samba корректно работает на вашем сервере. Д. К.

Какой CMS выбрать?

В: Штат компании, в которой я работаю, составляет примерно 75 человек, принадлежащих разным департаментам. Часть из них технически грамотна, часть — не очень. Мне нужна система управления содержимым (CMS), в которой будут хранится те данные, доступ к которым требуется всем сотрудникам нашей организации. В идеале, технические затраты на их ввод должны быть минимальными, например, текстовые файлы или документы Word. Вы можете порекомендовать мне что-нибудь? Lindsay

О: На самом деле, не так давно я решал эту задачу и хочу поделиться с вами своими соображениями. Mambo (доступен с http://www.mamboserver.com) выглядит весьма привлекательно: это самая популярная, самая универсальная и самая гибкая CMS-система. Из недостатков следует отметить сложность освоения и, насколько мне известно, необходимость править программный код в ходе настройки и персонализации системы.

Я не буду говорить о стандартных решениях — PHP-Nuke, Postnuke и других. Про них можно прочитать в любом другом месте. Я бы хотел отдельно упомянуть здесь twiki (http://twiki.org), поскольку это небольшая симпатичная система, хотя до настройки она и выглядит необъятной с точки зрения неспециалиста.

Впрочем, моя любимая CMS-система — это exponent (http://www.exponentcms.org). Она самая гибкая, простая и понятна даже неопытному глазу. Просто создайте в ней непривилегированного пользователя, зайдите в систему от его имени и вы увидите, что режим редактирования здесь совсем не такой пугающий, как в других продуктах. Напротив, он весьма интуитивен.

Последнее замечание — я предлагаю вам заглянуть на http://www.opensourcecms.com. Здесь можно опробовать в действии различные web-системы. На сайте можно прочитать отзывы о продуктах и посмотреть их рейтинги. Это поможет ИТ-менеджерам составить собственное мнение по данному вопросу. Г. Х.

Передача файлов

В: У меня есть сетевой web-сервер, на котором установлен Apache, и я планирую использовать его для тестирования web-сайтов. Я могу получить доступ к web-страницам по сети, через порт 80, правда, в настоящий момент там наличествует лишь страница по умолчанию.

Каким образом лучше выгружать файлы на сервер? Следует ли мне установить FTP и, если да, то как это сделать? Майк Дэвьес


О: Существует несколько способов настройки удаленного доступа к файлам в Linux, но самым популярным из них является протокол SSH. SSH предоставляет защищенный канал для выполнения команд оболочки или передачи файлов, но он сопряжен с некоторыми накладными расходами, обусловленными операциями дешифрования и распаковки данных (подробнее см. «Неспешное резервирование»). Конечно, в сетях общего пользования безопасность является очень важным аспектом, поэтому защищенность SSH перевешивает этот недостаток. Реализация клиента SSH существует и для Windows. С его помощью вы также можете выполнять команды оболочки и передавать файлы.

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

В случае клиента на базе Microsoft Windows, вы всегда можете установить на Linux сервер и обращаться к web-директориям как к обычным разделяемым ресурсам. Копирование данных туда-сюда не вызовет затруднений, однако, придется немного постараться, чтобы настроить все именно так, как вам нужно. Д. К.

Неспешное резервирование

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

Оба компьютера используют unison на базе SuSe 9.2 с соединением по SSH. Скорость передачи данных составляет около 80Кб/сек, при условии, что NFS работает на 10Мб/сек, а номинальная пропускная способность LAN — 100Мб/сек.

Падение производительности связано с SSH или с unision? Если ли возможность «подкрутить» что-нибудь, чтобы исправить ситуацию? Нейл льюис

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

Однако, когда вы получаете доступ к носителю информации и, возможно, одновременно сжимаете его содержимое, выполнение программ может замедлиться. 80Кб/сек — это очень мало и мы не думаем, что здесь в чем-то повинен SSH. Попробуйте запустить unison поверх rsh или rsync и посмотрите, не станет ли система от этого живее. Чтобы определиться с «виной» SSH, можно также попробовать скопировать напрямую с помощью соответствующих утилит такой же объем данных, как и при резервном копировании. Д. К.

Кто я? Где я?

В: У меня есть сервер Samba, прекрасно работающий под управлением Fedora Core 3. Я решил попробовать установить еще один сервер на основе Debian и подготовил очень простую систему из Debian Stable и Samba. Разделяемый ресурс для хранения данных работает хорошо, но я не могу просмотреть его. у меня получается открыть ресурс по его IP-адресу, так что, похоже, это проблема NetBIOS. Я не понимаю этого, поскольку неоднократно сравнивал файлы smb.conf из FC3 и Debian. Единственное отличие состоит в том, что Debian использует доменную аутентификацию и я настроил его не вручную, как было в Fedora, а с помощью SWAT.

Я также обнаружил, что не могу «прозвонить» из Fedora (с помощью ping) никакую из Windows-машин по ее имени хоста, хотя они могут сделать то же самое по моему имени. В обеих системах запущены nmbd и smbd, кроме того, все они имеют установленные имена, равно как и другие сетевые настройки (IP, шлюз, широковещательный адрес, и т. д.). Взято с форумов LXF

О: Вы всегда можете добавить адрес Linux-машины в файл hosts в Windows, который можно найти с помощью функции поиска. В нем можно указать соответствие имен хостов IP-адресам, специфичным для вашей сети. Даный механизм будет работать даже в том случае, если узел будет недоступен по NetBIOS.

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

netbios name = SambaServer

Д. К.

Без границ

В: Я бы хотел использовать HTTP для выгрузки на сервер крупных файлов (свыше 200Мб), поскольку некоторые из наших клиентов не могут использовать FTP в силу установленных брандмауэров. В качестве обработчика будет использоваться сценарий Perl или PHP. Какие проблемы могут возникнуть у Apache при «бомбардировании» подобным количеством трафика от случая к случаю или даже постоянно? Может быть, необходимо произвести тюнинг сервера или внести какиенибудь дополнения в его конфигурацию? Джон Мойлэн

О: В самом деле, в этой схеме присутствует ряд настраиваемых ограничений на максимальный размер файла. Вам следует обратить особое внимание на настройки Apache (хотя, начиная с версии 2.0, по умолчанию они установлены в бесконечность), PHP и Perl. Основным ограничением для Apache в большинстве случаев, связанных с закачкой файлов, является потребление памяти и время работы процесса httpd. Последнее определяет количество запросов, которые сможет обработать httpd, как из-за ограничений на максимальное число процессов, так и из-за ограничений на отводимый им объем памяти.

Удостоверьтесь также, что вы не предлагаете возможность выгрузки по SSL, чтобы избежать накладных расходов, связанных с шифрованием. используя Perl, разделите процесс (сделайте вызов fork), чтобы освободить процесс httpd и предоставить дочернему процессу возможность завершить начатую работу. Не могу сказать ничего определенного насчет PHP, поскольку я не использовал его какое-то время. Г. Х.

Смотри, но не трогай

В: Я открыл для себя прелести Knoppix, ожидая прибытия моего нового ПК. Жесткий диск моей Linux-машины подключен как /dev/hdb и все данные находятся на нем. Я хотел скопировать несколько файлов с /mnt/hdb7 в /mnt/hda5, но получил сообщение об ошибке: «Только для чтения». Я сделал su и проверил файл /etc/fstab, а также права доступа — все в порядке.

Я никогда не работал с Knoppix раньше, просто решил опробовать новинку. Теперь, когда я понял, что это действительно полезная вещь, я хочу знать, как получить от нее максимум. уверен, я не заметил чего-то весьма очевидного. Взято с форумов LXF

О: Стандартная философия Knoppix — давать пользователям минимум прав на запись, поэтому существующие разделы монтируются в режиме «только для чтения» или не монтируются вовсе. Щелкнув правой кнопкой мыши по пиктограмме и открыв пункт меню «устройство», вы можете снять флажок напротив атрибута «Read Only». После этого, раздел может быть перемонтирован в режиме чтения-записи (для уже смонтированных разделов необходимо предварительно выполнить команду «unmount»).

Внимание: попытка записи на раздел NTFS может привести к потере данных, поскольку Linux не полностью поддерживает эту файловую систему! Однако, запись на разделы DOS и FAT32 вполне безопасна. Команда

mount -o remount,rw /mnt/<раздел>

позволяет перемонтировать раздел в режиме чтения-записи прямо из консоли. Д. К.

Уголок писателя

В: Я использую внешний жесткий диск Lacie uSB2 160Гб, отформатированный как первичный раздел FAT32. Когда я подсоединяю этот диск, на рабочем столе появляется пиктограмма отмонтированного устройства, которое прекрасно монтируется при щелчке мышью. Однако, я ничего не могу записать на него. Я проверил все относящиеся к делу права доступа и не нашел причин, препятствующих записи — но Linux, тем не менее, не позволяет мне этого. В идеале я хотел бы просто поместить нужную запись в /etc/fstab. Я пробовал такой вариант:

/dev/sdb1 /mnt/LACIe vfat 0 0

Я даже пытался указать опции fmask=775 and mask=775, но все равно ничего не получилось. Кроме того, когда я смонтировал sdb1 в /mnt/LaCie, автоматическая uSB-пиктограмма «испортилась», поскольку она собиралась смонтировать это же самое устройство в /media/sdb1.

Я использую Kubuntu и KDe 3.4 Майк Смит

О: Попробуйте включить в fstab опцию user, позволяющую монтировать диск непривилегированному пользователю. Это позволит последнему читать и писать данные на устройство. Кроме этого, можно использовать параметры uid= и gid=, чтобы указать для диска значения UID/GID по умолчанию, хотя для определенных типов файловых систем, в том числе, ext3 и vfat, это не имеет никакого значения. Д. К.

Защищенное соединение

В: Я настраиваю межсетевой экран, интерфейс eth0 которого подключен к интернету, а eth1 — к локальной сети (172.16.2.0). Я разместила следующее правило, предотвращающее доступ к компьютеру внутренней сети (172.16.2.120) через брандмауэр по протоколу SSH:

iptables -A FORWARD -p tcp -s 0/0 -d 172.16.2.120 --dport 22 -j DROP

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

iptables -A FORWARD -p tcp -s 172.16.2.0/24 -d 172.16.2.120 --dport 22 -j DROP
iptables -A FORWARD -p tcp -s 172.16.2.220 -d 172.16.2.120 --dport 22 -j DROP
iptables -A FORWARD -p tcp -d 172.16.2.120 --dport 22 -j DROP
iptables -P FORWARD DROP

Но я все равно могу подключиться к 172.16.2.120 с другого компьютера локальной подсети. Я читала и читала документацию до посинения, но так и не смогла понять, почему это не работает. Missy

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

Альтернативным вариантом, если у вас имеется свободная сетевая карта, может стать разбиение сети на две секции с последующим соединением их при помощи Linux-пакета bridge-utils. В этом случае вы сможете фильтровать на межсетевом экране трафик, передаваемый между двумя сегментами сети, хотя фактически маршрутизации не будет. Подробную информацию по этому вопросу можно найти http://bridge.sf.net. Д. К.

Снова, снова и снова…

В: У меня дома есть сеть из двух компьютеров, один работает под управлением Windows XP, а другой — Mandrake 10.1. Машина с Mandrake выполняет роль сервера для Windows и поддерживает соединение с интернетом.

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

iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
echo 1 > /proc/sys/net/ipv4/ip_forward
route add default ppp0

В каких файлах мне следует разместить эти команды, чтобы не приходилось каждый раз набирать их вручную?

О: Добавив правило iptables, можно вызвать сценарий /etc/init.d/iptables save, который сохранит настройки iptables таким образом, что они будут восстановлены после перезагрузки.

Маршрутизация IP включается в файле /etc/sysctl.conf. Добавьте в него строку ‘net.ipv4.ip_forward = 1’ и маршрутизация будет автоматически включена после перезагрузки системы.

Что же касается маршрута по умолчанию через ppp0, вам следует посмотреть настройки вашей программы дозвона. Обычно они позволяют автоматически создать данный маршрут после установки модемного соединения. Вообще говоря, такое поведение трудно подавить, поэтому вам следует проверить файлы журналов, чтобы выяснить, почему маршрут по умолчанию не создается. Д. К.

Личные инструменты
  • Купить электронную версию
  • Подписаться на бумажную версию