Hier ist mal wieder ein Beitrag aus der Technikbastelecke. Aus einem alten Lenovo X240 wird, für wenig Geld, ein NAS Laufwerk mit 2 TB Speicherkapazität. Nur die 2 TB 2,5 interne Harddisk, in meinem Fall eine WD Platte mit 5400 Umdrehungen pro Minute, kostete mich etwa 70 €, der alte Laptop schlummerte irgendwo weit unten im Büroschrank.

  • Was wir brauchen:
  • einen ausgedienten Laptop,
  • eine 2 TB Festplatte mit niedriger Drehzahl,
  • einen USB Stick mit 4 GB Speicherkapazität,
  • Ubuntu Server Image 22.04 von der Ubuntu Webseite,
  • das kostenlose Tool balenaEtcher, um das Image auf dem USB Stick bootfähig zu machen, es gehen auch andere Tools z.B. Rufus,
  • das kostenlose Tool Putty, um nach der Installation den Server per "Fernsteuerung" zu konfigurieren 
  • einen zweiten Rechner, zur Konfiguration und zum Testen - in meinem Fall ein Windows System.
Zuerst die Hardware vorbereiten

Die alte Festplatte wird aus dem Laptop entfernt und durch die neue 2 GB Platte ersetzt. Bei dem von mir verwendeten Lenovo X240 löst man alle Schrauben auf der Unterseite und kann den Boden danach einfach entfernen. Sicher findet Ihr für Eure Hardware die notwendigen Tipps im Internet. Ist die Festplatte getauscht und der Laptop wieder zusammen geschraubt, besorgen wir uns die notwendige Software.

Die Software vorbereiten

Als Installationsmedium benötigen wir einen USB-Stick. Das aktuelle Server Image von Ubuntu hat 1,4 GB, es sollte also ein 2 GB Stick reichen. Hier könnt ihr das Image herunter laden. Um den Stick bootfähig zu machen braucht es noch ein Tool, dass dies für uns erledigt. Ich habe mich für BalenaEtcher entschieden, aber das geht auch mit Rufus oder anderen Tools. BalenaEtcher kann man hier finden. Das Programm muss unter Windows installiert werden. Es ist eigentlich selbst erklärend. Man sucht sich das Image aus, selektiert das Ziel - also den USB Stick und startet den Prozess. Nach ein paar Minuten ist der Installations-Stick fertig. Um später auf den Server zugreifen zu können, braucht es noch ein Terminalprogramm. Ich bin da ein Gewohnheitstier und benutze seit Urzeiten Putty. Das gibt es hier und muss ebenfalls auf dem Zielrechner installiert werden.

Die Serverinstallation

Eines vorweg, mein Server bekommt eine Netzwerkverbindung per Kabel. Das vereinfacht die Installation. Da mein Server seinen Platz später im Keller gleich neben einem Switch bekommt, bleibt das bei mir auch so. Ich spare mir an dieser Stelle auch die Beschreibung, wie man den Server installiert. Dazu gibt es eine sehr gute Beschreibung bei linuxtechi.com >>How to Install Ubuntu Server 22.04 LTS Step by Step (linuxtechi.com). Bei einem Rechner, mit nur einer Festplatte, nehme ich nur eine Änderung vor: unter dem Punkt 7 <Configure the storage> entferne ich das Kreuzchen bei >> Setup this disk as an LVM group. Ich installier keine weiteren Pakete, auch nicht den OpenSSH Server.

Nachdem der neu Server neu gestartet ist, installiere ich folgende Pakete:

  • ssh - für den Zugriff über Putty
  • samba - stellt am Ende ein gemeinsames Laufwerk bereit
  • tlp - damit schalte ich die Festplatte bei Nichtbenutzung in den Ruhemodus
  • net-tools - kann nicht schaden, 
  • cifs-utils - die brauche ich, weil ich schon einen alten Samba Server habe und die Daten von dort übernehmen will

sudo apt install -y ssh samba tlp net-tools cifs-utils

Nun kann man die weitere Konfiguration über Putty erledigen, einfach die lokale IP Adresse oder den Rechnernamen in das Feld Host eingeben und verbinden. Beim ersten Verbindungsversuch muss man die Verbindungssicherheit akzeptieren. Was will ich eigentlich erreichen? 

  • Ich möchte, das der Rechner weiterläuft, wenn ich den Bildschirm zuklappe.
  • Ich möchte, dass die Festplatte nach 2 Minuten in den Ruhemodus geht.
  • Ich möchte, dass ein gemeinsames Laufwerk breitgestellt wird, auf das alle Benutzer ohne Passwort Zugriff haben.
Der Laptop läuft weiter, wenn der Deckel geschlossen wird
Das erreichen wir, wenn wir in der Datei logind.conf eine kleine Änderung vornehmen:
sudo nano /etc/systemd/logind.conf
Man entfernt das # Kommentarzeichen vor der Zeile und ändert den Wert auf ignore. Die Zeile sieht dann so aus:
HandleLidSwitch=ignore
Der Dienst muss dann neu gestartet werden :
sudo systemctl restart systemd-logind.service
Die Festplatte geht nach zwei Minuten in den Ruhemodus
Mit dem TLP Paket lässt sich das erreichen. Wir müssen es nur entsprechend konfigurieren. Zwei Zeilen müssen wir auskommentieren und anpassen.
sudo nano /etc/tlp.conf
DISK_APM_LEVEL_ON_AC="128 128"
DISK_SPINDOWN_TIMOUT_ON_AC="0 24"
Dann müssen wir den Dienst einschalten und starten
sudo systemctl enable tlp
sudo systemctl start tlp
Den Status kann man mit dem Kommando hdparm -C /dev/sda überprüfen.
Ein gemeinsames Laufwerk für alle
Wir müssen zuerst ein Verzeichnis anlegen (public) und mit Rechten versehen, dass nachher für alle zugänglich sein soll.
sudo mkdir /home/public
chmod 0777 /home/public
chown -R nobody:nogroup /home/public
Jetzt fügen wir noch den folgenden Inhalt an das Ende der smb.conf Datei ein.
sudo nano /etc/samba/smb.conf
[public]
   path = /home/public
   writable = yes
   guest ok = yes
   guest only = yes
   read only = no
   create mode = 0777
   directory mode = 0777
   force user = nobody
Samba muss danach neu gestartet werden
sudo systemctl restart smbd
Daten vom alten Server kopieren
Zuerst brauchen wir einen Mount Point, an dem das Laufwerk des existieren Servers eingehängt wird. Nach dem Einhängen finden wir unter diesem Mount Point die Daten des alten Servers.
mkdir /mnt/old_data
mount -t cifs //server/public /mnt/old_data  - hier ist //server/public der Name des alten Servers und der Freigabename. Statt Servername geht auch die lokale IP.
dann alle Daten von alt nach neu kopieren
cp -r -u /mnt/old_data /home/public/

Geschafft! Jetzt kann das neue Laufwerk mit dem Windows Rechner verbunden werden. 

Viel Spaß beim Nachbasteln...