Wie kann Partman mehr als eine Festplatte in einem Debian-Installationsprogramm als Voreinstellungsdatei partitionieren?

6569
Peter Westlake

Partman Partition aus einer einzigen Festplatte zu machen ist einfach genug:

d-i partman-auto/disk string /dev/xvda d-i partman-auto/method string regular d-i partman-auto/expert_recipe string \ boot-swap :: \ 2048 2048 -1 ext3 \ $primary{ } \ $bootable{ } \ method{ format } \ format{ } \ use_filesystem{ } \ filesystem{ ext3 } \ mountpoint{ / } \ device{ /dev/xvda } \ . \ 

Oder noch einfacher:

d-i partman-auto/disk string xvda d-i partman-auto/method string regular d-i partman-auto/choose_recipe select atomic 

Aber mit mehr als einer Platte habe ich keine der Rezepte gefunden oder geschrieben. Das Installationsprogramm ruft den Bildschirm auf, wo es nach der Partitionierungsmethode fragt, und stoppt dort. Ich dachte, ich hätte diese Frage hier beantwortet:

# The presently available methods are: # - regular: use the usual partition types for your architecture # - lvm: use LVM to partition the disk # - crypto: use LVM within an encrypted partition d-i partman-auto/method string regular 

Auch wenn damit die Frage beantwortet wird und sie tatsächlich beim nächsten Bit hängen bleibt, wenn Sie eine Platte auswählen, wird das nicht dadurch beantwortet?

d-i partman-auto/disk string /dev/xvda 

Ich möchte drei Platten haben: root auf / dev / xvda, einschließlich / home, / usr und dem Rest; ein zusätzliches Swap-Volume für / dev / xvdb; und ein EXT3-Volume unter / dev / xvdc, das unter / var / build eingehängt ist. Nur um die Dinge noch komplizierter zu gestalten, existiert / var / build nicht zur Installationszeit, also muss es auch irgendwie gemacht werden. Dies ist auf Debian Squeeze.

3

1 Antwort auf die Frage

2
Mike Renfro

Ich habe das nicht beim Squeeze versucht, aber was ich für Etch getan habe, sollte noch funktionieren. Ungetestet:

d-i preseed/late_command string echo ';' | sfdisk /dev/xvdb ; mkswap /dev/xvdb1 ; echo '/dev/sdb1 none swap sw 0 0' >> /target/etc/fstab ; echo ';' | sfdisk /dev/xvdb ; mke2fs -j -q /dev/xvdb1 ; mkdir /target/var/build ; echo '/dev/xvdb1 /var/build ext3 defaults 0 2' >> /target/etc/fstab 

Ich muss die Referenz sfdiskherausfinden, wo ich diesen Trick gefunden habe - im Grunde wird die Partitionstabelle der Festplatte gelöscht und eine riesige Partition erstellt.

+1, da dies ein nützliches Rezept ist (danke!), Aber es löst nicht das Problem, dass der Installer durch das Vorhandensein mehrerer Festplatten verwirrt wird. Ich habe der Frage Details hinzugefügt. Peter Westlake vor 13 Jahren 0
Ich glaube nicht, dass ich jemals ein Problem damit hatte, wenn mehr als eine Festplatte vorhanden war - nur dass dies standardmäßig nichts mit den anderen Festplatten zu tun hätte. Angenommen, das Preseed-Format hat sich für Squeeze nicht geändert. Prüfen Sie, ob meine Partman-Einstellungen auf der verlinkten Seite funktionieren oder nicht. Sie müssen lediglich die Gerätenamen ändern. Wenn meine funktioniert, gibt es einen geringfügigen Fehler in Ihrer Preseed-Datei und nicht im Installationsprogramm. Mike Renfro vor 13 Jahren 0
Du hast recht - es war ein subtiler Fehler! Nun, nicht sehr subtil, wirklich und nicht im geringsten erbaulich: Ich habe die falsche Datei bearbeitet. Wie viel Ruf verliere ich dafür? Peter Westlake vor 13 Jahren 0
Die Verwendung von preseed / late_command ist die einzige Möglichkeit. Die Dokumentation (/usr/share/doc/debian-installer/devel/partman-auto-recipe.txt.gz) scheint zu suggerieren, dass mehrere Festplatten konfiguriert werden können, dies gilt jedoch nur für die Einrichtung von LVM. Peter Westlake vor 12 Jahren 0