summaryrefslogtreecommitdiff
path: root/nfs/scripts/image_deploy_dual-I5734-I6510.sh
blob: 0c5b2f9ac1ba940c0ad7c1d6c0253e302b7000cf (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
#!/bin/busybox sh
# Should only started from image_capture.sh, it defines some helper functions and variables)
# echo_color() <text-color> <background-color> <message>
# $outdir is the also the current working dir, garanted to be empty and writable
# Many cloning/partitioning tools are available for use, see make-boot-image.sh

last_win=$(cat "$imagedir/I5734/last") # FIXME ceci est provisoire et prends le windows périmé du master linux. Doit etre I5734 à terme
last_win=${last_win:-XXXXXXXX}
indir_win="$imagedir/I5734/$last_win/"

last=$(cat "$imagedir/I6510/last")
last=${last:-XXXXXXXX}
indir="$imagedir/I6510/$last/"

echo_color white blue ">>> DUALBOOT indir_win='$indir_win'"
echo_color white blue ">>> DUALBOOT indir='$indir'"

echo_color white blue ">>> Discarding whole ${firstdisk}"
blkdiscard -v ${firstdisk}

echo_color white blue ">>> Restoring ${firstdisk} boot sectors"
pigz -dc "$indir/sda-dd.gz" | dd of=${firstdisk} count=2048

echo_color white blue ">>> Detecting new partitions"
echo -e "r\ne\ny\nw\ny" | gdisk ${firstdisk}

echo_color white blue ">>> Restoring ${firstdiskp}1 NTFS WinRecovery"
pigz -dc "$indir/sda1-partclone.gz" | partclone.restore -o ${firstdiskp}1

echo_color white blue ">>> Restoring ${firstdiskp}2 FAT32 EFI"
pigz -dc "$indir/sda2-partclone.gz" | partclone.restore -o ${firstdiskp}2

echo_color white blue ">>> Restoring ${firstdiskp}3 RAW M$ Reserved"
pigz -dc "$indir_win/sda3-dd.gz" | dd of=${firstdiskp}3

echo_color white blue ">>> Restoring ${firstdiskp}4 NTFS Win10"
pigz -dc "$indir_win/sda4-partclone.gz" | partclone.restore -o ${firstdiskp}4

echo_color white blue ">>> Restoring ${firstdiskp}5 EXT4 LINUX"
pigz -dc "$indir/sda5-partclone.gz" | partclone.restore -o ${firstdiskp}5

echo_color white blue ">>> Restoring ${firstdiskp}6 Swap"
pigz -dc "$indir/sda6-dd.gz" | dd of=${firstdiskp}6

echo_color white blue ">>> Customizing WINDOWS"
mkdir -p /mnt/win
mount.ntfs ${firstdiskp}4 /mnt/win
hostname > /mnt/win/EMAC/newhostname.txt
echo "yes" > /mnt/win/EMAC/freshlycloned.txt
echo $last_win > /mnt/win/EMAC/masterver.txt
umount /mnt/win

echo_color white blue ">>> Customizing LINUX"
mkdir -p /mnt/lin
mount ${firstdiskp}5 /mnt/lin
#mount.ntfs ${firstdisk}1 /mnt/lin/boot
#mount -t proc proc /mnt/lin/proc
#mount -t sysfs sysfs /mnt/lin/sys
#mount --bind /dev /mnt/lin/dev
#chroot /mnt/lin update-grub
#umount /mnt/lin/dev /mnt/lin/sys /mnt/lin/proc /mnt/lin/boot
hostname > /mnt/lin/etc/hostname
echo $last > /mnt/lin/masterver.txt
sed --in-place "s/I6510/$(hostname)/g" /mnt/lin/etc/hosts
umount /mnt/lin

echo_color white blue ">>> Setting next boot to Windows"
mkdir -p /mnt/boot
mount ${firstdiskp}2 /mnt/boot
cp /mnt/boot/grub/grubenv.freshlycloned /mnt/boot/grub/grubenv
umount /mnt/boot