/etc als separate Partition

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
Benutzeravatar
feltel
Webmaster
Beiträge: 10368
Registriert: 20.12.2001 13:08:23
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Leipzig, Germany
Kontaktdaten:

/etc als separate Partition

Beitrag von feltel » 22.05.2002 15:26:50

Ich versuche hier gerade an einer Maschine das /etc-Verzeichnis auf eine eigene Partition (/dev/hda8, 10MB) zu legen. Ich will diese dann read-only mounten um so Manipulationen etc. vorzubeugen.

Ich habe die Partition angelegt, mke2fs gemacht und nach /mnt gemountet. Anschliessend hab ich die Dateien in /etc per

Code: Alles auswählen

cp -pRv /etc/* /mnt
nach /mnt kopiert. Dann hab ich das Verzeichnis /etc nach /etc_old umbenannt und ein neues /etc-Verzeichnis erstellt. Dann hab ich die /mnt/fstab angepasst, das /etc auch gemountet werden kann. Ein Test-Mounten klappt auch. Wenn ich den Rechner jetzt aber neu starte bekomm ich die Meldung

Code: Alles auswählen

INIT: No inittab-File Found
Enter Runlevel:
Scheinbar wird /etc nicht gemountet. Hab ich da irgendwo nen Denkfehler oder was vergessen oder lässt sich /etc nicht auf eine eigene Partition legen?

Benutzeravatar
minuseins
Beiträge: 123
Registriert: 21.05.2002 17:42:51
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von minuseins » 22.05.2002 16:24:54

hmm...

Im Prinzip ist es keine schlecht Idee /etc auf eine eigene Partition zu legen, allerdings macht da einem der init-V Prozess einen Strich durch die Rechnung. Denn "init" greift auf die "/etc/inittab" zu um von dieser Datei zu erfahren, was zu tun ist. Da aber in deinem Fall der 'mount'-Befehl für "/etc" sich widerum erst in der Datei "/etc/init.d/mountall.sh" befindet, beißt sich die Katze... pardon der Pinguin in den Schwanz.
Eine Alternative wäre es "/", also "root" nachträglich als read-only zu mounten. Dies ist zudem recht einfach zu realisieren. btw... es bringt wenig ein Filesystem "ro" zu mounten, wenn man dann nicht den Zugriff auf den Befehl 'mount' verweigert. In "/etc" sollte sowieso nur root Zugriff haben und wer dann dort was verändert hat sowieso root-Rechte.

Beachte bitte das wenn "/etc" read-only gemountet ist, dass alle anderen Mounts mit "-n" gemountet werden müssen. Sonst gibt es unschöne Fehlermeldungen, das die "mtab" nicht aktualisiert werden konnte.

Willst du unbedingt /etc auf ein eigenes Filesystem bringen dann wünsche ich viel Spaß beim fluchen! ;)

[-1]
He who work root can fell trees and knowledge is no substitute for experience.

Benutzeravatar
feltel
Webmaster
Beiträge: 10368
Registriert: 20.12.2001 13:08:23
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Leipzig, Germany
Kontaktdaten:

Beitrag von feltel » 22.05.2002 16:37:17

minuseins hat geschrieben:Im Prinzip ist es keine schlecht Idee /etc auf eine eigene Partition zu legen, allerdings macht da einem der init-V Prozess einen Strich durch die Rechnung. Denn "init" greift auf die "/etc/inittab" zu um von dieser Datei zu erfahren, was zu tun ist. Da aber in deinem Fall der 'mount'-Befehl für "/etc" sich widerum erst in der Datei "/etc/init.d/mountall.sh" befindet, beißt sich die Katze... pardon der Pinguin in den Schwanz.
Klar, da hätt ich auch selber drauf kommen können. :?
In "/etc" sollte sowieso nur root Zugriff haben und wer dann dort was verändert hat sowieso root-Rechte.
Das ganze wäre sowieso nur ne Präventivmaßnahme, um einen möglichen Hackerangriff zu verlangsamen. Das ganze ich für eine Firewall gedacht.
Willst du unbedingt /etc auf ein eigenes Filesystem bringen dann wünsche ich viel Spaß beim fluchen! ;)
Werde versuchen, das ganze Szenario (nämlich eine nicht veränderbare Konfiguration) per chattr (mit dem immutable-Flag nachbauen).

Antworten