|
Das deutsche QBasic- und FreeBASIC-Forum Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
|
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
s-m-n
Anmeldungsdatum: 03.10.2005 Beiträge: 106 Wohnort: Pietling in Oberbayern / Deutschland
|
Verfasst am: 26.12.2006, 20:39 Titel: Prüfen ob Laufwerk gemountet ist |
|
|
Hi,
gibt es (außer mit shell "ls" und so durchzuprobieren) eine Möglichkeit um festzustellen, ob ein Laufwerk gemountet ist oder nicht? Benötige das für ein Backup-Proggi.
Danke für eure Antworten!
Gruß s-m-n |
|
Nach oben |
|
|
dreael Administrator
Anmeldungsdatum: 10.09.2004 Beiträge: 2507 Wohnort: Hofen SH (Schweiz)
|
Verfasst am: 26.12.2006, 22:38 Titel: |
|
|
Kommando
ohne Parameter in ein xterm eingeben - listet sämtliche zur Zeit gemounteten Datenträger auf! Vermutlich sind Shellbefehle auch mit SHELL aufrufbar analog wie COMMAND.COM früher in QB. _________________ Teste die PC-Sicherheit mit www.sec-check.net |
|
Nach oben |
|
|
s-m-n
Anmeldungsdatum: 03.10.2005 Beiträge: 106 Wohnort: Pietling in Oberbayern / Deutschland
|
Verfasst am: 27.12.2006, 09:55 Titel: |
|
|
Stimmt - danke! Hatte ich vergessen! Und mit einer Kombi aus instr() und open pipe kann man prüfen, ob das gewünschte Laufwerk gemountet ist! Super! Alles Klar!
Ja, das mit Shell funzt - hab ich schon in einem anderen Linux-Programm.
Gruß s-m-n |
|
Nach oben |
|
|
oiermann
Anmeldungsdatum: 28.12.2005 Beiträge: 90 Wohnort: Leutkirch
|
Verfasst am: 27.12.2006, 12:04 Titel: |
|
|
Du könntest auch was mit grep anfangen.
Code: |
10 a$ = SHELL "mount | grep /dev/..."
20 wenn in a$ was drin steht, dann....
|
_________________ Ich bin keine Signatur, ich putz hier nur |
|
Nach oben |
|
|
Mao
Anmeldungsdatum: 25.09.2005 Beiträge: 4409 Wohnort: /dev/hda1
|
Verfasst am: 27.12.2006, 14:18 Titel: |
|
|
Wenn, dann aber nicht in /dev nachsehen, sondern in /mnt.
Dass das Teil existiert heißt nicht, dass es auch gemountet ist. _________________ Eine handvoll Glück reicht nie für zwei.
--
|
|
Nach oben |
|
|
s-m-n
Anmeldungsdatum: 03.10.2005 Beiträge: 106 Wohnort: Pietling in Oberbayern / Deutschland
|
Verfasst am: 01.01.2007, 23:59 Titel: |
|
|
OK, danke euch allen. Habs mit dem open pipe folgendermaßen gelöst:
Code: | dim as string zeile(255)
dim as integer zeilen, k, x, i
open pipe "mount" for input as #1
do
line input #1, zeile(zeilen)
zeilen+=1
loop until eof(1)
close #1
for i = 0 to zeilen
x = instr(zeile(i), "sda1")
y = instr(zeile(i), "hda1")
if x <> 0 then k = 1
if y <> 0 then l = 1
next
'k = 1: SDA1 ist gemountet!
'k = 0: SDA1 ist nicht gemountet!
'l = 1: HDA1 ist gemountet!
'l = 0: HDA1 ist nicht gemountet!
if l = 0 then m = exec("mount", "/mnt/hda1") else goto 1
cls
select case m
case 1: color 4:print "Schwerer Fehler! Gerät hda1 nicht gefunden!":end
case 0: color 10:print "Gerät hda1 (Quelle) wurde gemountet.":goto 1
case 32: color 10:print "Gerät hda1 (Quelle) ist bereits gemountet.":goto 1
end select
1
if k = 0 then n = exec("mount", "/mnt/sda1") else goto 2
cls
select case n
case 1: color 4:print "Gerät sda1 wurde nicht gefunden. Bitte anstecken.":end
case 0: color 10:print "Gerät sda1 (Ziel) wurde gemountet.":goto 2
case 32: color 10:print "Gerät sda1 (Ziel) ist bereits gemountet.":goto 2
end select
2 color 15:? "Kopiervorgang..."
?
z = exec("cp", "-u -R --preserve /mnt/hda1/Arbeitsberichte/ /mnt/sda1/")
select case z
case 1: color 4:print "Fehler aufgetreten!":end
case 0: beep:color 10:print "Kopieren erfolgreich. Daten gesichert."
end select |
/edit: Das ist ein One-Click (bzw. one-type unter Linux ) Backup-Proggi für meine Arbeitsberichte, die im Rahmen meiner Ausbildung geschrieben werden müssen.
/edit 2: Mao hat recht - unter /dev liegen nur die Gerätetreiberdateien. in /mnt/ sind nur die tatsächlich gemounteten Laufwerke anzutreffen.
Gruß s-m-n |
|
Nach oben |
|
|
oiermann
Anmeldungsdatum: 28.12.2005 Beiträge: 90 Wohnort: Leutkirch
|
Verfasst am: 02.01.2007, 16:50 Titel: |
|
|
Mao hat nicht recht.
Code: | /dev/mapper/root on / type auto (rw,noatime)
proc on /proc type proc (rw)
none on /dev/mapper type tmpfs (rw)
/dev/root on /boot type ext2 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec)
udev on /dev type tmpfs (rw,nosuid)
devpts on /dev/pts type devpts (rw,nosuid,noexec)
shm on /dev/shm type tmpfs (rw,noexec,nosuid,nodev)
usbfs on /proc/bus/usb type usbfs (rw,devmode=0664,devgid=85)
/dev/mapper/daten on /mnt/daten type ext3 (rw)
/usr/portage on /mnt/gentoo/usr/portage type none (rw,bind)
/dev/sda1 on /mnt/sda1 type ext3 (rw)
|
wenn ein Dateisystem gemountet ist, dann erscheint der /dev und der Zieleintrag in mount. _________________ Ich bin keine Signatur, ich putz hier nur |
|
Nach oben |
|
|
s-m-n
Anmeldungsdatum: 03.10.2005 Beiträge: 106 Wohnort: Pietling in Oberbayern / Deutschland
|
Verfasst am: 02.01.2007, 17:05 Titel: |
|
|
Servus,
Zitat: | wenn ein Dateisystem gemountet ist, dann erscheint der /dev und der Zieleintrag in mount. |
Jaja, das stimmt. Aber wenn es nicht gemountet ist, dann erscheint es nur unter /dev und nicht unter /mnt . Soweit meine bisherigen Erkenntnisse.
Gruß s-m-n |
|
Nach oben |
|
|
oiermann
Anmeldungsdatum: 28.12.2005 Beiträge: 90 Wohnort: Leutkirch
|
Verfasst am: 02.01.2007, 17:18 Titel: |
|
|
Wenn es nicht gemountet ist erscheint somit der /dev Eintrag auch nicht unter mount.
Code: |
$ mount
/dev/mapper/root on / type auto (rw,noatime)
proc on /proc type proc (rw)
none on /dev/mapper type tmpfs (rw)
/dev/root on /boot type ext2 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec)
udev on /dev type tmpfs (rw,nosuid)
devpts on /dev/pts type devpts (rw,nosuid,noexec)
shm on /dev/shm type tmpfs (rw,noexec,nosuid,nodev)
usbfs on /proc/bus/usb type usbfs (rw,devmode=0664,devgid=85)
/dev/mapper/daten on /mnt/daten type ext3 (rw)
/usr/portage on /mnt/gentoo/usr/portage type none (rw,bind)
/dev/sda1 on /mnt/sda1 type ext3 (rw)
$ umount /dev/sda1
$ mount
/dev/mapper/root on / type auto (rw,noatime)
proc on /proc type proc (rw)
none on /dev/mapper type tmpfs (rw)
/dev/root on /boot type ext2 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec)
udev on /dev type tmpfs (rw,nosuid)
devpts on /dev/pts type devpts (rw,nosuid,noexec)
shm on /dev/shm type tmpfs (rw,noexec,nosuid,nodev)
usbfs on /proc/bus/usb type usbfs (rw,devmode=0664,devgid=85)
/dev/mapper/daten on /mnt/daten type ext3 (rw)
/usr/portage on /mnt/gentoo/usr/portage type none (rw,bind)
*** [hier fehlt ein /dev Eintrag] ***
|
_________________ Ich bin keine Signatur, ich putz hier nur |
|
Nach oben |
|
|
Sebastian Administrator
Anmeldungsdatum: 10.09.2004 Beiträge: 5969 Wohnort: Deutschland
|
Verfasst am: 02.01.2007, 17:28 Titel: |
|
|
//Off-Topic
oiermann hat Folgendes geschrieben: | Code: | $ mount
/dev/mapper/root on / type auto (rw,noatime)
proc on /proc type proc (rw)
none on /dev/mapper type tmpfs (rw)
/dev/root on /boot type ext2 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec)
udev on /dev type tmpfs (rw,nosuid)
devpts on /dev/pts type devpts (rw,nosuid,noexec)
shm on /dev/shm type tmpfs (rw,noexec,nosuid,nodev)
usbfs on /proc/bus/usb type usbfs (rw,devmode=0664,devgid=85)
/dev/mapper/daten on /mnt/daten type ext3 (rw)
/usr/portage on /mnt/gentoo/usr/portage type none (rw,bind)
/dev/sda1 on /mnt/sda1 type ext3 (rw)
$ umount /dev/sda1
$ mount
/dev/mapper/root on / type auto (rw,noatime)
proc on /proc type proc (rw)
none on /dev/mapper type tmpfs (rw)
/dev/root on /boot type ext2 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec)
udev on /dev type tmpfs (rw,nosuid)
devpts on /dev/pts type devpts (rw,nosuid,noexec)
shm on /dev/shm type tmpfs (rw,noexec,nosuid,nodev)
usbfs on /proc/bus/usb type usbfs (rw,devmode=0664,devgid=85)
/dev/mapper/daten on /mnt/daten type ext3 (rw)
/usr/portage on /mnt/gentoo/usr/portage type none (rw,bind)
*** [hier fehlt ein /dev Eintrag] *** |
|
Ich frag mich immer wieder, warum diese Sachen unter Linux nicht auch so einleuchtende Namen wie "Arbeitsplatz", "Gerätemanager" oder "Datenträger" haben können...?! _________________
Die gefährlichsten Familienclans | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen! |
|
Nach oben |
|
|
s-m-n
Anmeldungsdatum: 03.10.2005 Beiträge: 106 Wohnort: Pietling in Oberbayern / Deutschland
|
Verfasst am: 02.01.2007, 17:46 Titel: |
|
|
@oiermann: Ja klar, aber wenn du den Ordner /dev in einem graphischen Dateimanager betrachtest, dann wirst du die Datei vorfinden.
@Sebastian:
Sebastian hat Folgendes geschrieben: | Ich frag mich immer wieder, warum diese Sachen unter Linux nicht auch so einleuchtende Namen wie "Arbeitsplatz", "Gerätemanager" oder "Datenträger" haben können...?! |
[bayerisch]Omei Sebastian, bist du aa aso a Loamsiada?[/bayerisch]
(Soll heißen: Ach Gott Sebastian, bist du auch so ein Langweiler? )
Dann wäre es ja witzlos! Das ist ja gerade das, was Linux so knusprig macht: Dass man nicht alles auf dem Silbertablett serviert bekommt. Windows: CD rein, Setup startet, fertig. Gibt das einen Kick? Mir nicht. Bei meinem Knoppix müssen erst mit viel Liebe und Sorgfalt die Festplatten und Partitionen vorbereitet und formatiert werden, dann die Live-DVD gebootet und das Setup über die Kommandozeile aufgerufen werden. Dann kann man die Partition wählen und an einem Statusbalken sehen, wie es um die Installation steht.
Interessantere Distros (wie openSUSE, frag Mao) kann man sich sogar Stück für stück aus dem Quellcode backen - zwar nicht direkt mein Ding, aber trotztem cool.
Und genauso ist's mit den Laufwerksbezeichnungen. Es ist prinzipiell ganz einfach:
hdax = primäres IDE-Gerät (Kann also Festplatte oder optisches LW sein)
x = Nummer der Partition (1 entspricht C:, 2 entspricht D:, ...), gilt aber nur bei Festplatten
hdbx = sekundäres IDE-Gerät .....
...
sdax = selbiges wie oben, nur ist das ein Wechseldatenträger
Zu weiteren Diskussionen über dieses Thema bin ich gerne Bereit
Gruß s-m-n |
|
Nach oben |
|
|
Mao
Anmeldungsdatum: 25.09.2005 Beiträge: 4409 Wohnort: /dev/hda1
|
Verfasst am: 02.01.2007, 18:08 Titel: |
|
|
@oeierman:
Stimmt, da hast' Recht.
Ich hatte da 2 Betriebssysteme verwechselt, die sich da recht ähnlich sind.
@Sebastian:
Die Aufgabe eines Betriebssystems ist es, die Hardware vom User fernzuhalten. Und genau das macht Linux und Windows nicht!
Bei Unix-Systemen (auch Linux, demzufolge) werden Laufwerke nicht als solche behandelt, sondern können einfach in ein bestehendes Ordnersystem eingegliedert werden.
Damit kannst du einen Home-Ordner /home/ssteiner haben, worin sich 2 Ordner wie "schule" und "website" befinden. Nun ist dein Home-Verzeichnis auf einem Laufwerk (logischerweise ). Gerade bei "Anfängern" ist das die System-Partition. Für Server eignet sich, dass jedes Unterverzeichnis in der 1. Ebene des Root-Verzeichnisses auf eine andere Partition kommt.
So, sagen wir, du willst deine Website archivieren. Hast also einen Ordner "backup" in /home/ssteiner/website. Nun kannst du in diesen Ordner beispielsweise einen USB-Stick einklinken. /home/ssteiner/website/backup verlinkt also nicht auf die System-Partition sondern auf einen USB-Stick.
Das sind dann halt die Vorzüge, dass getrennte Daten auf getrennte Laufwerke/Partitionen aufgeteilt werden - ohne, dass der User beim Arbeiten was davon merkt. _________________ Eine handvoll Glück reicht nie für zwei.
--
|
|
Nach oben |
|
|
oiermann
Anmeldungsdatum: 28.12.2005 Beiträge: 90 Wohnort: Leutkirch
|
Verfasst am: 04.01.2007, 14:19 Titel: |
|
|
Zitat: |
Interessantere Distros (wie openSUSE, frag Mao) kann man sich sogar Stück für stück aus dem Quellcode backen - zwar nicht direkt mein Ding, aber trotztem cool.
|
Suse ist eine Binärdistribution. Klar, selbst compilieren kann man jede. Aber die einzigen, die das richtig von Grund auf machen sind Gentoo (meiner einer hat dieses) und LFS (Linux From Scratch). Es gibt noch eins in meinem Hinterkopf, aber da fällt mir der Name nicht mehr ein.
Zitat: | sdax = selbiges wie oben, nur ist das ein Wechseldatenträger |
Nein, das sind SCSI-Geräte. Und da SATA und USB Geräte nur über eine SCSI Emulation laufen, sind diese unter sdX zu finden. _________________ Ich bin keine Signatur, ich putz hier nur |
|
Nach oben |
|
|
Mao
Anmeldungsdatum: 25.09.2005 Beiträge: 4409 Wohnort: /dev/hda1
|
Verfasst am: 04.01.2007, 15:43 Titel: |
|
|
Jo, also da hat er auch (teilweise) Recht.
Ich hab mir jetzt zwar schon des öfteren mal einen neuen Kernel compiliert und ausgetauscht (u.a. für meinen 64-Bit-Prozessor ), aber openSuSE selbst compilieren bringt's net wirklich, da ich da wirklich alle beinhalteten Pakete mir aus'm Internet (ISDN!) laden müsste und das wär mir 'nen bissl viel...
Aber auch bei Gentoo ist es nicht nur Source: dort gibt's 3 verschiedene Installationsarten (Stages), die eine davon ist es, sich benötigtes aus'm Netz zu laden und selbst zu compilieren. Die andere ist es, eine komplette Binär-Distro runterzuladen und die letzte ist, wenn man nur ein lauffähiges Grundsystem (Compiler, Mini-Kern und make & Konsorten) runterlädt und den Rest selbst compiliert.
Gentoo würd ich ja sehr gerne mal probieren, ist mir aber net möglich... _________________ Eine handvoll Glück reicht nie für zwei.
--
|
|
Nach oben |
|
|
oiermann
Anmeldungsdatum: 28.12.2005 Beiträge: 90 Wohnort: Leutkirch
|
Verfasst am: 04.01.2007, 18:22 Titel: |
|
|
Zitat: |
Aber auch bei Gentoo ist es nicht nur Source: dort gibt's 3 verschiedene Installationsarten (Stages), die eine davon ist es, sich benötigtes aus'm Netz zu laden und selbst zu compilieren. Die andere ist es, eine komplette Binär-Distro runterzuladen und die letzte ist, wenn man nur ein lauffähiges Grundsystem (Compiler, Mini-Kern und make & Konsorten) runterlädt und den Rest selbst compiliert.
|
Da hast du recht, nur bei Stage1 hast du danach ein komplettes Linux aus den Quellen, bei 2 und 3 hat man immer vorcompilierte Reste, aber wenn das Gentoo mal ein halbes Jahr lief und ein world-update hin und wieder lief (was nach 4 wochen gut 300mb haben kann (auf meinem Rechner ne ganze Nacht)), hat man eigentlich alles direkt aus den Quellen. Kannst ja die Quellen in /usr/portage/distfiles mit /var/db/ vergleichen.
Zitat: |
Gentoo würd ich ja sehr gerne mal probieren, ist mir aber net möglich...
|
ja, schade. Gentoo ist mit Abstand die schönste aller Distributionen *flame* _________________ Ich bin keine Signatur, ich putz hier nur |
|
Nach oben |
|
|
Mao
Anmeldungsdatum: 25.09.2005 Beiträge: 4409 Wohnort: /dev/hda1
|
Verfasst am: 04.01.2007, 18:31 Titel: |
|
|
Okay, anders formuliert...
...durch ISDN kann ich Gentoo net probieren.
Da bleib ich dann lieber bei meinem guten alten openSuSE. _________________ Eine handvoll Glück reicht nie für zwei.
--
|
|
Nach oben |
|
|
s-m-n
Anmeldungsdatum: 03.10.2005 Beiträge: 106 Wohnort: Pietling in Oberbayern / Deutschland
|
Verfasst am: 04.01.2007, 19:42 Titel: |
|
|
Zitat: | Nein, das sind SCSI-Geräte. Und da SATA und USB Geräte nur über eine SCSI Emulation laufen, sind diese unter sdX zu finden. |
Äääähhhm... Sorry, hab ich nicht gewusst.
Ich finde es ist letztlich Geschmackssache, welche Distro man verwendet.
Nur von Ubuntu lässt man besser die Finger. Ich hab das mal ausprobiert und war sehr enttäuscht. Es wird immer gelobt und deshalb hab ich es mir mal mit einer c't gekauft. Aber die 3,30 € waren scheinbar umsonst investiert. Da haben die Laufwerke keine eindeutigen Bezeichnungen wie /mnt/hda1. Ich hab's nicht geschafft, auf eines über die Kommandozeile zuzugreifen. Bin ich so blöd oder ist Ubuntu so ein Glump?
Ich bleib jedenfalls bei meinem geliebten Knoppix. Das ist für mich die gewohnteste, sicherste, benutzerfreundlichste und zuverlässigste Distro, die ich kenne. Aber außer Ubuntu und ähnlichen n00b-Distros denke ich hat jede Distro seine Daseinsberechtigung.
Gruß s-m-n |
|
Nach oben |
|
|
oiermann
Anmeldungsdatum: 28.12.2005 Beiträge: 90 Wohnort: Leutkirch
|
Verfasst am: 06.01.2007, 15:55 Titel: |
|
|
ich glaub Ubuntu verwendet wie Fedora Core LVM-Devices, irgendwelche Mapper oder so...
Meine /-Partition ist auch /dev/mapper/root und /home/oiermann/daten ist /dev/mapper/daten. Mit /dev/hdX kann ich auch nicht darauf zugreifen. Beide sind mit dm-crypt verschlüsselt. _________________ Ich bin keine Signatur, ich putz hier nur |
|
Nach oben |
|
|
s-m-n
Anmeldungsdatum: 03.10.2005 Beiträge: 106 Wohnort: Pietling in Oberbayern / Deutschland
|
Verfasst am: 06.01.2007, 16:29 Titel: |
|
|
oiermann hat Folgendes geschrieben: | ich glaub Ubuntu verwendet wie Fedora Core LVM-Devices, irgendwelche Mapper oder so...
Meine /-Partition ist auch /dev/mapper/root und /home/oiermann/daten ist /dev/mapper/daten. Mit /dev/hdX kann ich auch nicht darauf zugreifen. Beide sind mit dm-crypt verschlüsselt. |
Naja, ob das verschlüsselt ist oder nicht, ist mir ziemlich wurscht; ich werde es in nächster Zeit wieder von der Platte putzen. Ich verwende es nicht; damit wird eh bloß Speicherplatz verschwendet und der Bootloader verunziert.
Und ich hab ja eine vernünftige Distro (Knoppix) auch noch.
Aber trotzdem danke für den Tipp.
Gruß s-m-n |
|
Nach oben |
|
|
|
|
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen.
|
|