我正在尝试编写一个脚本来将笔记本电脑上的文件夹同步到我的 NAS。从命令行调用时,脚本运行良好。我已经尝试将脚本设置为使用 systemd 自动运行。但是ssh登录有问题。虽然从命令行运行脚本时它工作正常,但我收到了权限被拒绝的错误。
到目前为止,这是我尝试缩小问题范围的方法:
脚本/home/tikey/scripts/nas_sync_photos_to_nas.sh:
#!/bin/bash
set -x
ssh tikey@192.168.17.200 -v -i /home/tikey/.ssh/id_rsa ls -la rsync_laptop
Run Code Online (Sandbox Code Playgroud)
要使用 systemd 运行脚本,我已将文件sync-photos-to-nas.service放入~/.config/systemd/user/:
[单元] 说明=同步图片到 nas [服务] ExecStart=/home/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: can't open /dev/tty: No such device or address debug1:下一个身份验证方法:键盘交互 debug1:可以继续的身份验证:publickey、password、keyboard-interactive debug1:下一个身份验证方法:密码 debug1: read_passphrase: can't open /dev/tty: No such device or address debug1:可以继续的身份验证:publickey、password、keyboard-interactive 权限被拒绝,请重试。 debug1: read_passphrase: can't open /dev/tty: No such device or address debug1:可以继续的身份验证:publickey、password、keyboard-interactive 权限被拒绝,请重试。 debug1: read_passphrase: can't open /dev/tty: No such device or address debug1:可以继续的身份验证:publickey、password、keyboard-interactive debug1:没有更多的身份验证方法可以尝试。 sync-photos-to-nas.service:主进程退出,代码=退出,状态=255/n/a sync-photos-to-nas.service:单元进入失败状态。 同步照片到 nas.service:失败,结果为“退出代码”。
有谁知道问题可能是什么?
debug1: read_passphrase: can't open /dev/tty: No such device or address
日志说您的私钥已加密,在您输入密码之前客户端无法使用它。要么使用未加密的密钥,要么使用sshpass.
| 归档时间: |
|
| 查看次数: |
1627 次 |
| 最近记录: |