为了不使用 root 帐户,我正在通过另一个用户在 ESXi 6.7u3 下设置证书连接。该帐户允许我从另一台机器通过 cron 任务执行 ssh 命令。
keys-<user>/authorized_keys
ESXi 在 ramdisk 中运行,这给我在重新启动虚拟机管理程序时备份文件夹和恢复它带来了问题。
我使用 将粘滞位设置为 T chown +t
,并且ls -la
告诉我这样,但是在手动重新启动/sbin/auto-backup.sh
脚本后,我的keys-<user>/*
文件夹未添加到 state.tgz 存档中。
供参考,如果我对 keys-root/authorized_keys 执行 `chown +t,这个就会被很好地保存下来......
你有解决方案吗?
多谢
答案1
/sbin/auto-backup.sh
由于脚本没有将keys-<user>/*
文件夹添加到 state.tgz 档案中,所以我想到了以下解决方法:
创建
/etc/ssh/keys-<user>
文件夹和/etc/ssh/keys-<user>/authorized_keys
文件,以便可以从另一台机器执行 ssh 命令(我不会详细介绍这个步骤,因为网上有足够的关于此内容的文档)假设有一个
/vmfs/volumes/XXXXXXXX
卷。创建该文件夹的 tar/etc/ssh/keys-<user>
:tar cvf /vmfs/volumes/XXXXXXXX/keys-<user>.tar /etc/ssh/keys-<user>
创建一个 shell 脚本文件,例如
/vmfs/volumes/XXXXXXXX/keys-<user>.sh
:#!/bin/sh tar xvf /vmfs/volumes/XXXXXXXX/keys-<user>.tar -C /
使这个 shell 脚本可执行:
chmod +x /vmfs/volumes/XXXXXXXX/keys-<user>.sh
在以下位置添加此 shell 脚本
/etc/rc.local.d/local.sh
:#!/bin/sh # ... /vmfs/volumes/XXXXXXXX/keys-<user>.sh exit 0
/vmfs/volumes/XXXXXXXX/keys-<user>.sh
每次启动 ESXi 主机时都会执行该shell 脚本,并恢复/etc/ssh/keys-<user>
文件夹和文件。/etc/ssh/keys-<user>/authorized_keys