Wie kann ich denn in der Konsole in Linux per Befehl auf /dev/sdb oder andere interne zweite oder dritte Festplatten wechseln?
hallo, ich versuche in der Konsole per Befehl auf eine zweite interne Festplatte zu wechseln, auf der nur Dateien liegen.
aber der Befehl mit cd geht nicht. Er sagt, die Platte sei kein Verzeichnis.
Wie heisst denn der entsprechende Befehl in Linux?
Danke
4 Antworten
so geht das auch nicht.
Man kann nur auf Partitionen einer Festplatte zugreifen. Das gilt auch, wenn nur eine Partition vorhanden ist.
Vorher müssen die Partitione(en) in den Verzeichnisbaum eingebunden (gemountet) werden. Anders als bei Windows, gibt es nur einen Verzeichnisbaum und seine Wurzel (root) ist das Verzeichnis /
Wenn so eine Partition eingebunden wurde, erkennt man nicht so einfach, dass es sich bei dem Verzeichnis an das die Partition "angebunden" ist um Daten einer anderen Festplatte (Partition ) handelt.
Wenn du diese 2. Platte bereits während der Installation von Linux im Computer hattest, dann wurde sie auch bestimmt automatisch eingebunden.
Tippe mal in einem Terminal den Befehl
mount
ein.
Dort könnte u.a. stehen:
/dev/sda1 on / ....
/dev/sdb1 on /data1
/dev/sdb2 on /data2
Die 1. Partition der 2. Festplatte ist dann an /data1 "gebunden" und mit
cd /data1
kannst du, um die Worte deiner Frage zu benutzen, auf diese Partition wechseln.
Sind die Partitionen nicht eingebunden, dann musst du das ( aber als Superuser root, bei Ubuntu mit sudo ) selbst machen. Linux legt als Standard das Verzeichnis /mnt an. Dort kann man (sinnvollerweise nur temporär) eine Partition mounten.
(sudo) mount /dev/sdb1 /mnt
Auch hier: cd /mnt und du bist auf dieser Partition.
Man kann das Mounten natürlich auch während des Bootens machen lassen.
Das hast du aber nicht gefragt.
Man kann das Mounten natürlich auch während des Bootens machen lassen.
Das hast du aber nicht gefragt.
hatte leider keine Zeit, das zu beschreiben:
Beim Booten wird die Datei /etc/fstab benutzt, um die dort angegeben Einbindungen vorzunehmen.
So ein Eintrag könnte so aussehen:
/dev/sdb1 /home/Ellpeg/platte2P1 auto acl,user_xattr 1 2
Das Verzeichnis /home/Ellpeg/platte2P1 muss bereits existieren
( wenn /home/Ellpeg dein Home-Verzeichnis ist, dann
mkdir /home/Ellpeg/platte2P1 )
Manchmal ist es aber besser, nicht /dev/sdb1, sondern
/dev/disk/by-id/<die-id-der-partition> zu schreiben.
<die-id-der-partition> findest du ganz einfach mit
ls -l /dev/disk/by-id |grep sdb1
Das hat den Vorteil, dass auch dann, wenn mal eine neue Platte hinzukommt und diese neue dann /dev/sdb ist, der bisherige Eintrag nicht geändert werden muss.
Beachte, dass die Reihenfolge der Zeilen in der Datei /etc/fstab u.U. nicht beliebig ist.
Wenn die 2. Platte (eine Partition dieser) z.B. in das Home-Verzeichnis eingebunden werden soll und auch /home/ auf einer separaten Partition liegt, dann muss diese Home-Partition vorher eingebunden worden sein, also in der Reihenfolge weiter oben in der /etc/fstab stehen.
sudo mount /dev/sdb1 /mnt
cd /mnt
hat geklappt..
Super....
Hallo
aber der Befehl mit cd geht nicht. Er sagt, die Platte sei kein Verzeichnis.
Wie bereits geschrieben wurde handelt es sich bei /dev/sdb auch nicht um ein Verzeichnis, erst recht nicht um einen Mountpoint, sondern um eine Datei, genauer gesagt um eine Gerätedatei:
ls -l /dev/sdb
brw-rw---- 1 root disk 8, 16 21. Sep 20:47 /dev/sdb
Erkennen kannst Du es am b zu Beginn der Zeile, welches Dir mitteilt das es sich um ein blockorientiertes Gerät handelt. So eine Datei gibt es auch für /dev/sdb1 oder /dev/sdb2 usw.
Diese Gerätedatei dient dazu das Programme wie fdsik, cfdisk, gparted und andere, auf die Datenträger zugreifen können, dies tun sie unterhalb des Dateisystems, also ohne auf die eigentlichen Dateien zuzugreifen (Sie wollen ja vor allem auch an den MBR kommen, der liegt nunmal außerhalb des Dateisystems)
Mit dem Kommando:
lsblk
kannst Du Dir, in einer Baumstruktur, ansehen welche Geräte unter welchem Mountpoint eingehängt wurden, kann dann etwa so aussehen:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 112,7G 0 disk
├─sda1 8:1 0 55,9G 0 part /
├─sdb1 8:17 0 8G 0 part [SWAP]
└─sdb2 8:22 0 48,8G 0 part /home
sdb 8:16 0 931,5G 0 disk
├─sdb1 8:17 0 8G 0 part /windows
├─sdb2 8:18 0 10G 0 part /tmp
├─sdb3 8:19 0 1K 0 part
└─sdb5 8:22 0 48,8G 0 part /windows_d
sr0 11:0 1 1024M 0 rom
Zu Deiner Frage:
Wie kann ich denn in der Konsole in Linux per Befehl auf /dev/sdb wechseln?
In meinem Verzeichnisbaum wäre das zum Beispiel:
cd /windows oder
cd /tmp oder
cd /windows_d
Je nachdem welches Dateisystem in welcher Partition ich ansehen möchte.
Linuxhase
@Ellpeg
hoffentlich ist die Version die nächstenMonat heraus kommt etwas stabilder
Davon würde ich, bei einer gerade erschienenen Version besser nicht ausgehen. Es ist doch in der Regel so das ebendiese Versionen anfänglich noch diverse "Kinderkrankheiten" mitbringen. Das ist auch der Grund weshalb ich, auf meinem Produktivsystem, erst auf die nächsthöhere Version umsteige wenn mindestens mal einer, besser noch drei Monate vergangen sind.
Viel Freude dennoch mit dem neuen GNU/Linux-System :-)
Linuxhase
/dev/sdb ist in der Tat kein Verzeichnis, sondern eine Datei, die für deine Festplatte steht. Normalerweise hast du dann auch noch sdb1, sdb2 etc., je nachdem, wie viele Partitionen auf der Platte sind.
Damit darauf zugreifen kannst, musst du diese Partitionen mounten. Dafür brauchst du einen sog. Mountpoint. Das kann ein beliebiges (leeres) Verzeichnis sein.
z.B.
mkdir platte2
mount /dev/sdb1¹ /home/deinusername/platte2
cd platte2
¹ oder halt sdb2 , 3, etc.
aber wenn die Platte eingebaut ist, sollte sie doch automatisch gemountet werden beim Starten, oder?
Muss ich sie in der Konsole tatsächlich nochmal mounten?
Denn standardmässig erscheint sie ja nach dem Booten im "Explorer". (verzeih mir den Windows -Begriff ;) )
Ja, das kann ich aber doch nicht wissen. Ich dachte du wärst z.B. bei der Installation von Gentoo... da ist nämlich erstmal noch nichts gemountet.
Nein, wenn im "Explorer" die Platte angezeigt wird und man sie durchsuchen kann, ist sie schon gemountet. Dass musst (und kannst) du nicht nochmal machen.
Dann liegt sie aber schon auf irgendeinem Mountpoint. Also kannst du in der Konsole mal mount eingeben. Da kommt dann viel Text und irgendwo was in der Art:
/dev/sda2 on /usr/portage type ext4 (rw,noatime,data=ordered)
Das heißt, meine Platte (bzw. deren Partition 2) liegt auf /usr/portage/
Wenn ich jetzt mit cd (wie in Windows, DOS) dahin will, geht das so
cd /usr/portage
Dann kann man mit "dir" angucken, was da so liegt, mit cd Verzeichnisse wechseln etc.
Keine Windows 7 Frage. Aber cd ist schon der richtige Befehl. Schau mal mit dir oder ll welche Ordner dort vorhanden sind.
@heiserfeger77
Keine Windows 7 Frage.
Ich habe die unpassenden TAGs entfernt.
Schau mal mit dir oder ll welche Ordner dort vorhanden sind.
Bei unixoiden Systemen ist es auch immer cd um ein change directory auszuführen. Die Auflistung des Inhalt geschieht hier allerdings immer mit ls für "list" und nicht mit dir, denn dieses ist nur ein Alias der es DOS "geschädigten" Menschen leichter machen soll.
Linuxhase
super danke auch Dir und allen anderen, die auf die Frage geantwortet haben. Das klappt jetzt wunderbar....
Ich werde jetzt mal bei KUbuntu bleiben... hoffentlich ist die Version die nächstenMonat heraus kommt etwas stabilder und die Fensterabstürze bleiben aus, wenn man sich neue Fensterthemen herunterlädt bzw. einstellt.