Блокнот ночного сисадмина
вторник, 1 апреля 2025 г.
Arch Linux: Установка системы с помощью "archinstall" из локального зеркала репозитория
1. После запуска ОС из ISO-образа замените mirrorlist, внесите туда единственную запись вашего зеркала:
echo 'Server = http://your_mirror_server/$repo/os/$arch' > /etc/pacman.d/mirrorlist
2. Затем выполните принудительное обновление базы данных "pacman", игнорируя локальный кэш:
pacman -Syy
3. Отключите службу, запускающую утилиту для обновления списка зеркал для пакетного менеджера "pacman":
systemctl mask reflector.service
4. Запустите скрипт установки с параметрами работы в офлайн и отключением проверки версии:
archinstall --offline --skip-version-check
5. Выполните в меню скрипта "archinstall" нужные настройки для установки ОС, за исключением пункта "Mirrors" - его трогать нельзя!
понедельник, 31 марта 2025 г.
Arch Linux: Быстрая установка при помощи скрипта "archinstall"
После некоторых проверок вы попадёте в меню установщика. Тут сконфигурируйте следующие настройки:
Archinstall language - выберите язык установки, лучше оставить по умолчанию, иначе могут быть проблемы с отображением кодировки в меню.
Locales - укажите раскладку клавиатуры, язык и кодировку.
Mirrors - выберите свой регион, в котором будет находится зеркало репозитория Arch Linux. Также можно указать свой адрес сервера установки.
Disk configuration - конфигурирование диска и разделов для установки ОС. Можно выполнить в ручном или автоматическом режиме.
Disk encryption - при необходимости можно зашифровать ваш диск.
Swap - настройте использовать "Swap on zram" для уменьшения нагрузки на ваш HDD или SSD.
Bootloader - выберите какой загрузчик использовать. Рекомендуется оставить по умолчанию Systemd-boot.
Unified kernel images - включение или отключение UKI (объединение ядра системы в один файл). Рекомендуется включать для современных систем, использование systemd-boot и Secure Boot.
User account - добавьте при необходимости дополнительные аккаунты пользователей.
Profile - выберите конфигурацию вашей ОС, от этого будет зависеть количество и тип установленных дополнительных пакетов и утилит.
Audio - выберите пакеты для использования вашей звуковой платой.
Kernels - выберите тип ядра Linux (linux - обычное ядро по умолчанию, linux-hardened - усиленная безопасность, linux-lts - серверный вариант с использованием старых оттестированных ядер, linux-zen - ядра с уменьшенным временем отклика, оптимизированной производительностью, но меньшей стабильностью).
Network configuration - настройте сетевой адаптер на устанавливаемой системе, можно просто скопировать параметры с текущей ОС, загруженной с ISO-образа.
Additional packages - допишите при необходимости дополнительные пакеты, которые будут установлены вместе с ОС.
Optional repositories - подключите, если нужно, официальные дополнительные репозитории, расширяющие доступный набор пакетов (multilib - рекомендуется включать, testing - не рекомендуется).
Timezone - установите часовой пояс.
Automatic time sync (NTP) - включите (рекомендуется) или выключите автоматическую синхронизацию времени через интернет.
Далее можно начать установку нажав "Install" или прервать процесс командой "Abort". Также можно сохранить полученный в результате сделанных настроек файл конфигурации - "Save configuration".
Затем установщик предложит ещё раз пересмотреть конфигурацию. Инсталляция начнется после вашего подтверждения.
среда, 26 марта 2025 г.
Arch Linux: Установка Home Assistant в виртуальном окружении Python
Для установки Home Assistant проделайте следующие шаги:
1. Обновите систему и зависимости:
sudo pacman -Syu
2. Установите зависимости и компоненты:
sudo pacman -S python python-pip python-virtualenv base-devel libffi openssl
3. Установите пакет FFmpeg:
sudo pacman -S ffmpeg
При установке будет выбор между двумя вариантами: "jack2" и "pipewire-jack", в большинстве случаев рекомендовано - "pipewire-jack". После установки проверьте версию коммандой "ffmpeg -version".
4. Создайте пользователя и каталоги:
sudo useradd -rm homeassistant -d /srv/homeassistant -s /bin/bash
sudo mkdir -p /srv/homeassistant
sudo chown -R homeassistant:homeassistant /srv/homeassistant
5. Настройте виртуальное окружение:
sudo su - homeassistant # Переключение на пользователя
cd /srv/homeassistant
python -m venv venv # Создание окружения
source venv/bin/activate # Активация окружения
6. Установите Home Assistant через pip:
pip install wheel zlib-ng isal
pip install homeassistant
7. Сконфигурируйте каталог:
mkdir -p /srv/homeassistant/.homeassistant
exit # Выход из пользователя homeassistant
sudo chown -R homeassistant:homeassistant /srv/homeassistant/.homeassistant
8. Создайте systemd-сервис:
sudo nano /etc/systemd/system/homeassistant.service
Добавьте в файл:
[Unit]
Description=Home Assistant
After=network-online.target
[Service]
Type=simple
User=homeassistant
WorkingDirectory=/srv/homeassistant/.homeassistant
ExecStart=/srv/homeassistant/venv/bin/hass -c "/srv/homeassistant/.homeassistant"
[Install]
WantedBy=multi-user.target
9. Запустите сервис:
sudo systemctl daemon-reload
sudo systemctl enable --now homeassistant
10. Проверка установки:
Откройте в браузере http://server_name_or_ip:8123. Если страница не загружается спустя несколько минут после старта сервиса - выясните, открыты ли порты, и проверьте логи:
sudo ss -tlnp | grep ':8123'
journalctl -u homeassistant -f
Процедура бэкапа:
1. Остановите Home Assistant:
sudo systemctl stop homeassistant
2. Зархивируйте конфигурацию:
sudo tar -czvf bkp_$(date +%Y-%m-%d).tar.gz -C /srv/homeassistant/.homeassistant .
3. Скопируйте архив в надежное хранилище (например, облако или внешний диск).
4. Запустите сервис:
sudo systemctl start homeassistant
5. Добавьте задание в cron (запуск раз в неделю):
0 3 * * 0 sudo systemctl stop homeassistant && tar -czvf /backup/ha_backup_$(date +\%Y-\%m-\%d).tar.gz -C /srv/homeassistant/.homeassistant . && sudo systemctl start homeassistant
Обновление версии Home Assistant:
1. Выполните бэкап (см. выше).
2. Остановите сервис:
sudo systemctl stop homeassistant
3. Активируйте виртуальное окружение:
sudo su - homeassistant
source /srv/homeassistant/venv/bin/activate
4. Обновите Home Assistant:
pip install --upgrade homeassistant
exit # Выход из пользователя homeassistant
5. Запустите сервис:
sudo systemctl start homeassistant
6. Проверьте логи на наличие ошибок:
journalctl -u homeassistant -f
Примечания:
Для отката версии используйте бэкап и команду "pip install homeassistant==x.x.x" (где "x.x.x" — нужная версия).
Если после обновления Arch Linux изменилась версия Python, пересоздайте виртуальное окружение следующим образом:
1. Остановите сервис Home Assistant:
sudo systemctl stop homeassistant
2. Убедитесь, что версия Python изменилась:
python --version
3. Создайте резервную копию конфигурации:
sudo tar -czvf bkp_$(date +%Y-%m-%d).tar.gz -C /srv/homeassistant/.homeassistant .
4. Удалите старое виртуальное окружение:
sudo su - homeassistant
cd /srv/homeassistant
rm -rf venv
5. Создайте новое виртуальное окружение:
python -m venv venv # Используется обновленная версия Python
source venv/bin/activate
6. Переустановите Home Assistant:
pip install wheel zlib-ng isal homeassistant
exit # Выход из пользователя homeassistant
7. Запустите сервис:
sudo systemctl start homeassistant
понедельник, 24 марта 2025 г.
Linux: Запись iso-образа ОС с помощью утилиты "dd"
1. Вставьте флешку в USB-порт и выполните "lsblk" или "sudo fdisk -l", найдите флешку в списке ориентируясь по размеру (например "/dev/sdX", где X - буква).
2. Размонтируйте флешку, если она смонтирована:
sudo umount /dev/sdX1
где X - буква диска, а цифра - номер раздела, который был смонтирован.
3. Запишите образ командой "dd":
sudo dd bs=4M if=путь_к_образу.iso of=/dev/sdX status=progress oflag=sync
где bs=4M — размер блока (ускоряет запись);
if=... — путь к скачанному образу;
of=/dev/sdX — устройство флешки (замените X на вашу букву, при этом будьте очень внимательны, если перепутаете букву, ваши данные на компьютере могут быть УНИЧТОЖЕНЫ!!!);
status=progress — отображает прогресс;
oflag=sync — гарантирует корректную запись.
4. Дождитесь окончания записи и проверьте флешку:
lsblk -f /dev/sdX
Вы должны увидеть на флешке разделы с файловой системой "iso9660".
среда, 5 марта 2025 г.
ALT Linux: Установка сервера из ISO-образа
Для установки сервера ОС ALT Linux скачайте последний доступный образ ISO с сайта производителя, загрузитесь с него и следуйте дальнейшим шагам:
Выберите пункт начала установки ОС ALT Linux:
Выберите язык интерфейса ОС и сочетание клавиш для изменения раскладки клавиатуры:
Подтвердите лицензионное соглашение:
Выберите диск для установки системы:
Выполните разметку диска:
Укажите необходимые компоненты для установки:
Ожидайте завершения инсталляции:
Укажите настройки загрузчика:
Выполните настройки сети:
Установите пароль для "root":
Создайте пользователя для входа в систему (например "sa"):
После завершения установки компьютер перезагрузится:
четверг, 30 января 2025 г.
Arch Linux: Добавление сертификата доверенного центра
sudo trust anchor --store my-cert.pem
Просмотр всех сертификатов в списке доверенных:
trust list
Для быстрого нахождения требуемого сертификата перенаправьте вывод в утилиту "less" и уже воспользуйтесь поиском внутри неё через "/".
Удаление сертификата из списка:
sudo trust anchor --remove "pkcs11:id=%AA%BB%CC%...DD%EE%FF;type=cert"
где "pkcs11:id=%AA%BB%CC%...DD%EE%FF;type=cert" - URI вашего сертификата (ищется с помощью "trust list"). Также можно вместо URI использовать имя файла вашего сертификата, как при добавлении.
вторник, 17 декабря 2024 г.
Windows: Ошибка при выполнении sysprep на Windows Server 2025
Package Microsoft.MicrosoftEdge.Stable_122.0.2365.106_neutral__8wekyb3d8bbwe was installed for a user, but not provisioned for all users. This package will not function properly in the sysprep image.
Failed to remove apps for the current user: 0x80073cf2.
Откройте терминал с повышенными привилегиями и выполните следующую комманду:
Get-AppxPackage -Name Microsoft.MicrosoftEdge.Stable | Remove-AppxPackage
Затем попробуйте выполнить sysprep снова.