我正在尝试编写一个脚本,以将笔记本电脑上的文件夹与我的NAS同步。从命令行调用脚本时,脚本运行良好。我尝试将脚本设置为与systemd自动运行。但是,ssh登录存在问题。当从命令行运行脚本时,它工作正常,但出现权限拒绝错误。
到目前为止,这是我尝试缩小问题范围的方法:
脚本/home/tikey/scripts/nas_sync_photos_to_nas.sh
:
#!/bin/bash
set -x
ssh [email protected] -v -i /home/tikey/.ssh/id_rsa ls -la rsync_laptop
要使用systemd运行脚本,我将文件sync-photos-to-nas.service
放入~/.config/systemd/user/
:
[单元] Description =将Bilder同步到nas [服务] ExecStart = /家庭/tikey/scripts/nas_sync_photos_to_nas.sh
从命令行运行脚本可以正常工作。不幸的是,使用systemd运行脚本不起作用。我已经使用运行了systemd服务systemctl --user start sync-photos-to-nas.service
。然后,使用journalctl --user-unit sync-photos-to-nas
,我得到:
... debug1:主机“ 192.168.17.200”是已知的,并且与RSA主机密钥匹配。 debug1:在/home/tikey/.ssh/known_hosts:2中找到密钥 debug1:4294967296块后重新生成密钥 debug1:发送了SSH2_MSG_NEWKEYS debug1:需要SSH2_MSG_NEWKEYS debug1:4294967296块后重新生成密钥 debug1:收到SSH2_MSG_NEWKEYS debug1:收到SSH2_MSG_SERVICE_ACCEPT debug1:可以继续的身份验证:publickey,password,keyboard-interactive debug1:下一个身份验证方法:publickey debug1:提供RSA公钥:/home/tikey/.ssh/id_rsa debug1:服务器接受密钥:pkalg ssh-rsa blen 535 debug1:read_passphrase:无法打开/ dev / tty:没有这样的设备或地址 debug1:下一个身份验证方法:交互式键盘 debug1:可以继续的身份验证:publickey,password,keyboard-interactive debug1:下一个身份验证方法:密码 debug1:read_passphrase:无法打开/ dev / tty:没有这样的设备或地址 debug1:可以继续的身份验证:publickey,password,keyboard-interactive 权限被拒绝,请重试。 debug1:read_passphrase:无法打开/ dev / tty:没有这样的设备或地址 debug1:可以继续的身份验证:publickey,password,keyboard-interactive 权限被拒绝,请重试。 debug1:read_passphrase:无法打开/ dev / tty:没有这样的设备或地址 debug1:可以继续的身份验证:publickey,password,keyboard-interactive debug1:没有更多的身份验证方法可以尝试。 sync-photos-to-nas.service:主进程已退出,代码=已退出,状态= 255 / n / a sync-photos-to-nas.service:设备进入失败状态。 sync-photos-to-nas.service:失败,结果为“退出代码”。
有人知道问题可能在哪里吗?
debug1:read_passphrase:无法打开/ dev / tty:没有这样的设备或地址
日志显示您的私钥已加密,客户端无法使用它,然后您才能输入密码。请使用未加密的密钥,或者再次使用肮脏的解决方法sshpass
。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句