Steam-Client auf Debian-Linux optimal einrichten

Aus Knowledgebase
Zur Navigation springen Zur Suche springen

Steam lädt beim Starten pro Benutzer ggfs. ein Update herunter und installiert dies in ~/.local/share/Steam/. Derzeit fasst dieses Verzeichnis 213 MiB. Um diesen unnötigen Overhead abzumildern, verschieben wir die Daten an einen zentralen Platz.

Updates müssen trotzdem als root erfolgen, da nur dieser Benutzer die Dateien überschreiben darf.

Steam-Client

Als Grundvoraussetzung für alle Steam-Themen muss zuerst mal der Client installiert und grundkonfiguriert werden. Die zugehörigen Libraries sind allerdings nicht für 64-Bit x86 verfügbar, weswegen zuvor diese teilweise kompatible Architektur angeknipst werden muss.

dpkg --add-architecture i386
apt-get install steamcmd

Im Zuge dessen werden einige benötigte 32-Bit Libraries installiert und eine Bestätigung der Lizenzbedingungen abgefragt.

Initialer Start

/usr/games/steamcmd

Hier scrollt nun eine Menge Text durch mit Hinweisen ein Update. Am Ende muss ein fett gedruckter Prompt da stehen:

Steam>

Der Client kann an dieser Stelle mit quit verlassen werden.

Gemeinsamen Datenpool einrichten

mkdir /usr/local/share/games
mv ~/.local/share/Steam /usr/local/games
ln -s /usr/local/games/Steam ~/.local/share/Steam
chgrp -R games /usr/local/games/Steam
find /usr/local/games/Steam -type d -exec chmod 2755 {} \;
find /usr/local/games/Steam -type f -exec chmod 644 {} \;
find /usr/local/games/Steam -type f -a \( -name "*.sh" -o -name "*.so" -o -name "*.so.*" \) -exec chmod 755 {} \;
chmod 755 /usr/local/games/Steam/steamcmd/linux32/steamcmd /usr/local/games/Steam/steamcmd/linux32/steamerrorreporter
chmod 2770 /usr/local/games/Steam

Der Symlink in Zeile 3 ist für jeden Benuzer der Steam benutzen darf vorab einzurichten. Ggfs. ist der übrige Verzeichnisbaum ~/.local/share vorher anzulegen.

Suchpfad ergänzen

vi /etc/profile

Natürlich kann man den Editor seiner Wahl verwenden. Letztendlich kommt es darauf an, in den Zeilen, in denen die PATH-Variable gesetzt wird, den Pfad zum Steam-Shellscript zu ergänzen.

Vorher
if [ "`id -u`" -eq 0 ]; then
  PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
else
  PATH="/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games"
fi
Nachher
if [ "`id -u`" -eq 0 ]; then
  PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/games:/usr/games"
else
  PATH="/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games"
fi

Hinweis: Die Änderungen in Gruppenzuordnungen und des PATH werden erst nach einem Neulogin aktiv.

Damit sind die Vorbereitungen für die Installation von z. B. Dedicated Servern abgeschlossen.