Bug 51718

Summary: Ошибка с правами для sg-tape-cmd при создании резервной копии с ключом шифрования для ленточного накопителя
Product: Branch p10 Reporter: Evgeny Shesteperov <alimektor>
Component: proxmox-backupAssignee: thatman <thatman>
Status: CLOSED WORKSFORME QA Contact: qa-p10 <qa-p10>
Severity: normal    
Priority: P5    
Version: не указана   
Hardware: x86_64   
OS: Linux   

Description Evgeny Shesteperov 2024-10-14 18:46:13 MSK
Версия

-   proxmox-backup-3.1.4.1-alt3

Дистрибутивы

-   ALT Server V 10.2 (P10)

Шаги воспроизведения

1.  Настроить Changer (webchanger) / Drive (webdrive).
2.  Настроить локальное хранилище webstore.
3.  Добавить ключ шифрования:
    1.  Выбрать Tape Backup → Ключи шифрования.
    2.  Нажать Добавить.
        1.  Подсказка: Password
        2.  Пароль / Подтверждение пароля: задать пароль для ключа.
4.  На левой панели выбрать Tape Backup → Пулы носителей.
5.  Нажать Добавить.
    1.  Ввести имя: keypool
    2.  Политика выделения: Ежедневно (при нажатии заменяется на daily)
    3.  Политика хранения: Оставлять (при нажатии заменяется на keep)
    4.  Комментарий: Пул шифрования
    5.  Ключ шифрования: созданный ключ шифрования на прошлом шаге.
6.  В диалоговом окне нажать OK.
7.  На левой панели выбрать Tape Backup → Задание резервного копирования
    → Добавить:
    1.  ID задания: keyjob
    2.  Локальное хранилище данных: webstore
    3.  Пул носителей: keypool
    4.  Привод: webdrive
8.  Нажать Добавить.
9.  Запустить задание резервного копирования:
    1.  Выбрать Tape Backup → Задания резервного копирования.
    2.  Выбрать задание с ID keyjob.
    3.  Нажать Запустить сейчас.

Ожидаемый результат: создана резервная копия.

Фактический результат: возникает ошибка, связанная с правами на
sg-tape-cmd

    Tape Backup failed: command "/usr/libexec/proxmox-backup/sg-tape-cmd" "encryption" "--stdin" "--fingerprint" "e7:93:a9:b3:17:27:eb:7c:43:58:31:18:ba:c4:99:65:bf:d2:65:59:42:72:52:a0:86:98:25:85:46:5d:c9:11" "--uuid" "cf425e38-9e87-4f51-a950-d3e62fcc8853" failed - status code: 1 - Error: this program needs to be run with setuid root

Права, которые стоят по умолчанию:

    # LC_ALL=POSIX ls -l /usr/libexec/proxmox-backup/sg-tape-cmd
    -r-x--s--x 1 root backup 4168208 May 31 22:11 /usr/libexec/proxmox-backup/sg-tape-cmd

Необходимые права:

    # chmod u+s /usr/libexec/proxmox-backup/sg-tape-cmd
    # LC_ALL=POSIX ls -l /usr/libexec/proxmox-backup/sg-tape-cmd
    -r-s--s--x 1 root backup 4168208 May 31 22:11 /usr/libexec/proxmox-backup/sg-tape-cmd
Comment 1 Andrew Vasilyev 2024-10-28 16:59:09 MSK
  Нужно заменить 2511 на 4511 в attr:
.gear/proxmox-backup.spec:%attr(2511,root,%proxy_user) %_libexecdir/%name/sg-tape-cmd

  Оригинал:
Makefile:       # install sg-tape-cmd as setuid binary
Makefile:       install -m4755 $(COMPILEDIR)/sg-tape-cmd $(DESTDIR)$(LIBEXECDIR)/proxmox-backup/sg-tape-cmd
Comment 2 Evgeny Shesteperov 2025-04-13 16:50:14 MSK
proxmox-backup-3.2.8.1-alt0, не воспроизводится.