summaryrefslogtreecommitdiff
path: root/setup-cryptswap.in
diff options
context:
space:
mode:
authorNatanael Copa <ncopa@alpinelinux.org>2009-05-06 09:53:36 +0000
committerNatanael Copa <ncopa@alpinelinux.org>2009-05-06 09:53:36 +0000
commitec0c7a74bbf5824adc4efa54e1f91984ac870a8e (patch)
tree7f5a8763836154b10c8325629b493ebc67ead7e6 /setup-cryptswap.in
parentf590563940559429ffe77094473d12361937852d (diff)
downloadalpine-conf-ec0c7a74bbf5824adc4efa54e1f91984ac870a8e.zip
move to .in files
Diffstat (limited to 'setup-cryptswap.in')
-rwxr-xr-xsetup-cryptswap.in48
1 files changed, 48 insertions, 0 deletions
diff --git a/setup-cryptswap.in b/setup-cryptswap.in
new file mode 100755
index 0000000..0ec11fc
--- /dev/null
+++ b/setup-cryptswap.in
@@ -0,0 +1,48 @@
+#!/bin/sh
+
+PREFIX=
+. "$PREFIX/lib/libalpine.sh"
+
+
+list_partitions() {
+ awk '$1 ~ /[0-9]/ {print " " $4}' /proc/partitions
+}
+
+
+if [ -z "$1" ] ; then
+ while [ "x$verify" != "xy" ] ; do
+ echo "Available partitions: " $(list_partitions)
+ echon "Use what partition for encrypted swap? [none] "
+ default_read part "none"
+
+ # check if user requested to abort
+ if [ "x$part" = "xabort" ] || [ "x$part" = "xnone" ] ; then
+ exit
+ fi
+ # check if device exist
+ [ -e /dev/$part ] || continue
+
+ # let the user verify
+ echon "Warning! you will lose all data on $part. Continue? (y/n) [n] "
+ default_read verify "n"
+ done
+else
+ part=$1
+fi
+
+
+apk_add cryptsetup-luks
+
+# set the device in /etc/conf.f/cryptswap
+if grep ^DEVICE= /etc/conf.d/cryptswap >/dev/null ; then
+ sed -i 's:^DEVICE=.*:DEVICE=/dev/'$part':' /etc/conf.d/cryptswap
+else
+ echo "DEVICE=/dev/$part" >> /etc/conf.d/cryptswap
+fi
+
+rc_add -k -s 05 cryptswap
+rc_add -k -s 06 swap
+
+/etc/init.d/cryptswap start
+/etc/init.d/swap start
+