条件:将功能绑定到 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/
伪代码
- 询问 sudo 的密码
- 如何将按钮绑定到脚本?
系统: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/