вторник, 1 апреля 2025 г.

Arch Linux: Установка системы с помощью "archinstall" из локального зеркала репозитория

Для новой установки ОС из собственного зеркала репозитория 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"

Загрузите компьютер с помощью ISO-образа 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.



Hostname - введите имя хоста.


Root password - введите пароль для пользователя "root".



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".
Затем установщик предложит ещё раз пересмотреть конфигурацию. Инсталляция начнется после вашего подтверждения.




Когда процесс будет завершен, вам будет предложено выполнить в свежеустановленной системе дополнительные настройки до перезагрузки. Далее введите "reboot" для перезагрузки системы и извлеките ISO-образ.


среда, 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"

Для записи установочного iso-образа на флешку в среде Linux выполните следующие шаги:

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:

Выберите язык интерфейса ОС и сочетание клавиш для изменения раскладки клавиатуры:

Подтвердите лицензионное соглашение:

 
Укажите часовой пояс, время, дату, адрес сервера NTP при необходимости:

Выберите диск для установки системы:

Выполните разметку диска:

Укажите необходимые компоненты для установки:

Ожидайте завершения инсталляции:

Укажите настройки загрузчика:

Выполните настройки сети:

Установите пароль для "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

Если вы получили при выполнении sysprep на ОС Microsoft Windows Server 2025 следующую ошибку в логе "setuperr.log":

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 снова.