Hallo, On Mon, 14 Apr 2003, Jan Trippler wrote:
On Mon, 14 Apr 2003 at 09:31 (+0200), Bernd Brodesser wrote:
* Jan Trippler schrieb am 13.Apr.2003:
On Son, 13 Apr 2003 at 18:10 (+0200), David Haller wrote:
Einspruch. Nicht gut. mount bezieht sich nur auf die /etc/mtab, und die spiegelt nicht immer die Realitaet wieder. Besser /proc/mounts verwenden:
Ich weiss nicht - ich habe noch nie erlebt, dass mount nicht stimmt,
In dem Moment, wo / ro gemountet ist, kann /etc/mtab nicht stimmen, denn es ist ja nicht mehr möglich in /etc/mtab etwas zu verändern, z.B das / ro und nicht rw gemountet ist.
Ja, das ist mir auch schon bei Davids Mail klargeworden. OK, in diesem Fall sollte man auf /proc ausweichen. Das ist aber doch nicht der normale Fall, oder gibt es Situationen, wo man / readonly im Produktionsbetrieb mountet?
Man sollte doch IMO soviel wie moeglich ro mounten... Also eigentlich reicht es /var (mit nem umgebogenen /tmp und /usr/tmp) und /home beschreibbar zu mounten. Alles andere kann doch im Normalbetrieb read-only gemountet werden, oder? Und generell: was spricht dagegen /proc/mounts auszuwerten? Fuer mich ist jedenfalls die Tatsache, dass /etc/mtab und somit die Ausgabe von mount falsch sein _kann_, ein hinreichender Grund, stattdessen grundsaetzlich /proc/mounts auszuwerten. Zumal /proc/mounts eben im Textformat vorliegt und nicht, wie anderes unter /proc, nur in einem binaeren Format. Und nebenbei, /proc/mounts zu lesen ist vermutlich obendrein noch schneller als die /etc/mtab zu lesen... Jedenfalls: ich bin inzwischen mehrfach in die Falle mit /etc/mtab bzw. 'mount' getappt und habe nicht vor das weiterhin zu tun. Erst recht nicht, wenn ich in nem script feststellen will, ob $dev gemountet ist. Ich ueberlege sowieso schon, mount durch ein shell-script zu ersetzen: ==== ungetestet nur zur Illustration der Idee ==== #!/bin/sh if test $# -eq 0 then exec /bin/cat /proc/mounts else exec /bin/mount "$@" fi ==== Siehe die (nicht-zufalls) Sig! -dnh PS: ja, ich halte das fuer eine Art "Bug" von 'mount' nur /etc/mtab auszuwerten... Und das ist zumindest bei mir lt. strace -efile hier der Fall. -- In /etc steht, was Du denkst. In /proc steht, was das OS denkt. [Thomas Blum in doc]