parent
ec88e37571
commit
6aee21c7ca
@ -0,0 +1 @@ |
||||
.*.sw[po] |
@ -0,0 +1,3 @@ |
||||
= Dependencies = |
||||
|
||||
sudo aptitude install git kpartx ruby qemu-system-arm qemu-user-static |
@ -0,0 +1,91 @@ |
||||
#!/bin/sh -e |
||||
|
||||
Usage() { |
||||
>&2 echo "Usage: $0 hostname [vgname]" |
||||
exit 1 |
||||
} |
||||
|
||||
die() { |
||||
>&2 echo "died: $*" |
||||
exit 1 |
||||
} |
||||
|
||||
msg() { |
||||
>&2 printf '\e[34;1m%s\e[0m\n' "$*" |
||||
} |
||||
|
||||
lv_exists() { |
||||
true && lvs --noheadings --options lv_name "$1" |
||||
case $? in |
||||
0) return 0 ;; |
||||
5) return 1 ;; |
||||
*) die "Error while determining, if lv «$1» exists" ;; |
||||
esac |
||||
} |
||||
|
||||
alias blkuuid="blkid -ovalue -sUUID" blkfstype="blkid -ovalue -sTYPE" |
||||
|
||||
[ X = X"$1" ] && Usage |
||||
[ X-h = X"$1" ] && Usage |
||||
[ X--help = X"$1" ] && Usage |
||||
|
||||
hostname="$1" |
||||
#vgname="${2:-${hostname}sd}" |
||||
disc="/dev/mmcblk1" |
||||
pvpath="${disc}p2" |
||||
|
||||
echo "Hostname: «$hostname»" |
||||
#echo "VG-name: «$vgname»" |
||||
echo |
||||
|
||||
msg "Install needed tools..." |
||||
apt update |
||||
apt install -y lvm2 xfsprogs |
||||
|
||||
msg "Set Hostname «$hostname»..." |
||||
oldhostname=`cat /etc/hostname` |
||||
sed -i -e "s/$oldhostname/$hostname/g" /etc/hosts |
||||
echo "$hostname" > /etc/hostname |
||||
|
||||
vgname="`pvs --noheadings --options vg_name "$pvpath" | sed -e 's/^ *//'`" |
||||
# renaming does not work, because blockdevices will not be created. |
||||
# vgknodes, vgscan --mknodes tested. |
||||
#if [ "X$oldvgname" = "X$vgname" ] |
||||
#then |
||||
# msg "VG already named «$vgname»." |
||||
#else |
||||
# msg "Rename VG in «$vgname»..." |
||||
# vgrename "$oldvgname" "$vgname" |
||||
#fi |
||||
|
||||
msg "Expand PV «$pvpath»..." |
||||
parted -ms "$disc" -- resizepart 2 -4MB print |
||||
pvresize "$pvpath" |
||||
|
||||
msg "Expand root-LV..." |
||||
lvextend -rL4G "$vgname/root" |
||||
|
||||
if lv_exists "$vgname/swap" |
||||
then |
||||
msg "LV «swap» already exists." |
||||
else |
||||
msg "Prepare swap-LV..." |
||||
lvcreate -nswap -L2G "$vgname" |
||||
mkswap "/dev/$vgname/swap" |
||||
echo "UUID=`blkuuid /dev/$vgname/swap` swap swap sw 0 0" >>/etc/fstab |
||||
fi |
||||
|
||||
if lv_exists "$vgname/home" |
||||
then |
||||
msg "LV «home» already exists" |
||||
else |
||||
msg "Prepare home-LV..." |
||||
lvcreate -nhome -L4G "$vgname" |
||||
mkfs.xfs "/dev/$vgname/home" |
||||
echo "UUID=`blkuuid /dev/$vgname/home` /home xfs defaults 0 0" >>/etc/fstab |
||||
fi |
||||
|
||||
msg "Install Updates..." |
||||
apt dist-upgrade -y |
||||
|
||||
msg "ok" |
Binary file not shown.
Loading…
Reference in new issue