У нас небольшая сеть из 15 пользователей. Мне нужно установить несколько новых библиотек, используя yum, на все компьютеры в сети. У меня уже есть сценарий csh, который позволяет мне rsh на всех компьютерах в системе, чтобы я мог вручную переключиться на root и установить необходимые зависимости для каждого rsh. Есть ли более эффективные способы сделать это?
Я попытался сделать это, используя следующий сценарий csh. Пока я продолжал использовать rsh во время тестирования. Однако скрипт умирает, как только я перехожу к другому файлу хоста. Что я делаю неправильно?
if ($1 == "")then
echo -n "Please enter a package to install\n"
set package=$<
else set package = $#argv
endif
set numlines = `cat $NM_HOME/sh_local/nc_network2.txt | grep -v "^#" | fgrep "%" | wc -l`
while ($numlines>0)
set line = `cat $NM_HOME/sh_local/nc_network2.txt | grep -v "^#" | fgrep "%" | tail -$numlines | head -1`
set host2 = `echo $line | cut -f 1 -d %`
set where = `echo $line | cut -f 2 -d %`
if ($host2 == $this_machine) then
echo "This is $host2....skipping rsh to this machine"
echo ""
goto yum
endif
echo ""
echo "logging into $host2 $where"
echo ""
sleep 1
rsh $host2
yum:
echo ""
echo "Preparing to install $package on $host2"
sudo yum -y install $package
if ($host2 == $this_machine) then
goto decrement
else
logout
goto decrement
endif
decrement:
@ numlines--
end