Пользуемся CentOS без скачивания iso-шника на 10ГБ
tl;dr
я предлагаю создать Docker-контейнер с CentOS, моим целям(практика в использовании bash и терминала) использование контейнера удовлетворяет, если вам тоже не нужна виртуализация устройств и тд, то можете тоже воспользоваться данным способом. Сам туториал начинается здесь
Предисловие
Всем привет! Вообщем, я заметил, что CentOS что-то вообще забил на простых пользователей и не предлагает теперь minimal версии. Мб я плохо искал, но я не смог найти свежий официальный iso-файл, который можно было бы скачать на университетской WiFi-сети без ожидания нескольких десятков часов(10ГБ всё таки). So, пообщавшись с Claude, я нашёл лёгкий(в плане занимаемой памяти, но для кого-то и в плане установки тоже. Это использование Docker-контейнера. Он не поддерживает виртуализацию устройств и ещё какие-то специфические штуки, которые могут быть только на виртуальной машине(почитать подробнее об отличиях ВМ и контейнера можно тут, но для практики в bash и терминале его возможностей должно хватить. So, начнём!
Установка Docker
Не будем особо вдаваться в установку Docker, уже есть официальный гайд на эту тему, он тут.
Создаём контейнер
Для создания контейнера открываем командную строку/терминал и вводим следующую команду:
docker run -it --name centos_dev centos:latest /bin/bash
После этого вы войдёте в "терминал" контейнера под пользователем root. Для выхода в основную систему используйте команду exit. Пользуйтесь на здоровье!
Запускаем созданный контейнер
Если нужно снова запустить наш контейнер с CentOS то вводим следующую команду: \
docker start centos_dev
docker exec -it centos_dev /bin/bash
После этого у вас откроется уже знакомый вам "терминал", а система будет в том же состоянии, что и при предыдущем запуске. Удобно!
БОНУС (для линуксоидов)
Если ваша основная система - Linux, то можете использовать такой удобный скриптик для создания/запуска контейнера:
#!/bin/bash
CONTAINER_NAME="centos_dev"
IMAGE_NAME="centos:latest"
# Проверяем, существует ли контейнер
if [ ! "$(docker ps -aq -f name=$CONTAINER_NAME)" ]; then
echo "Контейнер не существует. Создаем новый..."
# Создаем новый контейнер
docker run -it -d --name $CONTAINER_NAME $IMAGE_NAME
else
echo "Контейнер уже существует."
# Проверяем, запущен ли контейнер
if [ ! "$(docker ps -q -f name=$CONTAINER_NAME)" ]; then
echo "Контейнер остановлен. Запускаем..."
docker start $CONTAINER_NAME
fi
fi
# Подключаемся к терминалу контейнера
echo "Подключаемся к терминалу контейнера..."
docker exec -it $CONTAINER_NAME /bin/bash
После этого делаем файл исполняемым:
chmod +x /путь_до_папки_с_скриптом_start_centos_sh/start_centos.sh
и запускаем
./путь_до_папки_с_скриптом_start_centos_sh/start_centos.sh
А если у вас ещё в качестве терминала используется Konsole, то можно создать ярлык и закинуть его на рабочий стол, чтобы "терминал" контейнера запускался в один клик:
[Desktop Entry]
Categories=System;TerminalEmulator;
Comment[ru_RU]=Start CentOS Docker container
Comment=Start CentOS Docker container
Exec=konsole -e bash -c '"/путь_до_папки_с_скриптом/run_centos.sh"; read -p '\\''Нажмите Enter для выхода...'\\'''
GenericName[ru_RU]=
GenericName=
Icon=utilities-terminal
MimeType=
Name[ru_RU]=Start CentOS
Name=Start CentOS
Path=
StartupNotify=true
Terminal=true
TerminalOptions=
Type=Application
X-KDE-SubstituteUID=false
X-KDE-Username=
Также делаем файл исполняемым: chmod +x путь_до_папки_с_ярлыком/start_centos.desktop и в начало нашего файлика start_centos.sh добавляем:
#!/bin/bash
# Проверяем, запущен ли скрипт в терминале
if [ ! -t 0 ]; then
# Если нет, запускаем новый терминал с этим скриптом
konsole -e "$0"
exit
fi
Готово!