-------------------------------------------------------------------------------
Если ваш диск обладает интерфейсом IDE или EIDE, вам необходимо прочитать файл
/usr/src/linux/drivers/block/README.ide
(часть дистрибутива исходников
ядра). Этот README содержит много полезных советов о дисках с IDE-интерфейсом.
Многие контроллеры IDE-модемов осуществляют передачу данных между "физическими"
и "логическими" наборами цилиндров/головок/секторов.
Доступ к SCSI-дискам осуществляется через номера линейных блоков. BIOS создаёт некий "логический" набор фиктивных цилиндров/головок/секторов для поддержки DOS.
IBM PC-совместимый BIOS обычно не в состоянии иметь доступ к разделам, которые выходят за предел 1024 логических цилиндров, и в лучшем случае сделает проблематичным загрузку ядра Linux с этих разделов, используя LILO.
Вы можете продолжать использовать такие разделы для Linux или других операционных систем, которые непосредственно обращаются к контроллеру.
Рекомендуется, чтобы вы создали, по крайней мере, один раздел Linux в пределах 1024 логических цилиндров и загружались с него. Тогда работа с другими разделами будет нормальной.
Похоже, что с более новыми дисками класса Ultra-DMA также есть ряд проблем. Я не достал исчерпывающей информации по ним - но они становятся очень схожей с инсталляторами SVLUG проблемой. Когда вы можете достать 8-12 гигабайтные винчестеры за 200-300$, это не должно вас удивлять.
[Джим Деннис]
-------------------------------------------------------------------------------
Вообще-то на Unix'ах это сделать очень трудно вследствие их многозадачности. Возможность восстановления удалённых данных для файловой системы ext2fs находится в процессе разработки, но не задерживайте дыхание.
Существует ряд пакетов программ, которые предлагают новые команды для удаления и копирования, помещающие удаляемые файлы в "мусорную корзину". Файлы могут быть восстановлены то того времени, пока они не будут автоматически удалены фоновым процессом.
С другой стороны вы можете произвести поиск физических данных* на винчестере с данной файловой системой. Это тяжёлая работа, и чтобы выполнить её, вам понадобятся права администратора.
-------------------------------------------------------------------------------
Да. Есть defrag
- дефрагментатор Linux для файловой системы ext2,
Minix или файловых систем ext старого образца. Взяеть его можно здесь sunsite.unc.edu/pub/Linux/system/filesystems/defrag-0.70.tar.gz.
Пользователи файловой системы ext2 могут обойтись без defrag
,
потому что ext2 содержит в себе особый код, обеспечивающий низкий уровень фрагментирования
даже в очень заполненных файловых системах.
-------------------------------------------------------------------------------
Чтобы отформатировать 3.5-дюймовую дискету высокой плотности:
$ fdformat /dev/fd0H1440
$ mkfs -t ext2 -m 0 /dev/fd0H1440 1440
Для 5.25-дюймовой дискеты используйте fd0h1200
и 1200
соответственно. Для диска 'B' используйте fd1
вместо fd0
.
Опция -m 0
сообщает mkfs.ext2
не резервировать никакого
места для суперпользователя - обычно последние 10% резервируются для root'a.
Первая команда осуществляет низкоуровневое форматирование. Вторая создаёт пустую
файловую систему. Вы можете примонтировать дискету как раздел жёсткого диска
и просто копировать cp
, переносить mv
файлы и т.п.
Общепринятые наименования устройств в основном одинаковы для всех Unix'оидов.
Они могут быть найдены в руководстве Мета Уэлша (Matt Welsh) Installation
and Getting Started (см. "Где
я могу найти HOWTO и другую документацию?"). Более подробным техническим
описанием является документ Linux Allocated Devices Г. Питера Энвина
(H. Peter Anvin, hpa@zytor.com), который
включен в дистрибутив исходников ядра (скорее всего в /usr/src/kernel/Documentation
)
в виде файлов devices.tex
и devices.txt
в форматах
LaTeX и ASCII.
-------------------------------------------------------------------------------
Возможно у вас повреждена файловая система вследствие некорректного завершения работы Linux перед выключением питания или аппаратной перезагрузкой. Для этого вы должны использовать одну из последних версий программ для завершения работы - например, одна из них включена в пакет util-linux, доступный на sunsite и tsx-11.
Если вам повезёт, то программа fsck (e2fck или xfsck соответственно, если у вас нет автоматической версии fsck) может быть в состоянии исправить вашу файловую систему. Если вам всё-таки не повезёт - файловая система разрушена, - вы должны будете заново её инициализировать с помощью mkfs (или mke2fs, mkxfs и т.п.) и восстановить из резервной копии.
Примечание: не пытайтесь выполнить проверку файловой системы, примонтированной для чтения/записи - это же касается и корневого раздела, если вы не видите строку
VFS: mounted root ... read-only
во время загрузки.
-------------------------------------------------------------------------------
Когда вы загружаетесь (или активизируете swap вручную), вы должны увидеть
Adding Swap: NNNNk swap-space
Если вы вообще не видите никаких сообщений, возможно у вас отсутствует строка
swapon -av
(команда активизации swap) в вашем /etc/rc.local
or /etc/rc.d/*
(скрипты загрузки системы) или забыли добавить правильный параметр в /etc/fstab
,
например:
/dev/hda2 none swap sw
Если вы видите
Unable to find swap-space signature
значит вы забыли запустить программу mkswap
. Подробнее смотрите
в manual page, она работает подобно mkfs
.
При запуске ('free' показывает свободную память) на экране должно появиться:
total used free Swap: 10188 2960 7228
[Энди Джефферсон (Andy Jefferson)]
Также загляните в Installation HOWTO для получения более детальных инструкций по настройке swap.
-------------------------------------------------------------------------------
Находясь в DOS'е (MS-DOS 5.0 или более поздние версии, или OS/2), наберите
FDISK /MBR
(недокументированная функция). Это восстановит стандартный
загрузочный сектор MS-DOS на жёстком диске. Если у вас установлен DR-DOS 6.0,
запустите FDISK в нормальном режиме и выберите опцию 'Re-write Master Boot Record'.
Если у вас нет MS-DOS или DR-DOS, вам понадобится загрузочный сектор, сохранённый
LILO при первой установке. Вы не сохранили этот файл, не так ли? Возможно он
называется boot.0301
или что-то вроде этого. Наберите
dd if=boot.0301 of=/dev/hda bs=445 count=1
(или /dev/sda
, если вы используете SCSI-диск). Это также
может стереть таблицу разметки вашего диска, поэтому будьте осторожны! Если
вам нечего терять, вы можете использовать
dd if=/dev/zero of=/dev/hda bs=512 count=1
Это полностью удалит вашу таблицу разметки и загрузочный сектор: затем вы можете переформатировать диск, используя ваше лучшее программное обеспречение. Но это сделает содержимое вашего жёсткого диска недоступным - вы всё потеряете, даже если вы эксперт.
Помните, что DOS'овский загрузочный сектор загружает любой (единственный!)
раздел, отмеченный как 'active'. Вам может понадобиться использовать fdisk
,
чтобы установить или убрать флаги активизации разделов соответственно.
-------------------------------------------------------------------------------
Системный вызов форматирования дискеты может быть выполнен только root'ом,
независимо от разрешений, установленных на /dev/fd0*
. Если
вы хотите, чтобы любой пользователь мог форматировать дискеты, попробуйте найти
программу fdformat2
. Она работает без проблем с установкой root'овского
идентификатора пользователя.
-------------------------------------------------------------------------------
Смотрите "EXT2-fs: warning: mounting unchecked file system.".
-------------------------------------------------------------------------------
Перемонтируйте её. Если файл /etc/fstab
корректен, вы можете просто
mount -n -o remount /
Если файл /etc/fstab
неправильный, вы должны задать имя устройства
и, возможно, его тип, например:
mount -n -o remount -t ext2 /dev/hda2 /
Чтобы понять, как это сделать, смотрите "EXT2-fs: warning: mounting unchecked file system.".
-------------------------------------------------------------------------------
Ни один из файлов в директории /proc на самом деле там не существует - все они являются "ненастоящими" файлами, созданными ядром, чтобы получать информацию о системе, и не занимают никакого дискового пространства.
Директория /proc/kcore является подобием 'alias' для памяти в вашем компьютере. Её размер соответствует объёму вашей памяти, и если вы считываете её как файл, ядро считывает данные из памяти.
-------------------------------------------------------------------------------
Опция, обеспечивающая использование дисков с более, чем 1024 цилиндрами, требуется только в PC-совместимых BIOS и должна быть отключена для Linux. Для более ранних версий ядра Linux вам необходимо отключить большинство 'advanced'-опций BIOS - все до одной, сканирующих шину на наличие загрузочных устройств.