-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathchroot_rundisk.sh
executable file
·84 lines (68 loc) · 3.18 KB
/
chroot_rundisk.sh
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
73
74
75
76
77
78
79
80
81
82
83
84
#!/bin/bash
#---Define variables
echo -e "\r"
echo -e "---Defining Environmental variables---"
echo -e "\r"
build_BOOOT_BIN_filename="build_BOOOT_BIN.sh"
disk_foldername="disk"
scripts_foldername="scripts"
SP7xxx_foldername="SP7021"
home_dir=~
usr_dir=/usr
scripts_dir=/scripts
usr_bin_dir=${usr_dir}/bin
home_lttp3rootfs_dir=${home_dir}/LTPP3_ROOTFS
SP7xxx_dir=${home_dir}/${SP7xxx_foldername}
SP7xxx_linux_rootfs_initramfs_dir=${SP7xxx_dir}/linux/rootfs/initramfs
SP7xxx_linux_rootfs_initramfs_disk_dir=${SP7xxx_linux_rootfs_initramfs_dir}/${disk_foldername}
SP7xxx_linux_rootfs_initramfs_disk_scripts_dir=${SP7xxx_linux_rootfs_initramfs_disk_dir}/${scripts_foldername}
qemu_fpath=${usr_bin_dir}/qemu-arm-static
bash_fpath=${usr_bin_dir}/bash
chroot_exec_cmd_inside_chroot_filename="chroot_exec_cmd_inside_chroot.sh"
src_chroot_exec_cmd_inside_chroot_fpath=${home_lttp3rootfs_dir}/${chroot_exec_cmd_inside_chroot_filename}
dst_chroot_exec_cmd_inside_chroot_fpath=${SP7xxx_linux_rootfs_initramfs_disk_scripts_dir}/${chroot_exec_cmd_inside_chroot_filename}
chroot_exec_cmd_inside_chroot_fpath=${scripts_dir}/${chroot_exec_cmd_inside_chroot_filename}
#---Show mmessage
echo -e "\r"
echo -e "---------------------------------------------------------------"
echo -e "\tPREPARING CHROOT"
echo -e "---------------------------------------------------------------"
#---Create directory "~/SP7021/linux/rootfs/initramfs/disk/scripts"
echo -e "\r"
echo -e ">Creating <${scripts_foldername}>"
echo -e ">in: ${SP7xxx_linux_rootfs_initramfs_disk_dir}"
if [[ ! -d ${SP7xxx_linux_rootfs_initramfs_disk_scripts_dir} ]]; then
mkdir ${SP7xxx_linux_rootfs_initramfs_disk_scripts_dir}
fi
#---Copy "chroot_exec_cmd_inside_chroot.sh" to "~/SP7021/linux/rootfs/initramfs/disk/scripts"
echo -e "\r"
echo -e ">Copying: ${chroot_exec_cmd_inside_chroot_filename}"
echo -e ">from: ${home_lttp3rootfs_dir}"
echo -e ">to: ${SP7xxx_linux_rootfs_initramfs_disk_scripts_dir}"
echo -e "\r"
cp ${src_chroot_exec_cmd_inside_chroot_fpath} ${SP7xxx_linux_rootfs_initramfs_disk_scripts_dir}
#---Make "chroot_exec_cmd_inside_chroot.sh" executable
echo -e "\r"
echo -e ">chmod +x ${chroot_exec_cmd_inside_chroot_filename}"
echo -e ">in: ${SP7xxx_linux_rootfs_initramfs_disk_scripts_dir}"
chmod +x ${dst_chroot_exec_cmd_inside_chroot_fpath}
#---Go into CHROOT
#Note: anything inside EOF is run inside your chrooted directory
echo -e "\r"
echo -e "---------------------------------------------------------------"
echo -e "\tENTERING CHROOT ENVIRONMENT"
echo -e "---------------------------------------------------------------"
echo -e "---------------------------------------------------------------"
echo -e "Auto Initialization and Preparation of <rootfs>...In Progress"
echo -e "Running script:"
echo -e "\t${chroot_exec_cmd_inside_chroot_fpath}"
echo -e "---------------------------------------------------------------"
echo -e "\r"
cat << EOF | chroot ${SP7xxx_linux_rootfs_initramfs_disk_dir} ${qemu_fpath} ${bash_fpath}
source ${chroot_exec_cmd_inside_chroot_fpath}
EOF
echo -e "\r"
echo -e ">Removing: ${chroot_exec_cmd_inside_chroot_filename}"
echo -e ">from: ${SP7xxx_linux_rootfs_initramfs_disk_scripts_dir}"
echo -e "\r"
rm ${dst_chroot_exec_cmd_inside_chroot_fpath}