Способ 1: Использование файлового менеджера FLY

Откройте FLY и кликните правой кнопкой мыши по нужному файлу (например, документу .docx).

Изменение ассоциаций файлов в Astra Linux

Выберите «Открыть с помощью…» → «Р7-Офис Профессиональный (desktop версия)».

Активируйте опцию «Установить по умолчанию» и нажмите «Открыть».

Изменение ассоциаций файлов в Astra Linux

В результате, все файлы .docx будут открываться в Р7-Офис Desktop по умолчанию.

Способ 2: Настройка через терминал

Выполните следующие команды для установки ассоциаций:

Для документов docx:

xdg-mime default r7-office-desktopeditors.desktop  application/vnd.openxmlformats-officedocument.wordprocessingml.document

Для таблиц xlsx:

xdg-mime default r7-office-desktopeditors.desktop  application/vnd.openxmlformats-officedocument.spreadsheetml.sheet

Для презентаций pptx:

xdg-mime default r7-office-desktopeditors.desktop  application/vnd.openxmlformats-officedocument.presentationml.presentation

Способ 3: Редактирование файла mimeapps.list

Для установки ассоциаций файлов с «Р7-Офис Профессиональный» по умолчанию в файле "/usr/share/applications/mimeapps.list" добавьте или измените следующие строки:

application/vnd.openxmlformats-officedocument.spreadsheetml.sheet=r7-office-desktopeditors.desktop
application/vnd.openxmlformats-officedocument.wordprocessingml.document=r7-office-desktopeditors.desktop
application/vnd.openxmlformats-officedocument.presentationml.presentation=r7-office-desktopeditors.desktop

Можно автоматизировать процесс с помощью bash скрипта «update_mimeapps.sh», который нужно запустить от имени пользователя с правами sudo или root.

Содержимое «update_mimeapps.sh»:

#!/bin/bash

# Файл mimeapps.list
mimeapps_file="/usr/share/applications/mimeapps.list" 

# Удаление строк с указанным содержимым
sed -i '/application\/vnd.openxmlformats-officedocument.spreadsheetml.sheet/d' "$mimeapps_file" 
sed -i '/application\/vnd.openxmlformats-officedocument.wordprocessingml.document/d' "$mimeapps_file" 
sed -i '/application\/vnd.openxmlformats-officedocument.presentationml.presentation/d' "$mimeapps_file" 

# Добавление новых строк в конец файла
echo "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet=r7-office-desktopeditors.desktop" >> "$mimeapps_file" 
echo "application/vnd.openxmlformats-officedocument.wordprocessingml.document=r7-office-desktopeditors.desktop" >> "$mimeapps_file" 
echo "application/vnd.openxmlformats-officedocument.presentationml.presentation=r7-office-desktopeditors.desktop" >> "$mimeapps_file" 

echo "Файл $mimeapps_file успешно обновлен." 

Способ 4: Изменение для конкретного пользователя

Редактируйте или создайте файл "~/.config/mimeapps.list" добавив строки:

[Default Applications]
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet=r7-office-desktopeditors.desktop
application/vnd.openxmlformats-officedocument.wordprocessingml.document=r7-office-desktopeditors.desktop
application/vnd.openxmlformats-officedocument.presentationml.presentation=r7-office-desktopeditors.desktop

Можно автоматизировать процесс для всех пользователей на ПК с помощью bash скрипта "user_mimeapps.sh", который нужно запустить от имени пользователя с правами sudo или root.

Внимание: Использование скрипта "user_mimeapps.sh" может сбросить ранее установленные пользователем ассоциации файлов, заменив их на указанные.

Содержимое "user_mimeapps.sh":

#!/bin/bash

# Содержимое mimeapps.list
mimeapps_content="[Default Applications]
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet=r7-office-desktopeditors.desktop
application/vnd.openxmlformats-officedocument.wordprocessingml.document=r7-office-desktopeditors.desktop
application/vnd.openxmlformats-officedocument.presentationml.presentation=r7-office-desktopeditors.desktop" 

# Получение списка пользователей
users=$(cut -d: -f1 /etc/passwd)

# Обработка каждого пользователя
for user in $users; do
    # Пропускаем системные учетные записи
    if id -u $user >/dev/null 2>&1 && [ $(id -u $user) -ge 1000 ]; then
        user_home=$(eval echo ~$user)
        config_dir="$user_home/.config" 
        mimeapps_file="$config_dir/mimeapps.list" 

        # Создание директории .config, если не существует
        if [ ! -d "$config_dir" ]; then
            mkdir -p "$config_dir" 
            chown $user:$user "$config_dir" 
        fi

        # Запись содержимого в mimeapps.list
        echo "$mimeapps_content" > "$mimeapps_file" 
        chown $user:$user "$mimeapps_file" 

        echo "Файл $mimeapps_file успешно создан для пользователя $user." 
    fi
done

Для обновления ассоциаций файлов и программ на удаленном ПК, вы можете подготовить bash скрипты "update_mimeapps.sh" и "user_mimeapps.sh". После их подготовки, скопируйте эти скрипты на удаленный компьютер с помощью удобного для вас способа, например, используя команды scp, ansible, ALD PRO и т.д. Затем запустите эти скрипты от имени пользователя с правами sudo или root для обновления ассоциаций файлов и программ.

Пример задачи ansible:

- name: add file script 1 to pc
  ansible.builtin.copy:
    src: update_mimeapps.sh
    dest: /tmp/update_mimeapps.sh
    owner: root
    group: root
    mode: '0777'
  become: true

- name: run script 1 to pc
  shell: bash /tmp/update_mimeapps.sh
  ignore_errors: true

- name: add file script 2 to pc
  ansible.builtin.copy:
    src: user_mimeapps.sh
    dest: /tmp/user_mimeapps.sh
    owner: root
    group: root
    mode: '0777'
  become: true

- name: run script 2 to pc
  shell: bash /tmp/user_mimeapps.sh
  ignore_errors: true