Her zaman dizüstü bilgisayarımdaki komut dosyalarındaki (yedeklemeler) SMB paylaşımlarına erişmek için anahtarlığımdan saklanan şifreleri kullanmak istedim. Amacım, şifreleri dosyalarda göstermek ve yedekleri çalıştırmak için anacron kullanmak değildi. Bazı testlerden sonra bunu buldum:
- Nautilus ile paylaşımınızı bir kez bağlayın ve şifreyi anahtarlıkta saklayın
- denemek
gio mount smb://<server_name>/<share_name>, GNOME oturumunuzda şifre olmadan ne çalışması gerekir
- Yedek komut dosyalarında aşağıdaki kodu kullanın:
Ubuntu 19.04'te test edilen örnek:
# set the dbus address
DBUS_SESSION_BUS_ADDRESS="unix:path=/run/user/$(id -u)/bus"
# export dbus address to get access to user space keyring
export DBUS_SESSION_BUS_ADDRESS
# use new gnome user space mount tool (gvfs-mount is deprecated)
gio mount smb://<server_name>/<share_name>
#sync from gvfs created mount point to home dir
rsync -rav /var/run/user/$(id -u)/gvfs/smb-share\:server\=<server_name>\,share\=<share_name>/<folder>/ ~/<sync_dest>/
Komut dosyasını /etc/cron.daily sitesinden anacron üzerinden çalıştırırken, anahtarlığa erişimi olan kullanıcıyı kullanmanız gerekir, örneğin:
su -c /ho//user/scripts/rsync_sript.sh kullanıcı
cifs-utilsiçin yüklü olduğundan emin olmak gerekiyordu .sudo apt-get install cifs-utils.