diff --git a/README.md b/README.md index b89bf9e..6eb5db9 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,139 @@ # Masterthesis -This is the place preferably for the development of scripts (Shell, Python, ...) for my master thesis. \ No newline at end of file +This is the place preferably for the development of scripts (Shell, Python, ...) for my master thesis. + +## Why Arch Linux? + +Because I'm a big fan of Debian GNU/Linux on servers I have build Debian-Live-DVDs for other (older) projects. + +But for forensics and virtualization I have switched to Arch Linux and "archiso". + +For development (and maybe later use) a living installation on a removable media was more comfortable. + +I use a Samsung T5 with 256MB. I think a lot of other devices will work too. + +It could be that I will generate an ISO image again after development is complete (probably never). + +## Installation + +https://wiki.archlinux.org/index.php/Installation_guide + +Skip the swap partition! + +https://wiki.archlinux.org/index.php/Install_Arch_Linux_on_a_removable_medium + +## Post-installation (as root) + +timedatectl set-ntp true +ln -sf /usr/share/zoneinfo/Europe/Berlin /etc/localtime +vi /etc/locale.gen +locale-gen +echo "LANG=en_US.UTF-8" > /etc/locale.conf +echo "KEYMAP=de-latin1" > /etc/vconsole.conf +localectl set-keymap --no-convert de-latin1 +echo "hellonium" > /etc/hostname +echo "127.0.1.1 hellonium.localdomain hellonium" >> /etc/hosts +pacman -S intel-ucode amd-ucode linux-firmware +grub-install --target=x86_64-efi --efi-directory=boot --removable --recheck +grub-mkconfig -o /boot/grub/grub.cfg +systemctl enable systemd-networkd.service +systemctl start systemd-networkd.service +rm /etc/resolv.conf +systemctl enable systemd-resolved.service +systemctl start systemd-resolved.service +ln -s /run/systemd/resolve/resolv.conf /etc/resolv.conf +groupadd lucifer +useradd -m -g lucifer -G wheel,optical,storage -s /bin/bash lucifer +passwd lucifer + +## Install Arch Linux packages (as root) + +xf86-video-intel +intel-compute-runtime +nvidia +opencl-nvidia +xf86-video-amdgpu +xf86-video-ati +opencl-mesa +xf86-video-nouveau +xf86-video-vesa +base-devel +bash-completion +bc +binwalk +chntpw +dconf-editor +firefox +galculator +gdm +gedit +git +gnome +grub +hashcat +inetutils +libeatmydata +libewf +lvm2 +mdadm +minisign +mlocate +multipath-tools +nano +openssh +ophcrack +pacman-contrib +python-pycryptodome +qemu +qemu-arch-extra +signify +sleuthkit +sudo +testdisk +ttf-dejavu +vim +vinagre +which +xarchiver +xorg +xorg-apps +xorg-drivers +xorg-fonts + +## More configuration (as root) + +localectl --no-convert set-x11-keymap de +visudo (uncomment %wheel ... NOPASSWD:) +systemctl enable sshd.service +systemctl start sshd.service +sudo usermod -a -G kvm lucifer +sudo sytemctl enable gdm + +## AUR + +I have choosen trizen for installing AUR recipes. + +Install it as user (lucifer): + +mkdir ~/builds && cd ~/builds +git clone https://aur.archlinux.org/trizen.git +cd trizen +makepkg -sirc + +Install AUR packages as user (lucifer) with trizen: + +trizen -S + +## Install AUR packages (as luciver) + +aic94xx-firmware +upd72020x-fw +wd719x-firmware +dc3dd +fred +guymager +perl-image-exiftool +regripper-git +xmount +zfs-linux (AUR - can be somewhat problematic!) +zfs-utils (AUR - can be somewhat problematic!) diff --git a/etc/fuse.conf b/etc/fuse.conf new file mode 100644 index 0000000..c292f74 --- /dev/null +++ b/etc/fuse.conf @@ -0,0 +1,17 @@ +# The file /etc/fuse.conf allows for the following parameters: +# +# user_allow_other - Using the allow_other mount option works fine as root, in +# order to have it work as user you need user_allow_other in /etc/fuse.conf as +# well. (This option allows users to use the allow_other option.) You need +# allow_other if you want users other than the owner to access a mounted fuse. +# This option must appear on a line by itself. There is no value, just the +# presence of the option. + +user_allow_other + + +# mount_max = n - this option sets the maximum number of mounts. +# Currently (2014) it must be typed exactly as shown +# (with a single space before and after the equals sign). + +#mount_max = 1000 diff --git a/etc/systemd/journald.conf.d/removabledev.conf b/etc/systemd/journald.conf.d/removabledev.conf new file mode 100644 index 0000000..4ee2c13 --- /dev/null +++ b/etc/systemd/journald.conf.d/removabledev.conf @@ -0,0 +1,3 @@ +[Journal] +Storage=volatile +RuntimeMaxUse=30M diff --git a/etc/systemd/network/MyDhcp.network b/etc/systemd/network/MyDhcp.network new file mode 100644 index 0000000..9613cc0 --- /dev/null +++ b/etc/systemd/network/MyDhcp.network @@ -0,0 +1,5 @@ +[Match] +Name=en* + +[Network] +DHCP=ipv4