MOTOROLA: Какого типа у нас файловые системы
fstyp имя_дискового_раздела
Рекомендуемый тип для неспециализированных (т.е. не тех,
которые /stand, /boot и некоторые другие) файловых систем
стандартный Unix'овский "ufs" - Unix File System. Это быстрая
файловая система BSD-подобного типа с символическими линками,
длинными именами файлов (до 256 байт), изменяемым размером
блока, "размазанной" таблицей inod 'ов (описатели файлов
расположены группами, которые равномерно распределены по диску)
mkfs - создает пустую файловую систему.
# создаем файловую систему типа s5 на 4-ом разделе диска, раз-
# мером 200 Мб !!! Размер указывается в 512-байтных блоках
mkfs -F s5 /dev/rdsk/m328_c2d0s4 400000
# создаем файловую систему типа ufs на 5-ом разделе диска
mkfs -F ufs -o bsize=4096,nsect=36,ntrack=9,free=1 \
/dev/rdsk/m328_c2d0s5
Linux: создание файловой системы
mke2fs /dev/hda9
HP-UX: создание файловой системы
newfs -F hfs /dev/rvol12
HP-UX: JFS vs HFS
HP-UX использует два формата файловых систем:
HFS (High Perfomance) - AKA старая добрая ufs,
и новомодная JFS (Journal) AKA Verytas vxfs
vxfs - это не файловая система, а база данных с журналом транзакций
и откаткой. Любая операция записи в файловую систему содержит только
завершенные транзакции, поэтому fs на диске всегда находится в корректном
состоянии. В лог пишется "протокол намерений", и его можно использовать для
откатки.
Плюсы:
vxfs использует физический журнал для записи
критической метаинформации на диск. Это гарантирует эффективное
восстанавление fs. Большая сохранность позволяет дольше
кэшировать данные. Очень заметен выигрыш по скорости "close
file" - закрытие файла НЕ форсирует sync inod 'а на диск, в
отличие от ufs.
vxfs применяет кластерную адресацию последовательных
блоков - выигрыш в адресации блоков и скорости доступа к большим
файлам.
inod в vxfs -е имеет длину 256 байт (а не 128), и короткие (<=96байт)
директории или симлинки хранятся прямо в inod 'е
Директории vxfs проиндексированы - следовательно, повышена скорость
поиска файла по имени.
По необходимости vxfs умеет создавать дополнительные области inod 'ов, и вообще - место в vxfs распределяется по мере заполнения.
Минусы:
Служебные структуры vxfs занимают больше места на диске
Загрузчик ядра не умеет читать формат vxfs, поэтому каталог /stand обязан быть HFS'ным
Плюсы для Live JFS (AKA OnLine VxFS) Only:
Это расширение стандартной vxfs, коммерческий продукт, поставляемый за
отдельные деньги, после его установки стандартная vxfs получает
дополнительные возможности:
Увеличение размера fs без отмонтирования.
Уменьшение размера fs (а-ля speed disk) без отмонтирования.
Snapshot (заморозка) fs. По команде возникает параллельное
дерево-копия раздела - "остановленное" на момент подачи команды. Реализация:
использует дополнительно раздел диска для сохранения изменяемых блоков с
данными. При обращении к "замороженным" данным блоки, еще не измененные -
считываются из оригинальной файловой системы, если же менялись, то оригинал
берется с сохраненной на отдельный раздел копии.
Примеры, на которых vxfs дает заметный (в 2-4 раза) выигрыш
cd /hfs ; time tar xf /tmp/big.tar
cd /vxfs ; time tar xf /tmp/big.tar
time cat bigfile bigfile bigfile bigfile bigfile > /vxfs/big
time cat bigfile bigfile bigfile bigfile bigfile > /hfs/big
Вывод: в некоторых операциях vxfs быстрее, в остальных -
не медленнее, устойчивее к выключению питания, но несколько
больше съедает дискового пространства.
HFS имеет смысл на статических "readonly" каталогах,
например /usr - скорость чтения одинакова, а hfs компактнее.
Linux. Запись директории на writable CDROM
mkisofs -R -o image directory
затем записать образ на cd-r командой cdrecord
Монтирование файловых систем
Чтобы сделать "видимыми" файлы, лежащие на дисковом разделе,
Unix использует команду mount. Mount "подцепляет" файловую
систему к общему дереву файлов. При монтировании нужно указать
"точку монтажа" - каталог, к которому "подцепляется" наша новая
файловая система. Например:
mount -F ufs /dev/dsk/m197_c0d0s8 /home1
Чтобы посмотреть, какие файловые системы у нас смонтированы,
выполните команду
df
Чтобы наши файловые системы монтировались, а swap области
активизировались автоматически при каждой загрузке, необходимо
вставить соответствующие строки в файл /etc/vfstab. Формат
строчек можно посмотреть в этом же файле.
MOTOROLA: Монтирование CD-ROM
Если на CDROM'е записана файловая система формата "ufs" - т.е.
это "родной", моторольный cdrom, то монтировать его нужно по
тем же правилам, что и обычный жесткий диск, только "read only"
mount -F ufs -r /dev/dsk/m197_c0d6s0 /cdrom
Если же это обычный "game'овый" диск для MSDOS'а, а точнее, CDROM
стандартного формата iso9660, то монтировать его надо так:
mount -F cdfs -o ro /dev/dsk/m197_c0d6s7 /cdrom
(использование ключей -r и -o ro - равнозначно)
Отмонтирование файловых систем
umount /home1
Изменение параметров fs
Sun: tunefs
Linux: tune2fs
HP-UX: fsadm
Bad-блоки
Симптомы достаточно красноречивы: заметные задержки при
доступе к диску (из-за retrying 'a), и на консоль сыплются
страшные сообщения "Bad media", "Read failure"... "при доступе
к блоку такому-то".
Запишите номера bad-блоков - их можно "подлечить".
Фирменные операционки: лечится, но с трудом-с
Современные SCSI адаптеры сами заменяют bad-блоки. Если
засекли бад-блок, пропишите по нему (или файлу с ним) нули,
адаптер заодно и пропишет, и подменит, и навсегда спрячет его,
и он больше не покажется.
Motorola: Bad-блоки
Рекомендую ознакомиться с документацией - раздел "Bad
blocks" в Томе "Disks and Tapes Managment"
см. также man по ddefs, mvme328, scsi1x7, dinit, ...
Надеюсь при описании геометрии диска командой ddefs вы не
поскупились указать число "Bad spots" больше нуля. Замещение
бад-блоков выполняется все той же командой dinit
dinit -n dskdeffilename /dev/rdsk/m187_c0d107
-n номера bad-блоков вводятся с клавиатуры
dinit -t bad-list dskdeffilename /dev/rdsk/m187_c0d107
-t bad-list файл со списком bad-блоков
Как протестировать диск на бад-блоки? У dinit есть ключ
-v 1 - verify with pattern
Linux: Bad-блоки
Linux'овский fsck с ключом "-c" умеет сам находить и
лечить от bad-блоков (они собираются в отдельный "bad" inode)
# -y yes на все вопросы, -f force checking, -c bad-blocks
e2fsck -c -y -f /dev/hda3
Диагностика оборудования
MOTOROLA: Утилита тестирования оборудования GOLD
Для тестирования и диагностики оборудования станции
Motorola 922 можно воспользоваться утилитой gold. Она имеет
систему меню, очень похожую на систему меню утилиты sysadm.
SUN: Утилита тестирования оборудования sundiag
Sundiag - многофункциональная утилита тестирования оборудования на Sun
Unix для PC
Да чего там выпендриваться. Грузитесь в MSDOS и там
тестируйте железо всем, чем пожелаете.
Linux: изменение размеров NTFS-раздела
скачать и установить с linux-ntfs.sourceforge.org пакет ntfsprogs
ntfsresize -i /dev/hda9 # посмотреть статус и возможности
# тест возможности обрезать раздел под 15000 Мегабайт
ntfsresize -n -s 15000M /dev/hda9
umount /dev/hda9
ntfsresize -s 15000M /dev/hda9 # обрезать по настоящему
Командой fdisk /dev/hda
удалить, затем вновь создать партицию /dev/hda9 размером 15000M partition id 7 (NTFS)
После перезагрузки проверить файловую систему NTFS.
Linux: опрос состояния IDE-диска
smartctl -a /dev/hda
Выделение разделов под swap
Под swap область рекомендуется выделять не более одного
раздела (предпочтительнее самого первого) на каждом жестком
диске.
Под swap рекомендуется выделять 1*RAM - 2*RAM места, а
если на машине активно используется X-Windows, то 3*RAM.
В случае срочной необходимости под swap можно выделить и
обычный файл. Создайте файл большого размера, а затем
подключите его под swapping. Пример: выделяем 20 Mb-овый файл
dd if=/dev/zero of=/var/swapfile bs=1k count=20480
Чтоб swap подключался автоматически при начальной загрузке,
надо вписать строку в /etc/fstab - что-нибудь типа:
---------------------------------------------------------------
# device mountpoint type flags
/dev/hdb2 none swap sw
---------------------------------------------------------------
MOTOROLA: swap
После выделения раздела под swap его надо активизировать:
swap -a /dev/rdsk/m328_c2d0s0 0 0 # подключаем раздел
swap -a /var/swapfile 0 40960 # подключаем файл
# Внимание - здесь длина указывается в 512-байтных блоках
Linux: swap
# размечаем партицию,
# устанавливаем ей partition ID == 82 "Linux-swap"
fdisk /dev/hda
# Swap-файл для Linux _ОБЯЗАН_ лежать в каталоге /dev/
dd if=/dev/zero of=/dev/swapfile bs=1k count=40000
# После выделения раздела или файла под swap его надо прописать:
mkswap /dev/hda2 40000 ; sync # размер в килобайтах
swapon /dev/hda2 # подключаем swap-раздел
free # смотрим
swapoff /dev/swapfile # отключаем swap-файл
Для постоянного включения добавить строчку в /etc/fstab:
---------------------------------------------------------------
/dev/hdb2 none swap sw
---------------------------------------------------------------
HP-UX 10.20: swap
Душка HP-UX позволяет все запросто сделать менюшками SAM.
Специфика: swap в файловой системе называется экзотическим
словом "File system swap", организуется в виде каталога и
хватает не все сразу, как имеет место с swap-файлом, а "по
требованию", чем экономит место на диске.
В HP-UX отключить на лету swap -область нельзя - отключение swap форсирует перезагрузку компьютера
Primary-swap указывается в конфигурации ядра, остальные в файле /etc/fstab
swapon # подключаем
swapinfo # смотрим
SUN (Solaris и SunOS)
swap -l # листинг
swap -s # листинг
mkfile 40m swap-file # создать свапфайл в 40 Мб
swap -a swap-file # активизировать его.
Для постоянного включения добавить строчку
в /etc/vfstab:
/swap/file - - swap - no -
Инсталляция операционной системы
Для инсталляции операционной системы на Unix-компьютер
используются загрузочные дискеты, загрузочные магнитные ленты,
а также CD-ROM'ы.
С дистрибутивного носителя загружается минимальная версия
операционной системы Unix, и под управлением этого Unix-а
запускается программа инсталляции, которая извлекает и
устанавливает с носителя пакеты.
Motorola 922. Загрузка с магнитной ленты
Вставить ленту с дистрибутивом Unix SVR4/88. Включить
питание. После того, как на консольном терминале появится
сообщение
"Idle MPU: none"
нажать на клавишу "ПРОБЕЛ"
Появится меню из нескольких пунктов.
Выбираем "3" (System debugger), ENTER
В ответ на приглашение 197-Diag> вводим "bo 0 40" ENTER (0:
загрузить с 0-го SCSI контроллера, 40 - магнитная лента, 4-й
scsi-номер) и ждем 5 минут.
197-Diag> bo 0 40
Boot-prom организует в оперативной памяти RAM-диск,
считывает на него с магнитной ленты начальные 8 Mb - образ
файловой системы, загружает ядро операционной системы,
монтирует RAM-диск в качестве корневой файловой системы и
запускает с него программу инсталляции, управляемую меню.
Дальше надо ответить на некоторое количество вопросов, после
чего программа приступит к установке пакетов Unix'а, которые
размещены на ленте вслед за образом загрузочного RAM-диска.
Собственно извлечение файлов с ленты занимает 20-40 минут, в
зависимости от того, сколько и какие пакеты вы решили
устанавливать.
Первым вопросом система спросит, какой у вас терминал.
Ответьте, что у него 24 строки и он имеет позиционирование
курсора в стиле vt100 или unknown
Программа инсталляции имеет три основных режима:
Full install
upgrade
Maintenance mode
Вторым своим вопросом программа инсталляции предложит
выбрать один из них.
INSTALL - предусматривает полную установку операционной
системы. Все файловые системы на диске будут заново
переразмечены - и, следовательно, ВСЕ ФАЙЛЫ, которые до этого
существовали на диске, БУДУТ СТЕРТЫ.
UPGRADE - обновление "старинной" (образца 1988 года и древнее)
системы до современной версии. Старые данные при этом не
уничтожаются.(За исключением тех, естественно, которые включены
в новоустанавливаемые пакеты). Нас этот режим не касается,
поскольку у нас и так новая система установлена с самого
начала.
MAINTENANCE MODE - однопользовательский shell для
суперпользователя. Подготовленный администратор сможет,
загрузившись с ленты, вручную заняться ремонтом и устранением
неисправностей в операционной системе, которые ему не удалось
бы отремонтировать, загрузись он с диска. (И вообще, не всегда
же удается загрузиться с диска).
По выходе из maintenance shell'а (клавиша Ctrl-D) нажмите
Ctrl-C, чтоб гарантировать перезапуск инсталляционной
процедуры.
Если вы инсталлитесь на диск неизвестной породы, вам
придется перед запуском 1. Install уйти в Maintenance моду и по
стандартной схеме сделать описание этого диска.
Беста-88. Загрузка с магнитной ленты.
Вставить мастер-ленту Unix'а. Включить питание. На консольном
терминале появится сообщение:
boot:
Вводим "t:unix" ENTER (Загрузить unix с магнитной ленты)
boot: t:unix
RAM-диск у Bestix'а занимает 1000 Кб, вслед за ним расположен
архив формата cpio с дистрибутивом операционной системы.
Остается ответить на несколько вопросов и затем ждать минут 20,
пока все содержимое ленты будет извлечено на диск.
Sun SPARCstation. Загрузка с CD-ROM
Вставить CD-ROM. Включить питание. Подождать, пока станция
"разогреется". Нажать STOP+A. (STOP - левая верхняя клавиша на
левой дополнительной клавиатуре). Появится boot-rom prompt Ok:
вводим "boot cdrom". Если SPARC старой модели - SS1, SS1+, SS2,
придется вводить "boot sd(0,6,2)"
Ok boot sd(0,6,2)
Если приглашение имеет другой вид: "> " (??), то вместо "boot"
надо набрать "b"
> b sd(0,6,2)
После загрузки Unix запустите команду "suninstall", которая и
проведет инсталляцию.
# suninstall
Linux Slackware. Загрузка с дискет
В Linux'е для инсталляции нужно иметь две загрузочные
дискеты: BOOT (с нее загружаются, на ней находится ядро), и
ROOT (на ней находится минимальная файловая система с
программой инсталляции). Образы этих дискет в сжатом виде
хранятся в файлах boot*/*.gz и root*/*.gz соответственно. Вам
нужно выбрать по одному файлу из каждого множества (например
boot12/net.gz и root144/color144.gz) и изготовить из них
дискеты. Программа GZIP.EXE -D ИЛИ GUNZIP.EXE "разожмет" эти
файлы, а RAWRITE.EXE "зальет" их на дискеты. Сами пакеты с
дистрибутивом Linux могут лежать на DOS-партиции инсталлируемой
машины, на NFS-сервере, на дискетах, на CD-ROM, на магнитной
ленте.
Загрузитесь с boot-дискеты, в ответ на prompt "Lilo boot:"
введите соответствующий параметр и Enter, подождите немного.
ВНИМАНИЕ: Если ваша машина с Ethernet'ной картой ne2000
"зависает" при попытке загрузить ядро, повторите загрузку с
дополнительными параметрами, примерно такими:
Lilo boot: ether=10,0x320,eth0
Вставьте ROOT дискету, нажмите Enter. Когда появится "Console
login:" залогиньтесь как root и запустите:
# fdisk /dev/hda
# setup
Linux RedHat. Загрузка с дискеты
В Linux версии RedHat одна загрузочная дискета. Грузимся с
нее - а дальше все делаем по менюшкам. Дистрибутив может лежать
на локальном диске, NFS, FTP, SMB-сервере.
HP-UX 10.20. Загрузка с CD-ROM
Перехватываем начальную загрузку клавишей ESC и из
PDC-промта даем команду "нащупать cdrom"
BOOT-ADMIN> search scsi
....
scsi.2.0 ... CDROM ....
Из выдачи вылавливаем "scsi ID CD" и грузим его
BOOT-ADMIN> boot scsi.2.0
Дальше действовать по обстановке, отвечая на возникающие в
менюшках вопросы.
HP-UX 10.20. Инсталляция по сети
Готовим сервер
Установить с Install диска пакет "Network cold install utils"(Если надо инсталлить C-200 и старше) Установить с Install диска пакет-patch ACE/PHCO-10751 "Enabling network install for ... C-200"
В файл /etc/instl_boottab вписать несколько _незанятых_ адресов
Подмонтировать Install CD и зарегистрировать его как Depotmount /dev/dsk/c0t2d0 /cdrom
/usr/sbin/swreg -l depot /cdrom
Не забыть по окончании работ разрегистрировать Depot/usr/sbin/swreg -u -l depot /cdrom
На станции: Перехватить PDC-boot промпт (ESC или Break в первые 10 сек)
PDC> search lan install
Некоторые станции могут ничего не обнаружить, но все равно -
тогда втемную дается команда
PDC> boot lan.10.188.101.14.3.52 install
где 10.188.101.14 - IP адрес сервера,
а что такое 3.52 - не знает никто