Tipps für Arch Linux


Inhaltsverzeichnis

Links
Motivation
Installation
Arch Linux aktuell halten
Tipps


Links


Motivation

Warum Arch Linux?
Vorteile:
Allerdings sollte man die Nachteile auch nicht verschweigen:


Arch Linux installieren

Download: Arch Linux Downloads
Das ISO Image nach dieser Anleitung z.B. auf einen USB Stick schreiben:
cat path/to/archlinux.iso > /dev/sdx
Installation nach Kurzfassung des Installation Guide:
loadkeys de-latin1
passwd
systemctl start sshd
# Rest geht dann auch remote
bash
bind 'set enable-bracketed-paste off'
which vi &>/dev/null || alias vi=vim
ping -c 3 archlinux.org
timedatectl set-ntp true
timedatectl status

Mit fdisk die Partitionen für Boot, Swap und LVM anlegen, z.B.:
Device     Boot    Start       End   Sectors   Size Id Type
/dev/sda1  *        2048    411647    409600     1G 83 Linux
/dev/sda2         411648  19286015  18874368     9G 82 Linux swap / Solaris
/dev/sda3       19286016 312581807 293295792 139.9G 83 Linux
    
# ACHTUNG: Darauf achten, dass die Partitions-Tabelle DOS und nicht GPT ist!
mkfs.ext3 /dev/sda1
e2label /dev/sda1 BOOT

mkswap -L SWAP /dev/sda2
swapon -L SWAP

mkfs.ext4 /dev/sda3
e2label /dev/sda3 ROOT
tune2fs -c 0 /dev/sda3
tune2fs -i 400d /dev/sda3

mount -L ROOT /mnt

mkdir /mnt/boot
mount /dev/sda1 /mnt/boot

reflector --verbose --latest 5 --sort rate --save /etc/pacman.d/mirrorlist

pacman -Sy
pacman -S archlinux-keyring

pacstrap /mnt base linux linux-firmware dosfstools e2fsprogs mdadm lvm2 iproute2 dhcpcd vim man-db man-pages grub intel-ucode openssh

genfstab -L /mnt >> /mnt/etc/fstab
cat /mnt/etc/fstab

echo fstab >> /mnt/etc/CHANGED-FILES

arch-chroot /mnt

alias vi=vim
echo 'set mouse=' >> ~/.vimrc
echo 'set ignorecase' >> ~/.vimrc
echo .vimrc >> ~/CHANGED-FILES
ln -sf /usr/share/zoneinfo/Europe/Berlin /etc/localtime
echo localtime >> /etc/CHANGED-FILES
hwclock --systohc

echo -ne "de_DE.UTF-8 UTF-8\nde_DE ISO-8859-1\nde_DE@euro ISO-8859-15\nen_US.UTF-8 UTF-8\nen_US ISO-8859-1\n" > /etc/locale.gen
echo locale.gen >> /etc/CHANGED-FILES
locale-gen

echo "LANG=en_US.UTF-8" > /etc/locale.conf
echo locale.conf >> /etc/CHANGED-FILES

echo "KEYMAP=de-latin1" > /etc/vconsole.conf
echo vconsole.conf >> /etc/CHANGED-FILES

echo "x2" > /etc/hostname
echo hostname >> /etc/CHANGED-FILES

vim /etc/mkinitcpio.conf

MODULES=(dm-raid raid0 raid1 raid10 raid456 virtio virtio_blk virtio_pci virtio_net pata_atiixp)
HOOKS=(base udev autodetect microcode modconf kms keyboard keymap block lvm2 mdadm_udev filesystems fsck)

echo mkinitcpio.conf >> /etc/CHANGED-FILES

mkinitcpio -P

passwd

grub-install --target=i386-pc /dev/sda

# Für LVM und RAID:
vim /etc/default/grub
### GRUB_PRELOAD_MODULES="... lvm mdraid09 mdraid1x"
echo grub >> /etc/default/CHANGED-FILES

grub-mkconfig -o /boot/grub/grub.cfg

echo "PermitRootLogin yes" >> /etc/ssh/sshd_config
echo sshd_config >> /etc/ssh/CHANGED-FILES
systemctl enable sshd
systemctl enable dhcpcd

Einstellen, dass Newline beim Cut+Paste ausgeführt wird:
echo 'set enable-bracketed-paste off' >> /etc/inputrc
echo inputrc >> /etc/CHANGED-FILES

exit

umount -R /mnt

reboot

Bis zu dieser Stelle belegt das Arch Linux nur knapp 2 GB Plattenplatz!

# CPU Microcode update prüfen:
dmesg | grep microcode
Installieren:
pacman -S pkgstats
pacman -S reflector
reflector --verbose --latest 5 --sort rate --save /etc/pacman.d/mirrorlist
# Xorg und Intel_graphics installieren:
pacman -S xorg-server xorg xorg-apps xf86-video-intel mesa
# Xfce installieren:
pacman -S xfce4 xfce4-goodies
# Für z.B. ZIP-Archive im Thunar:
pacman -S file-roller
# Einen Display Manager z.B. LXDM installieren und aktivieren:
pacman -S lxdm
systemctl enable lxdm.service
nano /etc/lxdm/lxdm.conf
# Zeile hinzufügen: session=/usr/bin/startxfce4
systemctl start lxdm.service

User anlegen:
useradd loescher -m -c 'Stephan Loescher' -u 500
passwd loescher

Einen AUR Helper installieren:
pacman -S git
pacman -S --needed base-devel
vim /etc/makepkg.conf
# MAKEFLAGS="-j2"
echo 'loescher ALL=NOPASSWD:ALL' >> /etc/sudoers
su - loescher
cd /tmp
git clone https://aur.archlinux.org/yay.git
cd yay
makepkg -si
# Falls hier ein Compile-Fehler kommt, einfach: pacman -S glibc

Dann noch zusätzliche Software nach Bedarf:
pacman -S net-tools
pacman -S wireless_tools
# für pacdiff:
pacman -S pacman-contrib
pacman -S cronie
systemctl enable cronie
systemctl start cronie
pacman -S rsync
pacman -S inetutils
pacman -S bash-completion
pacman -S gnu-netcat
pacman -S netperf
pacman -S strace
pacman -S ethtool
pacman -S screen
pacman -S alsa-utils
pacman -S dmidecode
pacman -S usbutils
pacman -S subversion
pacman -S sudo
pacman -S lsof
pacman -S pciutils
pacman -S nfs-utils
Dann noch ein paar typische Desktop-Programme nach Belieben:
pacman -S firefox
pacman -S thunderbird
pacman -S libreoffice
pacman -S libreoffice-de
pacman -S tigervnc
pacman -S mpg123
pacman -S mplayer
pacman -S gimp
pacman -S dvd+rw-tools
pacman -S pwgen
pacman -S p7zip
pacman -S unrar
pacman -S fdupes
pacman -S a2ps
pacman -S evince
pacman -S meld
pacman -S texlive-most
# Suchen nach Zusatz-Paketen, z.B.:
# tlmgr info german | grep collection
# Also:
pacman -S texlive-langgerman
pacman -S cvs
pacman -S mercurial
pacman -S frozen-bubble
pacman -S ttf-droid
pacman -S libertinus-font
pacman -S ttf-dejavu
pacman -S font-bh-ttf
pacman -S ttf-bitstream-vera
pacman -S bdf-unifont
pacman -S noto-fonts ttf-croscore ttf-ibm-plex ttf-liberation
pacman -S digikam
pacman -S imagemagick
pacman -S audacious
pacman -S audacity
pacman -S cdparanoia
pacman -S mp3info
pacman -S sox
pacman -S timidity
pacman -S vorbis-tools
pacman -S ffmpeg
pacman -S mjpegtools
pacman -S rtmpdump
pacman -S vlc
pacman -S xine-ui
# https://wiki.archlinux.org/title/Hardware_video_acceleration
pacman -S libvdpau-va-gl
pacman -S libva-utils
pacman -S libva-intel-driver
# check: vainfo
pacman -S traceroute
pacman -S bind-tools
pacman -S nfs-utils
pacman -S samba
pacman -S ncftp
pacman -S fetchmail
pacman -S iperf3
pacman -S aircrack-ng
pacman -S kismet
pacman -S stellarium
pacman -S ethtool
pacman -S encfs
pacman -S htop
pacman -S iotop
pacman -S qemu
pacman -S xf86-video-qxl
pacman -S gdb
pacman -S wavemon
pacman -S xorg-xwininfo
pacman -S uudeview
pacman -S gv
pacman -S openvpn
pacman -S xsane
pacman -S clamav
pacman -S gnuchess
pacman -S pysolfc
pacman -S mdadm
# Für Aktivierung des mdadm-Monitoring muss in /etc/mdadm.conf in MAILADDR eine Mail-Adresse (z.B. "root") eingetragen werden!
# Testen mit: mdadm --monitor --scan --oneshot --test
# Siehe: RAID - Email notifications
pacman -S dosfstools
pacman -S knights
pacman -S xorg-xdpyinfo
pacman -S hdparm
pacman -S xorg-xvinfo
pacman -S x11vnc
pacman -S xorg-twm
pacman -S netpbm
pacman -S memtest86+
pacman -S beep
# johntheripper
pacman -S john
pacman -S nmon
pacman -S exfat-utils
pacman -S cpupower
pacman -S urlwatch
pacman -S wifite macchanger wireshark-cli hcxtools hcxdumptool pyrit
# Aufruf: wifite --random-mac --kill
pacman -S powertop
pacman -S mediathekview
pacman -S xterm
pacman -S yt-dlp
# lm-sensors: pacman -S i2c-tools
pacman -S lynx
# Voraussetzungen für Firefox::Marionette:
yay -S perl-text-csv-xs
pacman -S perl-perlio-utf8-strict perl-params-util perl-xml-parser perl-text-csv
cpan Firefox::Marionette
pacman -S extra/perl-net-ssleay
pacman -S pandoc
pacman -S lftp
# Bildschrim-Helligkeit per Kommandozeile verstellen:
pacman -S xdotool
# xdotool key XF86MonBrightnessUp
# xdotool key XF86MonBrightnessDown
# ggf. SSD trim aktivieren, siehe: Solid state drive - TRIM
systemctl enable fstrim.timer
pacman -S icecast
pacman -S minidlna
pacman -S apache
pacman -S unclutter
pacman -S xorg-xinit
pacman -S unzip
pacman -S ntfs-3g
pacman -S nmap
pacman -S ddrescue
pacman -S python-html2text
# Alle Pakete mittels yay...
yay -S perl-time-parsedate
yay -S mmv
yay -S sxemacs
yay -S gqview
yay -S freefonts
yay -S artwiz-fonts
yay -S ttf-symbola
yay -S exiftags
yay -S xv
yay -S streamripper
yay -S wavbreaker
yay -S linuxtv-dvb-apps
yay -S w_scan2
yay -S dvbsnoop
yay -S dvdrip
yay -S wakeonlan
yay -S xfe
yay -S icaclient
yay -S unetbootin
yay -S jmtpfs
yay -S webex-bin
yay -S aur/teams
### TODO (compile-error): yay -S email
yay -S google-earth-pro
yay -S ssvnc-nojava
# Bildschirm per Web-Browser teilen:
yay -S deskreen-bin
# um DICOM Dateien in PNG zu wandeln:
yay -S xmedcon
# medcon -c png -f D9297517
# oder: yay -S aeskulap
yay -S ezstream
yay -S perl-net-sip
yay -S perl-text-similarity
yay -S cddb_get
# SeaTools - Seagate tool for managing hard drives:
yay -S seatools
# for f3probe, f3write, f3read, etc.
yay -S f3
yay -S sdd

Wenn man Linux-Dateinamen mit Sonderzeichen auf NTFS schreiben will, dann muß die mount Option "windows_names" entfernt werden.
Lösung: Eintrag in /etc/udisks2/mount_options.conf:
[defaults]
ntfs_defaults=uid=$UID,gid=$GID
Das verhindert auch die Fehlermeldung: ntfs3: Unknown parameter 'windows_names'

Mailing einrichten:
pacman -S s-nail
pacman -S postfix
Weiter mit: Postfix: Mail-Client.

SMART-Mon einrichten:
pacman -S smartmontools
vi /etc/smartd.conf und das eintragen:
# DEVICESCAN -a -m root -M test
# wenn OK, dann kann man das "-M test" wieder entfernen
echo smartd.conf >> /etc/CHANGED-FILES
systemctl enable smartd.service
systemctl start smartd.service

IBM TrackPoint Einstellungen setzen:
ln -s /usr/sl/X11/20-thinkpad-trackpoint.conf /etc/X11/xorg.conf.d/
echo 20-thinkpad-trackpoint.conf >> /etc/X11/xorg.conf.d/CHANGED-FILES

Lautstärketasten? Lösung war irgendwas davon:
Keyboard volume buttons:
pacman -S pulseaudio-alsa
pacman -S pavucontrol
pacman -S xfce4-pulseaudio-plugin

Nacharbeiten (einmalig):
mkdir -p /usr/sl
cd /usr/sl
svn co svn://server/sl/trunk/bin .
# Lokale Profil-Erweiterungen:
ln -s /usr/sl/profile.local /etc/profile.d/zz-profile.local.sh
echo zz-profile.local.sh >> /etc/profile.d/CHANGED-FILES
# Backup-Skript anlegen:
cp backup-VORLAGE backup-neuer_rechner
vi backup-neuer_rechner
svn add backup-neuer_rechner
svn ci -m ''

Historisch notwendige Links legen:
cd /usr/local/bin
ln -s /usr/sl/Remote*.pm /usr/sl/slmini.pm /usr/sl/slutil.pm .

Als Root eine ~/.crontab anlegen:
SHELL=/bin/bash
PATH=/usr/sl:/usr/local/bin/:/bin:/usr/bin

# /tmp zu jeder vollen Stunde aufräumen
# Dauer: 1 min.
0 *  *  *  *  /usr/sl/clean-tmp

# /delwatch zu jeder halben Stunde aufräumen
# Dauer: 1 min.
30 *  *  *  *  /usr/sl/clean-delwatch

0 1 1 * * /bin/echo Mailfunktionstest
und dann per crontab ~/.crontab aktivieren.
echo .crontab >> ~/CHANGED-FILES

Für Notebooks (siehe: Power management with systemd):
Verhindern, dass beim Deckel-Schließen ein Suspend gemacht wird:
vi /etc/systemd/logind.conf
HandleLidSwitch=ignore
HandleLidSwitchExternalPower=ignore
HandleLidSwitchDocked=ignore
Einstellen/Anzeigen des CPU frequency scaling:
cpupower frequency-info
Oder den Governor wechseln:
cpupower frequency-set -g ondemand
# zurück auf Standard:
cpupower frequency-set -g schedutil
# Empfehlenswert, weil der noch öfter heruntertaktet:
cpupower frequency-set -g conservative
Permanent eintragen in /etc/default/cpupower:
governor='conservative'
# Dann:
systemctl enable cpupower
systemctl start cpupower
Ergebnis anschauen:
watch cat /sys/devices/system/cpu/cpu[0-9]*/cpufreq/scaling_cur_freq

Dann kann man sich noch Powertop anschauen.
Für Suspend-To-Disk (Hibernate) in /etc/default/grub in GRUB_CMDLINE_LINUX_DEFAULT die Swap-Partition, also z.B. resume=/dev/sda3 eintragen und
grub-mkconfig -o /boot/grub/grub.cfg
echo grub >> /etc/default/CHANGED-FILES

Für Unterstüztung von IBM/Lenovo Laptops, siehe:
Archlinux-Wiki Lenovo

Für WLAN:
Siehe: WLAN einrichten.
Und:
pacman -S wpa_supplicant
vi /etc/wpa_supplicant/wpa_supplicant-wls1.conf
systemctl enable wpa_supplicant@wls1.service
systemctl start wpa_supplicant@wls1.service
Tipp für den Fehler "Wifi/WLAN rfkill hard blocked" auf einem Medion MD96360 SAM2010 nach ubuntuusers - rfkill:
Notebook ins BIOS Setup booten, den Hardware WLAN Taster drücken, BIOS Setup mit speichern verlassen.
Damit bleibt das WLAN dauerhaft beim Booten aktiviert.

Grundlagen Netzwerk-Konfiguration:
Arch - Network configuration

Für z.B. einen Server eine statische IP-Adresse einstellen:
Static IP Configuration in Arch Linux
cat << EOF > /etc/systemd/network/20-wired.network
[Match]
Name=ens3

[Network]
Address=192.168.178.250/24
Gateway=192.168.178.1
DNS=192.168.178.1
EOF

echo '*' >> /etc/systemd/network/CHANGED-FILES
systemctl enable systemd-networkd.service
systemctl enable systemd-resolved.service
systemctl disable dhcpcd
systemctl stop dhcpcd
systemctl start systemd-networkd.service
systemctl start systemd-resolved.service
ln -sf /run/systemd/resolve/stub-resolv.conf /etc/resolv.conf
resolvectl status
resolvectl query archlinux.org

networkctl

Oder in der Regel besser das Netzwerk mit systemd-networkd und Bonding zwischen LAN und WLAN einrichten:
vi /etc/systemd/network/30-bond0.netdev

[NetDev]
Name=bond0
Kind=bond

[Bond]
Mode=active-backup
PrimaryReselectPolicy=always
MIIMonitorSec=1s

vi /etc/systemd/network/30-ethernet-bond0.network

[Match]
Name=enp0s25

[Network]
Bond=bond0
PrimarySlave=true

vi /etc/systemd/network/30-wifi-bond0.network

[Match]
Name=wls1

[Network]
Bond=bond0

vi /etc/systemd/network/30-bond0.network

[Match]
Name=bond0

[Network]
DHCP=ipv4

echo '*' >> /etc/systemd/network/CHANGED-FILES
systemctl enable systemd-networkd.service
systemctl enable systemd-resolved.service
systemctl disable dhcpcd
systemctl stop dhcpcd
systemctl start systemd-networkd.service
systemctl start systemd-resolved.service
ln -sf /run/systemd/resolve/stub-resolv.conf /etc/resolv.conf
resolvectl status
resolvectl query archlinux.org

networkctl

Deutsche Tastatur und deaktiviertes CAPSLOCK unter X11:
ln -s /usr/sl/X11/00-keyboard.conf /etc/X11/xorg.conf.d/
echo 00-keyboard.conf >> /etc/X11/xorg.conf.d/CHANGED-FILES

Drucker einrichten, siehe: Drucker-Konfiguration mit CUPS.
pacman -S cups
systemctl enable cups
systemctl start cups

NTP/Chrony/systemd-timesyncd:
cat << EOF > /etc/systemd/timesyncd.conf
[Time]
NTP=0.arch.pool.ntp.org 1.arch.pool.ntp.org 2.arch.pool.ntp.org 3.arch.pool.ntp.org
FallbackNTP=0.pool.ntp.org 1.pool.ntp.org 0.fr.pool.ntp.org
EOF
echo 'timesyncd.conf' >> /etc/systemd/CHANGED-FILES

timedatectl set-ntp true
timedatectl status
timedatectl timesync-status

Damit ALSA/Sound auch für remote Benutzer funktioniert, muss man den Benutzer in die Gruppe audio aufnehmen!
pacman -S pulseaudio pulseaudio-alsa

VDR einrichten, siehe z.B.: Notebook-HDTV-VDR

Persönliche Einstellungen:
In ~/.bashrc:
. /etc/profile

Persönliche Dateien:
echo 'set mouse=' >> ~/.vimrc
echo 'set ignorecase' >> ~/.vimrc
echo .vimrc >> ~/CHANGED-FILES
su -
mkdir /woall
cd /woall
svn co svn://server/sl/trunk/woall .
cd /etc/sudoers.d
mkdir sl
cd sl
svn co svn://server/sl/trunk/sudo .
cd ..
ln -s sl/sudoers sl-sudoers
exit
mkdir /home/loescher/.html-data
cd /home/loescher/.html-data
svn co svn://server/sl/trunk/html-data .
mkdir /home/loescher/prog
cd /home/loescher/prog
svn co svn://server/sl/trunk/prog .
mkdir /home/loescher/texte
cd /home/loescher/texte
svn co svn://server/sl/trunk/texte .
mkdir /home/loescher/media
cd /home/loescher/media
svn co svn://server/sl/trunk/media .
mkdir /home/loescher/TeX
cd /home/loescher/TeX
svn co svn://server/sl/trunk/TeX .
mkdir /home/loescher/fhem
cd /home/loescher/fhem
svn co svn://server/sl/trunk/fhem .

Dann kann sich noch massenhaft Applikationen nachinstallieren:
List of applications


Arch Linux aktuell halten


Tipps zu Arch Linux


Zurück zur Hauptseite
Valid HTML 4.01 Transitional   Valid CSS!