software:linux_server:dfs:dfs
Различия
Показаны различия между двумя версиями страницы.
Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версия | ||
software:linux_server:dfs:dfs [2025/03/26 21:09] – [Установка debian-archive-keyring] vladpolskiy | software:linux_server:dfs:dfs [2025/03/26 21:55] (текущий) – [Комментарии, предложения, ошибки] vladpolskiy | ||
---|---|---|---|
Строка 73: | Строка 73: | ||
[[https:// | [[https:// | ||
- | [libc6](https:// | ||
- | [libgcc1](https:// | + | [[https:// |
- | [liblzma5](https:// | + | [[https:// |
- | [libpcre3](https:// | + | [[https:// |
- | [libreadline6](https:// | + | [[https:// |
- | [libselinux1](https:// | + | [[https:// |
- | [libstdc++6](https:// | + | [[https:// |
- | [libtinfo5](https:// | + | [[https:// |
- | [libusb-0.1-4](https:// | + | [[https:// |
- | [multiarch-support](https:// | + | [[https:// |
- | [readline-common](https:// | + | [[https:// |
- | [tar](https:// | + | [[https:// |
- | [zlib1g](https:// | + | [[https:// |
+ | |||
+ | [[https:// | ||
Строка 104: | Строка 105: | ||
Все следующие команды необходимо выполнять как пользователь '' | Все следующие команды необходимо выполнять как пользователь '' | ||
- | '' | + | <code bash> |
+ | su | ||
+ | </ | ||
==== Подготовка точек монтирования файловой системы виртуального ядра ==== | ==== Подготовка точек монтирования файловой системы виртуального ядра ==== | ||
Строка 156: | Строка 159: | ||
Нам нужно создать '' | Нам нужно создать '' | ||
- | '' | + | <code bash> |
+ | touch / | ||
+ | </ | ||
=== Создание временных ссылок, | === Создание временных ссылок, | ||
Строка 175: | Строка 180: | ||
Прежде чем мы сможем установить '' | Прежде чем мы сможем установить '' | ||
- | {{ : | + | {{: |
== Рисунок 2. Дерево зависимостей apt, глубина в один уровень == | == Рисунок 2. Дерево зависимостей apt, глубина в один уровень == | ||
Строка 193: | Строка 198: | ||
Для начала нам необходимо установить '' | Для начала нам необходимо установить '' | ||
- | '' | + | <code bash> |
+ | dpkg -i (location of gcc-4.9-base) | ||
+ | </ | ||
Затем нам нужно будет сначала установить один пакет частично: | Затем нам нужно будет сначала установить один пакет частично: | ||
- | '' | + | <code bash> |
+ | dpkg - i (LOCATION_OF_libgcc1) | ||
+ | </ | ||
ПРИМЕЧАНИЕ: | ПРИМЕЧАНИЕ: | ||
Строка 211: | Строка 220: | ||
Errors were encountered while processing: | Errors were encountered while processing: | ||
| | ||
- | < | + | </code> |
Это нормально - на этом этапе вы не можете полностью установить ни один из этих пакетов. Вы можете установить их только частично, | Это нормально - на этом этапе вы не можете полностью установить ни один из этих пакетов. Вы можете установить их только частично, | ||
Строка 217: | Строка 226: | ||
После установки пакета настройте базу данных, | После установки пакета настройте базу данных, | ||
- | '' | + | <code bash> |
+ | sed -ir ' | ||
+ | </ | ||
Теперь установите два других пакета по порядку: | Теперь установите два других пакета по порядку: | ||
- | '' | + | <code bash> |
+ | dpkg -i (location_of_multiarch) | ||
+ | </ | ||
- | '' | + | <code bash> |
+ | dpkg -i (location_of_libc6) | ||
+ | </ | ||
И переустановите libgcc1, чтобы скрыть наш маленький некрасивый хак и завершить полную установку каждого пакета: | И переустановите libgcc1, чтобы скрыть наш маленький некрасивый хак и завершить полную установку каждого пакета: | ||
- | '' | + | <code bash> |
+ | dpkg -i --reinstall (location of libgcc1) | ||
+ | </ | ||
====Установка остальных зависимостей apt==== | ====Установка остальных зависимостей apt==== | ||
Строка 237: | Строка 254: | ||
Независимо от фактического дерева зависимостей, | Независимо от фактического дерева зависимостей, | ||
- | '' | + | <code bash> |
+ | dpkg -i * | ||
+ | </ | ||
Здесь происходит следующее: | Здесь происходит следующее: | ||
Строка 253: | Строка 272: | ||
Чтобы быть абсолютно уверенным, | Чтобы быть абсолютно уверенным, | ||
- | '' | + | <code bash> |
+ | echo $(($(dpkg -l | wc -l)-5)) | ||
+ | </ | ||
Если возвращается значение 23, то можно с уверенностью предположить, | Если возвращается значение 23, то можно с уверенностью предположить, | ||
Строка 270: | Строка 291: | ||
nameserver 8.8.4.4 | nameserver 8.8.4.4 | ||
EOF | EOF | ||
- | < | + | </code> |
==== / | ==== / | ||
Строка 293: | Строка 314: | ||
deb-src http:// | deb-src http:// | ||
EOF | EOF | ||
- | < | + | </code> |
==== / | ==== / | ||
Строка 306: | Строка 327: | ||
::1 | ::1 | ||
EOF | EOF | ||
- | < | + | </code> |
==== / | ==== / | ||
Строка 316: | Строка 337: | ||
debianfromscratch | debianfromscratch | ||
EOF | EOF | ||
- | < | + | </code> |
=====Обновление списков пакетов apt===== | =====Обновление списков пакетов apt===== | ||
Строка 325: | Строка 346: | ||
apt-key update | apt-key update | ||
apt-get update | apt-get update | ||
- | < | + | </code> |
=====Создание баз данных пользователей и групп===== | =====Создание баз данных пользователей и групп===== | ||
Строка 339: | Строка 360: | ||
Мы устанавливаем '' | Мы устанавливаем '' | ||
- | '' | + | <code bash> |
+ | apt-get install base-passwd | ||
+ | </ | ||
=== Создание /etc/shadow и / | === Создание /etc/shadow и / | ||
Нам придется вручную создать ''/ | Нам придется вручную создать ''/ | ||
- | '' | + | <code bash> |
+ | touch /etc/shadow / | ||
+ | </ | ||
===авторизоваться=== | ===авторизоваться=== | ||
Затем мы устанавливаем '' | Затем мы устанавливаем '' | ||
- | '' | + | <code bash> |
+ | apt-get install login | ||
+ | </ | ||
=== пароль === | === пароль === | ||
Затем мы устанавливаем '' | Затем мы устанавливаем '' | ||
- | '' | + | <code bash> |
+ | apt-get install passwd | ||
+ | </ | ||
=== adduser === | === adduser === | ||
Нам также необходимо установить '' | Нам также необходимо установить '' | ||
- | '' | + | <code bash> |
+ | apt-get install adduser | ||
+ | </ | ||
=== Установка пароля root и записей shadowfile=== | === Установка пароля root и записей shadowfile=== | ||
Строка 366: | Строка 397: | ||
На этом этапе нам следует запустить '' | На этом этапе нам следует запустить '' | ||
- | '' | + | <code bash> |
+ | passwd root | ||
+ | </ | ||
- | Затем нам следует запустить pwconvпреобразование наших записей ''/ | + | Затем нам следует запустить |
- | '' | + | <code bash> |
+ | pwconv | ||
+ | </ | ||
==== Исправление терминала и добавление утилит чтения/ | ==== Исправление терминала и добавление утилит чтения/ | ||
Строка 452: | Строка 487: | ||
$endif | $endif | ||
EOF | EOF | ||
- | < | + | </code> |
=== Библиотеки и двоичные файлы ncurses=== | === Библиотеки и двоичные файлы ncurses=== | ||
Большое количество утилит командной строки полагаются на библиотеку ncurses для предоставления текстового интерфейса для взаимодействия пользователя через терминал. К ним относятся простые утилиты, | Большое количество утилит командной строки полагаются на библиотеку ncurses для предоставления текстового интерфейса для взаимодействия пользователя через терминал. К ним относятся простые утилиты, | ||
- | '' | + | <code bash> |
+ | apt-get install ncurses-base ncurses-bin ncurses-doc | ||
+ | </ | ||
=== dialog=== | === dialog=== | ||
Dialog — это модуль '' | Dialog — это модуль '' | ||
- | '' | + | <code bash> |
+ | apt-get install dialog | ||
+ | </ | ||
=== less, vim and nano=== | === less, vim and nano=== | ||
Теперь, | Теперь, | ||
- | '' | + | <code bash> |
+ | apt-get install less vim nano | ||
+ | </ | ||
==== Создание стандартной иерархии файловой системы в системе Debian==== | ==== Создание стандартной иерархии файловой системы в системе Debian==== | ||
Строка 475: | Строка 516: | ||
rm -rf /var/mail | rm -rf /var/mail | ||
apt-get install base-files | apt-get install base-files | ||
- | < | + | </code> |
==== Создание системы документации для человека ==== | ==== Создание системы документации для человека ==== | ||
В любой системе Linux обычно есть база данных, | В любой системе Linux обычно есть база данных, | ||
- | '' | + | <code bash> |
+ | apt-get install man | ||
+ | </ | ||
==== Установка всех оставшихся необходимых пакетов ==== | ==== Установка всех оставшихся необходимых пакетов ==== | ||
Строка 487: | Строка 530: | ||
Чтобы соответствовать стандарту Debian, нам необходимо установить все это: | Чтобы соответствовать стандарту Debian, нам необходимо установить все это: | ||
- | '' | + | <code bash> |
+ | apt-get install bash bsdutils coreutils dash diffutils e2fsprogs findutils grep gzip hostname libc-bin init mount perl-base sed sysvinit-utils tar util-linux | ||
+ | </ | ||
Ниже приведено краткое описание каждого установленного пакета: | Ниже приведено краткое описание каждого установленного пакета: | ||
- | | Описание | Что это дает | | + | | Описание |Что это дает | |
- | | **bash**: | The gnu bourne-again | + | | **bash**: |Оболочка GNU Bourne-again, |
- | | **bsdutils**: | + | | **bsdutils**: |
- | | **coreutils**: | + | | **coreutils**: |
- | | **dash**: | The Debian Almquist | + | | **dash**: |Оболочка |
- | | **diffutils**: | + | | **diffutils**: |
- | | **e2fsprogs**: | + | | **e2fsprogs**: |
- | | **findutils**: | + | | **findutils**: |
- | | **grep**: | Provides the grep utility, used for finding strings within files or output you pipe into it. | | + | | **grep**: |Предоставляет утилиту |
- | | **gzip**: | Provides the gzip utility, used for working with files using LZ77 encoding. | | + | | **gzip**: |Предоставляет утилиту |
- | | **hostname**: | + | | **hostname**: |
- | | **libc-bin**: | + | | **libc-bin**: |
- | | **init**: | Provides the standard system initialization suite for Debian. | | + | | **init**: |Предоставляет стандартный набор средств инициализации системы для |
- | | **mount**: | Provides the standard system utilities for mounting and unmounting filesystems, including swapfiles. | | + | | **mount**: |Предоставляет стандартные системные утилиты для монтирования и размонтирования файловых систем, включая файлы подкачки. | |
- | | **perl-base**: | + | | **perl-base**: |
- | | **sed**: | Provides the sed programming language, generally used for editing text. | | + | | **sed**: |Предоставляет язык программирования |
- | | **sysvinit-utils**: | + | | **sysvinit-utils**: |
- | | **tar**: | Provides the tar program, used for storing and retrieving files from a taped archive. | | + | | **tar**: |Предоставляет программу |
- | | **util-linux**: | + | | **util-linux**: |
- | ### Installing the kernel | + | ==== Установка ядра ==== |
- | You have two options here: either you can install the latest kernel image for your system architecture provided by the Debian | + | Здесь у вас есть два варианта: вы можете либо установить последний образ ядра для архитектуры вашей системы, |
- | #### Installing | + | === Установка ядра |
- | If you want to install | + | Если вы хотите установить стандартное ядро Debian, |
<code bash> | <code bash> | ||
apt-cache search linux-image | apt-cache search linux-image | ||
apt-get install (selected image) | apt-get install (selected image) | ||
- | < | + | </code> |
- | #### Compiling and installing your own custom kernel | + | === Компиляция и установка собственного ядра=== |
- | You can also compile your own custom kernel if you feel like it. | + | При желании вы также можете скомпилировать свое собственное ядро. |
- | To do this, you will need a tarball of the Linux kernel source, which you probably already have. | + | Для этого вам понадобится tar-архив исходного кода ядра |
- | You will also need to install the gcc package | + | Вам также потребуется установить пакет |
- | `apt-get install gcc libncurses5-dev bc make` | + | <code bash> |
+ | apt-get install gcc libncurses5-dev bc make | ||
+ | </ | ||
- | Now open up your extracted kernel source. Ensure that there are no stale files left behind from the developers in the source tree: | + | Теперь откройте извлеченный исходный код ядра. Убедитесь, |
- | `make mrproper` | + | <code bash> |
+ | make mrproper | ||
+ | </ | ||
- | Install the header files for this particular kernel. You will need these in the future if you intend to compile software that will take advantage of this kernel' | + | Установите файлы заголовков для этого конкретного ядра. Они вам понадобятся в будущем, |
<code bash> | <code bash> | ||
make INSTALL_HDR_PATH=dest headers_install | make INSTALL_HDR_PATH=dest headers_install | ||
cp -rv dest/ | cp -rv dest/ | ||
- | < | + | </code> |
- | I recommend that you use the default configuration as the base for your kernel build, as it will at the very least ensure that your system will be able to boot using the image we create later. | + | Я рекомендую вам использовать конфигурацию по умолчанию в качестве основы для сборки ядра, так как это, по крайней мере, гарантирует, |
- | `make defconfig` | + | <code bash> |
+ | make defconfig | ||
+ | </ | ||
- | Then, customize your kernel according to your heart' | + | Затем настройте свое ядро по своему вкусу. |
- | `make menuconfig` | + | <code bash> |
+ | make menuconfig | ||
+ | </ | ||
- | This book cannot help you figure out what exact modules to add to the kernel - you need determine the exact hardware that exists on your system yourself, and do research as to what modules will make those pieces of hardware functional. Google | + | Эта книга не поможет вам разобраться, какие именно модули следует добавить в ядро — вам нужно самостоятельно определить точное оборудование, |
- | After you've customized your kernel, compile it. | + | После настройки ядра скомпилируйте его. |
- | `make` | + | <code bash> |
+ | make | ||
+ | </ | ||
- | If you've created a modular kernel, install the compiled modules into it: | + | Если вы создали модульное ядро, установите в него скомпилированные модули: |
- | `make modules_install` | + | <code bash> |
+ | make modules_install | ||
+ | </ | ||
- | Copy the completed kernel into the / | + | Скопируйте готовое ядро в каталог |
<code bash> | <code bash> | ||
Строка 569: | Строка 626: | ||
cp -v System.map / | cp -v System.map / | ||
cp -v .config / | cp -v .config / | ||
- | < | + | </code> |
- | ### Adding modular functionality to the system | + | ==== Добавление модульной функциональности в систему==== |
- | Regardless of if you installed the standard | + | Независимо от того, установили ли вы стандартное ядро Debian GNU/ |
- | `apt-get install kmod ` | + | <code bash> |
+ | apt-get install kmod | ||
+ | </ | ||
- | The only exception to this case would be if you compiled your own monolithic kernel with no modules, and do not intend on adding any beyond the ones you've already compiled into the kernel | + | Единственным исключением из этого случая может быть случай, когда вы скомпилировали свое собственное монолитное ядро без модулей и не собираетесь добавлять ничего, |
- | ### Making the system bootable | + | ==== Делаем систему загрузочной==== |
+ | === Переконфигурирование диска с предустановленным загрузчиком GRUB2=== | ||
+ | Если эта система Debian Linux находится на разделе уже загрузочного диска, все, что нужно сделать, | ||
+ | Если вы используете GRUB2, то использование '' | ||
- | #### Reconfiguring a drive with a pre-installed GRUB2 bootloader | + | <code bash> |
- | If this Debian Linux system is on a partition of an already bootable drive, all one needs to do to make this system bootable is to replace the configuration file of the drive' | + | grub2-mkconfig -o / |
+ | </ | ||
- | If using GRUB2, | + | === Установка |
- | + | В случае, если раздел находится на диске, на котором еще нет собственного загрузчика, вы должны установить и настроить его самостоятельно. Чтобы установить | |
- | `grub2-mkconfig -o /boot/(path to grub.cfg)` | + | |
- | + | ||
- | #### Installing GRUB2 onto a drive with no pre-installed bootloader | + | |
- | In the event that the partition is on a drive that does not yet have its own bootloader, you must install it and configure it yourself. To install | + | |
<code bash> | <code bash> | ||
exit | exit | ||
grub2-install / | grub2-install / | ||
- | < | + | </code> |
- | Since this GRUB2 install does not have a configuration file yet, let's create one via template: | + | Поскольку в этой установке |
<code bash> | <code bash> | ||
Строка 612: | Строка 671: | ||
} | } | ||
EOF | EOF | ||
- | < | + | </code> |
- | Then, edit this file to replace the (kernel-location) | + | Затем отредактируйте этот файл, заменив строку |
- | Afterwards, use the previously aforementioned `chroot` command provided in the 'Entering our chroot' | + | После этого используйте ранее упомянутую '' |
- | ### Creating | + | ==== Создание |
- | Before you boot into your system, it is absolutely -vital- for you to create and configure your / | + | Перед загрузкой системы вам абсолютно необходимо создать и настроить файл |
- | If you do -not- have an / | + | Если у вас нет файла |
- | So we create a base /etc/fstab: | + | Итак, создаем базу |
<code bash> | <code bash> | ||
Строка 638: | Строка 697: | ||
# End /etc/fstab | # End /etc/fstab | ||
EOF | EOF | ||
- | < | + | </code> |
- | + | ||
- | Modify the first entry with the partition location of this system, and the type of filesystem. The second entry should contain the location of your swap partition. If you don't intend on using one, remove the line. | + | |
- | ### The End | + | Измените первую запись на расположение раздела этой системы и тип файловой системы. Вторая запись должна содержать расположение вашего раздела подкачки. Если вы не собираетесь его использовать, |
- | Congratulations! You've finished building your Debian | + | ==== Конец==== |
+ | Поздравляем! Вы завершили сборку своей системы | ||
- | ### Comments, suggestions, bugs | + | ==== Комментарии, предложения, ошибки==== |
- | If you found this guide useful, or have suggestions, | + | Если вы нашли это руководство полезным или у вас есть предложения, автор будет рад услышать от вас. Напишите ему по адресу |
- | scottwilliambeasley | + | [[mail> |
- | Also, contributions or additions to this manual are very much welcomed. You may do so by using this repository: | + | Также, вклады или дополнения к этому руководству очень приветствуются. Вы можете сделать это, используя этот репозиторий: |
- | * https:// | + | * [[https:// |
* https:// | * https:// | ||
+ | ==== Дополнения и Файлы ==== | ||
+ | {{ : |
software/linux_server/dfs/dfs.1743012553.txt.gz · Последнее изменение: 2025/03/26 21:09 — vladpolskiy