ฉันมีปัญหาซึ่งสามารถทำซ้ำได้บน Linux Ubuntu VMs (14.04 LTS) ที่สร้างขึ้นใน Azure
หลังจากติดตั้งsystemd
แพคเกจผ่านสคริปต์ระบบจะปฏิเสธการเชื่อมต่อ ssh ใหม่อย่างไม่ จำกัด
ระบบกำลังบูท
การเชื่อมต่อถูกปิดโดย xxx.xxx.xxx.xxx
การเชื่อมต่อ ssh ที่ใช้งานอยู่จะยังคงอยู่ ไม่มี/etc/nologin
ไฟล์อยู่ในระบบ
ตัวเลือกเดียวที่ฉันเห็นคือการรีเซ็ตแบบยากซึ่งแก้ปัญหาได้ แต่ฉันจะหลีกเลี่ยงได้อย่างไร
นี่คือสคริปต์ที่ฉันใช้:
#!/bin/bash
# Script input arguments
user=$1
server=$2
# Tell the shell to quote your variables to be eval-safe!
printf -v user_q '%q' "$user"
printf -v server_q '%q' "$server"
#
SECONDS=0
address="$user_q"@"$server_q"
function run {
ssh "$address" /bin/bash "$@"
}
run << SSHCONNECTION
# Enable autostartup
# systemd is required for the autostartup
sudo dpkg-query -W -f='${Status}' systemd 2>/dev/null | grep -c "ok installed" > /home/$user_q/systemd-check.txt
systemdInstalled=\$(cat /home/$user_q/systemd-check.txt)
if [[ \$systemdInstalled -eq 0 ]]; then
echo "Systemd is not currently installed. Installing..."
# install systemd
sudo apt-get update
sudo apt-get -y install systemd
else
echo "systemd is already installed. Skipping this step."
fi
SSHCONNECTION