Автор: Ghoort
Дата: 04/05/2002

Файловая система

Любимое занятие всех счастливых обладателей операционной системы Windows, после переустановки этой системы, это форматирование диска. Существует поверье, что это спасает от многих несчастий, например, от плохо устанавливающихся драйверов. Для Linux создание файловой системы (а здесь именно так называется форматирование) занятие не менее важное. Например, если вы купили новый винчестер, или захотели записать CD. Создание файловой системы ext2 проводится командой mke2fs (существует выводок утилит и для других файловых систем серии mkfs -t , мне приходилось видеть версию mkntfs способную работать с дискетами, CD-R, и ZIP, что невозможно в Win2k/XP). Если перед созданием файловой системы выполнена команда badblocks, то имеет смысл запустить ее с параметрами
mke2fs -l /tmp/bblcks3 /dev/hda3

Для более точного управления файловой системой ext2 применяется команда tune2fs. Она позволяет менять настройки самой файловой системы, которые могут понадобиться для некорневой (а иногда и корневой) файловой системы ext2. Например, максимальное время и количество монтирований между проверками, предельный уровень фрагментации, управление кэшированием и резервированное для root'а пространство. Так же для управления и надзора за ext2 служат команды

quota Надзор за исполнением дисковых квот
df Свободное пространство на диске
du Структура диска
sync Принудительная синхронизация, т.е. запись кэша на носители

Если для ext2 проблемы создания и проверки файловых систем в большой степени убираются установщиком и автоматической проверкой, то привод CD-RW неизбежно выводит их на первый план. Уже довольно давно в большинстве дистрибутивов Linux встраивается поддержка устройств записи CD-RW, или попросту писалок. Существуют и огромного размера программы с графическим интерфейсом, возможностью записи "на лету" и создание наклеек на диск. Но чаще всего по-прежнему приходится пользоваться консольными командами, как более удобными и универсальными. Последовательность действий для записи с консоли следующая:

0. Подготовка системы для работы с CD-R/RW.
1. Создание файла, который станет образом диска.
2. Внесение информации в образ диска.
3. Выжигание образа диска.

Пункт ?0 состоит из перекомпиляции ядра с добавлением необходимых опций, установки программы rdrecord (что обычно сделано) и загрузки ядра с дополнительным параметром командной строки, например "hdc=ide-scsi" для писалки на Secondary Master. Будем считать его выполненным.

Создание файла также не представляет проблемы, если у вас есть 700MB свободного пространства. Командой dd создается пустой файл. Параметры этой команды определяются болванкой и наличием/отсутствием overburn (в смысле "разбирайтесь сами, что я вам все разжевывать должен").

dd if=/dev/zero of="/tmp/cdimage" bs=1024k count=650

В нем создается файловая система iso9660 (можно создать любую другую, например ext2, fat или ntfs, но прочесть такие диски будет можно только под Linux)

mkisofs /tmp/cdimage

Команда выругается, попробует послать вас подальше, но вы не поддавайтесь, и ответьте yes на вопрос о продолжении работы. Затем полученный образ монтируется как обычное блочное устройство

mount -t iso9660 -o loop=/dev/loop1 /tmp/cdimage /mnt/cdrw

После это вы просто записываете желаемые файлы в директорию /mnt/cdrw. В этом состоит весь второй этап. В последнем или третьем этапе происходит непосредственно запись.

cdrecord -v speed=8 -data /tmp/cdimage

В большинстве дистрибутивов установка программ автоматизирована с помощью системы пакетов. Системами пакетов управляют пакетные менеджеры, самый удачный из которых - rpm (Redhat Packet Manager). Он устанавливается на многих дистрибутивах, а не только на Red Hat Linux. Есть и другие пакетные менеджеры, но их возможности только частично покрывают возможности rpm. Наиболее удобной возможностью rpm является прослеживание взаимосвязи между отдельными пакетами. Все пакеты rpm имеют специальную форму, в которой пишутся их названия.

имя-версия-модификация.архитектура.rpm

Имя - это название упакованного файла, версия и модификация отвечают за новизну и оригинальность, а архитектура показывает, для какого процессора скомпилирован данный код. Архитектура может быть самая разная, постарайтесь найти свою. С параметром архитектуры src пакуются исходные коды, которые придется компилировать, а noarch означает, что пакет заработает для Windows (обычно в таких пакетах документация). Параметры команды rpm могут быть следующие:

rpm -i [опции] <пакет>	Установка пакета.
rpm -U [опции] <пакет>	Обновление пакета.
rpm -e [опции] <пакет>	Удаление пакета.

Дополнительные опции для установки и обновления

-oldpackage - Разрешить замену нового старым.
-replacefiles - Разрешить замену любых файлов. Будьте осторожны.
-replacepkgs - Устанавливать пакет, даже если он уже установлен.
-force - Все три предыдущих вместе.
-nodeps - Не проверять зависимости перед установкой.
-allfiles - Устанавливать все файлы, не обращая внимание, на их возможное отсутствие.
-notrigger - Запретить триггеры (программы, которые запускаются автоматически после установки).
-excludedocs - Не устанавливать документацию.
-includedocs - Обратно предыдущему.
-test - Только проверить будущую установку.

Дополнительные опции для удаления:

-allmatches - Удаление всех версий пакета.
-noscript - Запрет preunistall и postuninstall.
-nodeps - Не проверять зависимости.
-notrigger - Запрет триггеров.
-test - Только проверка.

Управляется rpm файлом rpmrc. Менеджеры пакетов очень удобны, не следует только ставить несколько разных на одну систему. В пакетах rpm например распространяются драйвера для видеокарт nVIDIA. Тогда если у вас чистый дистрибутив, вам следует только скачать с сайта www.nvidia.com необходимые пакеты и установить, как описано в файле Nvidia Linux Driver Installation. Установка этого драйвера отличается от обычной, а потому расскажу, как она происходит. Она делится на 2 основных этапа - установка драйвера видеокарты и библиотеки GLX. Библиотека GLX это библиотека функций OpenGL для Linux и XFree86 4. Сначала прочтите файл readme, поверьте, лучшего описания драйвера я не встречал никогда. Загрузитесь без графической оболочки (режим init 4), и выполните

rpm -i NVIDIA_kernel-1.5-2880.i386.rpm

Это ставится драйвер nVIDIA. Его название kernel немного обескураживает, но думаю, можно сделать скидку на манию величия разработчиков. Он распространяется в виде откомпилированного модуля для ядра (все нужные функции в ядре Linux указали?). При установке запустятся триггеры, которые создадут устройства /dev/nvidia1, /dev/nvidia2, /dev/nvidia3 и /dev/nvidia4. А также добавят новый ядреный модуль в список загружаемых. Имейте в виду, что для работы GLX вам потребуется версия графической оболочки X Window XFree86 не ниже 4. В противном случае Quake III Arena, Return to Castle Wolfenstein и др. не запустятся.

rpm -i NVIDIA_GLX-1.0-2880.i386.rpm

Самым последним (и самым сложным) является внесение изменений в конфигурационный файл X Window. Это файл /etc/X11/XF86Config-4. Не перепутайте, есть похожий XF86Config, он не подойдет. В этом файле необходимо заменить строку

device "nv"
на
device "nvidia"
А строки
Load "dri"
Load "GLcore"

закомментируйте. Запустите X командой startx и работайте (в смысле играйте). Однако этот простой метод не подойдет, если вы поставили иную версию ядра, отличную от стандартной для данного дистрибутива. Тогда самым лучшим выходом будет установка драйвера из архива. Библиотеки NVIDIA_GLX это не касается.

Для этого скачайте файл NVIDIA_kernel-1.0-2880.tar.gz и распакуйте командой

tar xzf	kernel-NVIDIA_1.0-21880.tar.gz
После это в получившемся каталоге выполните команду
make install

Теперь можно играть. Другие устройства в современных дистрибутивах устанавливаются и конфигурируются автоматически демоном kunzu, интерфейс которого очень похож на аналогичный сервис Windows. Понятно, при условии, что у вас есть уже поддержка этого устройства в ядре или диск с модульным драйвером. Этот демон умеет очень много и почти полностью освобождает администратора от необходимости устанавливать прерывание, область DMA, и многих других часто ненужных вещей. Он умеет даже после установки новой видеокарты сделать нормальную загрузку графической среды.

Установка программ для пакетных систем - занятие несложное, не требуется даже знать где находится сама программа, ссылки на нее обычно автоматически появляются сами в /bin или /usr/bin. Однако есть класс программ, о которых следует поговорить отдельно. Я говорю об играх. На мой взгляд, столь сильная популярность Windows на отечественном рынке не связана ни с простотой установки, ни с легкостью управления, ни даже с доступностью в ларьках у метро. Первые два это просто не правда, а второе - следствие Главной Причины. Главная причина - это Огромное Количество Разнообразных Игрушек на Рынках Нашей Бескрайней Родины. Большинство статьей, посвященных операционным системам, говорят "система XXX предназначена для игр и медиа, система YYY для научных расчетов, система ZZZ - исключительно для сети". Никому из них, видимо, даже не приходит в голову, что операционная система, которая НЕ предназначена для работы ВСЕХ ВОЗМОЖНЫХ программ, просто не нужна. Так же и с Linux, но если пройти по рынкам, скорее всего вы игр не найдете (а если найдете, напишите мне, я тоже туда схожу). Тем не менее, игры есть, и достать их не сложно, достаточно скачать из Интернета.

Для того чтобы получить игрушку для Linux, зайдите на сайт производителя игры и скачайте демку для Linux, которую установите в директорию к полной версии игры для Windows. (Я считаю унизительным использование эмуляторов.) Иногда после этого следует убрать остатки демки. Для Quake III после такой установки, в основной директории игры появляются файл quake3.x86 и поддиректория q3demo. Эту поддиректорию можно (но не обязательно) стереть для сохранения места, поскольку она больше не имеет значения для самой игры. Причем версия для Windows сохранилась, поскольку сохранился файл quake3.exe. Есть способ удобнее, но сложнее. Необходимый файл quake3.x86 также можно вынуть из патча для Linux.

С Unreal Tournament все незначительно сложнее. UTdemo для Linux не следует сразу устанавливать в директорию полной игры, установите во временную. Вам потребуется только поддиректория System демки, которую и перенесите в основную директорию полной игры. Самым последним этапом установки UT является установка последнего патча, также с сайта производителя, для того чтобы не произошел конфликт версий. Найти большое количество демок можно на сайте компании Loki Games, производителя и портера игр для Linux, по адресу http://www.loki.com.

Настройки сети


Содержание:

 Linux Navigator. Консоль
 Linux Navigator. Инсталляция
 Linux Navigator. Опции ядра
 Linux Navigator. Администрирование
 Linux Navigator. Файловая система 1. Монтирование.
 Linux Navigator. Файловая система 2.
 Linux Navigator. Настройки сети.