> Markdown-версія сторінки https://yucca.app/uk/docs/install/linux/. Зміст документації — [llms.txt](https://yucca.app/uk/llms.txt), весь текст одним файлом — [llms-full.txt](https://yucca.app/uk/llms-full.txt). Markdown-версія є у будь-якої сторінки: додайте `.md` до адреси без слешу наприкінці.

# Linux

> **Швидке встановлення.** Якщо у вашому дистрибутиві є apt, dnf/yum, zypper або apt-rpm, встановлення виконає скрипт: `curl -fsSL https://releases.yucca.app/get.sh | sh` (для Plus / Enterprise — з прапорцем `--ent`). Нижче описано ручне встановлення з архіву — воно підходить для будь-яких систем.

Для встановлення в будь-яких Linux-системах (Arch Linux, NixOS, Alpine Linux та інші) виконайте в терміналі такі команди:

## Встановлення

**Yucca Free**

**AMD64**

```shell
sudo mkdir -p /opt/yucca/ffmpeg
cd /opt/yucca
YUCCA_VER=$(curl -sSLf https://releases.yucca.app/latest/VERSION.txt)
sudo wget https://releases.yucca.app/latest/yucca_linux_amd64.tar.gz
sudo wget https://releases.yucca.app/latest/yucca_${YUCCA_VER}_checksums.txt
sha256sum -c yucca_${YUCCA_VER}_checksums.txt --ignore-missing
sudo tar -xzvf yucca_linux_amd64.tar.gz
sudo rm -f yucca_linux_amd64.tar.gz yucca_${YUCCA_VER}_checksums.txt

```

**ARM64**

```shell
sudo mkdir -p /opt/yucca/ffmpeg
cd /opt/yucca
YUCCA_VER=$(curl -sSLf https://releases.yucca.app/latest/VERSION.txt)
sudo wget https://releases.yucca.app/latest/yucca_linux_arm64.tar.gz
sudo wget https://releases.yucca.app/latest/yucca_${YUCCA_VER}_checksums.txt
sha256sum -c yucca_${YUCCA_VER}_checksums.txt --ignore-missing
sudo tar -xzvf yucca_linux_arm64.tar.gz
sudo rm -f yucca_linux_arm64.tar.gz yucca_${YUCCA_VER}_checksums.txt

```

**ARM**

```shell
sudo mkdir -p /opt/yucca/ffmpeg
cd /opt/yucca
YUCCA_VER=$(curl -sSLf https://releases.yucca.app/latest/VERSION.txt)
sudo wget https://releases.yucca.app/latest/yucca_linux_arm.tar.gz
sudo wget https://releases.yucca.app/latest/yucca_${YUCCA_VER}_checksums.txt
sha256sum -c yucca_${YUCCA_VER}_checksums.txt --ignore-missing
sudo tar -xzvf yucca_linux_arm.tar.gz
sudo rm -f yucca_linux_arm.tar.gz yucca_${YUCCA_VER}_checksums.txt

```

**Yucca Plus / Enterprise**

**AMD64**

```shell
sudo mkdir -p /opt/yucca/ffmpeg
cd /opt/yucca
YUCCA_VER=$(curl -sSLf https://releases.yucca.app/latest/VERSION.txt)
sudo wget https://releases.yucca.app/latest/yucca-ent_linux_amd64.tar.gz
sudo wget https://releases.yucca.app/latest/yucca_${YUCCA_VER}_checksums.txt
sha256sum -c yucca_${YUCCA_VER}_checksums.txt --ignore-missing
sudo tar -xzvf yucca-ent_linux_amd64.tar.gz
sudo rm -f yucca-ent_linux_amd64.tar.gz yucca_${YUCCA_VER}_checksums.txt

```

**ARM64**

```shell
sudo mkdir -p /opt/yucca/ffmpeg
cd /opt/yucca
YUCCA_VER=$(curl -sSLf https://releases.yucca.app/latest/VERSION.txt)
sudo wget https://releases.yucca.app/latest/yucca-ent_linux_arm64.tar.gz
sudo wget https://releases.yucca.app/latest/yucca_${YUCCA_VER}_checksums.txt
sha256sum -c yucca_${YUCCA_VER}_checksums.txt --ignore-missing
sudo tar -xzvf yucca-ent_linux_arm64.tar.gz
sudo rm -f yucca-ent_linux_arm64.tar.gz yucca_${YUCCA_VER}_checksums.txt

```

**ARM**

```shell
sudo mkdir -p /opt/yucca/ffmpeg
cd /opt/yucca
YUCCA_VER=$(curl -sSLf https://releases.yucca.app/latest/VERSION.txt)
sudo wget https://releases.yucca.app/latest/yucca-ent_linux_arm.tar.gz
sudo wget https://releases.yucca.app/latest/yucca_${YUCCA_VER}_checksums.txt
sha256sum -c yucca_${YUCCA_VER}_checksums.txt --ignore-missing
sudo tar -xzvf yucca-ent_linux_arm.tar.gz
sudo rm -f yucca-ent_linux_arm.tar.gz yucca_${YUCCA_VER}_checksums.txt

```

Генеруємо файл конфігурації зі значеннями за замовчуванням:

```shell
sudo /opt/yucca/yucca server --config emtpy --show-config | sed 's|data_dir = ""|data_dir = "/opt/yucca/data"|' > /opt/yucca/yucca.toml

```

Створюємо користувача та задаємо власника й права доступу:

```shell
sudo groupadd --gid 642 --force yucca
sudo useradd --system -u 642 --no-create-home --shell /bin/false --home-dir /opt/yucca --gid yucca yucca
sudo chown -R yucca:yucca /opt/yucca
sudo chmod -R 2775 /opt/yucca

```

### Автозапуск через Systemd

> **Примітка.** Використовується в більшості популярних дистрибутивів, наприклад Debian, RHEL і SUSE

Створіть unit-файл systemd:

```bash
sudo tee /lib/systemd/system/yucca.service <<EOF
[Unit]
Description=Yucca https://yucca.app
Documentation=https://docs.yucca.app
After=syslog.target network.target remote-fs.target nss-lookup.target

[Service]
Type=simple
User=yucca
Group=yucca
SyslogIdentifier=yucca
PIDFile=/run/yucca.pid
LimitNOFILE=1024
WorkingDirectory=/opt/yucca
ExecStart=/opt/yucca/yucca server --config /opt/yucca/yucca.toml
ExecStop=/bin/kill -s SIGTERM $MAINPID
Restart=on-failure
RestartSec=10s

[Install]
WantedBy=multi-user.target
EOF


```

Запустіть сервер і перевірте роботу:

```bash
sudo systemctl daemon-reload
sudo systemctl enable --now yucca

```

### Автозапуск через OpenRC

> **Примітка.** Використовується, наприклад, у Gentoo

1. Створіть файл з іменем `yucca` без розширення в каталозі `/etc/init.d/`.
2. Скопіюйте код скрипту ініціалізації в цей файл.

```shell
#!/sbin/openrc-run

name="yucca"
command="/opt/yucca/yucca"
command_args="server --config /opt/yucca/yucca.toml"
pidfile="/run/yucca.pid"
output_log="/var/log/yucca.log"

# Устанавливаем ulimit
ulimit -n 1024

depend() {
    need syslog net
}

start_pre() {
    # Создаем каталог для PID-файла
    checkpath --directory --owner yucca:yucca --mode 0755 $(dirname ${pidfile})
}

start() {
    ebegin "Starting ${name}"
    # Запускаем yucca с указанными параметрами
    start-stop-daemon --start --background \
        --make-pidfile --pidfile ${pidfile} \
        --chuid yucca:yucca \
        --exec ${command} -- ${command_args} >> ${output_log} 2>&1
    eend $?
}

stop() {
    ebegin "Stopping ${name}"
    # Останавливаем yucca
    start-stop-daemon --stop --quiet --pidfile ${pidfile}
    eend $?
}

restart() {
    svc_stop
    svc_start
}

```

3. Переконайтеся, що скрипт має права на виконання, використавши команду `chmod +x /etc/init.d/yucca`.
4. Додайте скрипт до автозапуску, виконавши команду `rc-update add yucca default`.
5. Тепер ви можете керувати сервісом за допомогою таких команд:

* `rc-service yucca start` — Запуск сервісу.
* `rc-service yucca stop` — Зупинка сервісу.
* `rc-service yucca restart` — Перезапуск сервісу.
* `rc-service yucca status` — Перевірка статусу сервісу.

### Автозапуск через Upstart

> **Примітка.** Використовується, наприклад, у Synology NAS

Створіть скрипт автозапуску Upstart init:

```sh
sudo tee /etc/init/yucca.conf <<EOF
description "Yucca https://yucca.app"
author "Yucca"

start on filesystem or runlevel [2345]
stop on runlevel [!2345]

respawn
respawn limit 10 10
setuid yucca
setgid yucca
chdir /opt/yucca
limit nofile 1024 1024
script
    exec /opt/yucca/yucca server --config /opt/yucca/yucca.toml
end script

EOF

```

Оновіть конфігурацію Upstart і запустіть сервіс:

```sh
sudo initctl reload-configuration
sudo initctl start yucca

```

## Перевірка роботи

Після встановлення й запуску WEB-інтерфейс буде доступний за адресою **[http://ip-вашого-сервера:9910](http://ip-%D0%B2%D0%B0%D1%88%D0%BE%D0%B3%D0%BE-%D1%81%D0%B5%D1%80%D0%B2%D0%B5%D1%80%D0%B0:9910)**. Якщо після встановлення інтерфейс недоступний, перевірте статус сервісу та перегляньте журнали сервера.

## Оновлення

Завантажте актуальний архів (див. розділ «Встановлення» вище), розпакуйте його поверх каталогу `/opt/yucca` і перезапустіть сервіс — наприклад, для systemd:

```shell
sudo systemctl restart yucca

```

Для OpenRC використовуйте `sudo rc-service yucca restart`, для Upstart — `sudo initctl restart yucca`.

## Видалення

```shell
sudo systemctl disable --now yucca
sudo rm -rf /opt/yucca
sudo userdel yucca
sudo groupdel yucca

```
