Wissensdatenbank
Buehl, Kevin
19 Juni 2016
26 November 2017
2.387

Wissensdatenbank

Debian 9 Stretch auf Buffalo Terastation installieren

Partitionierung

parted /dev/sdb
GNU Parted 2.3
Using /dev/sdb
Welcome to GNU Parted! Type 'help' to view a list of commands.
mklabel gpt
mkpart primary 1MB 3MB
name 1 grub
set 1 bios_grub on
mkpart primary 3MB 103MB
name 2 boot
set 2 boot on
mkpart primary 103MB 100%
name 3 raid
print
Model: ATA WDC WD20EARX-00P (scsi)
Disk /dev/sdb: 2000399MB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt

Number Start End Size File system Name Flags
1 1.05MB 3.15MB 2.10MB grub bios_grub
2 3.15MB 103MB 99.6MB boot boot
3 103MB 2000399MB 2000296MB raid

RAID


boot

mdadm --create /dev/md0 --level 5 --raid-devices=4 /dev/sdb2 /dev/sdc2 /dev/sdd2 /dev/sde2 --metadata=0.90
mdadm: array /dev/md0 started.

root

mdadm --create /dev/md1 --level 5 --raid-devices=4 /dev/sdb3 /dev/sdc3 /dev/sdd3 /dev/sde3
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md1 started.


Verschlüsselung

cryptsetup -v --cipher aes-xts-plain64 --key-size 512 --hash sha512 --iter-time 5000 --use-urandom --verify-passphrase luksFormat /dev/md1
WARNING!
========
This will overwrite data on /dev/md1 irrevocably.

Are you sure? (Type uppercase yes): YES
Enter LUKS passphrase:
Verify passphrase:
Command successful.

Um einen weiteren Schlüssel hinzuzufügen geben Sie folgenden Befehl ein
cryptsetup luksAddKey /dev/md1
Geben Sie irgendeine bestehende Passphrase ein:
Geben Sie die neue Passphrase für das Schlüsselfach ein:
Passphrase wiederholen:

Entschlüsseln


Entschlüsseln Sie nun die verschlüsselte Partition mit:
cryptsetup luksOpen /dev/md1 md1_crypt
Enter passphrase for /dev/md1:

Logische Partitionen


Erstellen Sie nun eine physische Partition für LVM:
pvcreate /dev/mapper/md1_crypt
  Writing physical volume data to disk "/dev/mapper/md1_crypt"
Physical volume "/dev/mapper/md1_crypt" successfully created

Erstellen Sie nun eine Partitionsgruppe:
vgcreate 4b42 /dev/mapper/md1_crypt
  Volume group "4b42" successfully created


Nachdem Sie diese Befehle ausgeführt haben, können Sie logische Partitionen erstellen. Ich habe hier eine swap Partition mit 1 GB und eine root Partition mit dem restlichen Speicherplatz.
lvcreate -L 1000MiB -n swap 4b42
Logical volume "swap" created
lvcreate -l 100%FREE -n root 4b42
  Logical volume "root" created.
Überprüfen Sie die Konfiguration mit folgendem Befehl:
lvdisplay --units G
  --- Logical volume ---
LV Path /dev/4b42/swap
LV Name swap
VG Name 4b42
LV UUID EOZ0mp-z1eg-4Vuy-vhi9-XDNr-jpCo-sbkLLu
LV Write Access read/write
LV Creation host, time 4b42, 2016-04-28 19:15:51 +0000
LV Status available
# open 0
LV Size 1.05 GB
Current LE 250
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 6144
Block device 253:1

--- Logical volume ---
LV Path /dev/4b42/root
LV Name root
VG Name 4b42
LV UUID Jn5wQE-JHzf-kQuf-Hf3T-eYr1-7N5Q-E3zoen
LV Write Access read/write
LV Creation host, time 4b42, 2016-04-28 19:16:30 +0000
LV Status available
# open 0
LV Size 5999.43 GB
Current LE 1430375
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 6144
Block device 253:2


Formatieren

mkfs.ext4 -L boot /dev/md0
mke2fs 1.42.5 (29-Jul-2012)
Filesystem label=boot
OS type: Linux
Block size=1024 (log=0)
Fragment size=1024 (log=0)
Stride=512 blocks, Stripe width=1536 blocks
72576 inodes, 290304 blocks
14515 blocks (5.00%) reserved for the super user
First data block=1
Maximum filesystem blocks=67633152
36 block groups
8192 blocks per group, 8192 fragments per group
2016 inodes per group
Superblock backups stored on blocks:
8193, 24577, 40961, 57345, 73729, 204801, 221185

Allocating group tables: done
Writing inode tables: done
Creating journal (8192 blocks): done
Writing superblocks and filesystem accounting information: done
mkfs.ext4 -L root /dev/mapper/lvm-root
mke2fs 1.42.5 (29-Jul-2012)
Filesystem label=root
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=128 blocks, Stripe width=384 blocks
183091200 inodes, 1464704000 blocks
73235200 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=4294967296
44700 block groups
32768 blocks per group, 32768 fragments per group
4096 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968,
102400000, 214990848, 512000000, 550731776, 644972544

Allocating group tables: done
Writing inode tables: 502/44700
done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done



Debian herunterladen


mkswap -L swap /dev/mapper/lvm-swap
Setting up swapspace version 1, size = 1048571904 bytes
UUID=91641e37-e6c1-4798-b32b-25dac301a89d

swapon /dev/mapper/lvm-swap
mkdir /4b42
mount /dev/mapper/lvm-root /4b42/
mkdir -p /4b42/boot
mount /dev/md0 /4b42/boot


debootstrap --arch amd64 stretch /4b42/ http://ftp.debian.org/debian/
I: Retrieving Release
I: Valid Release signature (key id 067E3C456BAE240ACEE88F6FEF0F382A1A7B6500)
I: Unpacking bash...
I: Configuring systemd...
I: Base system installed successfully.
mount --bind /dev /4b42/dev
mount --bind /proc /4b42/proc
mount --bind /sys /4b42/sys
mount --bind /run /4b42/run

Wechseln Sie mit chroot in Ihr neues System:
chroot /4b42 /bin/bash
root@debian:/#


Konfiguration


Paketquellen


Sie können nun mit der Konfiguration Ihres neuen Debian Systems beginnen. Passen Sie zuerst die Paketquelle an:
nano /etc/apt/sources.list
deb http://ftp.ch.debian.org/debian/ stretch main
deb-src http://ftp.ch.debian.org/debian/ stretch main

deb http://security.debian.org/debian-security stretch/updates main
deb-src http://security.debian.org/debian-security stretch/updates main

# stretch-updates, previously known as 'volatile'
deb http://ftp.ch.debian.org/debian/ stretch-updates main
deb-src http://ftp.ch.debian.org/debian/ stretch-updates main
Aktualisieren Sie nun die Paketquellen und Ihr System:
apt update
apt upgrade

Mountpoints


Passen Sie nun die Datei fstab wie folgt an:
nano /etc/fstab
# <file system>		<mount point>	<type>	<options>		<dump>	<pass>
/dev/mapper/lvm-swap none swap sw 0 0
/dev/mapper/lvm-root / ext4 errors=remount-ro 0 1
/dev/md0 /boot ext4 rw,nosuid,nodev 0 2
Verlinken Sie nun die /etc/mtab mit /proc/mounts
ln -sf /proc/mounts /etc/mtab

Erstellen Sie nun die crypttab Datei mit folgendem Befehl:
apt install -y cryptsetup
echo "md1_crypt UUID=$(cryptsetup luksDump /dev/md1|grep UUID|tr -d '[[:blank:]]'|sed 's/UUID://') none luks" > /etc/crypttab

Netzwerk


nano /etc/network/interfaces
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto enp2s0
iface enp2s0 inet static
address 10.48.42.3/24
gateway 10.48.42.254
Sofern erforderlich, passen Sie den Hostnamen des Servers an:
echo 4b42 > /etc/hostname


Software installieren


Installieren Sie zum Schluss alle nötigen Softwarepakete auf Ihrem neuen System:
apt install grub-pc initramfs-tools linux-image-amd64 locales lvm2 mdadm ssh


Abschliessen


Ändern Sie zum Schluss das Passwort des root Benutzers:
passwd
Geben Sie ein neues UNIX-Passwort ein:
Geben Sie das neue UNIX-Passwort erneut ein:
passwd: Passwort erfolgreich geändert
Pürfen Sie die KOnfigurationsdatei des Software RAIDs
nano /etc/mdadm/mdadm.conf
# definitions of existing MD arrays
ARRAY /dev/md/0 UUID=3f01f3a4:0dfff0f1:11e03e04:dbafcc87
ARRAY /dev/md/1 metadata=1.2 UUID=ee8b2e3e:fc8e9836:ef6033fc:a760c729 name=rescue.4b42.net:1
Stellen Sie hier sicher das die Arrays md0 und md1 definiert sind, da der Bootloader die /boot Partition auf dem Software RAID nicht finden kann. Wenn Sie Änderungen an dieser Datei durchgeführt haben, führen Sie folgenden Befehl aus:
update-initramfs -u


Verzeichnisse aushängen:
umount /4b42/dev
umount /4b42/proc
umount /4b42/sys
umount /4b42/run
umount /4b42/boot
umount /4b42


Debugging


Hier die Befehle falls bei der Installation etwas nicht funktioniert hat und das System erneut eingebunden werden muss:
mkdir /4b42
cryptsetup luksOpen /dev/md127 md1_crypt
Enter passphrase for /dev/md127:
vgscan
  Reading all physical volumes.  This may take a while...
Found volume group "4b42" using metadata type lvm2
lvchange -a y lvm
mount -t ext4 /dev/mapper/lvm-root /4b42/
mount -t ext4 /dev/md127 /4b42/boot/
mount --bind /dev /4b42/dev
mount --bind /proc /4b42/proc
mount --bind /sys /4b42/sys
mount --bind /run /4b42/run
chroot /4b42/ /bin/bash