|
2 | 2 |
|
3 | 3 | Copyright (C) 2015-2018 Anton Skshidlevsky, GPLv3 |
4 | 4 |
|
5 | | -Приложение с интерфейсом для командной строки, предназначенное для автоматизации процесса установки, конфигурирования и запуска GNU/Linux дистрибутивов внутри контейнера chroot. Приложение может работать как в обычных десктопных Linux-дистрибутивах, так и на мобильных платформах, основанных на ядре Linux, при условии соблюдения необходимых зависимостей (все зависимости могут быть собраны статически). Приложения из Linux-дистрибутива запускаются в chroot окружении, работают параллельно с основной системой и сопоставимы с ней по скорости. Поскольку работа Linux Deploy базируется на системном вызове ядра Linux, то в роли "гостевых" систем могут выступать только дистрибутивы Linux. |
6 | | - |
7 | | -Приложение может работать в двух режимах: с правами суперпользователя (chroot) и без них (proot). В обычном режиме доступны все поддерживаемые типы установки: установка в файл, на раздел диска (логический диск), в POSIX совместимую директорию и в оперативную память (tmpfs). В режиме fakeroot доступна установка только в директорию, а также появляется ряд ограничений: |
8 | | -* все пользователи внутри контейнера имеют полный доступ ко всей файловой системе контейнера, а владельцем всех файлов и каталогов является текущий пользователь; |
9 | | -* нет доступа к привилегированным операциям с системой, например, не работает ping, ulimit и т.п.; |
10 | | -* приложения могут работать только с номерами сетевых портов выше 1024; |
11 | | -* если приложение в своей работе использует системный вызов chroot, то его необходимо запускать через специальную утилиту fakechroot, например fakechroot /usr/sbin/sshd -p 2222. |
12 | | - |
13 | | -Приложение поддерживает автоматическую установку (базовой системы) и начальную настройку дистрибутивов Debian, Ubuntu, Kali Linux, Arch Linux, Fedora, CentOS, Gentoo, openSUSE и Slackware. Установка Linux-дистрибутива осуществляется по сети с официальных зеркал в интернете. Также поддерживается импорт любой другой системы из заранее подготовленного rootfs-ахрива в формате tar.gz, tar.bz2 или tar.xz. Приложение позволяет подключаться к консоли установленной системы (контейнеру), а также запускать и останавливать приложения внутри контейнера (есть поддержка различных систем инициализации и собственных сценариев автозапуска). Каждый вариант установки сохраняется в отдельный конфигурационный файл, который отвечает за настройку каждого контейнера. При необходимости, контейнеры можно запускать параллельно. Можно экспортировать конфигурацию и сам контейнер как rootfs-архив для последующего развертывания этого контейнера без повторной установки и настройки. |
14 | | - |
15 | | -Для расширения возможностей приложения реализована модульная архитектура, каждый модуль здесь назван компонентом. Компоненты пишутся на Bash-совместимом языке сценариев Ash, каждый компонент представляет собой директорию с двумя основными файлами deploy.conf и deploy.sh. Реализация компонента сводится к написанию обработчиков для следующих действий: установка, настройка, запуск, остановка и вызов справки. Компоненты могут зависеть от других компонентов, есть защита от циклических зависимостей. В компоненте можно указать совместимость с конкретными версиями дистрибутивов, чтобы ограничить область его применения. |
16 | | - |
17 | | -*TODO: please, translate this text.* |
| 5 | +A command line application for installing and running GNU/Linux distributions in the chroot environment. |
18 | 6 |
|
19 | 7 | Dependencies: |
20 | 8 | * [Linux](http://kernel.org) |
|
0 commit comments