Добавление манула по initrd
This commit is contained in:
parent
5d6d0bf766
commit
debb7e14a4
28
README.md
28
README.md
|
@ -3,31 +3,7 @@
|
|||
**Информация систематизируется и постоянно дополняется!**
|
||||
|
||||
## [Linux](linux)
|
||||
|
||||
- [Установка софта в Linux](linux/soft.md)
|
||||
- [Права доступа](linux/chmod.md)
|
||||
- [Настройка сети](linux/network.md)
|
||||
- [Настройка SSH](linux/ssh.md)
|
||||
- [Копирование файлов на удалённый сервер через SSH](linux/scp.md)
|
||||
- [Анализ трафика (tcpdump)](linux/tcpdump.md)
|
||||
- [Мониторинга и анализа трафика (ngrep)](linux/ngrep.md)
|
||||
|
||||
## [Базы данных](databases)
|
||||
|
||||
- [PostgreSQL](databases/postgresql.md)
|
||||
|
||||
## [Программирование](programming)
|
||||
|
||||
- [Работа с библиотеками](programming/libs.md)
|
||||
|
||||
### [Язык программирования C](programming/c)
|
||||
|
||||
- [Компиляция C](programming/c/c_compilation.md)
|
||||
|
||||
### [Язык программирования D](programming/d)
|
||||
|
||||
- [Проект dub.json](programming/d/dub.md)
|
||||
|
||||
## [Программы](program)
|
||||
|
||||
- [Asterisk](program/asterisk.md)
|
||||
## [Базы данных](databases)
|
||||
## [Мануалы](manuals)
|
||||
|
|
|
@ -0,0 +1,3 @@
|
|||
# Мануалы
|
||||
|
||||
## [initrd (Initial RAM Disk)](initrd.md)
|
|
@ -0,0 +1,47 @@
|
|||
# initrd (Initial RAM Disk)
|
||||
|
||||
`initrd` - временная файловая система, [используемая ядром Linux](https://www.kernel.org/doc/Documentation/early-userspace/buffer-format.txt) при начальной загрузке.
|
||||
|
||||
## Распаковка
|
||||
|
||||
С помощью команды `file` определить тип сжатого файла с помощью ключа `-z`, просмотрев его внутренности:
|
||||
|
||||
```sh
|
||||
file -z initrd.img
|
||||
|
||||
initrd.img: ASCII cpio archive (SVR4 with no CRC) (gzip compressed data, max compression, from Unix)
|
||||
```
|
||||
|
||||
Файл архивирован с помощью `cpio` и сжат с помощью `gzip`. **Для распаковки необходимо переключиться на `root` пользователя.** От имени `root` пользователя выполнять следующий алгоритм по распаковки:
|
||||
|
||||
Сменить формат с `img` на `gz`:
|
||||
|
||||
```sh
|
||||
mv initrd.img initrd.gz
|
||||
```
|
||||
|
||||
Выполнить декомпрессию (`-d`) файла:
|
||||
|
||||
```sh
|
||||
gzip -d initrd.gz
|
||||
```
|
||||
|
||||
На выходе будет получен файл `initrd`, который является архивом `cpio`. Следующим шагом необходимо выполнить распаковку (`-i`) архива, в процессе которой будут созданы при необходимости начальные каталоги (`-d`):
|
||||
|
||||
```sh
|
||||
cpio -id < initrd
|
||||
```
|
||||
|
||||
## Создание образа
|
||||
|
||||
Находясь в дирктории, файлы и каталоги которой необходимо поместить в образ `initrd`, выполнить команду:
|
||||
|
||||
```sh
|
||||
find . | cpio -o -H newc | gzip -9 > ../initrd.img
|
||||
```
|
||||
|
||||
где
|
||||
|
||||
- `find .` - находит ввсе файлы и каталоги в указанной директории (`.`)
|
||||
- `cpio -o -H newc` - создание архива в режиме *copy-out* (`-o`) указанного [формата буфера](https://www.kernel.org/doc/Documentation/early-userspace/buffer-format.txt) (`-H newc`)
|
||||
- `gzip -9 > ../initrd.img` - максимальное сжатие (`gzip -9`) и сохранение данных в файле уровнем выше (`../initrd.img`)
|
Loading…
Reference in New Issue