diff --git a/README.md b/README.md index 5a5823a..c3b05e3 100644 --- a/README.md +++ b/README.md @@ -1,38 +1,10 @@ # Alpine Chroot - -### Installation - To create a base alpine chroot on any alpine system, run: ```sh chmod +x *.sh ./alpine_init.sh ``` -But this is assuming your current working directory is the directory of the -cloned repository. -When it is your first time in the chroot, run: - -```sh -./chroot_init.sh -``` - - -### Usage - -Most people will go "into" the chroot via: - -```sh -chroot /mnt/chroot sh -``` - -But you must remember that you can just as well run any program in the chroot -as: - -```sh -chroot /mnt/chroot -``` - -Because **chroots are not jails, containers, or sandboxes**. They simply change -what the system sees as the "root" point of the file system. +Assuming your current working directory is the directory of the cloned repository. diff --git a/alpine_init.sh b/alpine_init.sh index d6d8280..d6f7cd8 100644 --- a/alpine_init.sh +++ b/alpine_init.sh @@ -7,8 +7,7 @@ mv repositories /etc/apk/repositories # setting the mirror apk add curl curl -LO http://nl.alpinelinux.org/alpine/MIRRORS.txt -repo_domain=`head -n 1 /etc/apk/repositories | sed -e "s/.*\/\///" | sed -e "s/\//\ /" | awk '{print $1}'` -mirror=`grep $repo_domain MIRRORS.txt` +mirror=`grep $(head -n 1 /etc/apk/repositories) | sed -e "s/.*\/\///" | sed -e "s/\//\ /" | awk '{print $1}') MIRRORS.txt` rm MIRRORS.txt # setting the chroot dir @@ -20,10 +19,9 @@ arch=$(uname -m) # set up apk -version="2.12.7-r0" +version="edge" curl -LO ${mirror}/latest-stable/main/${arch}/apk-tools-static-${version}.apk tar -xzf apk-tools-static-*.apk -rm apk-tools-static-*.apk # install the alpine base installation onto the chroot ./sbin/apk.static -X ${mirror}/latest-stable/main -U --allow-untrusted -p ${chroot_dir} --initdb add alpine-base @@ -37,9 +35,8 @@ mount -o bind /sys ${chroot_dir}/sys cp -L /etc/resolv.conf ${chroot_dir}/etc/ # prepare the APK repositories -branch="edge" # change if you want a specific version +branch=$version # change if you want a specific version mkdir -p ${chroot_dir}/etc/apk echo "${mirror}/${branch}/main" > ${chroot_dir}/etc/apk/repositories -cp chroot_init.sh ${chroot_dir}/chroot_init.sh -chroot ${chroot_dir} sh +chroot ${chroot_dir} chroot_init.sh diff --git a/chroot_init.sh b/chroot_init.sh index 01502f2..948428f 100644 --- a/chroot_init.sh +++ b/chroot_init.sh @@ -13,3 +13,6 @@ rc-update add syslog boot rc-update add mount-ro shutdown rc-update add killprocs shutdown rc-update add savecache shutdown + +# login shell +sh -l