要通过 Transcend StoreJet 的备份按钮使用 sudo-tar 吗?

要通过 Transcend StoreJet 的备份按钮使用 sudo-tar 吗?

条件:将功能绑定到 Transcend StoreJet 的备份按钮
差异条件:Linux 中没有通过 USB3 连接的按钮驱动程序
排除:所有图形备份软件

产品Transcend StoreJet 25M3 防震有一个备份按钮。我希望按下按钮即可启动该功能

#!/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 自动备份
外置硬盘:Transcend 1 TB StoreJet 25M3
Bash:4.3.46(1)-release (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/

相关内容