console=tty1
from /boot/cmdline.txt$ sudo apt install bridge-utils snapd
$ sudo snap install core lxd # Has to be in order
## Create two partitions on thumbdrive
## var - 2 Gb
## lxd pool - remainder
$ sudo /sbin/mkfs.ext4 -L var /dev/sda1
$ sudo /sbin/mkfs.ext4 -L pool /dev/sda2
$ sudo mount /dev/disk/by-label/var /mnt
Follow Ubuntu VM Configuration #### Configure Bridge Interface
$ sudo vi /etc/netplan/50-cloud-init.yaml
network:
ethernets:
eth0:
dhcp4: no
bridges:
br0:
interfaces: [eth0]
addresses: [<ip>/<cidr>]
gateway4: <gw ip>
mtu: 1500
namservers:
addresses: [<dns 1>, <dns 2>]
parameters:
stp: true
forward-delay: 4
dhcp4: no
version: 2
## Use cgdisk to partition
## hexcode = fd00 (Linux RAID)
## apply partition names (disk0, disk1, etc)
## Leave 100Mb of space unpartitioned to ease replacing a failed disk
$ mdadm --create --verbose --level=1 --raid-devices=2 \
/dev/md/nas /dev/disk/by-partlabel/disk0 /dev/disk/by-partlabel/disk1$ sudo mdadm --detail --scan | sudo tee -a /etc/mdadm/mdadm.conf
## Set MAILADDR <email> in /etc/mdadm/mdadm.conf
$ sudo update-initramfs -u # might only be needed if booting from the array
$ sudo mdadm --assemble --scan
$ sudo mkfs.ext4 /dev/md/nas
$ sudo mkdir -p /media/nas
$ printf "%s\t%s\t%s\n%s\t%s\t%s\n" "/dev/md/nas" "/media/nas" "ext4" "defaults" "0" "2" | sudo tee -a /etc/fstab
$ sudo mount /media/nas
$ sudo mkdir /media/nas/share
$ sudo chown $USER:$USER /media/nas/share
$ lxc launch images:alpine/3.12 nas
$ lxc exec nas sh
## Commands executed in container:
$ setup-alpine
# Ip address for eth0? <ip>
# Netmask? <mask>
# Gateway? <gw>
# DNS domain name? <domain>
# DNS nameserver(s)? <pihole ip>
# Which SSH server? dropbear
$ apk add sudo
$ adduser <username>
$ echo '%wheel ALL=(ALL) ALL' >> /etc/sudoers.d/wheel
$ adduser <username> wheel
## On Host
$ lxc config device add nas /media/nas disk source=/media/nas/ path=media/nas
$ lxc config set nas raw.idmap "both $(id -u) 0"
$ sudo apk add samba
$ sudoedit /etc/samba/smb.conf
#
$ sudo adduser -D -h /dev/null -s /bin/false share # Ignore error
$ sudo rc-update add samba default
$ sudo rc-service samba start
$ sudo apt install ddclient
$ cat <<END | sudo tee /etc/ddclient.conf
ssl=yes
protocol=googledomains
use=web
web=icanhazip.com
login=YEJ7AUoyUw903WJl
password=l4zYoeDMnCRpVpPE
home.orionarts.io
END
$ systemctl restart ddclient.service