24.07.2023

Как использовать утилиту Chroot в Linux? Часть 2

Команда Chroot в Unix позволяет пользователям создавать безопасную временную среду для программ, изменяя корень файловой системы. Такая изоляция предотвращает нанесение какого-либо вреда первичной системе. В предыдущей инструкции из этой серии рассмотрели две основные и немаловажные функции: изоляция и разрешение.

Что такое Chroot?

Chroot создает новую среду оболочки, что означает любые изменения, внесенные в эту среду, будут влиять только на файлы и каталоги в среде Chroot, а не на центральную систему.

Например, если вам нужно протестировать программу на другой версии операционной системы, для которой требуются определенные библиотеки, недоступные в вашей основной системе, вы можете создать Chroot-среду с необходимыми библиотеками и запустить программу в этой изолированной среде. Это гарантирует, что программа работает корректно, не вызывая никаких проблем в основной системе.

Однако важно отметить, что Chroot следует использовать только опытным пользователям, поскольку неправильное использование может привести к нестабильности системы. Кроме того, Chroot может помочь восстановить системы после аварийных сбоев или вредоносных атак.

Установка и настройка

Рассмотрим одну из основных функций утилиты — восстановление системы. Chroot можно использовать для восстановления системы после сбоя или вредоносной атаки. Программа изолирует файловую систему от воздействия, которое может проявиться после технического обслуживания. Давайте посмотрим!

Если у вас есть VDS на Serverspace, то вам нужно открыть панель управления и перейти на вкладку восстановление:

Скриншот №1 — Панель управления

 

Скриншот №2 — Вкладка

Затем перезагрузите свой сервер и продолжайте. Перед использованием обновите основную утилиту и обновите вашу систему :

sudo apt update -y && sudo apt upgrade -y

Скриншот №3 — Обновление

На первом шаге нам нужно найти метку диска восстановления с помощью приведенной ниже команды:

fdisk -l

Скриншот №3 — Диски

Монтируйте устройство в точку файловой системы для дальнешей работы с ним. Приведенная ниже команда создает папку и точку монтирования:

mkdir mnt && mount dev/vda2 /mnt

Скриншот №4 — Монтирование

Затем создайте папку и скопируйте файл конфигурации:

mkdir /mnt/chroot/etc && cp -p /etc/(passwd,group,shadow,gshadow} /mnt/chroot/etc

Скриншот №5 — Копирование

Создание папок и монтирование каталогов в систему, выполняется следующим образом:

mkdir /mnt/chroot/dev
mount --bind /dev /mnt/chroot/dev
mkdir /mnt/chroot/proc
mkdir /mnt/chroot/sys
mount --bind /proc /mnt/chroot/proc
mount --bind /sys /mmt/chroot/sys

Скриншот №6 — Монтирование папки

Запустите виртуальную среду и выполните необходимые операции для восстановления системы, например, обновление пакетов или восстановление загрузочного сектора:

chroot /mnt

Скриншот №7 — Запустите команду

После завершения операций выйдите из среды chroot и подключите файловые системы:

umount /mnt/chroot/sys && umount /mnt/chroot/proc && umount /mnt/chroot/dev

Скриншот №6 — Размонтируйте директории

И в конце процесса перезагрузите вашу систему подготовки!

Заключение

Команда Chroot в Unix обеспечивает безопасную временную среду для запуска программ путем изоляции их от основной системы. Такая изоляция предотвращает любой вред основной системе и может использоваться для тестирования программ на различных версиях операционной системы с определенными библиотеками, недоступными в основной системе. Однако важно отметить, что им должны пользоваться только опытные пользователи, поскольку неправильное использование может привести к нестабильности системы. Кроме того, Chroot также может использоваться для восстановления системы после аварийных сбоев или вредоносных атак.