Mamy małą sieć 15 użytkowników. Muszę zainstalować nowe biblioteki przy użyciu yum na wszystkich komputerach w sieci. Mam już skrypt csh, który pozwala mi rsh na wszystkich komputerach w systemie, dzięki czemu mogłem ręcznie przełączyć się na root i zainstalować wymagane zależności dla każdego rsh. Czy istnieje bardziej skuteczny sposób to zrobić?
Próbowałem to zrobić za pomocą następującego skryptu csh. Nadal korzystam z rsh podczas testowania. Jednak skrypt umiera, gdy tylko rsh do innego pliku hosta. Co ja robię źle?
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