Руководство начинающего пользователя Linux. Версия 0.193 2002-12-14 by Stan, Peter and Marie Klimas. Главная | 0. Преимущества Linux | 1. Перед установкой | 2. Помощь | 3. Основы работы | 4.1. Способы загрузки 4.2. Накопители | 4.3. X Window System | 4.4. Конфигурации | 4.5. Работа в сети | 5. Команды | 6. Программы Часть 4.2: Обращение к жестким дискам. Перевод - Константин Фирсов. [переведено полностью] Содержание этой главы: 4.2.1 Где мои диски? 4.2.2 Как мне обратиться к моему CDROM? 4.2.3 Как смонтировать дискету, zip-диск, dos-раздел, или сетевой диск? 4.2.4 Как смонтировать удаленную файловую систему MS Windows через Samba? 4.2.5 Как бы попроще прочитать файл с дискеты DOS/Windows? 4.2.6 Монтрование возможно, если я суперпользователь(root). Может ли обычный пользователь монтировать? 4.2.7 Команда монтирования такая длинная, как мне упростить ее с использованием псевдонимов? 4.2.8 Могу ли я монтировать автоматически? 4.2.9 Как мне добиться распознания моего zip-диска? 4.2.10 Могу ли я установить 32-битный ввод/вывод для жесткого диска? 4.2.11 Я достиг предельного числа одновременно открытых файлов(сообщение об ошибке) 4.2.12 Я присоединил новый жесткий диск. Как мне начать его использовать? 4.2.13 Пространство свопинга(Swap space) 4.2.13.1 Раздел свопинга(Swap partitions) 4.2.13.2 Файлы свопинга(Swap files) 4.2.1 Где мои диски?Linux показывает все директории в одном дереве директорий, независимо от того, какие диски (или другие устройства) он определил в системе. В целом, это - гораздо более удачное решение, чем традиционная DOS / Windows модель, потому что это совершенно абстрагирует файловую систему от соответствующей аппаратуры. Вы еще оцените это, если вам придется изменять или расширять свое "железо" или добавлять сетевые ресурсы. Но для пользователей, приученных к DOS-методу обращения с дисками, это вызывает некоторые сложности. Короче говоря, не ищите буквы дисков. В Linux их просто нет, потому что содержимое ваших дисков расположено в поддиректориях единой файловой системы Linux (в дереве поддиректорий). По умолчанию содержимое сменных носителей не появляется в дереве поддиректорий автоматически -- вы должны "монтировать" ваши диски. Подробности смотрите далее. Кроме того, вы должны "демонтировать" диск перед его физическим устранением (eject). Вы можете обращаться (для чтения или записи) к разнообразным устройствам и файловым системам из Linux. Это могут быть и "родные" Linux-разделы, DOS и MS Windows разделы (на жестких дисках или дискетах), ZIP- и Jazz- устройства, CDROM диски. Многие другие сколь-либо распространенные файловые системы так же поддерживаются Linux. Это означает, что вы можете скачать программу для Linux, используя Netscape для Windows, сохранить скачанные файлы на жестком диске в разделе MS Windows, и, загрузив Linux, установить программу для Linux из Windows-раздела.4.2.2 Как мне обратиться к моему CDROM?Смонтируйте его. Монтирование добавит все директории и файлы с вашего CD к вашему дереву директорий Linux, так что вы сможете использовать их без использования буквы диска. Как суперпользователь(root), вы можете монтировать CDROM с помощью команды, похожей на эту: mount -t auto /dev/cdrom /mnt/cdrom Если это сработает, содержимое вашего CD возникнет в директории /mnt/cdrom. Если это не сработает -- команду придется слегка подстроить. Вот как она работает. Эта команда говорит операционной системе смонтировать файловую систему, предлагая определить ее тип самостоятельно ("-t auto"). Устройство называется: /dev/cdrom. Точка монтирования (Директория, куда оно монтируется): /mnt/cdrom. Эта директория должна существовать и быть пустой. Если ее нет, создайте ее командой: mkdir /mnt/cdrom Если команда монтирования не сработала, то, может быть, устройства /dev/cdrom нет в вашей системе. Попробуйте ls -l /dev/cdrom /dev/cdrom - это просто общепринятая символьная ссылка на реальное устройство. На IDE-системах, ваш CD-ROM может оказаться, например, на /dev/hdb. В таком случае, попробуйте /dev/hdb вместо /dev/cdrom в команде mount: mount -t auto /dev/hdb /mnt/cdrom Так же следует попробовать /dev/hdc или /dev/hdd, если ваш CD это IDE CDROM на втором IDE- шлейфе. Если и это не поможет, вспомните - может быть у вас не IDE, а SCSI CDROM? Тогда попробуйте /dev/sda, /dev/sr0, etc. Короткий список возможных имен устройств:
По-моему, неплохо придумано использовать /dev/cdrom в любом случае, поскольку некоторые программы считают, что он есть. Если же в вашей системе его нет, вы можете создать символьную ссылку, используя, например: ln -s /dev/hdb /dev/cdrom если ваш CDROM - это диск /dev/hdb. Если вы не можете смонтировать из-за ошибки "Устройство уже смонтировано или директория занята (the device is already mounted or directory busy)", то, может быть, точка монтирования /mnt/cdrom - это текущая директория. Вы должны сменить текущую директорию на любую другую, чтобы иметь возможность монтировать в ней. Например, смените текущую директорию на корневую(root) командой: cd / Для демонтирования смонтированного CD, покиньте директорию /mnt/cdrom и напечатайте как суперпользователь(root): umount /mnt/cdrom Ваш CDROM может отказаться выдвинуть диск, если он не был демонтирован. Кроме того, у вас могут быть проблемы с монтированием следующего CD, если предыдущий не был демонтирован. Если демонтирование не удалось по ошибке: "Устройство занято (the device is busy)", то, может быть, /mnt/cdrom (или какая-нибудь его поддиректория) является текущей? Вам необходимо сменить текущую директорию на какую-нибудь другую в случае демонтирования устройства. 4.2.3 Как смонтировать дискету, zip-диск, DOS/Windows-раздел, или сетевой диск?Почти так же, как CDROM -- посмотрите прошлый ответ, если вы этого еще не сделали. Дискета. Я могу монтировать дискету, как суперпользователь(root), с помощью команды: mount -t auto /dev/fd0 /mnt/floppy Еще раз убедитесь, что директория /mnt/floppy существует и пуста. И еще - /mnt/floppy/ не должна быть текущей. После успешного монтирования файлы с дискеты появятся в директории /mnt/floppy/ . Все пользователи получат возможность читать файлы с дискеты, но только суперпользователь(root) получит возможность изменять и удалять файлы. О том, как сделать файлы на дискете доступными для записи всем пользователям, смотрите далее. Для демонтирования дискеты (Вы *должны* сделать это перед тем, как извлечете диск из дисковода!) используйте: umount /mnt/floppy Если вы не смогли демонтировать, потому что "Устройство занято(the device is busy)", может /mnt/floppy/ - текущая директория? Покиньте ее, напечатав (например): cd это изменит текущую директорию на домашнюю. Zip-диск. Я монтирую внешний zip-дисковод к параллельному порту (эмуляция scsi) командой: mount -t vfat /dev/sda4 /mnt/zipdrive Флаг "-t vfat" используется здесь, поскольку zip диск был форматирован в файловой системе vfat, которая является файловой системой MS Windows с поддержкой длинных имен. вы не должны извлекать диск из дисковода без его демонтирования. Снова, директория должна существовать, быть пустой, и не должна быть вашей текущей директорией (см. предыдущий вопрос). Я могу монтировать внутренний IDE-ZIP дисковод: mount -t vfat /dev/hdd4 /mnt/zipdrive В моей системе, это второй диск на втором IDE интерфейсе, следовательно - это "hdd" -- замените его на "hdb" или "hdc", если это необходимо для вашей системы. Совет от Альваро Регули <[email protected]>. "У меня ATAPI Zip дисковод, распознаваемый как ATAPI Floppy. Для того, чтобы он заработал под Debian с ядром 2.4.3, мне пришлось переключить установки BIOS с "Autodetect" на "None" (только для Zip-канала, разумеется), и монтировать, используя mount -t vfat /dev/hdb (без хвостовой 4!)" Все zip-дисководы (Внутренние SCSI и IDE, внешние SCSI и параллельного порта), кроме USB, поддерживаются Linux (на апрель 1999). Смотрите далее в этой главе информацию о том, как загрузить модуль (драйвер) для zip-дисковода, если он не загрузился автоматически в вашей системе. DOS/Windows раздел. Я использую систему с двойной загрузкой Linux и MS Windows на своем компьютере. Я могу работать с файлами DOS/Windows раздела после его монтирования следующей командой: mount -t vfat /dev/hda1 /mnt/dosdrive Снова, вы можете настроить эту команду в зависимости от того, на каком разделе находится файловая система DOS. Параметр "hda1" значит жесткий диск IDE (hda), первый раздел (1); "hda2" - это первый жесткий диск IDE, второй раздел; "hda3" -- первый жесткий диск IDE, третий раздел; "hdb1" -- второй жесткий диск IDE, первый раздел (или просто "hdb". Если это CDROM, установленный как второй(slave) на вашем втором IDE шлейфе). "hdc" это третий IDE-диск, hdd - это четвертый IDE-диск. SCSI диски имеют аналогичные имена, но начинающиеся с "sd", следующая за ними буква оперделяет SCSI-интерфейс, следующий за ней номер - идентификатор SCSI устройства. Например, sda4 означает "первый SCSI-интерфейс, идентификационный номер 4". Для монтирования диска, как общедоступного для всех пользователей, попробуйте: mount -t vfat -o user,rw,exec,umask=000 /dev/hda1 /mnt/dosdrive Здесь используются параметры (-o user,rw,exec,umask=000), дающие абсолютно всем полный доступ к разделу DOS /dev/hda1 (можете спросить себя, действительно ли это безопасно для вашей системы). Если пользователи не должны иметь возможность записи в раздел DOS, возможно, что должны быть установлены права доступа к вашей точке монтирования. Эта команда (исполненная суперпользователем(root)) устанавливает права доступа к точке монтирования /mnt/dosdrive так что все пользователи получают права чтения, записи и выполнения: chmod a=rwx /mnt/dosdrive Сетевая файловая система (NFS). Она хорошо подходит для прямого обращения к файлам, расположенным на другом компьютере с Linux. Для монтирования удаленной файловой системы как NFS, во-первых, проверьте, разрешена ли служба NFS (используйте программу setup). NFS, кроме этого, требует наличия разрешения от другого компьютера. Для конфигурирования доступа со стороны машины-сервера, попробуйте как суперпользователь(root): netconf и настройте установки в пункте меню "Экспортируемые файловые системы(Exported File Systems)". Если вы предпочитаете делать это вручную, то установки доступа хранятся в файле /etc/exports . Мой /etc/exports выглядит примерно так: /usr hacker(ro) mars(ro)
Это дает право машинам с именами hacker и mars монтировать директории /usr/ (только для чтения), /home и /mnt (чтение-запись). Если вы установили NFS правильно, то сможете монтировать сетевые диски вот такой командной строкой: mount -t nfs mars:/home /mnt/mars_home Это монтирует содержимое директории /home/ на машине "mars" в директорию /mnt/mars_home/ (которая должна существовать и быть пустой). С NFS могут работать многие операционные системы, но только не MS Windows. Поэтому удаленные директории MS Windows надо монтировать по-другому. Смотрите далее. 4.2.4 Как смонтировать удаленную файловую систему MS Windows через Samba?Удаленная файловая система MS Windows может быть монтирована к файловой системе Linux через протокол Samba (Samba должна быть установлена, смотрите здесь, если это не так). Напечатайте команду (как суперпользователь(root)): smbmount //mars/windows /mnt/mars_windows -c marie Это монтирует MS Windows ресурс windows, расположенный на машине mars с операционной системой MS Windows. Точка монтирования на компьютере-клиенте: /mnt/mars_windows/ . Параметр "-c" заявляет, что samba-сервер - это машина marie (это может быть не обязательно, но так сделано в моей системе). Для того чтобы это сработало, соответствующие права на расделение доступа к директории или диску должны быть предоставлены машиной с MS Windows. Для этого, на машине с MS Windows, разрешите разделение файлов в разделе "Панель управления(control panel)-сеть(network)", запустив "Windows Explorer", щелкнув правой кнопкой мыши на директории или диске, щелкните "свойства", потом - закладка "доступ(sharing)", дайте себе необходимые права, а ресурсу - имя. Чтобы демонтировать ресурс MS Windows, используйте: smbumount /mnt/mars_windows Если не получится, смотрите: man smbmount 4.2.5 Как бы попроще прочитать файл с дискеты DOS/Windows?Использование "mtools" не требует монтирования. Например, я могу использовать команду mdir для быстрого просмотра корневой директории моей DOS-дискеты: mdir a:\ Еще я могу использовать mcopy для копирования "autoexec.bat" из корневого каталога моей дискеты в текущую директорию Linux: mcopy a:\autoexec.bat Вы должны быть суперпользователем, чтобы иметь право записи на дискету. Напечатайте "mtools", чтобы увидеть список команд mtools, которые дублируют популярные команды DOS (например: mformat, mtype, mren, mmove, mdel, mrd, mattrib, ...), и если будут проблемы - обращайтесь к man-страницам. например: man mtype покажет мне, как просмотреть содержимое текстового файла в разделе DOS. Для обращения к устройствам DOS, отличным от a: или b:, вы должны конфигурировать mtools, чтобы показать, какие устройства ассоциированы с другими "буквами дисков" DOS . Это совсем просто -- вы должны настроить файл /etc/mtools.conf . Я обычно использую pico, чтобы делать это (как суперпользователь(root)): pico /etc/mtools.conf Например, мой /etc/mtools содержит такие строки: drive c: file="/dev/hda1" здесь устанавливается что раздел "/dev/hda1" будет называться "c:". Установки /etc/mtools.conf нужно только раскомментировать (удалив "#" в начале строки) и поправить необходимые параметры. 4.2.6 Монтрование возможно, если я суперпользователь(root). Может ли обычный пользователь совершать операцию монтирования?Вам следует отредактировать файл /etc/fstab как root, чтобы дать нормальному пользователю права на монтирование конкретного устройства. Например, я могу использовать для этого текстовый редактор pico: pico -w /etc/fstab Параметр "-w" отключает перенос длинных строк. Вот содержимое моего /etc/fstab: /dev/hda2 / ext2 defaults 1 1
Каждая строка содержит шесть полей, разделенных пробелами. Первое поле - это имя устройства. Второе поле - точка монтирования (существующая и пустая директория в вашей системе Linux, к которой ресурс должен быть монтирован). Третье - тип файловой системы. Для сменных устройств, тип которых заранее неизвестен, я использую параметр "auto", позволяя Linux самостоятельно разбираться, с какой файловой системой она имеет дело. (Порядок, в котором будет производиться автоопределение, определяется содержимым файла /etc/filesystems . вы можете захотеть удостовериться, что "vfat" определяется перед "msdos" или длинные имена файлов DOS могут оказаться обрезанными.) Четвертое поле содержит: "auto" = монтировать при запуске системы; "rw" = разрешены чтение и запись; "ro" = только чтение, "user" = пользователь может монтировать эту файловую систему (может быть также "users", что позволяет демонтировать систему не тому пользователю, который ее монтировал), "exec" позволяет выполнять программы из этой файловой системы. Число в поле 5 определяет, будет ли файловая система подвергнута резервному копированию во время резервного копирования системы, число в поле 6 определяет, будет ли производиться проверка целостности файловой системы во время загрузки. Часть моего файла /etc/fstab - это файловые системы на другом компьютере (называемом "hacker") в моей домашней сети, здесь он служит примером монтирования сетевого ресурса. Смотрите man fstab для более полной информации. Например, если обычные (regular, non-root) пользователи имеют право монтировать cdrom (параметр "user" указан), они могут монтировать его примерно такой командой: mount /mnt/cdrom Команда, которой монтирует суперпользователь (смотрите здесь), не будет работать для обычного пользователя поскольку обычный пользователь ограничен параметрами, указанными в /etc/fstab и, следовательно, не может устанавливать совместно и устройство и точку монтирования. Для обычного пользователя право на запись и исполнение для монтируемого диска также ограничивается его правами доступа к директории - точке монтирования. Например, это дает всем пользователям все права (чтение, запись, выполнение) на директорию /mnt/floppy : chmod a+rwx /mnt/floppy Сейчас (если еще и параметр "rw" указан для дискеты(floppy) в /etc/fstab) пользователь получает возможность записи на дискету. Если параметр "exec" указан в /etc/fstab, пользователь может так же выполнять программы с дискеты. Заметьте, пожалуйста, что файловая система DOS vfat не знает ничего о правах доступа к файлам, в том смысле, в котором рассматривает их Linux. Linux управляет ими в процессе монтирования, придавая значение прав доступа, установленное в fstab всей монтируемой файловой системе: пользователь, монтировавший файловую систему, становится владельцем(owner) всех файлов и получает права записи во все файлы файловой системы (Если "rw" указана в fstab), но другие пользователи могут только читать. Если вам не нравится такое поведение, вам следует указать параметр "umask=" так, чтобы соответствующая строка вашего /etc/fstab была примерно такой: /dev/sda4 /mnt/zipdrive vfat noauto,users,rw,exec,umask=000 0 0 Это дает абсолютно всем абсолютно все права на использование zip-диска (монтирование, демонтирование, чтение, запись, выполнение). Файл /etc/fstab - это то место, где хранятся значения по умолчанию для всех параметров монтирования файловых систем. Вы можете настроить их для упрощения процедуры монтирования Схема монтирования в Linux, используемая по умолчанию, несет много ограничений для повышения безопасности, и вы можете захотеть снять некоторые запреты при установке Linux на домашнем компьютере. 4.2.7 Команда монтирования такая длинная, как мне упростить ее с использованием псевдонимов?Псевдонимы(alias) - это аббревиатуры наиболее длинных и часто встречающихся команд. Для создания псевдонимов я, как "root", редактирую /etc/bashrc . Этот способ создания псевдонимов доступен для всех пользователей системы. (Для создания псевдонимов, специфичных для конкретных пользователей редактируется .bashrc в домашней директории пользователя.) Значимая часть моего /etc/bashrc выглядит примерно так: alias cdrom="mount -v /mnt/cdrom"
Параметр "-v" стоит для "(болтливости) verbose", т.е., я прошу Linux рассказать мне побольше о процессе монтирования. Для того, чтобы псевдонимы заработали, пользователю необходимо выйти из системы и снова войти. После этого он сможет монтировать дискету вот так: floppy и демонтировать при помощи: ufloppy 4.2.8 Могу ли я монтировать автоматически?Да, вы можете автоматически монтировать файловые системы при обращении к ним и демонтировать, когда вы прекращаете их использовать. Это работает так, как вы привыкли в MS Windows. Однако, если вы часто работали со сменными носителями под DOS и MS Windows, вы, должно быть, заметили, что автомонтирование не совсем надежно. Есть две утилиты Linux, обеспечивающие автомонтирование, и они называются "supermount" и "automount". Supermount. Mandrake 7.2 дает вам возможность разрешить использование "supermount" при установке. Так что простейший путь к "supermount" в том, чтобы установить последний Mandrake и указать соответствующий параметр. Мой /etc/fstab на компьютере с установленным Mandrake может содержать следующие строки: /dev/hda3 / ext2 defaults 1 1
В этом промере, как вы можете заметить, я пометил для supermount 3 файловые системы: cdrom, floppy и zipdrive. Я могу редактировать /etc/fstab вручную (например, используя pico) или использовать команду supermount. Automount. Чтобы установить "automount", сначала выполним программу ntsysv (как "root") и убедимся, что служба automount("autofs") разрешена. Тогда, конфигурируем automount редактированием файлов /etc/auto.master и /etc/auto.misc, например (как "root"): pico /etc/auto.master Мой /etc/auto.master выглядит так: /misc /etc/auto.misc --timeout 1 Это говорит, что мои автомонтируемые устройства будут монтироваться в директорию /misc (она должна существовать и быть пустой). Мои автомонтируемые устройства демонтируются через секунду после окончания их использования (Например, после того, как я покину директорию). Это слишком короткое время -- вы можете выбрать побольше. Детальный конфигурационный файл - /etc/auto.misc . Здесь мой: kernel -ro,soft,intr ftp.kernel.org:/pub/linux
Каждая строка содержит три поля, разделенных пробелами. Первое поле это "ключ", который будет именем субдиректории (в /misc), в которую устройство будет смонтировано. Эта директория НЕ ДОЛЖНА существовать. Она не будет видима, если я использую ls , но я могу "cd" в нее и тогда мое устройство будет смонтировано. Не спрашивайте меня, почему это так, и как использовать это в графической среде. Я не знаю. Строки о "hacker" в моем auto.misc - это cdrom и дискета из другого компьютера в моей домашней сети. Я автомонтирую их в директорию /misc (не в /mnt), еще я могу монтировать ее вручную, без automount, в директорию /mnt. 4.2.9 Как мне добиться распознания моего zip-диска??RedHat 6.0 и 6.1. При апгрейде на RedHat 6.0 программа установки заявила, что zip-диск не обнаружен. Плсде завершения установки я использовал следующие команды для установки модулей для моего внешнего (на параллельном порте) zip-диска в ядро (как "root"): /sbin/insmod parport
Чтобы эти две строки выполнялись автоматически при каждой загрузке системы, я добавил их в конец моего файла /etc/rc.d/rc.local (этот файл - аналог autoexec.bat в DOS). Если у вас это не сработает, вам может потребоваться редактирование файла /etc/conf.modules. Мой содержит следующие строки: alias parport_lowlevel parport_pc и там нет строки с упоминанием "ppa" модуль. Для более новых Zip250-дисков - вот две строки из моего файла /etc/rc.d/rc.local /sbin/insmod parport
4.2.10 Могу ли я установить 32-битный ввод/вывод для жесткого диска?Новые Linux-дистрибутивы могут автоматически включать оптимизацию: 32 битный ввод/вывод (I/O) прямой доступ к памяти (DMA). Далее о том, как включить оптимизацию вручную. (На основе http://hardwarezone.community.com.sg/main.htm автор:Эдвард Чох) (Edward Choh).) У меня эта процедура работает замечательно, но будьте осторожны, это может сломать содержимое вашего жесткого диска, так что не делайте этого, если вы действительно новичок. Не расстраивайтесь -- просто я не могу гарантировать, что это сработает у вас . Включение 32-bit ввода/вывода и DMA должно происходить с правами "root", и я делаю это в однопользовательском режиме (чтобы сократить возможные повреждения файловой системы, если что-то пойдет неправильно и придется перезагружаться). И определено, нельзя этого делать при нескольких запущенных задачах или в среде X-windows, и, желательно, сделать резервную копию всех значимых данных. Для загрузки компьютера в однопользовательском режиме я набираю в командной строке lilo (во время начальной загрузки системы): linux single Скажем, я хотел бы установить 32-битный ввод/вывод на моем первом жестком диске IDE, то есть "hda". Во первых, я замеряю текущую производительность жесткого диска и записываю результат: hdparm -t /dev/hda Потом, я смотрю мои текущие установки ввода/вывода и DMA: hdparm -c /dev/hda [моя система показывает 0, это значит, что 32-битный ввод/вывод выключен и используется 16-битный режим, установленный по умолчанию] hdparm -d /dev/hda [моя система снова показала 0, значит DMA-режим выключен]. После, я включаю 32-битный ввод/вывод и DMA: hdparm -c 1 /dev/hda
После, я могу снова замерить производительность жесткого диска для того, чтобы сравнить ее с предыдущей: hdparm -t /dev/hda Если все в порядке, и производительность увеличилась, я могу "зафиксировать(commit)" новые установки, чтобы они сохранились после мягкой(soft) перезагрузки: hdparm -k 1 /dev/hda Чтобы эти параметры работали каждый раз при загрузке системы, добавьте в /etc/rc.d/rc.local (аналог AUTOEXEC.BAT в DOS) следующие строки: hdparm -c 1 -d 1 -k 1 /dev/hda Если что-то пойдет не так, или производительность не повысится, я могу перезагрузиться в любое время и старые установки останутся в силе. Я попробовал эту операцию на 4-х дисках моей домашней сети. Это принесло результаты на 3 новых дисках: производительность выросла на 30-300% и по крайней мере на одном из них повышение производительности "ощутилось". Один жесткий диск (который всегда чудил) "подвесил" компьютер в процессе тестов. Пришлось перезагрузить машину (повреждений не обнаружено). 4.2.11 Я достиг предельного числа одновременно открытых файлов(сообщение об ошибке)Вы можете увеличить предельное число одновременно открытых файлов в файловой системе /proc. Эта файловая система совершенно виртуальна -- это просто "окно", через которое можно увидеть или установить кое-что в ядре Linux. Чтобы прочитать количество одновременно открытых файлов в моей файловой системе, я использую следующую команду: echo /proc/sys/fs/file-max В моей системе (Mandrake 7.2), предел составляет 8192. Чтобы увеличить его, я использую (как "root"): echo 16000 > /proc/sys/fs/file-max Вы можете так же захотеть увеличить предел в связаной с предыдущей системной переменной: echo 30000 > /proc/sys/fs/inode-max Чтобы сделать эти изменения постоянными, добавьте эти строки в /etc/rc.d/rc.local. Чтобы узнать больше о /proc - интерфейсе ядра Linux, назначении переменных и констант, и их рекомендованных значениях, вам может быть интересно почитать (если вы установили исходные тексты ядра, что мы рекомендуем для всех новичков): less /usr/src/linux/Documentation/proc.txt 4.2.12. Я присоединил новый жесткий диск. Как мне начать его использовать?0. Спланируйте файловую систему с учетом нового диска
Теперь подробнее. 0. Спланируйте новую файловую систему. Где бы вы хотели использовать новое дисковое пространство? Используйте
чтобы узнать общее количество свободного/занятого пространства на каждом из существующих смонтированных разделов. Используйте
на выбранных директориях, чтобы узнать их размер. Например, я могу обдумать использование нового дискового пространства в одной из следующих точек монтирования:
Вот почему. /usr/local поддерживается для любых апгрейдов Linux. Хорошо иметь ее в отдельном разделе, потому что я могу переформатировать разделы без повреждения моего локального содержимого(contents) сохраненного в /usr/local. Я хочу, чтобы ее файловая система была "ext2" или "reiserfs". /home содержит пользовательские данные. Действительно, эти данные заслуживают особого внимания. Они должны уцелеть при любом апгрейде Linux. По всей видимости, я хочу поместить их в отдельный раздел. Тип обычный - "ext2" или "raiserfs". /usr/local/mp3s - это не стандартная директория Linux. Я могу хранить в ней мои MP3-файлы (музыку). Она должна быть большой. /usr/local/dos_data - другая не стандартная директория. Если у меня двойная загрузка, мне может понадобиться дополнительный раздел "DOS FAT32". Я сконфигурирую все мои программы, основанные на Windows, для использования этого "диска", как места хранения пользовательских файлов. Я могу создать директории "mp3s", "cds" и подобные в этом разделе. Серьезный недостаток такого подхода -- MS Windows может настаивать на приведении в порядок этого раздела при переустановке. 1. Разбиение нового диска на разделы. Например, если мой новый диск - второй на втором шлейфе IDE (возможно "четвертый" диск IDE), я использую: cfdisk /dev/hdd или более старомодную (и стандартную программу): fdisk /dev/hdd Если ваш диск это не "hdd" настройте команду с учетом того, что:
Для других дисков читайте /usr/src/Linux/Documentation/devices.txt. В основном, я хочу присвоить своим разделам Linux тип ext2 ("Linux"). Разбиение на разделы может оказаться сложным -- если вы не делали этого раньше, прочитайте man fdisk и man cfdisk. Очень просто смахнуть раздел вместе со всеми данными. Убедитесь что знаете, с каким диском вы работаете! fdisk или cfdisk не сделают никаких изменений пока вы не сохраните новый план диска. Так что если не уверены, выходите без сохранения изменений. Я записываю новый план диска только тогда, когда полностью готов. 2. Форматируем разделы. Например, для форматирования первого раздела, с поиском плохих секторов (-c), я использую: mkfs -c -t ext2 /dev/hdd1 3. Тестируем новый раздел.Монтируем новый раздел вручную (директория монтирования должна существовать и быть пустой). Скопируйте ряд файлов в этот раздел. Просмотрите/отредактируйте часть случайно выбранных файлов. Удалите их все. 4. Копируем данные. По желанию -- если хотите можете переместить часть файлов из старых разделов в новые. Перейдите в однопользовательский режим (init 1). Смонтируйте вручную новый раздел. Скопируйте данные в новый раздел. Осторожнее со старыми данными, вы же не хотите потерять их из-за одной дурацкой ошибки, так что пока не удаляйте их -- я обычно переименовываю директорию верхнего уровня. Например, cp -R /usr/local/ /mnt/hdd1/
5. Редактируем файл /etc/fstab. Измените его для отражения сделанных Вами изменений. Возможно, добавьте точки монтирования или измените старые как вам надо. Например, если перенести /usr/local в свой собственный раздел, потребуется добавить примерно такую строку: /dev/hdd1 /usr/local ext2 defaults 1 2 6. Перезагружаемся и тестируем. Альтернативой перезагрузке может служить демонтирование старых и монтирование новых разделов: umount /usr/local
но холодная перезагрузка - зто более строгий тест сделанных изменений. 7. Удалите старые данные. Через несколько дней работы, когда я убеждаюсь, что все в порядке, я удаляю старые данные (например, директорию
/usr/local.oldbackup_of_2001-04-21).
4.2 Пространство свопингаSwap-раздел - это расширение физической памяти компьютера.
Скорее всего, вы создали раздел свопинга при начальной установке. Вы можете проверить наличие пространства свопинга командой:
4.2.1 Раздел свопингаУ вас может быть несколько разделов свопинга. [Старые ядра Linux ограничивают размер каждого раздела 124 MB, но ядра 2.2.x снимают это ограничение.] Вот шаги для создания раздела свопинга:
4.2.2 Файлы обменаОбмен с файлом значительно медленнее, чем с разделом, так что эта техника не может быть рекомендована как постоянная.
Создание файла обмена, между тем, может быть быстрым решением проблемы недостатка пространства обмена. вы можете иметь до 8 файлов обмена, каждый из которых может иметь размер до 16 MB. Вот инструкция по созданию файла обмена:
Переход к части: 4.3 - Работа с X Window System |