Partition lässt sich nicht erweitern (vServer)

  • Ich habe heute festgestellt, dass der Speicherplatz auf meinem vServer fast voll ist, und wollte die Partition erweitern. Ich habe einen Root-Server M (zum Kaufzeitpunkt noch mit 100 GB), die momentane Partition umfasst jedoch nur knappe 20GB. Mit Dem Befehl "df -h" erhielt ich folgende Ausgabe (Vertrauenswürdige Daten durch ***** ersetzt):


    Code
    1. root@*****:~# df -hFilesystem Size Used Avail Use% Mounted on
    2. rootfs 19G 18G 146M 100% /
    3. udev 10M 0 10M 0% /dev
    4. tmpfs 397M 252K 397M 1% /run
    5. /dev/disk/by-uuid/***** 19G 18G 146M 100% /
    6. tmpfs 5.0M 0 5.0M 0% /run/lock
    7. tmpfs 1.1G 0 1.1G 0% /run/shm


    Nachdem ich die Anleitung im netcup-Wiki (Partitionierung KVM-Server – netcup Wiki) befolgt habe, hat sich an der Größe der Partition jedoch nichts geändert. Ich habe es insgesamt 3 mal versucht, und es hat nicht funktioniert. Beim der Anweisung "resize2fs -p /dev/vda2" bekam ich die Ausgabe "The filesystem is already 4869376 blocks long. Nothing to do", ansonsten fiel mir nur noch auf dass die Ausgabe (genauer gesagt der Dateisystem-Pfad) bei dem Befehl "df -h" (im Produktivsystem, siehe oben) anders aussieht als im Netcup-Wiki, das kann aber auch Serverbedingt sein. Hier die vollständige Ausgabe des Rettungssystems:



    Habe ich etwas falsch gemacht, stimmt die Anleitung im Wiki nicht, oder stimmt etwas mit meinem Server nicht? Ich hoffe, dass mir hier weitergeholfen wird.

  • Übrigens, ich habe einen Tippfehler im entsprechendem Wiki-Artikel gefunden:


    Quote

    [...]Partition mehr Speicherplatz zuweisen doer eine neue Partition erstellen.[...]

    Das sollte wahrscheinlich "oder" heißen. ;)

  • Mach auf dem Hauptsystem mal ein "fdisk -l" um zu sehen ob deine Festplatte an sich die richtige Größe hat.
    Notfalls kannst du auch ein GParted Image mounten und damit die Partitionen anpassen.

    Neun von zehn stimmen in meinem Kopf sagen ich bin nicht verrückt, die zehnte summt die Melodie von Tetris.

  • Den Befehl "fdisk -l" habe ich auch schon verwendet, es wird sogar etwas mehr als 100 GB angezeigt.


    Ich denke daher, dass etwas mit dem Server nicht stimmt, die Anleitung nicht richtig ist oder ich irgendetwas falsch gemacht habe.


    Wenn ich keine andere Lösung finde, werde ich es mit dem GParted Image versuchen. Ich gehe mal davon aus, dass es die Partition nur vergrößert und nicht komplett neu partitioniert, sodass dabei keine Daten verloren gehen. Oder?

  • ich weiss nicht ob ich den Fehler richtig sehe
    aber du hast ne neue Partition angelegt , die du nun
    über /dev/vda3 in die /etc/fstab eintragen kannst.


    Wenn du nun /dev/vda2 checkst bleibt die Partition logischerweise gleich gross ;)


    hth
    michi

    It's me, only me, pure michi

    RS: M v5a1 24M

    VPS: 50 G7 |100 G7SEa1 12M |B Ostern 2017

    WH: 1000 BETA | Adv17 Webhosting Spezial Family | Expert Spezial 2016

    The post was edited 1 time, last by extremmichi ().

  • Die 3. Partition ist wahrscheinlich nicht geplant, da ist kein Platz mehr um die 2. zu vergrößern. Entweder nutzt du die 3. Partition zusätzlich oder du muss sie löschen um die 2. zu vergrößern.

    Neun von zehn stimmen in meinem Kopf sagen ich bin nicht verrückt, die zehnte summt die Melodie von Tetris.

  • Irgendwie passt es dann doch hier rein! :D


    Dein Problem ist aber ein völlig anderes!
    Deine Partition ist garantiert durch Log-Dateien voll gelaufen.


    Dazu muss man sich ein paar Fragen stellen:


    1. Warum läuft /var/log voll?
    ---> Übergroße Log-Dateien vorhanden?
    2. Wenn ja, was kann man dagegen tun?
    3. logortate installiert, bzw. läuft es korrekt?
    ---> da kann man konfigurieren wie groß eine Log-Datei sein darf, bevor eine Neue angelegt wird
    ---> wie groß die Anzahl an bestimmten Log-Dateien sein darf, bevor logrotate die Älteste einfach löscht usw.
    ---> schönes Programm um seine Log-Dateien im Zaum zu halten :)


    Den größten Fehler, den viele Admins machen, sie machen sich keine Gedanken über eine vernünftige und sinnvolle Partitionierung des Systems und damit fängt das Dilemma schon an.
    Man sollte also schon im Vorfeld planen, wie der Server aufgebaut sein soll.


    Hierzu mal meine Aufteilung und die Gründe dafür:


    Hinweis:
    Die Laufwerksbezeichnungen können bei Euch anders sein und sollen lediglich als Beispiel angesehen werden!
    Hängt einfach mit der Reihenfolge zusammen, wie sie angelegt wurden. ;)
    Zudem hängt das Scenario von Eurem Vorhaben ab und welche Voraussetzungen der Server mitbringen soll.
    Dabei bleibt Euch nichts anderes übrig, als Euch im Vorfeld darüber konkrete Gedanken zu machen.


    [Blocked Image: http://s7.directupload.net/images/140222/k6qf89m4.png]


    /dev/vda5:
    / - Wurzelverzeichnis des Systems - hier sind um die 10 gb empfohlen, ich habe mich für
    12 gb entschieden, da für mein Vorhaben die Ressourcen ausreichend sind


    /dev/vda1:
    /boot - boot-Partition - hier liegen nur die Boot-Dateien drin und hier können
    sogar 200 mb ausreichen, zur Sicherheit habe ich 500 mb genommen


    /dev/vda3: /home - home-Partition oder auch Datenpartition - hier liegen im Normalfall die Home-Verzeichnisse der Benutzer.
    ---> eine Empfehlung kann man hier nicht abgeben, da es davon abhängt wie diese Partition genutzt wird
    ---> ich habe mich hier für eine übertriebene Größe entschieden, ehrlich gesagt nutzen tue ich sie nicht und es sind verschwendete Ressourcen, in meinem Fall.
    ---> man hätte es sicherlich geschickter lösen können, aber meine Überlegung war ganz einfach, dass ich dort Daten ablegen kann ohne Platzprobleme zu bekommen


    /dev/vda10: /opt - ist ein Verzeichnis, in dem sämtliche Zusatzprogramme abgelegt/installiert werden
    ---> hier lohnt es sich schon, dieses aus zu lagern, dann wird das System nicht davon berührt
    ---> hier muss man sich überlegen, wie viele Zusatzprogramme ich in etwas erwarte, allerdings habe ich es bisher nicht erlebt, dass man über 1 gb hinaus gerät
    ---> zur Sicherheit habe ich hier 1,2 gb genommen


    /dev/vda11: /tmp - ein temporäres Verzeichnis - das gibt es unter Windows auch und erfüllt so ziemlich den selben Zweck
    ---> wird auch gerne für Installationen verwendet, in dem man dorthin die Dateien lädt und von dort die Installation anstößt
    ---> da dort als relativ viel Bewegung erwartet wird, auslagern


    /dev/vda6:
    /var - hier liegen z.B. die Libaries (/lib), das /tmp-Verzeichnis und vieles mehr, was man aber nicht im Wurzelverzeichnis liegen haben muss
    ---> da es hier bei fast jedem Update Änderungen gibt macht es Sinn diese auszulagern


    /dev/vda8:
    /var/log - eine der wichtigsten Verzeichnisse, dort steht nämlich alles verzeichnet, was auf dem System passiert oder auch nicht
    ---> da hier ständig rein geschrieben wird, sollte man sie zwingend auszulagern
    ---> dann läuft man auch nicht Gefahr, dass das System plötzlich voll läuft ;)
    ---> wie man sieht habe ich hier nur eine Grüße von 2,5 gb gewählt, bei einer vernünftigen Konfiguration von logrotate, reicht das auch völlig aus
    ---> 10% wird gerade genutzt und mein Server läuft schon viele Monate :)


    /dev/vda9:
    /var/tmp
    - bei mir ein brach liegendes temporäres Verzeichnis, aber zur Sicherheit ausgelagert, warum haben wir ja etwas weiter oben schon erfahren ;)


    /dev/vda2: /var/www - der Mountpoint sagt es eigentlich schon aus, mein Verzeichnis für die Webseiten
    ---> da ich meinen Server komplett über die Konsole verwalte und Programme, wie Froxlor und Co., nicht benötige, muss ich hier nicht zu viel Hand anlegen und kann mir mein eigenes System stricken
    ---> ich hasse Korsetts und bleibe lieber mein eigener Herr, ohne das mir da eine Webanwendung in die Suppe spuckt :D



    Lösungsansatz:
    Da Du mehr als genug Platz hast, kannst Du Dir im Nachhinein noch Gedanken über die Aufteilung machen und alles was Bewegung hervor ruft auslagern.


    Hierzu gibt es im Wurzelverzeichnis das Verzeichnis /mnt!
    Das wird vom System nicht genutzt und dient lediglich dazu, dort Partitionen und Verzeichnisse temporär einzuhängen, wenn man Daten kopieren möchte.


    Und jetzt kommt ein Lösungsweg, der Dir weiterhelfen kann, Deine Partitionen doch noch strukturiert aufzubauen. :)


    1. Partition erstellen, z.B. für das Bootverzeichnis (/boot - 500mb groß)
    2. die erstellte Partition nach /mnt mounten
    3. den Inhalt von /boot nach /mnt kopieren, mit allen Berechtigungen
    4. normaler Weise löscht man jetzt den Inhalt von /boot, um Ressourcen frei zu geben
    ---> wenn Du weißt was Du tust, mach das, wenn nicht, 200 - 300 mb fressen kein Brot :)
    5. Partition von /mnt lösen
    6. Partition in /boot einhängen


    Beim Booten wird jetzt nicht mehr auf das Wurzelverzeichnis zugegriffen, sondern auf die erstellte Partition.


    Wie zuletzt beschrieben, verfährst Du mit allen weiteren Partitionen, die Du anlegen möchtest, genauso.


    Denk an /var/log, das sollte zwingend ausgelagert werden, damit das System nicht wieder voll läuft und damit den Server zwangsläufig an seine Grenzen bringt.


    logrotate installieren, konfigurieren und darüber freuen, dass 2,5 gb für /var/log locker ausreichend sind.


    ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    Puuuh,
    viel getippe, aber das Administrieren von Linux-Umgebungen ist nicht mal eben in wenigen Stunden erledigt, dazu gehört schon ein wenig Kenntnis, was das System alles so anstellen kann und soll. :)


    Ich hoffe damit bekommst Du zumindest das Überlaufen in den Griff.
    Vielleicht machst Du Dir Gedanken, ob Du den Server neu aufsetzt und von Anfang an vernünftig strukturierst.


    Wie gesagt, Dein Scenario kann anders aussehen und etwas andere Anforderungen mitbringen, da musst Du halt mal sehen.
    Genauso kann man mein Scenario sicherlich anders aufziehen, aber für mein Vorhaben ist das völlig ok. ;)


    So, jetzt aber ran an die Buletten und ein paar Stunden Schweiß investieren. :)


    Im Übrigen habe ich CentOs als System laufen, ohne jeglichen Schnick-Schnack.


    Viel Erfolg mit dem Tutorial und scheue Dich nicht zu fragen, wenn Du etwas nicht verstehst. ;)


    Ich brauche jetzt erst mal ein schönes Schlückchen guten Scotch und den gönne ich mir jetzt auch. :)

  • Ein paar Tips noch zum Thema:

    • Denk dran ein Dateisystem zu nehmen, was sich online sowohl vergrößern als auch verkleinern lässt.
    • Weniger Partitionen wäre auch eine Option, dedizierte Partition zum Booten, eine für / und eine für swap - Dann könntest du theoretisch noch eine für Backup anlegen. Hierbei kommst du mit lvm nie in Kontakt.
    • /boot könnte man ro mounten, /var/www z.B. mit noexec
  • Ich habe das Problem jetzt gelöst, in dem ich /dev/vda3 gelöscht habe und /dev/vda2 dann vergrößern könnte. Ich habe nun wieder genügend Speicherplatz zur Verfügung.


    Das Verzeichnis /var/log/ ist übrigens nur 147MB groß. Die relativ große Datenmenge kommt zustande, da ich die Kryptowährung Bitcoin im Hintergrund laufen habe, und der gesamte Blockindex auf den Server in das Verzeichnis /var/lib/bitcoin/ geladen wurde :D. Ich entwickle momentan ein Browsergame, und habe deswegen versucht, Bitcoin als Zahlungsmittel zu integrieren. Aber wahrscheinlich werde ich Bitcoin doch wieder von meinem Server deinstallieren und stattdessen einen externen Zahlungsanbieter verwenden.


    Was die Partitionierung angeht, so habe ich mir darüber bis jetzt noch gar keine Gedanken gemacht, und sie einfach die ausgelieferte Partitionierung beibehalten. Also sollte ich die Boot-Partition von den anderen trennen, sodass ich dass Dateisystem auch im Produktivsystem bearbeiten kann? Und zusätzlich noch für Verzeichnisse die sich oft ändern wie /tmp, /var/log und /var/www eine extra Partition anlegen?

  • Hallo,


    ich muss nodeCode recht geben, denn bei mir ist es exakt genauso:


    Ich habe noch nichts an den Partionen verändert und das ist exakt die "Werkspartitionierung".


    D.h. es gibt von Haus aus ein /dev/vda3, welches man praktisch zuerst löschen muss, bevor man die Anleitung aus dem netcup-wiki durchführen kann.


    Könnte man das ggf. im Wiki anpassen...


    gruss

  • D.h. es gibt von Haus aus ein /dev/vda3, welches man praktisch zuerst löschen muss, bevor man die Anleitung aus dem netcup-wiki durchführen kann.

    Ja, wäre nett, wenn die Wiki-Seite entsprechend angepasst werden würde. Bin auch darüber gestolpert.