SSHエラーによるホスト名の設定SCRIPT

SSHエラーによるホスト名の設定SCRIPT

このスクリプトを使用してSSHを介してホスト名を変更していますが、いくつかのエラーが発生します。

read -p "Insira o IP : " ip
read -p "Insira o nome do utilizador : " host
read -s -p "Insira a palavra passe : " oldpass

sshpass -p $oldpass ssh $host@$ip "cat /etc/hostname > hostname.txt"\
run="sshpass -p $oldpass ssh $host@$ip" \ 
hostn=$($run "cat hostname.txt") \ 
echo $hostn

sshpass -p $oldpass ssh  $host@$ip " \
echo "Enter new hostname: " \ 
read newhost \ 
sed -i "s/$hostn/$newhost/g" /etc/hosts \
sed -i "s/$hostn/$newhost/g" /etc/hostname \ 
echo "Your new hostname is "$newhost"" \ 
read -s -n 1 -p "Press any key to reboot" \ 
reboot"

新しいホスト名を作成すると、次のように表示されます。

unable to resolve host"=

ただし、スクリプトは引き続き機能し、再起動されます。

答え1

RHEL7/CentOs7 システムの場合は、/etc/hostname ファイルの名前を変更する代わりに、次のコマンドを使用してホスト名を変更します。

hostnamectl はホスト名 $newhost を設定します。

関連情報