Post-installation Scripts:ArchLinux

From WebSoftSolus Documentation
Jump to: navigation, search
#!/bin/sh
################################################################
#          Remplace "YOUR_DOMAIN" by your domain name          #
################################################################
DOMAIN="YOUR_DOMAIN"
IP=`ifconfig | grep inet | awk '{print $2}'| head -1 |awk -F':' '{print $2}'`
HOST=`host $IP | awk '{print $5}' | awk -F'.' '{print $1"."$2"."$3}'`
 
hostname $HOST
 
cat > /root/.ssh/authorized_keys2 << EOF
from="213.186.50.100" ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAIEAt3XaIhEoRK5sEKm6wtYyazLOx3w+Yv9+bpfEvLftHr2hxZ2TY2A655iwMbgvhHqsMuGEjK9yGkZIQbUgB6HvOgOWOwJSX6Gc9Ac7GuH11xSU8tHDuTQot6fVtgcm2Y/VUFi65Knz9rLHz7h/Zy29ek+UYav5T7juhBIuk57cDxs=
from="::ffff:213.186.50.100" ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAIEAt3XaIhEoRK5sEKm6wtYyazLOx3w+Yv9+bpfEvLftHr2hxZ2TY2A655iwMbgvhHqsMuGEjK9yGkZIQbUgB6HvOgOWOwJSX6Gc9Ac7GuH11xSU8tHDuTQot6fVtgcm2Y/VUFi65Knz9rLHz7h/Zy29ek+UYav5T7juhBIuk57cDxs=
EOF
 
cat > /etc/resolv.conf << EOF
nameserver      213.186.33.99
nameserver      8.8.8.8
nameserver      8.8.4.4
EOF
 
sed -ri s/"$IP.*"/"$IP\t$HOST"/g  /etc/hosts
 
egrep -Rl '(ovh|kimsufi)' /etc/| grep -v mirrorlist | while read toto
 do
        sed -ri "s/rescue.ovh.net/rescue.{$DOMAIN}/g" $toto
        sed -ri "s/((ks|ns).*\.kimsufi.com|(ks|ns).*\.ovh.net)/$HOST/g" $toto
        sed -ri "s/(root@.*ovh.net|root@.*kimsufi.com)//g" $toto
 done
 
egrep -Rl '(ovh|kimsufi)' /root/ | while read toto
 do
        sed -ri "s/rescue.ovh.net/rescue.{$DOMAIN}/g" $toto
        sed -ri "s/((ks|ns).*\.kimsufi.com|(ks|ns).*\.ovh.net)/$HOST/g" $toto
        sed -ri "s/(root@.*ovh.net|root@.*kimsufi.com)//g" $toto
 done
 
test=`egrep -Rl '(ovh|kimsufi)' /etc/ | grep -v mirrorlist `
 
if [ -n "$test" ]
then
M="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
while [ "${n:=1}" -le "8" ]
do  pass="$pass${M:$(($RANDOM%${#M})):1}"
  let n+=1
done
echo "$pass" > /root/.p
 
pw usermod root -h stdin < /root/.p
/usr/sbin/usermod -p $pass root
 
echo "$pass"
exit 255
fi
 
exit 0