--- - name: Basic Setup hosts: sk-2019 roles: - role: apt-repo/base - role: core/base # - role: core/sshd - role: core/zsh - role: core/cpu-microcode - role: core/admin-users - role: cryptdisk - role: zfs/base tasks: - name: install post-boot script copy: dest: /usr/local/bin/post-boot mode: 0755 content: | #!/bin/bash set -e {% for name, volume in cryptdisk_volumes.items() %} cryptsetup luksOpen '{{ volume.device }}' '{{ name }}' {% endfor %} systemctl restart zfs-import-cache.service systemctl restart zfs-mount.service mount -a systemctl restart mariadb.service systemctl restart apache2.service - name: install ispconfig fix systemd service unit copy: dest: /etc/systemd/system/fix-fstab.service content: | [Unit] Description=fix fstab entries made by ispconfig [Service] Type=oneshot ExecStart=/usr/bin/sed s/bind,nobootwait/bind,nofail/ -i /etc/fstab - name: install ispconfig fix systemd service unit copy: dest: /etc/systemd/system/fix-fstab.timer content: | [Unit] Description=fix fstab entries made by ispconfig [Timer] OnCalendar=*-*-* *:*:00 [Install] WantedBy=timers.target - name: enable and start fstab fix systemd: name: fix-fstab.timer daemon_reload: yes enabled: yes state: started ### TODO: # # zfs create -o quota=30G storage/mysql # zfs create -o quota=30G storage/automysqlbackup # zfs create -o quota=300G storage/vmail # zfs create -o quota=600G storage/www # zfs create -o quota=40G storage/log # zfs create -o quota=50G storage/configz # # mkdir -p /var/lib/mysql /var/lib/automysqlbackup /var/vmail /var/www /var/log/ispconfig # chmod 0000 /var/lib/mysql /var/lib/automysqlbackup /var/vmail /var/www /var/log/ispconfig # chattr +i /var/lib/mysql /var/lib/automysqlbackup /var/vmail /var/www /var/log/ispconfig # ### add to /etc/fstab: ## ## /srv/storage/mysql /var/lib/mysql none defaults,bind,x-systemd.automount,nofail 0 0 ## /srv/storage/automysqlbackup /var/lib/automysqlbackup none defaults,bind,x-systemd.automount,nofail 0 0 ## /srv/storage/vmail /var/vmail none defaults,bind,x-systemd.automount,nofail 0 0 ## /srv/storage/www /var/www none defaults,bind,x-systemd.automount,nofail 0 0 ## /srv/storage/log /var/log/ispconfig none defaults,bind,x-systemd.automount,nofail 0 0 # # mount -a # ########### manual post-boot # cat /etc/fstab | grep "^/var/log" | awk '{ system("umount "$2) }' # umount /srv/storage/www/clients/client2/web2/web/shared/fileadmin/wolke # umount /srv/storage/www/clients/client2/web2/web/shared/fileadmin/wolke # umount /srv/storage/www/clients/client2/web2/web/shared/fileadmin/wolke # mount | grep systemd-1 | awk '{ print($3) }' | grep "^/var" | xargs umount # mount | grep systemd-1 | awk '{ print($3) }' | grep "^/var" | xargs umount # mount | grep systemd-1 | awk '{ print($3) }' | grep "^/var" | xargs umount # rm -rf /srv/storage/*