====== Linux Betriebssystem ====== ===== OS Basiseinrichtung ===== ++++ Quellen | [[https://www.debian.org/|Debian.org]] \\ [[https://debian-handbook.info/browse/de-DE/stable/|Debian-Benutzerhandbuch]] \\ [[https://wiki.ubuntuusers.de/Startseite/|UbuntuUsers]] \\ ++++ OS: Debian oder Ubuntu. \\ System-Installation über ISO-Image: * [[https://www.debian.org/distrib/|Debian ISO-Image]] * [[https://ubuntu.com/download/desktop|Ubuntu ISO-Image]] * [[https://docs.hetzner.com/de/cloud/servers/iso-installation-gateway|Verschiedene Images bei Hetzner (Online-Miet- oder Cloudserver)]] * [[https://os.tuxedocomputers.com/|Verschiedene Images für Tuxedo-Computers]] [[#System aktualisieren|System aktualisieren]]((sollte regelmäßig, insbesondere nach Basis-Installation und vor Änderungen erfolgen))\\ [[open:it:user|Verwaltung von Usern & Administratoren]]\\ Texte in Klammern <>, z.B. , sind Platzhalter und müssen entsprechend ersetzt werden. ==== Datum/Zeit ==== Server-Datum und -Zeit anzeigen date === Zeitsynchronisation === Synchronisation der Systemzeit mit dem Network Time Protocol (ntp). Ein Standard, um intelligente Endgeräte über das Internet mit einer Uhrzeit zu versorgen. sudo apt install ntp === Zeitzonen === Aktuell Zeitzone anzeigen timedatectl Mögliche Zeitzonen anzeigen timedatectl list-timezones Zeitzone ändern. Hier auf Europe/Berlin sudo timedatectl set-timezone Europe/Berlin ==== System neustarten oder abschalten ==== sudo systemctl reboot sudo reboot sudo systemctl poweroff sudo poweroff sudo shutdown -h now ==== System aktualisieren ==== System auf den aktuellen Stand bringen ((-y = ohne weitere Bestätigungseingaben)). sudo apt update && apt upgrade -y oder einzeln sudo apt update sudo apt upgrade -y Wurden Pakete zurückgehalten, kann man sich diese anschauen mit: sudo apt list --upgradeable -a Zurückhaltung hat Gründe: Konflikte mit der Version etc. \\ Vorsicht mit $ //apt dist-upgrade// führt stur aus, ignoriert aber u.U. Konflikte. \\ Ggf bestimmtes Paket einzeln installieren/updaten mit: sudo apt install Protokoll letzte Änderungen: cat /var/log/dpkg.log ==== System automatisch aktualisieren ==== Quelle: [[https://www.howtoforge.de/anleitung/automatische-updates-mit-unbeaufsichtigten-upgrades-unter-debian-und-ubuntu/|Howtoforge.de]] \\ Installation sudo apt install unattended-upgrades Bestätigen, dass stabile Updates automatisch heruntergeladen werden sudo dpkg-reconfigure -plow unattended-upgrades Protokoll der durchgeführten Updates in sudo cat /var/log/dpkg.log Konfigurationsdatei sudo cat /etc/apt/apt.conf.d/50unattended-upgrades ==== Prozesse ==== Laufende Services anzeigen sudo service --status-all Prozesse anzeigen (vorne steht die PID = Prozess-ID) ps -e mit Details ps -aux Prozess-Nummer suchen (Beispiel: Programm Thunderbird) ps -ef | grep thunderbird Anzeige: \\ + 7236 2288 99 19:12 ? 00:00:07 /usr/lib/thunderbird/thunderbird \\ + 7370 7236 2 19:12 ? 00:00:00 /usr/lib/thunderbird/thunderbird-bin .....\\ + 7453 7236 2 19:12 ? 00:00:00 /usr/lib/thunderbird/thunderbird-bin .....\\ + 7477 7236 4 19:12 ? 00:00:00 /usr/lib/thunderbird/thunderbird-bin .....\\ + 7520 5401 0 19:12 pts/1 00:00:00 grep thunderbird Die erste Zahl (7236, 7370, ...) ist die PID des Prozesses. \\ Der Prozess "grep thunderbird" ist der Suchprozess, der gerade gestartet wurde. Wird nur dieser angezeigt, ist Thunderbird nicht gestartet bzw. beendet. Prozesse beenden sudo kill ==== Pakete ==== Installierte Pakete anzeigen dpkg --list Heruntergeladene Pakete (z.B. .deb) installieren sudo dpkg -i .deb Mehrere Pakete in einem Verzeichnis können, bzw. ggf. müssen gleichzeitig installiert werden. Z.B. werden beim Download von LibreOffice mehrere .deb-Dateien in einer gepackten Datei angeboten. In diesem Verzeichnis dann eingeben: sudo dpkg -i *.deb Paket aus dem Distributions-Pool installieren sudo apt install Paket deinstallieren sudo apt remove zusätzlich zur System-Bereinigung sudo apt autoremove Beispiel: Entfernen LibreOffice (alle 3 Schritte) sudo apt remove --purge libreoffice* sudo apt clean sudo apt autoremove ===== System Informationen ===== Infos zum OS lsb_release -a Infos zum Linux-Kern uname -a Anzeige PC-/Hostname cat /etc/hostname Detailierter hostnamectl Hostnamen festlegen sudo hostnamectl set-hostname Anzeige hosts und interne IP-Zuordnung cat /etc/hosts Anzeige der Partitionen als Baum((Verschlüsselte haben i.d.R. hinten ein "_crypt")). lsblk Speichernutzung anzeigen df -h Speichernutzung für einen Ordner anzeigen du -sh /var/www/sites/ Aktuellen, absoluten Pfad anzeigen pwd ===== Verzeichnisse und Dateien ===== Geöffnete Dateien anschauen (Server) sudo lsof eines Verzeichnisses sudo lsof eines Verzeichnisses mit Unterverzeichnissen sudo lsof +D eines User sudo lsof -u Verzeichnis erstellen sudo mkdir -p /var/log/borg -p = übergeordnete Verzeichnisse erzeugen, wenn notwendig Besitzer Datei oder Ordner ändern sudo chown Option: zeitgleich die Gruppe ändern sudo chown : Option: für Verzeichnis und Unterverzeichnisse sudo chown -R : Gruppe Datei oder Ordner ändern sudo chgrp Zugriffsrechte für Ordner oder Datei ändern ( + oder -) u = user, g = group, o = other, a = all | -R wenn Verzeichnis, dann auch für Unterverzeichnisse \\ [[https://www.shellbefehle.de/befehle/chmod/]] \\ sudo chmod –R g+rwx Symbolischen Link setzen sudo ln -s /PFAD/Ursprung /PFAD/NeuerOrt -s = Symbolisch bzw. Softlink \\ Symlink löschen - Achtung: den Link und nicht das Originalverzeichnis löschen! sudo rm ==== ACL - Access Control Lists ==== Mit ACL ist es möglich, einzelnen Nutzern oder Gruppen gezielt Rechte an einzelnen Dateien zu geben oder zu entziehen. Außerdem können die Default-Rechte für neu erstellte Dateien vorab festgelegt werden. Das wird benötigt, um Rechte für Gruppen zu setzen in gemeinsam genutzten Verzeichnissen. Andernfalls würden Rechte einer Datei dem Urheber vorbehalten bleiben.\\ Installation: sudo apt install acl Zugriffsrechte setzen - Verzeichnis oder Datei sudo setfacl –dm g:GROUP:rwx /PFAD/PFAD/ d = default \\ m = Maske \\ Zugriffsrechte abfragen - Verzeichnis oder Datei sudo getfacl /PFAD/PFAD/ ACL entfernen (-R = auch für alle Unterverzeichnisse) sudo setfacl -R -b ==== Suchen über Konsole ==== Alle PDF-Dateien im aktuellen Verzeichnis find -name "*.pdf" Quelle: [[https://wiki.ubuntuusers.de/find/]] ==== Letzte Änderungen ==== find /dir/ -newermt "1 day ago" -ls 1 = Parameter in Tagen (5 day ago, etc.) \\ wenn **/dir/** weggelassen, Dateien aus aktuellem Verzeichnis und Unterverzeichnissen \\