Семинары по проекту "Школьный Linux"/Скрипт автоматизации

Материал из wiki.nntc.nnov.ru
Версия от 15:58, 2 июля 2010; Gumanoed (обсуждение | вклад)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к навигации Перейти к поиску
#!/bin/bash

#++++++++++++++++++++++++++++++++++++++++++++
#
#  Данный скрипт позволяет автоматизировать
#  процесс клонирования системы 
#
##++++++++++++++++++++++++++++++++++++++++++++++
#
# Распоковка архива!!
#
#$1
#$2
#echo $1
#echo $2

tar -zxpf arch.tar.gz 

#++++++++++++++++++++++++++++++++++++++++++++++++++++
# Редактирование файла lilo.conf
#
# Делается резервная копия файла lilo.conf
# Windows и linux
mv /media/sda2/etc/lilo.conf /media/sda2/ect/lilo.conf.old


# только Linux
#mv /media/sda1/etc/lilo.conf /media/sda1/ect/lilo.conf.old

# Здесь производится редактирование lilo.conf

# Windows и linux
sed 's/boot="\/dev\/hda"/boot="\/dev\/sda"/g ; s/append="dev\/hda2"/append="dev\/sda3/g ; s/root=\/dev\/hda5/root=\/dev\/sda2/g ; s/other=\/dev\/hda1/other=\/dev\/sda1/g' ./etc/lilo.conf.old > /media/sda2/etc/lilo.conf

# только Linux
#sed 's/boot="\/dev\/hda"/boot="\/dev\/sda"/g ; s/append="dev\/hda2"/append="dev\/sda2/g ; s/root=\/dev\/hda5/root=\/dev\/sda1/g' ./etc/lilo.conf.old > /media/sda2/etc/lilo.conf

# Делается резервная копия файла fstab

# Windows и linux
mv /media/sda2/etc/fstab /media/sda2/etc/fstab.old


# только Linux
#mv /media/sda1/etc/fstab /media/sda1/etc/fstab.old

# Здесь производится редактирование fstab, 

# выдаст 1 столбец из fstab где еказан swap 
# т.е. UUID=... или /dev/sda..
# cat ./etc/fstab | grep swap | awk '{ print $1 }'

# Windows и linux 

sed '/swap/s/\/dev\/sda0/\/dev\/sda3/g'  /media/sda2/etc/fstab.old > /media/sda2/etc/fstab
sed '/ext3/s/\/dev\/sda0/\/dev\/sda2/g'  /media/sda2/etc/fstab.old > /media/sda2/etc/fstab
sed '/ntfs/s/\/dev\/sda0/\/dev\/sda1/g'  /media/sda2/etc/fstab.old > /media/sda2/etc/fstab

# только Linux

#sed '/ext3/s/\/dev\/sda0/\/dev\/sda1/g' /media/sda1/etc/fstab.old > /media/sda1/etc/fstab
#sed '/swap/s/\/dev\/sda0/\/dev\/sda2/g' /media/sda1/etc/fstab.old > /media/sda1/etc/fstab


#
# Делается резервная копия файла xorg.conf
# Windows и linux
mv  /media/sda2/etc/X11/xorg.conf /media/sda2/ect/X11/xorg.conf.old
seq 's/driver ""/driver "vesa"/g' /media/sda2/ect/X11/xorg.conf.old > /media/sda2/etc/X11/xorg.conf

# только Linux
#mv  /media/sda1/etc/X11/xorg.conf /media/sda1/ect/X11/xorg.conf.old
#seq 's/driver ""/driver "vesa"/g' /media/sda1/ect/X11/xorg.conf.old > /media/sda1/etc/X11/xorg.conf

#++++++++++++++++++++++++++++++++++++++++++++++++++++++
#
# Очищаем 70-persistent-net.rules

#
# Windows и linux 
cat " " > /media/sda2/etc/udev/rulez/70-persistent-net.rules

# только Linux

#cat " " > /media/sda1/etc/udev/rulez/70-persistent-net.rules

#++++++++++++++++++++++++++++++++++++++++++++++++++++++++
## Windows и linux
# Монтирование каталогов /sys /proc /dev 
#
mount -t proc /proc /media/sda2/proc
mount -t sysfs /sys /media/sda2/sys
mount --bind /dev /media/sda2/dev

# только Linux

#mount -t proc /proc /media/sda1/proc
#mount -t sysfs /sys /media/sda1/sys
#mount --bind /dev /media/sda1/dev

#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
# Переход в chroot
#
#
LANG=C chroot lenny-chroot/ /bin/bash <<EOF
lilo
EOF
#
# Перезагрузка ПК 
#
#reboot