software:linux_server:dfs:dfs
Различия
Показаны различия между двумя версиями страницы.
Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версия | ||
software:linux_server:dfs:dfs [2025/03/26 20:27] – [Подготовка точек монтирования файловой системы виртуального ядра] 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 | ||
+ | </ | ||
==== Подготовка точек монтирования файловой системы виртуального ядра ==== | ==== Подготовка точек монтирования файловой системы виртуального ядра ==== | ||
Строка 131: | Строка 134: | ||
==== Вход в нашу среду chroot ==== | ==== Вход в нашу среду chroot ==== | ||
- | We must now, as the `root` user on our host system, enter our base environment by changing our root directory into the final system's root directory, and use the temporary environment we've previously constructed to build our final system. Use the following command after you have become `root` on your host: | + | Теперь мы должны, как '' |
- | ``` | + | <code bash> |
chroot " | chroot " | ||
HOME=/ | HOME=/ | ||
Строка 140: | Строка 143: | ||
PATH=/ | PATH=/ | ||
/ | / | ||
- | ``` | + | </ |
- | ### Installing | + | ==== Установка |
With our `/tools` environment completely set up, we are ready to directly compile and install `dpkg` into our target environment. Replace the `build` variable with the appropriate architecture if it isn't 64-bit (which I am assuming that it is): | With our `/tools` environment completely set up, we are ready to directly compile and install `dpkg` into our target environment. Replace the `build` variable with the appropriate architecture if it isn't 64-bit (which I am assuming that it is): | ||
- | ``` | + | <code bash> |
./configure --prefix=/ | ./configure --prefix=/ | ||
make | make | ||
make install | make install | ||
- | ``` | + | </ |
- | ##### Creating | + | === Создание базы данных |
- | We need to create `dpkg`'s database, which is merely a text file located in `/ | + | Нам нужно создать '' |
- | `touch / | + | <code bash> |
+ | touch / | ||
+ | </ | ||
- | ##### Creating temporary links linking to / | + | === Создание временных ссылок, |
- | In order the for pre and post-installation scripts that come inside a standard | + | Для того, чтобы скрипты до и после установки, |
- | We must mitigate this problem by making sure that the `/bin` directory already exists, and then creating symlinks from these two locations towards the bash we have in our temporary `/tools` environment. | + | Мы должны решить эту проблему, |
- | When we get to the point of installing debian' | + | Когда мы дойдем до момента установки пакетов Debian «priority:essential», которые включают обе эти оболочки, эти символические ссылки будут перезаписаны собственными копиями этих двоичных файлов. |
- | ``` | + | <code bash> |
mkdir /bin | mkdir /bin | ||
ln / | ln / | ||
ln / | ln / | ||
- | ``` | + | </ |
- | ### Installing | + | ==== Установка |
- | Before we can install `apt`, and use this to automatically install the most of the rest of our system | + | Прежде чем мы сможем установить '' |
+ | {{:software: | ||
+ | == Рисунок 2. Дерево зависимостей apt, глубина в один уровень == | ||
- |  | ||
+ | </ | ||
- | `dpkg -i (location of gcc-4.9-base)` | + | Затем нам нужно будет сначала установить один пакет частично: |
- | Then, we will need to install one package first in a partial way: | + | <code bash> |
- | + | dpkg - i (LOCATION_OF_libgcc1) | |
- | `dpkg - i (LOCATION_OF_libgcc1)` | + | </ |
- | NOTE: You will receive an error here, containing errors very similar to the following: | + | ПРИМЕЧАНИЕ: Здесь вы получите сообщение об ошибке, содержащее ошибки, |
- | ``` | + | <code bash> |
Unpacking libc6:amd64 (2.28-10) over (2.28-10) ... | Unpacking libc6:amd64 (2.28-10) over (2.28-10) ... | ||
dpkg: dependency problems prevent configuration of libc6: | dpkg: dependency problems prevent configuration of libc6: | ||
Строка 212: | Строка 220: | ||
Errors were encountered while processing: | Errors were encountered while processing: | ||
| | ||
- | ``` | + | </ |
- | This is normal | + | Это нормально |
- | Once the package is installed, tweak the database to convince it that it -was- fully installed: | + | После установки пакета настройте базу данных, чтобы убедиться, |
- | `sed -ir ' | + | <code bash> |
+ | sed -ir ' | ||
+ | </ | ||
- | Now install the other two packages in order: | + | Теперь установите два других пакета по порядку: |
- | `dpkg -i (location_of_multiarch)` | + | <code bash> |
+ | dpkg -i (location_of_multiarch) | ||
+ | </ | ||
- | `dpkg -i (location_of_libc6)` | + | <code bash> |
+ | dpkg -i (location_of_libc6) | ||
+ | </ | ||
- | And reinstall | + | И переустановите |
- | `dpkg -i --reinstall (location of libgcc1)` | + | <code bash> |
+ | dpkg -i --reinstall (location of libgcc1) | ||
+ | </ | ||
- | #### Installing the rest of apt's dependencies | + | ====Установка остальных зависимостей |
- | At this point, I am assuming that -all- of the .deb files you need to install have been placed in a single directory. Double check to see that you have all of these files. `cd` to this directory right now. | + | На этом этапе я предполагаю, что |
- | The truth is, for the remaining dependencies, the dependency tree for all of them is just too complicated for me to map out and give you a granular series of installation commands to execute what should otherwise be a straightforward operation. | + | Правда в том, что для всех оставшихся зависимостей дерево зависимостей слишком сложное, чтобы я мог его составить и предоставить вам подробную последовательность команд установки для выполнения того, что в противном случае было бы простой операцией. |
- | Regardless of the actual dependency tree, there is a quick and dirty way to install the rest of the entire | + | Независимо от фактического дерева зависимостей, есть быстрый и грязный способ установить остальную часть всего дерева зависимостей |
- | ` dpkg -i *` | + | <code bash> |
+ | dpkg -i * | ||
+ | </ | ||
- | What happens here is that dpkg will attempt to install all software packages in the directory. It will inevitably fail, but do not fret. Simply repeat the command until everything is installed. | + | Здесь происходит следующее: |
- | ##### How this works | + | === Как это работает === |
- | What happens when we run the command above is that dpkg is attempting to install each package without actually taking into mind the dependency tree. So with each execution of the above command, another level of the dependency tree will be fulfilled, until it's successfully able to confirm that the entire tree was installed. Once you no longer get any errors from dpkg, it means everything was installed. | + | Что происходит, |
- | dpkg is simply not as intelligent as something like apt, which would automatically build a dependency map, and install all prerequisite software before attempting to install software dependent on said software. | + | dpkg просто не так умен, как что-то вроде |
- | You might also notice that dpkg itself is part of the .deb files that needed to be installed. Don't worry, this doesn' | + | Вы также можете заметить, |
- | ##### Double checking if everything is installed | + | ====Дважды проверьте, |
- | To be absolutely certain, you can execute the following command, which counts how many packages | + | Чтобы быть абсолютно уверенным, вы можете выполнить следующую команду, которая подсчитывает, |
- | `echo $(($(dpkg -l | wc -l)-5))` | + | <code bash> |
+ | echo $(($(dpkg -l | wc -l)-5)) | ||
+ | </ | ||
- | If this returns the value 23, then you can correctly assume that everything was installed as intended. | + | Если возвращается значение |
- | ### Creating networking configuration files | + | =====Создание файлов конфигурации сети===== |
- | Before we proceed with updating `apt's` cache, we need to define both the system's networking configuration files, and apt's list of software repositories. | + | Прежде чем приступить к обновлению '' |
- | #### / | + | ==== / |
- | `/ | + | '' |
- | ``` | + | <code bash> |
cat > / | cat > / | ||
nameserver 8.8.8.8 | nameserver 8.8.8.8 | ||
nameserver 8.8.4.4 | nameserver 8.8.4.4 | ||
EOF | EOF | ||
- | ``` | + | </ |
- | #### / | + | ==== / |
- | sources.list | + | **sources.list** — это файл, который '' |
- | ``` | + | <code bash> |
cat > / | cat > / | ||
# Debian Jessie main repos | # Debian Jessie main repos | ||
Строка 294: | Строка 314: | ||
deb-src http:// | deb-src http:// | ||
EOF | EOF | ||
- | ``` | + | </ |
- | #### /etc/hosts | + | ==== /etc/hosts==== |
- | `/etc/hosts` is a file used to contain mapping of IP addresses to hostnames. This file is usually checked before | + | '' |
- | ``` | + | <code bash> |
cat > /etc/hosts << " | cat > /etc/hosts << " | ||
127.0.0.1 | 127.0.0.1 | ||
Строка 307: | Строка 327: | ||
::1 | ::1 | ||
EOF | EOF | ||
- | ``` | + | </ |
- | #### / | + | ==== / |
- | `/ | + | '' |
- | ``` | + | <code bash> |
cat > / | cat > / | ||
debianfromscratch | debianfromscratch | ||
EOF | EOF | ||
- | ``` | + | </ |
- | ### Updating | + | =====Обновление списков пакетов |
- | We are now ready to update our list of packages and take full advantage of `apt`. To do this, we update our local keyring of valid Debian | + | Теперь мы готовы обновить наш список пакетов и в полной мере воспользоваться |
- | ``` | + | |
+ | <code bash> | ||
apt-key update | apt-key update | ||
apt-get update | apt-get update | ||
- | ``` | + | </ |
- | ### Creating user and group databases | + | =====Создание баз данных пользователей и групп===== |
- | Before we install more software, we must make sure that our password, group and authentication mechanisms are all in place. This is because some packages will require the adding of a new user or group to the system as part of their installation process. Without these base functionalities already in place, installation of said packages will fail. | + | Прежде чем устанавливать больше программного обеспечения, мы должны убедиться, что все наши механизмы паролей, |
- | ##### debianutils | + | === debianutils=== |
- | We install | + | Мы устанавливаем |
- | `apt-get install debianutils` | + | apt-get install debianutils |
- | ##### base-passwd | + | === base-passwd |
- | We install `base-passwd` to provide standard the standard minimal `/etc/passwd` and `/etc/group` files, which are the same across all debian systems. It does this by running the `update-passwd` binary upon its installation. | + | Мы устанавливаем '' |
- | `apt-get install base-passwd` | + | <code bash> |
+ | apt-get install base-passwd | ||
+ | </ | ||
- | ##### Creating | + | === Создание |
- | We have to manually create `/etc/shadow` and `/ | + | Нам придется вручную создать '' |
- | `touch /etc/shadow / | + | <code bash> |
+ | touch /etc/shadow / | ||
+ | </ | ||
- | ##### login | + | ===авторизоваться=== |
- | We then install the `login` package, which gives us the ability to establish new sessions on the system with `login`, privilege escalation with `su`, the linux pluggable authentication module | + | Затем мы устанавливаем '' |
- | `apt-get install login` | + | <code bash> |
+ | apt-get install login | ||
+ | </ | ||
- | ##### passwd | + | === пароль === |
- | We then install `passwd` package, which provides the lion's share of utilities and configuration files used to create and manipulate user and group account information. | + | Затем мы устанавливаем '' |
- | `apt-get install passwd` | + | <code bash> |
+ | apt-get install passwd | ||
+ | </ | ||
- | ##### adduser | + | === adduser |
- | We must also install the `adduser` package, because this provides us with the default `/ | + | Нам также необходимо установить '' |
- | `apt-get install adduser` | + | <code bash> |
+ | apt-get install adduser | ||
+ | </ | ||
- | ##### Establishing | + | === Установка пароля |
- | With all the aforementioned utilities and packages installed, our system is now capable of the full functionality of user & group account manipulation. | + | После установки всех вышеупомянутых утилит и пакетов наша система теперь способна выполнять все функции управления учетными записями пользователей и групп. |
- | At this point, we should run passwd | + | На этом этапе нам следует запустить '' |
- | `passwd root` | + | <code bash> |
+ | passwd root | ||
+ | </ | ||
- | We should then run `pwconv` to convert our / | + | Затем нам следует запустить '' |
- | `pwconv` | + | <code bash> |
+ | pwconv | ||
+ | </ | ||
- | ### Fixing the terminal and adding reading/editing utilities | + | ==== Исправление терминала и добавление утилит чтения/редактирования==== |
- | Our terminal does not yet have the full functionality one would expect of a terminal, and standard terminal utilities may still fail to function properly at this point. Let's install the proper libraries and create the configurations needed to make these , before we install | + | Наш терминал пока не обладает полной функциональностью, которую можно было бы ожидать от терминала, |
- | #### Creating | + | === Создание файла |
- | `/ | + | '' |
- | Since this file is not created by default when installing the `libreadline6` library, we must create it ourselves. | + | Поскольку этот файл не создается по умолчанию при установке '' |
- | ``` | + | <code bash> |
cat > / | cat > / | ||
# / | # / | ||
Строка 452: | Строка 487: | ||
$endif | $endif | ||
EOF | EOF | ||
- | ``` | + | </ |
- | #### ncurses | + | === Библиотеки и двоичные файлы |
- | A large number of command line utilites rely on the ncurses | + | Большое количество утилит командной строки полагаются на библиотеку |
- | `apt-get install ncurses-base ncurses-bin ncurses-doc` | + | <code bash> |
+ | apt-get install ncurses-base ncurses-bin ncurses-doc | ||
+ | </ | ||
- | #### dialog | + | === dialog=== |
- | Dialog | + | Dialog |
- | `apt-get install dialog` | + | <code bash> |
+ | apt-get install dialog | ||
+ | </ | ||
- | #### less, vim and nano | + | === less, vim and nano=== |
- | Now that we've installed most of the libraries and utilities needed for terminal utilities, let's install some of the most basic and well-used ones: | + | Теперь, когда мы установили большую часть библиотек и утилит, |
- | `apt-get install less vim nano` | + | <code bash> |
+ | apt-get install less vim nano | ||
+ | </ | ||
- | ### Creating the standard filesystem hierarchy on a Debian | + | ==== Создание стандартной иерархии файловой системы в системе |
- | Let's create the standard folder structure for a debian system. This can be done easily by installing `base-files`. First, we have to remove the `/var/mail` directory though or else it will complain that it already exists. | + | Давайте создадим стандартную структуру папок для системы Debian. Это можно легко сделать, |
- | ``` | + | <code bash> |
rm -rf /var/mail | rm -rf /var/mail | ||
apt-get install base-files | apt-get install base-files | ||
- | ``` | + | </ |
- | ### Building the man documentation system | + | ==== Создание системы документации для человека ==== |
- | Any Linux system typically has a database full of manual pages, accessed by the `man` command. Most programs we've installed already have already added their documentation files in the proper location. All we need to do now is actually install `man` to take advantage of them, and any more that are added as time passes by. | + | В любой системе |
- | `apt-get install man` | + | <code bash> |
+ | apt-get install man | ||
+ | </ | ||
- | ### Installing all remaining essential packages | + | ==== Установка всех оставшихся необходимых пакетов ==== |
- | We've installed most of the packages, all that is left to do is install the rest of the packages marked with the priority `essential` by the Debian | + | Мы установили большую часть пакетов, осталось только установить остальные пакеты, |
- | To comply with the Debian | + | Чтобы соответствовать стандарту |
- | `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` | + | <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 | ||
+ | </ | ||
- | Here follows is a short description of each package installed: | + | Ниже приведено краткое описание каждого установленного пакета: |
- | | Description | + | | Описание |
- | | ------------- | : | + | | **bash**: |Оболочка GNU Bourne-again, |
- | | **bash**: | The gnu bourne-again | + | | **bsdutils**: |
- | | **bsdutils**: | + | | **coreutils**: |
- | | **coreutils**: | + | | **dash**: |Оболочка |
- | | **dash**: | The Debian Almquist | + | | **diffutils**: |
- | | **diffutils**: | + | | **e2fsprogs**: |
- | | **e2fsprogs**: | + | | **findutils**: |
- | | **findutils**: | + | | **grep**: |Предоставляет утилиту |
- | | **grep**: | Provides the grep utility, used for finding strings within files or output you pipe into it. | | + | | **gzip**: |Предоставляет утилиту |
- | | **gzip**: | Provides the gzip utility, used for working with files using LZ77 encoding. | | + | | **hostname**: |
- | | **hostname**: | + | | **libc-bin**: |
- | | **libc-bin**: | + | | **init**: |Предоставляет стандартный набор средств инициализации системы для |
- | | **init**: | Provides the standard system initialization suite for Debian. | | + | | **mount**: |Предоставляет стандартные системные утилиты для монтирования и размонтирования файловых систем, включая файлы подкачки. | |
- | | **mount**: | Provides the standard system utilities for mounting and unmounting filesystems, including swapfiles. | | + | | **perl-base**: |
- | | **perl-base**: | + | | **sed**: |Предоставляет язык программирования |
- | | **sed**: | Provides the sed programming language, generally used for editing text. | | + | | **sysvinit-utils**: |
- | | **sysvinit-utils**: | + | | **tar**: |Предоставляет программу |
- | | **tar**: | Provides the tar program, used for storing and retrieving files from a taped archive. | | + | | **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> |
apt-cache search linux-image | apt-cache search linux-image | ||
apt-get install (selected image) | apt-get install (selected image) | ||
- | ``` | + | </ |
- | #### 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> |
make INSTALL_HDR_PATH=dest headers_install | make INSTALL_HDR_PATH=dest headers_install | ||
cp -rv dest/ | cp -rv dest/ | ||
- | ``` | + | </ |
- | 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> |
cp -v arch/ | cp -v arch/ | ||
cp -v System.map / | cp -v System.map / | ||
cp -v .config / | cp -v .config / | ||
- | ``` | + | </ |
- | ### 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)` | + | <code bash> |
- | + | ||
- | #### 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 GRUB2, you must first exit your chroot. | + | |
- | + | ||
- | ``` | + | |
exit | exit | ||
grub2-install / | grub2-install / | ||
- | ``` | + | </ |
- | Since this GRUB2 install does not have a configuration file yet, let's create one via template: | + | Поскольку в этой установке |
- | ``` | + | <code bash> |
cat > / | cat > / | ||
# Begin / | # Begin / | ||
Строка 613: | Строка 671: | ||
} | } | ||
EOF | EOF | ||
- | ``` | + | </ |
- | 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> |
cat > /etc/fstab << " | cat > /etc/fstab << " | ||
# Begin /etc/fstab | # Begin /etc/fstab | ||
Строка 639: | Строка 697: | ||
# End /etc/fstab | # End /etc/fstab | ||
EOF | EOF | ||
- | ``` | + | </ |
- | + | ||
- | 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.1743010077.txt.gz · Последнее изменение: 2025/03/26 20:27 — vladpolskiy