openSUSE
Tumbleweed
Server
TODOs
Download
http://download.opensuse.org/tumbleweed/iso/openSUSE-Tumbleweed-DVD-x86_64-Current.iso
Installation Notes
Partitioning
XFS /
No separate /home
Separate swap without suspend resize
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sda 8:0 0 465.8G 0 disk
├─sda1 8:1 0 8M 0 part
├─sda2 8:2 0 463.8G 0 part /
└─sda3 8:3 0 2G 0 part [SWAP]
Software
Disable USB Source
sudo zypper modifyrepo --disable --medium-type 'hd'
Update
sudo zypper clean --all && sudo zypper refresh --force --services && sudo zypper dist-upgrade --details --allow-downgrade --allow-name-change --allow-arch-change --allow-vendor-change && sync
GNU nano
sudo zypper install 'nano' && export 'VISUAL=nano' && export 'EDITOR=nano' && echo -e 'export VISUAL=nano\nexport EDITOR=nano' | sudo tee '/etc/profile.d/editor-nano.sh' > '/dev/null' && cat '/etc/profile.d/editor-nano.sh' && mkdir -p ~/'.config/nano' && echo 'set nowrap' | tee ~/'.config/nano/nanorc' > '/dev/null' && cat ~/'.config/nano/nanorc'
General
sudo zypper install aria2 binutils chrony htop 7zip sensors unar
CPU microcode
Settings
Laptop Server
sudo mkdir -p '/etc/systemd/logind.conf.d' && echo -e "[Login]\nHandleLidSwitch=ignore" | sudo tee '/etc/systemd/logind.conf.d/99-laptop-server.conf' > '/dev/null'
sudo -e '/etc/systemd/logind.conf.d/99-laptop-server.conf'
GRUB
Config
Alira
acpi_osi='Linux' hibernate='no' preempt='full' iommu='pt' pci='pcie_bus_perf' drm_kms_helper.poll='0' drm_kms_helper.fbdev_emulation='0' hostname='localhost' nomodeset
NetworkManager
nmcli con show
sudo nmcli connection modify 'Wired connection 1' 'ipv4.dns' '192.168.1.1,9.9.9.9,149.112.112.112'
sudo nmcli connection modify 'Wired connection 1' 'ipv6.dns' '2620:fe::fe,2620:fe::9'
sudo nmcli connection modify 'Wired connection 1' 'ipv4.address' '192.168.1.152/24'
sudo nmcli connection modify 'Wired connection 1' 'ipv4.gateway' '192.168.1.1'
sudo nmcli connection modify 'Wired connection 1' 'ipv4.method' 'manual'
sudo nmcli connection up 'Wired connection 1'
lm_sensors
sudo sensors-detect --auto
sudo -e '/etc/sysconfig/lm_sensors'
fstab
sudo -e '/etc/fstab'
,discard=once
Drive Maintenance
Trim
sudo systemctl enable 'fstrim.timer' --now
sudo systemctl start 'fstrim' && sudo systemctl status 'fstrim' -l
sudo fstrim -v -a
Time
Automatic Updates
Service
sudo -e '/etc/systemd/system/suse-up.service'
[Service]
Type=oneshot
ExecStartPre='/usr/bin/zypper' clean --all
ExecStart='/usr/bin/zypper' --non-interactive refresh --force --services
ExecStart='/usr/bin/zypper' --non-interactive dist-upgrade --auto-agree-with-licenses --allow-downgrade --allow-name-change --allow-arch-change --allow-vendor-change
ExecStartPost='/usr/bin/sync'
ExecStartPost='/usr/bin/systemctl' reboot
# End
Timer
sudo -e '/etc/systemd/system/suse-up.timer' && sudo systemctl daemon-reload && sudo systemctl enable 'suse-up.timer' --now
[Unit]
Description=openSUSE OS Updater
After=network-online.target
Wants=network-online.target
[Timer]
OnCalendar=*-*-* 06:00:00
Persistent=true
[Install]
WantedBy=timers.target
# End
Tweaks
General
sudo -e '/etc/profile.d/general-tweaks.sh'
# General
export LD_BIND_NOW='1'
# End
journald
sudo -e '/etc/systemd/journald.conf.d/99-tweaks.conf'
[Journal]
Storage=none
Compress=false
MaxLevelStore=0
MaxLevelSyslog=0
MaxLevelKMsg=0
MaxLevelConsole=0
MaxLevelWall=0
MaxLevelSocket=0
# End
sudo journalctl --vacuum-time='1s' --rotate
Dracut
sudo -e '/etc/dracut.conf.d/99-custom.conf' && sudo dracut --force --regenerate-all
# Compression
compress="cat"
# Machine-specific
do_strip="yes"
aggressive_strip="yes"
hostonly="yes"
hostonly_mode="strict"
# End
Undo
sudo rm -fv '/etc/dracut.conf.d/99-custom.conf' && sudo dracut --force --regenerate-all
Notable Folders and Commands