jolexin
Anmeldungsdatum: 22. Dezember 2009
Beiträge: 325
Wohnort: München
|
Siehe: http://wiki.ubuntuusers.de/gpg4usb Es läuft leider nicht so, wie beschrieben! Wenn ich die Dateien z.B. in meinem bin-Ordner (oder sonst wo auf meiner Festplatte) entpacke, dann sind die Dateien start_linux_32bit, start_linux_64bit, start_windows.exe ausführbar. Entpacke ich auf einem FAT-formatierten USB-Stick, dann sind start_linux_32bit und 2014 start_linux_64bit NICHT ausführbar und ich kann sie auch mit chmod nicht ausführbar machen, auch nicht mit sudo. Siehe: 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 | jj@lapis:/media/jj/U3STICK/gpg4usb$ ls -l start*
-rw-r--r-- 1 jj users 7225072 Jul 28 2014 start_linux_32bit
-rw-r--r-- 1 jj users 6993388 Jul 29 2014 start_linux_64bit
-rwxr-xr-x 1 jj users 6795776 Jan 3 2014 start_windows.exe
jj@lapis:/media/jj/U3STICK/gpg4usb$ chmod ugo+x start_linux*
jj@lapis:/media/jj/U3STICK/gpg4usb$ ls -l start*
-rw-r--r-- 1 jj users 7225072 Jul 28 2014 start_linux_32bit
-rw-r--r-- 1 jj users 6993388 Jul 29 2014 start_linux_64bit
-rwxr-xr-x 1 jj users 6795776 Jan 3 2014 start_windows.exe
jj@lapis:/media/jj/U3STICK/gpg4usb$ sudo chmod ugo+x start_linux*
[sudo] password for jj:
jj@lapis:/media/jj/U3STICK/gpg4usb$ ls -l start*
-rw-r--r-- 1 jj users 7225072 Jul 28 2014 start_linux_32bit
-rw-r--r-- 1 jj users 6993388 Jul 29 2014 start_linux_64bit
-rwxr-xr-x 1 jj users 6795776 Jan 3 2014 start_windows.exe
|
Warum bleibt auf dem USB-Stick start_windows.exe als einzigens ausführbar und warum kann ich start_linux... nicht ausführbar machen?
|
Thomas_Do
Moderator
Anmeldungsdatum: 24. November 2009
Beiträge: 8493
|
Benenn' mal das Linux-Binary in .exe um und mach es dann ausführbar.
|
senden9
Anmeldungsdatum: 8. Februar 2010
Beiträge: 965
Wohnort: Österreich
|
Das Problem ist das FAT keine Zugriffsrechte kennt. "Ausführen" ist aber ein Recht und kann somit nicht gesetzt werden.
|
Benno-007
Anmeldungsdatum: 28. August 2007
Beiträge: 29240
Wohnort: Germany
|
Linuxprogramme startet man üblicherweise auf Linuxdateisystemen, denn diese bieten eine Rechteverwaltung einschließlich Ausführbarkeitsrecht, die FAT nicht bietet. Win ist das sowieso alles egal, Linux dagegen erlaubt auf FAT erst mal keine Ausführung. Um für den Spezialfall portables GPG unter Linux UND Win unter FAT dennoch Ausführrechte zu bekommen, musst du sie manuell als mount-Option mitgeben: Du könntest dazu auch versuchen, den Stick am Rechner gesteckt zu lassen und darauf folgenden Befehl in einer Textdatei abspeichern. Aus dieser kopierst du das dann raus ins Terminal:
sudo mount -o remount,umask=000,users /dev/disk/by-uuid/UUID-STICK /mnt
umask bildet nun spiegelverkehrt die Linuxrechte 777 auf den Stick ab, also darf jeder auch ausführen. chmod ist nur für Linuxdateisysteme geeignet, mit denen Win wiederum nicht ohne Zusatzsoftware klarkommen will. Die UUID vom Stick musst du einmalig einsetzen und erfährst du so:
sudo blkid
Danach befindet sich durch remount (ohne Neuanstecken) der Inhalt mit den richtigen Rechten (umask) im Ordner /mnt und kann grafisch wieder ausgehangen werden (users). Zu /mnt musst du dich im Dateimanager dann jeweils durchwühlen - oft kann man den Ort direkt per STRG + L (Location/ Ort) eingeben. Bei pcmanfm (Lubuntu) muss man links die Leiste von Orte auf Verzeichnisbaum umschalten, wenn man das mit der Direkteingabe nicht möchte. Grüße, Benno Edit: Ohne remount wäre mein Befehl so korrekt - mit remount müsstest/ solltest du /mnt weglassen, damit wieder in den Ordner gemountet wird, in dem es bereits automatisch (aber mit falschen Rechten) gemountet ist (meist unterhalb /media).
|
jolexin
(Themenstarter)
Anmeldungsdatum: 22. Dezember 2009
Beiträge: 325
Wohnort: München
|
Dass FAT keine Zugriffsrechte kennt, weiß ich. (Ich frage ich mich allerdings, wieso für die start-windoof-Datei dann Ausführungsrechte gezeigt werden.) Laut GPG-wiki soll jenes gpg4usb ja portabel sein, d.h. unter Windows und unter Linux ausführbar sein. Deshalb mein Anliegen, es auf FAT-formatiertem Stick unter Linux zum Laufen zu kriegen.(Meinentwegen auch NTFS, falls das die Lösung bringt.) Die Anmerkung von Benno-007 erscheint mir plausibel; deshalb habe ich die uuid meines Sticks ermittelt und dann folgende Kommandos eingegeben: 1
2
3
4
5
6
7
8
9
10
11
12
13 | pwd
/media/jj/U3STICK/gpg4usb
sudo mount -o remount,umask=000,users /dev/disk/by-uuid/4987-0289 /mnt
mount: Sie müssen den Dateisystemtyp angeben
sudo mount -o remount,umask=000,users /dev/disk/by-uuid/4987-0289
jj@lapis:/media/jj/U3STICK/gpg4usb$
ls -l start*
-rw-r--r-- 1 jj users 7225072 Jul 28 2014 start_linux_32bit
-rw-r--r-- 1 jj users 6993388 Jul 29 2014 start_linux_64bit
-rwxr-xr-x 1 jj users 6795776 Jan 3 2014 start_windows.exe
|
Das bringt leider nicht das gewünschte Ergebnis. Deshalb meine Rückfrage an Benno-007: Habe ich deine Anleitung richtig verstanden? Deine Worte nach dem Befehl "sudo blkid" verstehe ich überhaupt nicht.
|
Benno-007
Anmeldungsdatum: 28. August 2007
Beiträge: 29240
Wohnort: Germany
|
Dann frag konkret - das ist lediglich eine Zusammenfassung der Optionen des Befehls. Ich werd hier nicht alles erklären, wenn nicht konkret gefragt wird. Es gibt da eigentlich nix zu verstehen. Ich erkläre, wie es ist. Und in Klammern die Option aus dem Befehl, die das macht. Mehr Infos gibt's ja im Wiki, mal davon abgesehen. Machen musst du daran gar nix. Eigentlich war der Befehl von dir nun korrekt:
sudo mount -o remount,umask=000,users /dev/disk/by-uuid/4987-0289
Vorausgesetzt, das ist der Stick. Teste es stattdessen nun mal so und zeig mir Ein- und Ausgaben ungekürzt (nur ggf. anonymisiert):
sudo blkid
sudo umount /dev/disk/by-uuid/4987-0289
sudo mount -t vfat -o umask=000,users /dev/disk/by-uuid/4987-0289 /mnt && ls -l /mnt/gpg4usb/start*
|
jolexin
(Themenstarter)
Anmeldungsdatum: 22. Dezember 2009
Beiträge: 325
Wohnort: München
|
Ok, hier meine Ein-/Ausgaben: | jj@lapis:~$ sudo blkid | grep vfat
/dev/sda1: SEC_TYPE="msdos" LABEL="U3STICK" UUID="4987-0289" TYPE="vfat"
jj@lapis:~$ sudo umount /dev/disk/by-uuid/4987-0289
jj@lapis:~$ (keine Ausgabe, aber im Dateimanager ist der Stick nun nicht mehr verbunden)
jj@lapis:~$ sudo mount -t vfat -o umask=000,users /dev/disk/by-uuid/4987-0289 /mnt && ls -l /mnt/gpg4usb/start*
-rwxrwxrwx 1 root root 7225072 Jul 28 2014 /mnt/gpg4usb/start_linux_32bit
-rwxrwxrwx 1 root root 6993388 Jul 29 2014 /mnt/gpg4usb/start_linux_64bit
-rwxrwxrwx 1 root root 6795776 Jan 3 2014 /mnt/gpg4usb/start_windows.exe
jj@lapis:~$
|
Aha, ich sehe unter /mnt/gpg4usb die start-Dateien mit Ausführungsrechten. Doch ich will diese auf meinem Stick mit Ausführungsrechten haben. ?
|
Benno-007
Anmeldungsdatum: 28. August 2007
Beiträge: 29240
Wohnort: Germany
|
Ok, das wird der Stick sein. Wieso ist dein Stick denn sda(1) - gewöhnlich ist das die eingebaute Festplatte. Hast du dafür eine Erklärung parat, was du anders machst? /mnt ist korrekt - wir haben dem Befehl nun mitgeteilt gehabt, dass nun der Stick in den Ordner /mnt angezeigt (gemountet/ eingehangen) wird. Dieser ist für solche manuellen, temporären Mounts gedacht und existiert dauerhaft, im Gegensatz zu den Ordnern in /media. Wenn also der remount tatsächlich nicht funktioniert (vorletzter Post von dir), musst du dir stattdessen die jetzigen beiden Befehle abspeichern, also erst umount und dann erst mount. Hintergrundinfos zum Mounten findet du übrigens unter Datenträger.
|
jolexin
(Themenstarter)
Anmeldungsdatum: 22. Dezember 2009
Beiträge: 325
Wohnort: München
|
Also, ich verstehe jetzt folgendes: Der Inhalt meines Sticks wird mir nach dem mount unter /mnt gezeigt. Insbesondere liegt unter /mnt/gpg4usb die ausführbare Datei start_linux_32bit. Nun müsste doch nach cd /mnt/gpg4usb das Programm mit folgendem Kommando starten:
Es startet leider nicht:
| jj@lapis:/mnt/gpg4usb$ ls -l start_linux_32bit
-rwxrwxrwx 1 root root 7225072 Jul 28 2014 start_linux_32bit
jj@lapis:/mnt/gpg4usb$ ./start_linux_32bit
bash: ./start_linux_32bit: Keine Berechtigung
|
Das versteh ich nicht, denn für "others" ist die Datei doch ausführbar. Gegenbeispiel: In meinem bin Ordner sehe ich nach dem Entpacken: start_linux_32bit hat Ausführungsechte und startet wie gewünscht mit dem Kommando:
| cd ~/bin/gpg4usb
./start_linux_32bit
|
Allerdings bin ich (jj) dort der Besitzer.
|
Benno-007
Anmeldungsdatum: 28. August 2007
Beiträge: 29240
Wohnort: Germany
|
Das versteh ich nicht, denn für "others" ist die Datei doch ausführbar.
In der Tat. Vielleicht ein Programmierfehler oder ein Denkfehler von uns. Bevor wir eine Suche füttern, könnten wir noch den Nutzer auf dich ändern. Das hatte ich extra nicht gemacht, da eigentlich nicht nötig und bei fremden bzw. Mehrbenutzer-Systemen wechselt die Anzahl der Benutzer und damit deren UID. Aber nun müssen wir es eben mal so machen. Schau die id nach:
id
Danach trag sie bei mount mit ein:
sudo mount -t vfat -o uid=1000,umask=000,users /dev/disk/by-uuid/4987-0289 /mnt && ls -l /mnt/gpg4usb/start*
Was auch noch unklar ist: Ok, das wird der Stick sein. Wieso ist dein Stick denn sda(1) - gewöhnlich ist das die eingebaute Festplatte.
Hättest du dazu mal komplett (ggf. anonymisiert) das parat?
sudo parted -l
|
Lidux
Anmeldungsdatum: 18. April 2007
Beiträge: 15844
|
Hallo jolexin, Kannst du das mal an einem anderen USB Stick probieren, da auf dem jetzigen ein U3 Dateisystem drauf ist. Gruss Lidux
|
jolexin
(Themenstarter)
Anmeldungsdatum: 22. Dezember 2009
Beiträge: 325
Wohnort: München
|
1. Ich habe einen anderen USB Stick formatiert; er hat uuid CECD-E52D. 2. Ich habe die Befehlsfolge wie folgt wiederholt: | sudo umount /dev/disk/by-uuid/CECD-E52D
sudo mount -t vfat -o uid=1000,umask=000,users /dev/disk/by-uuid/CECD-E52D /mnt && ls -l /mnt/gpg4usb/start_l*
-rwxrwxrwx 1 jj root 7225072 Jul 28 2014 /mnt/gpg4usb/start_linux_32bit
-rwxrwxrwx 1 jj root 6993388 Jul 29 2014 /mnt/gpg4usb/start_linux_64bit
pushd /mnt/gpg4usb
./start_linux_32bit
bash: ./start_linux_32bit: Keine Berechtigung
|
Ich sehe leider keinen Unterschied. ???
|
Lidux
Anmeldungsdatum: 18. April 2007
Beiträge: 15844
|
Hallo jolexin, Formatiere den Stick mal mit NTFS ..... Gruss Lidux
|
Benno-007
Anmeldungsdatum: 28. August 2007
Beiträge: 29240
Wohnort: Germany
|
Einen Versuch ist es Wert - vielleicht tritt das Problem da nicht auf.
|
jolexin
(Themenstarter)
Anmeldungsdatum: 22. Dezember 2009
Beiträge: 325
Wohnort: München
|
Also, ich habe einen neuen Stick NTFS-formatiert, die GPG SW drauf kopiert und wieder die umount- und mount-Kommandos ausgeführt.
Es bleibt dabei: KEINE BERECHTIGUNG.
|