В sudo-tar с помощью кнопки резервного копирования Transcend StoreJet?

Условие: привязать функцию к кнопке резервного копирования Transcend StoreJet
Дифференциальные условия: нет драйвера для кнопки в Linux через USB3
Исключить: все графические программы для резервного копирования

Продукт Transcend StoreJet 25M3 Anti-Shock имеет кнопку резервного копирования. Хотелось бы чтобы нажатием кнопки запускалась функция

#!/usr/bin/env bash

# bind this script to the press of the button in the external HDD

# mchid for pkexec
pkexec env DISPLAY=:0 XAUTHORITY=$HOME/.Xauthority \
    tar czf /media/masi/Transcend/backup_home_10.7.2016.tar.gz $HOME/

ПСЕВДОКОД

  1. спросить пароль для sudo
  2. Как привязать кнопку к скрипту?

Система: Linux Ubuntu 16.04 64 бит
Ядро Linux: 4.4 и 4.6
Параметры ядра Linux: wl
Аппаратное обеспечение: Macbook Air 2013-mid, ....
Связанная тема: Transcent StoreJet Auto Backup
Внешний жесткий диск: Transcend 1 ТБ StoreJet 25M3
Bash: 4.3.46 (1) -релиз (x86_64-pc-linux-gnu)

1 ответ

Это на самом деле два вопроса, и вы должны задать это как два вопроса вместо одного.

С учетом вышесказанного вы можете использовать pkexec вместо sudo, чтобы получить запрос пароля перед выполнением сценария следующим образом:

#!/bin/bash

pkexec env DISPLAY=:0 XAUTHORITY=$HOME/.Xauthority tar czf media/masi/Transcend/backup_home_$(date +%d.%m.%Y | sed 's/\(0\)\(.\)\(\.\)/\2\3/g').tar.gz $HOME/
Другие вопросы по тегам