Nur Ordner eines Dateisystems einhängen

Du suchst ein Programm für einen bestimmten Zweck?
Antworten
Joe58

Nur Ordner eines Dateisystems einhängen

Beitrag von Joe58 » 21.07.2018 11:04:40

Hallo,

ich suche ein Programm mit dem es möglich ist ein Ordner eines Dateisystems einzuhängen, also sowas in der Art (erfunden):

Code: Alles auswählen

mount -r -w -t -o directory ext4 /dev/sdb1/Ordnervonsda1 /wohinauchimmer
Mit --bind komme ich nicht weit.

Beste Grüße!

Johannes

DeletedUserReAsG

Re: Nur Ordner eines Dateisystems einhängen

Beitrag von DeletedUserReAsG » 21.07.2018 11:11:23

Verzeichnisse werden vom Dateisystem vorgegeben. Das Dateisystem selbst muss also erstmal eingehängt sein, um auf Verzeichnisse innerhalb des Dateisystems zugreifen zu können. Entsprechend wird es nicht so funktionieren, wie du es gerne hättest; du kannst lediglich das Dateisystem selbst einhängen und dann das betreffende Verzeichnis mit --bind an die gewünschte Stelle hängen.

Wenn du schreibst, was genau du erreichen möchtest, und was an mount --bind dir nicht gefällt, könnte man schauen, ob es eine andere Möglichkeit gibt, das Gewünschte zu erreichen.

Joe58

Re: Nur Ordner eines Dateisystems einhängen

Beitrag von Joe58 » 21.07.2018 11:19:07

Ich habe meine µSD in einer ext2 Partition. Dort drauf sind 2 Ordner system und data.

Nun will ich diese mounten und mache mount innerhalb der ramdisk mit:

Code: Alles auswählen

mount ext2 /dev/block/cardblksd2 / ro remount
Aber der findet die Programme innerhalb des system Ordners nicht :(

guennid

Re: Nur Ordner eines Dateisystems einhängen

Beitrag von guennid » 21.07.2018 11:27:53

Ich verstehe das Problem auch nicht - zumindest nicht mit den genannten Angaben.

Du kannst doch in der /etc/fstab angeben, wohin du ein Verzeichnis einer externen Platte/Partition wie gemountet haben willst. Wozu ist hier ein --bind vonnöten?

Grüße, Günther

DeletedUserReAsG

Re: Nur Ordner eines Dateisystems einhängen

Beitrag von DeletedUserReAsG » 21.07.2018 11:31:11

Dieser mount-Aufruf kann so nicht funktionieren und sollte entsprechende Fehler ausgeben. Ich empfehle erstmal man mount.

Desweiteren kann ich mir unter einer μSD in einer ext2-Partition nichts vorstellen. Du hast das Image deiner Karte in einem ext2-Verzeichnis? Dann mount -o loop /pfad/zum/image /mountpoint (wenn’s ein Image mit mehreren Partitionen ist, geht’s noch etwas anders).

Benutzeravatar
MSfree
Beiträge: 10683
Registriert: 25.09.2007 19:59:30

Re: Nur Ordner eines Dateisystems einhängen

Beitrag von MSfree » 21.07.2018 11:36:03

Joe58 hat geschrieben: ↑ zum Beitrag ↑
21.07.2018 11:19:07

Code: Alles auswählen

mount ext2 /dev/block/cardblksd2 / ro remount
Ganz blöde Idee!

Erstens, du versuchst ein Gerät (in diesem Fall also deine SD-Karte) nach / zu mounten. Das sollte das Betriebssystem eigentlich verhindern und der mount-Befehl sollte mit einer Fehlerausgabe reagieren.

Zweitens, es ist unmöglich, nur ein Unterverzeichnis einer SD-Karte zu mounten, du mußt schon die komplette SD-Karte mounten.

Drittens, du kannst Geräte (also SSDs, Festplattem CDs, DVDs, SD-Karten etc.) nur in ein existierendes, leeres Verzeichnis mounten.

Viertens, versuch es einfach mal mit:

Code: Alles auswählen

cd
su
mkdir ~/SDCard
mount /dev/block/cardblksd2 ~/SDCard
exit
cd SDCard

Joe58

Re: Nur Ordner eines Dateisystems einhängen

Beitrag von Joe58 » 21.07.2018 11:41:44

Das ganze root Dateisystem ist auf der einen µSD Partition. Ich will halt nicht extra eine Partition für /data und dann eine für /system und dann eine für /cache und dann eine extra für /storage/sdcard0.

Ich will eine Partition. Sollte verständlich sein. :)

Ich hatte vorher eine Partition die ich system nannte dort drinne war der System Baum, jetzt ist aber auf der Partition ein system Ordner und dort drin ist der System Baum.

DeletedUserReAsG

Re: Nur Ordner eines Dateisystems einhängen

Beitrag von DeletedUserReAsG » 21.07.2018 11:46:33

Die Beschreibung ist mir absolut zu wirr, ich verabschiede mich mit der Empfehlung, mal etwas Grundlagendoku zu lesen, um dann immerhin präzise Angaben machen zu können, worum’s eigentlich geht.

No offense intended

Joe58

Re: Nur Ordner eines Dateisystems einhängen

Beitrag von Joe58 » 21.07.2018 11:53:35

OK :THX:

Also wir haben schonmal geklärt, dass das Dateisystem eingehangen werden muss und dann kann man die jeweiligen Ordner dorthin wo man sie brauch einhängen. Ist ja okay, ich wollte wissen ob es bei Ausführung des mount Befehls evtl einen Look auf dem Dateisystem gibt. Solch eine Funktion wäre schon cool...

@MSfree
In meinem Fall wäre es so:

Code: Alles auswählen

mkdir /mnt/rootfs
mount -r -t ext2 /dev/block/cardblksd2 /mnt/rootfs
mount --bind /mnt/rootfs/system /system
mkdir /mnt/data
mount --bind /mnt/rootfs/data /data
Der Code sieht doch generell funktionsfähig aus?

Benutzeravatar
jph
Beiträge: 1049
Registriert: 06.12.2015 15:06:07
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Greven/Westf.

Re: Nur Ordner eines Dateisystems einhängen

Beitrag von jph » 21.07.2018 11:56:02

MSfree hat geschrieben: ↑ zum Beitrag ↑
21.07.2018 11:36:03
Zweitens, es ist unmöglich, nur ein Unterverzeichnis einer SD-Karte zu mounten, du mußt schon die komplette SD-Karte mounten.
Das ist nicht unmöglich, sondorn geht mit einem mount --bind, aber nur dann, wenn das Dateisystem, das das Verzeichnis enthält, bereits woanders gemountet ist.
MSfree hat geschrieben: ↑ zum Beitrag ↑
21.07.2018 11:36:03
Drittens, du kannst Geräte (also SSDs, Festplattem CDs, DVDs, SD-Karten etc.) nur in ein existierendes, leeres Verzeichnis mounten.
Du kannst in ein nicht-leeres Verzeichnis mounten. Ob das sinnvoll ist, ist eine andere Frage. Aus eigener Erfahrung weiß ich, dass das eine nahezu todsichere Methode ist, Dateien vor sich selbst zu verstecken :D

Joe58

Re: Nur Ordner eines Dateisystems einhängen

Beitrag von Joe58 » 21.07.2018 12:42:16

Wie realisiere ich jetzt das -B innerhalb der ramdisk??

Der kennt kein -B...

Ich habe auch keine Shell dort, da es in einem früheren Stadium als das Betriebssystem selber ist. In der Ramdisk sehe ich das diese Optionen wie z.B.:

Code: Alles auswählen

mount ext4 /dev/sda1 /storage/usbdisk0
(fiktives Beispiel) einfach weggelassen werden. (Was bei mir nix bringt).

Gibt auch Befehle wie symlink. LOL.

Antworten