====== Information ======
* openSUSE
* Tumbleweed
* Server
===== TODOs =====
* Script for ''~/backups'' to NAS
* Auto-delete old ''~/backups'' ([[servers:linux:nginx:dokuwiki?rev=1745861772#maintenance|dokuwiki]])
* XFS maintenance scripts + ''scrub''
====== Download ======
* https://download.opensuse.org/tumbleweed/iso/openSUSE-Tumbleweed-DVD-x86_64-Current.iso.sha256
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 =====
* Installs ''nano''
* Sets ''VISUAL'' and ''EDITOR'' to ''nano'' via environment variable
* Sets ''nowrap'' for current user
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 =====
****
ucode-intel
====== Settings ======
===== hostname =====
sudo hostnamectl hostname 'Alira'
sudo hostnamectl hostname 'x'
===== Laptop Server =====
* This tells ''systemd'' to ignore Lid close events and prevents system suspend
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 ====
* [[linux:notes:kernel_parameters|More Kernel Parameters]]
sudo yast2 'bootloader'
==== Alira ====
* 2025/09/10
preempt='full' iommu='pt' pci='nocrs,pcie_bus_perf,realloc,pcie_scan_all,big_root_window'
===== 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 -f '/etc/dracut.conf.d/99-custom.conf' && sudo dracut --force --regenerate-all
===== NetworkManager =====
* [[servers:upstream_dns_servers|More DNS Servers]]
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 ======
* ''swap''
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
===== XFS =====
****
sudo xfs_fsr -v '/'
==== Repair ====
sudo umount '/dev/sda2'
sudo xfs_repair -v '/dev/sda2'
=== NAS ===
* [[servers:linux:vsftpd]]
sudo systemctl stop 'vsftpd'
sudo umount '/dev/sdb'
sudo xfs_repair -v '/dev/sdb'
sudo mount '/dev/sdb'
sudo xfs_fsr -v '/dev/sdb'
sudo systemctl start 'vsftpd'
===== Time =====
* TODO: NTP sync
sudo hwclock --systohc
====== 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 =====
* ''06:00'' Alira
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
====== Notable Folders and Commands ======
* See [[linux:notes:misc]]