CDlinux HOWTOs

English    Russian    Simplified Chinese    Traditional Chinese   
Описание    Скачать    Howto    Дополнения    История
Содержание:

Установка:
Как установить CDlinux?
Как добавить CDlinux в мой собственный образ компакт-диска?
Как установить CDlinux на жесткий диск?
Как установить CDlinux на USB диск?
Краткое введение в параметры командной строки CDlinux
Настройка:
Краткое введение в настройки CDlinux.
Как добавить мои любимые приложения в CDlinux?
Как собрать CDlinux "пакет"?
Как собрать "модуль" для CDlinux?
Как настроить CDlinux, чтобы он соответствовал моим потребностям?
Как настроить мою сеть?
Как настроить мои RAID устройства?
Как настроить мою мышь?
Использование:
Как читать/вводит CJK?
Как обмениваться информацией с другими компьютерами?
Как изменяет размеры/управлять разделами диска?
Моя таблица разделов была разрушена, как восстановить ее?
Как восстанавливать файлы в ext2?
Мой LILO/GRUB загрузчик был записан поверх Windows, как восстановить его?
Windows 9x записался поверх NT/2k/XP's mbr, как восстановить его?
Как восстановить пароль NT/2k/XP администратора?

Как установить CDlinux?
Дистрибутив CDlinux это обычный ISO образ. Так что самый простой способ его установить: записать CDlinux.iso на компакт-диск и загрузить компьютер с CD-ROM. Ты можешь установить CDlinux на жесткий диск или USB-носитель, смотри ниже.

Как добавить CDlinux в мой собственный образ компакт-диска?
CDlinux - крошечный дистрибутив. ver 0.4.9 это всего лишь 17Mb, это - гораздо меньше того объема информации которую может вместить обычный диск. Так что, если ты хочешь, ты можешь объединить CDlinux с другими материалами и собрать твой собственный образ компакт-диска. Ты можешь сделать это или в Linux или в Windows.
Linux способ (можешь сделать это или в CDlinux, или в обычной Linux)
Сначала, извлеки содержимое образа CDlinux:
# mount -o loop CDlinux-x.x.x.iso /some/where
Ты найдешь все содержимое CDlinux в /some/where. Добавь все другие материалы, которые ты хотел добавить в образ, в /mycd папку. Теперь ты должен скопировать содержание CDlinux в туже папку:
# cp -p -r /some/where/* /mycd
Затем, перейди в /mycd папку, и измени сценарий mkisofs.sh, чтобы он соответствовал вашим нуждам.
И, наконец, собери образ компакт-диска:
# ./mkisofs.sh
По умолчанию, новый образ будет назван: /tmp/1.iso. Ты можешь записать его cdrecord или другой программой для записи дисков, которую ты любишь. Обрати внимание, что, образ ISO, созданный нами выше, загрузится с CDlinux. Если ты хочешь собрать мультизагрузочный компакт-диск, то ты можешь воспользоваться isolinux, который является компонентом syslinux. Что бы узнать больше о syslinux, прочитай специальную документацию.
Windows способ Я не практически не знаю программам для Windows, которые могли бы записывать диски, но я предполагаю, что записать диск в Windows не так уж и сложно. Вот - некоторые подсказки:
  • Чтобы извлекать файлы из образа CDlinux, ты можешь воспользоваться WinRAR.
  • CDlinux использует boot/CDlinux/CDlinux.img, этот файл является 2.88Mb загружаемым образом.
  • Не изменяй иерархию каталога CDlinux в твоем образе.
  • Не изменяй регистр имен файла/папки, CDlinux чувствителен к регистру.

  • Как установить CDlinux на жесткий диск?
    Благодаря многосторонности Linux, мы можем установить CDlinux на жесткий диск множеством способов. Сейчас мы рассмотрим только, как установить CDlinux на раздел Windows FAT, и загрузить это с loadlin. Если хочешь, можешь узнать другие способы установки самостоятельно. Предполагается, что ваш Windows C: диск /dev/hda1, и он отформатирован как FAT16/FAT32. Установим на него CDlinux:
Linux способ (Ты можешь это сделать или в CDlinux или в обычной Linux) Сначала, примонтируй ISO образ CDlinux и диск C:
# mount -o loop CDlinux-x.x.x.iso /mnt/cdrom
# mount /dev/hda1 /mnt/win
(Если ты не хочешь устанавливать CDlinux на C:, или твой диск C: не /dev/hda1, тогда подкорректируй вторую команду, изменив /dev/hda1 на нужный тебе диск.) Скопируй дополнительные пакеты и модули на C:
# mkdir /mnt/win/CDlinux
# cp -r /mnt/cdrom/boot/CDlinux/extra /mnt/win/CDlinux
Затем, скопируй Linux ядро и initrd к C:
# mount -o loop /mnt/cdrom/boot/CDlinux/CDlinux.img /mnt/floppy
# cp /mnt/floppy/bzImage /mnt/floppy/CDlinux.gz /mnt/win/CDlinux
Наконец, скачай loadlin (~10k) и распакуй его на C:
# tar -C /mnt/win/CDlinux -zxf loadlin.tgz
(Распакуется "loadlin.exe" и образец "autoboot.bat". Пожалуйста, проверь сначала "autoboot.bat", и измени его, если необходимо.) Теперь ты можешь загрузиться в "чистый" DOS, и запустить CDlinux:
C:
CD CDlinux
AutoBoot
Обрати внимание, все что написано выше - пример. Твоя ситуация может отличаться от показанной в примере. Проверь, что ты сделал все необходимое. Пожалуйста, смотри краткое введение в CDlinux, параметры командной строки и краткое введение дерево каталогов CDlinux.

Как установить CDlinux на USB диск?
Есть также много способов, чтобы установить CDlinux на USB диск. Мы только объясним, как установить CDlinux на FAT разделе, и загрузить с syslinux. Другие способы можно узнать из другой документации. Далее мы предполагаем, что ваш USB диск находится в режиме жесткого диска. Первый раздел на нем /dev/sda1, и он отформатирован как FAT12/FAT16/FAT32. Установка CDlinux:
Linux способ (Ты можешь это сделать или в CDlinux, или в обычной Linux) Сначала, переместите syslinux USB диск:
# syslinux /dev/sda1
Установите CDlinux ISO образ на USB диск:
# mount -o loop CDlinux-x.x.x.iso /mnt/cdrom
# mount /dev/sda1 /mnt/win
(Если твой USB диск - не /dev/sda1, пожалуйста измени во второй команде соответсвующий путь.) Скопируй дополнительные пакеты и модули:
# mkdir /mnt/win/CDlinux
# cp -r /mnt/cdrom/boot/CDlinux/extra /mnt/win/CDlinux
Затем, скопируй Linux ядро и initrd:
# mount -o loop /mnt/cdrom/boot/CDlinux/CDlinux.img /mnt/floppy
# cp /mnt/floppy/bzImage /mnt/floppy/CDlinux.gz /mnt/win
И наконец, скачай syslinux конфиг (~2k) и извлеките его на USB диск:
# tar -C /mnt/win -zxf syslinux-cfg.tgz
(Появится новый "syslinux.cfg" и некоторые другие файлы. Пожалуйста проверь сначала "syslinux.cfg", и, если нужно, измнени его.) Теперь настрой BIOS, чтобы загрузиться с USB-HDD или USB-zip (это зависит от того, как ваш BIOS видет USB диск), и перезагрузись. Обрати внимание, все что написано выше - пример. Твоя ситуация может отличаться от показаной в примере. Проверь, что ты сделал все необходимое. Пожалуйста смотри краткое введение в CDlinux, параметры командной строки и краткое введение дерево каталогов CDlinux.

Краткое введение в параметры командной строки CDlinux
Сделать CDlinux более гибким и способным к обнаружению дополнительных компонентов на CDROMs, или на других устройствах, может запустить в режиме "normal" (ramdisk) в состоянии "loop", мы определили три ядерных параметра командной строки:
CDL_DEV=:
указывает, на каком устройстве находится CDlinux.
по умолчанию:/dev/cdrom
пример: CDL_DEV =/dev/hda1
CDL_DIR=:
указывает, в какой папке (CDL_DEV файл системы) расположен CDlinux.
значение по умолчанию: boot/CDlinux, CDlinux, zxh/CDlinux
пример: CDL_DIR=APPs/CDlinux
CDL_LOOP:
Должен ли CDlinux установить все модули в режиме "loop"?
значение по умолчанию: нет, не устанавливай их в ramdisks, если возможно.
пример: CDL_LOOP
Эти параметры дополнительные. Если им не заданно значение, то будет использоваться значение по умолчанию.


Краткое введение в настройки CDlinux.
CDlinux можно очень тонко настраивать. Он разделен на 2 части:
1. base: 2.88Mb образ, то есть CDlinux.img
2. extra: другие полезные пакеты и модули
"base" часть CDlinux - 2.88M vfat образ, который содержит Linux ядро и некоторые основные пакеты. Если ты хочешь только основные пакеты Linux, ты можешь удалить все другие файлы CDlinux. Этот образ содержит: bash (1.14.7), bftpd (крошечный ftp демон), busybox, bzip2, e2fsprogs, file, find, gawk, grep, gzip, midnight commander (4.1.35), portmap (чтобы установить nfs), sed, tar, и vim (5.8), и т.д.
"extra" часть содержит другие полезные пакеты и модули. Эти пакеты и модули расположены в boot/CDlinux/extra/. Во время начальной загрузки, CDlinux попробует найти extra/ папку, и установить найденные пакеты и модули автоматически.

Ты можешь использовать только CDlinux.img, чтобы загрузиться, но если ты хочешь полноценную версию, убедись, что сохранил "extra" папку и файлы в ней. Если ты достаточно смел, ты можешь добавить свои собственные приложения в extra/, и удалить те, которые тебе не нужны, а затем пересобрать свою собственную версию CDlinux.

Как добавить мои любимые приложения в CDlinux?
CDlinux создавался, чтобы быть крошечным и легко настраиваемым. Таким образом, много полезных приложений не включены в набор CDlinux. ты можете установить их, добавляя или "пакет", или "модуль". Что выбрать зависит от приложения, которое ты намереваешься добавить. Если приложение маленькое, и не должно быть инициализированным перед использованием, ты можете собрать его как "пакет". Иначе, лучше будет "модуль". Например, ты можете собрать F-PROT как модуль, и сохранить его в extra/ папке, это сделает CDlinux способным искать вирусы. (F-PROT - крутой вирусный сканер. Я не включил его в набор, потому что я не уверен, позволяет ли его лицензия сделать так.)

Примечания сборки приложений для CDlinux
  • CDlinux компилирует gcc-2.95.3 и линкует glibc-2.2.5. Так что ты тоже должны собирать ваше приложение с gcc-2.95.x и glibc-2.2.x.
  • Если ваше приложение нуждается в дополнительных библиотеках, которые не включены в CDlinux, ты должны добавить эти библиотеки.

Как собрать CDlinux "пакет"?
Собрать пакет для CDlinux очень прост. "Пакет" - стандартный .tar.gz файл. ты можете посмотреть структуры "пакета" в "xxx-cdl.tgz" файлах в extra/ папке. Только помните:
  • Твой пакет нужно назвать как "xxx-cdl.tgz". Иначе он будет игнорироваться и не будет установлен.
  • Если хочешь, ты можешь написать краткое описание вашего пакета, и сохранить это как zxh/SPEC. Это будет объединено в /var/log/packages автоматически. Пожалуйста посмотри "xxx-cdl.tgz" файлы, что бы лучше понять формата SPEC.
  • Весь другой материал в zxh/ папке кроме SPEC будет игнорироваться и не будет установлен.
  • CDlinux запускается на небольшом RAM диске. Так что, делайте ваш пакет крошечным. Ты можешь поместить ненужные файлы, например, man-страницы и документацию в zxh/ папке. Таким образом они не будут установлены во время начальной загрузки, в то время как ты можете все еще обращаться к ним позже.

  • Как собрать "модуль" для CDlinux?
    Если ты намереваешься добавить большое приложение к CDlinux, ты можешь собрать его как "модуль". CDlinux "модуль" - стандартный cramfs дисковый образ. Во время начальной загрузки, CDlinux попробует найти файлы, названные как "xxx-cdl.md" в extra/ папке, и установит их автоматически. Собрать "модуль" CDlinux немного сложнее. Тебе нужно будет mkfs.cramfs для создания дискового образа. Пожалуйста посмотри "xxx-cdl.md" файлы, как примеры структуры "модулей".

Примечания о сборке "модуля" CDlinux
  • Модуль нужно назвать как xxx-cdl.md. Иначе он будет игнорироваться и не будет установлен.
  • Ты должен, указать точку монтирования модуля. Чтобы сделать это, напиши точку монтирования в файле ".mount_point", и сохраните это к корне образа cramfs. Пожалуйста смотри "xxx-cdl.md" файлы в extra/, чтобы больше узнать о форматае ".mount_point".
  • Если твое приложение должно быть инициализировано перед использованием, ты можешь поместить его в сценарий init в корне образа cramfs, в разделе ".init". CDlinux найдет и выполнит ".init" автоматически.
  • По умолчанию, CDlinux попробует установить "модули" в память. Если ты хочешь сохранить больше свободной памяти, ты можешь заставить CDlinux устанавливать модули в режиме "loop", добавляя опцию "CDL_LOOP" к командной строке ядра.
  • cramfs файл только для чтения, и не делает записи о времени файлов/папок.

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

Трудный путь состоит в том, чтобы изменить initrd. initrd - стандартный ext2 образ файла системы. Ты можете установить его, затем сделать любые изменения, которые ты хочешь. Этот путь не рекомендуется, и мы сконцентрируемся на боле простом пути ниже.
Простой путь, сделать твои изменения в extra/system-extra-cdl.tgz. Если ты изменишь любой файл, например, /etc/profile, положив измененную версию в system-extra-cdl.tgz. CDlinux запишет поверх оригинала твою новую версию автоматически. Ты можешь добавить сценарий /etc/rc.d/rc.local в system-extra-cdl.tgz. Он будет автоматически обнаружен и выполнен во время начальной загрузки. Вот некоторые примеры:

Изменение приглашения bash
Измени строку "PS1 = " в /etc/profile, и добавь измененную версию в system-extra-cdl.tgz и в /etc/profile.

Изменение bash, редактируя стиль от emacs до vi
Измени /etc/inputrc, добавь "set +o vi". Поместите новую версию в system-extra-cdl.tgz и в /etc/inputrc.

Автоматическое монтирование C: диска
Измени /etc/fstab, и положи его в system-extra-cdl.tgz.

Автоматический поиск моей non-PnP ISA карты(карт)
Предпологается, что ты пользуешься NE2000 совместимой non-PnP ISA картой, которая использует 0x300 как порт ввода - вывода. Чтобы заставить CDlinux автоматически находить её, ты можешь создать новый сценарий оболочки. Добавьте строку "modprobe ne io=0x300", и chmod это к выполнимому. Потом сохраните его как /etc/rc.d/rc.local в system-extra-cdl.tgz.

Использование CDlinux как простого Шлюз/Файрволл
Измените пакет iptables-x.x.x-cdl.tgz. Добавьте сценарий /etc/rc.d/init.d/IPTABLES, и добавьте туда вашт проавила. Пожалуйста смотри extra/dcron-x.x.x-cdl.tgz, чтобы больше узнать о формате сценария.
Фактически, CDlinux найдет и выполнит любой executables в /etc/rc.d/init.d/ во время init. Это немного похоже на sysvinit схему, за исключением того, что в CDlinux не поддерживает выполнеямые уровни.

Как настроить мою сеть?
CDlinux имеет встроенные драйверы для многих сетевых карт, и в тоже время остается крошечным, больше других карт поддерживается только ядерными модулями. Во время начальной загрузки, CDlinux попробует найти твою сетевую карту(ы). Но если какая нибудь карта(ы) была уже найдена встроенными драйверами, поиск других сетевых карт будет пропущен.
Ты можете обнаружить свою сетевую карту(ы) вручную:
# nic-detect
Это - сценарий оболочки, который пытаеться обнаружить, сетевую карту(ы). В настоящее время, он примитивный и опасный, он может даже вешать твою систему. Используйте его с осторожностью, и посылай мне сообщение об ошибках.
CDlinux включен DHCP клиент. Так что, если ты имеешь DHCP сервер, твой IP-адрес, шлюз, и сервер доменной системы имен, и т.д. должны быть настроены автоматически. Ты можешь настроить эти параметры вручную:
# net-config
Чтобы установить твои полномочия, выполни:
# proxy-config
Чтобы изменять MAC-адрес твоей карты, выполни:
# mac-fake
... и следуй инструкциям появляющимся на экране.

Как настроить мои RAID устройства?
SCSI и RAID драйверы собраны как модули ядра. Так что они не могут быть автоматически обнаружены. Ты должен установить соответствующие модули ядра, чтобы управлять ими. Например, давай предположим, что ты имеешь AHA1542, SCSI карту, и два SCSI диска присоединены к нему как /dev/sda и /dev/sdb соответственно. /dev/sda1 и/dev/sdb1 объединены в RAID0 md. Ты можешь настроить их:
# modprobe aha1542
# modprobe raid0
# mdadm -A /dev/md0 /dev/sda1 /dev/sdb1
Теперь, ты должен обратиться к вашему md как /dev/md0.

Как настроить мою мышь?
Используй mouse-config. (поддерживает большинство COM/PS2/USB мышей)


Как читать/вводит CJK?
Использование CCE:
cce - китаийский (Упрощенный)
cceb5 - китаийский (Традиционный)
ccejis - японский
cceksc - кореийский
Используй Ctrl+Space и/или Ctrl+Shift, чтобы переключать IMs. (Если тебе не нужна поддержка CJK вообще, ты можешь просто удалить extra/cce-x.x.x-cdl.md файл.

Как обмениваться информацией с другими компьютерами?
CDlinux уже содержит ftp, ssh1, и nfs3 серверы и клиенты. По умолчанию, ftp и ssh сервер запускаются автоматически. Так что, ты можешь обменяться данными с другими компьютерами используя или с ftp, или с scp.
По умолчанию, сервер nfs не экспортирует ничего. Ты должен сначала редактировать /etc/exports, чтобы сказать серверу, что экспортировать и как. Потом перезапустите это:
# /etc/rc.d/init.d/UNFSD restart
nfs и samba клиенты тоже запущены. Установка ресурса nfs:
# mount -t nfs xx.xx.xx.xx:/exported/resource /some/where
Установка ресурса samba:
# mount -t smbfs -o username=xx //machine_name/resource_name /some/where
Как изменяет размеры/управляет разделами диска?
Используй parted, resize2fs и т.п.

Моя таблица разделов была разрушена, как восстановить ее?
Используй gpart. (уже установлен патч reiserfs-3.6, так что программа будет отлично работать на reiserfs)

Как восстанавливать файлы в ext2?
Используй e2undel.

Мой LILO/GRUB загрузчик был записан поверх Windows, как восстановить его?
Если твой недавно установленный Windows записал поверх MBR, таким образом твой Linux не может загрузиться. Ты можешь восстановить это используя CDlinux:
Сначала, примонтируй корневой раздел Linux, например /dev/hda5:
# mount -t ext2 /dev/hda5 /mnt/local
Потом:
# lilo -r /mnt/local
Не получилось? Хорошо, не волнуйся. Давай пробуем это:
# chroot /mnt/local /sbin/lilo
Вроде, должно работать. Снова не работает? Тогда, я боюсь, что ты испортил его. И последняя надежда: (КСТАТИ, если ты используешь GRUB, воспользуйся командой - "grub-install". Пожалуйста, прочитай документацию к LILO/GRUB для более детальных команд.

Windows 9x записался поверх NT/2k/XP's mbr, как восстановить его?
Примим, что ваш C: диск - /dev/hda1, и он отформатирован как FAT32. Твой недавно установленный Windows 98 записал поверх блока начальной загрузки XP. И ты не можете видеть двойное меню начальной загрузки XP больше. Ты можете попробовать восстановить его:
# ms-sys -2 /dev/hda1
Для более детальной справки, пожалуйста прочитай к ms-sys' документацию.

Как восстановить пароль NT/2k/XP администратора?
Если ты потерял пароль администратора NT/2k/XP, нет никакого простого способа восстановить его. Но ты можете "записать поверх" старого пароля - новый, или просто очистить первоначальный пароль:
# nukent
Следуй инсрукциям. (Примечание: Для недавних версий Windows, например Windows XP + SP2, перезаписать пароль новым паролем не получится, но ты можешь просто удалить его.)

Для получения дополнительной информации об установленных пакетах и кратком введении их использования, пожалуйста смотри /var/log/packages. Много man страниц включены в эти пакеты (под zxh/папкой, не установленный по умолчанию). Ты можешь "mount /mnt/cdrom" и затем найти их в тех "-cdl.tgz" файлах. Для детальной команды по использование некоторой программы, пожалуйста читай ее собственную документацию, это - вне темы этой мини HOWTO. Так или иначе, RTFM - превосходный способ учиться:)
Переведено sage.
Вверх
 
Powered by BerliOS Developer Logo and SourceForge.net Logo      Last modified: 2006/11/03