Schrift
[thread]12414[/thread]

Rechte von Programmen verwalten / Installationsablauf



<< >> 4 Einträge, 1 Seite
Nordlicht
 2008-08-28 22:04
#114048 #114048
User since
2005-10-16
182 Artikel
BenutzerIn
[default_avatar]
Hi Leute,

Ich hab mal ne Frage zu Installationen unter Linux. Ich hab heute ein Programm als *.tar.gz source runtergeladen und kompiliert / installiert... Jetzt möchte ich diesem Programm bestimmte Rechte verleihen. Dazu dachte ich, müsste ich das Äquivalent zu einer EXE-Datei finden und dieser Datei die Rechte verleihen, die es braucht.

Problem ist, ich hab keine Ahnung

1. was das Äquivalent zur EXE-Datei (also die zentrale, ausführbare Programmdatei) unter Linux ist (ich vermute *.bin)
und
2. wo ich sie finde...?

Vielleicht könnt ihr mir erklären wie man die Rechte von Programmen ändert?!

Vielen Dank.

Gruß, Nord.

PS: Ich verwende OpenSUSE 11.0
Linuxer
 2008-08-28 22:16
#114049 #114049
User since
2006-01-27
3869 Artikel
HausmeisterIn

user image
Hi,

eigentlich musst Du keine Rechte anpassen, wenn die Installation sauber durchgelaufen ist; das sollte schon alles vom Installationsskript erledigt worden sein.

Standardpfad für eigen-kompilierte und -installierte Programme ist eigentlich /usr/local/bin.
Dort sollten die ausführbaren Dateien zu finden sein.
Wenn nicht, schau mal unter /usr/local was da (und darunter) so zu finden ist.

Schau Dir Deine Pfadvariable mal an, dort finden sich die Verzeichnisse, in denen standardmäßig nach ausführbaren Dateien gesucht wird, wenn Du ein Kommando eingibst:

Code: (dl )
echo $PATH 


Alternative mit besserer Lesbarkeit:
Code: (dl )
echo $PATH | tr ':' '\n'


Beispielhafte Doku:
Rechte:
man chmod
http://de.linwiki.org/wiki/Linuxfibel_-_Erste_Schr...

Ausführbares:
http://de.linwiki.org/wiki/Linuxfibel_-_Das_Dateis...

meine Beiträge: I.d.R. alle Angaben ohne Gewähr und auf Linux abgestimmt!
Die Sprache heisst Perl, nicht PERL. - Bitte Crossposts als solche kenntlich machen!
Gast Gast
 2008-08-28 22:45
#114050 #114050
Der Ausführende und nicht das Programm bestimmen die rechte die das Programm besitzt.
murphy
 2008-08-29 00:17
#114052 #114052
User since
2004-07-19
1776 Artikel
HausmeisterIn
[Homepage]
user image
Nordlicht+2008-08-28 20:04:22--
[...]
Jetzt möchte ich diesem Programm bestimmte Rechte verleihen. Dazu dachte ich, müsste ich das Äquivalent zu einer EXE-Datei finden und dieser Datei die Rechte verleihen, die es braucht.


Die Frage ist, was Du hier unter "Rechten" verstehst – die Zugriffsrechte für die Programmdatei oder die Privilegien des laufenden Programmes, auf irgendwelche Ressourcen zuzugreifen?

Unter *nix ist es so, dass die Rechte, auf Ressourcen zuzugreifen, primär nicht von dem Programm abhängen, das läuft, sondern von dem Benutzer, der dieses Programm ausführt.

Man kann allerdings über die Zugriffsrechte für Programmdateien auch den Benutzeraccount, unter dem das Programm läuft, beeinflussen (Stichwort: setuid-Programme).

Es empfiehlt sich vermutlich, wenn Du erstmal etwas über die Rechteverwaltung unter *nix liest. Zum Beispiel in man 2 intro (Stichworte: Effective User ID, Effective Group ID, Group Access List).

Die Zugriffsrechte einer Datei ändert man mit chmod, wenn man ein Programm mit erweiterten Privilegien ausführen will, benutzt man in der Regel su oder sudo.

Quote
[...]
1. was das Äquivalent zur EXE-Datei (also die zentrale, ausführbare Programmdatei) unter Linux ist (ich vermute *.bin)


Unter *nix hängt die Ausführbarkeit einer Datei nicht von ihrer Dateinamenserweiterung ab, sondern davon, ob ein Executable-Bit in den Dateirechten gesetzt ist und ob der Dateiinhalt für den Systemkern nach etwas Ausführbarem aussieht ;-)

Meistens haben ausführbare Dateien unter *nix gar keine Dateinamenserweiterung.

Quote
[...]
2. wo ich sie finde...?


Vermutlich in irgendeinem Verzeichnis, das in der Umgebungsvariablen $PATH aufgeführt ist. Kanonische Kandidaten sind zum Beispiel /usr/bin oder /usr/local/bin.
When C++ is your hammer, every problem looks like your thumb.
<< >> 4 Einträge, 1 Seite



View all threads created 2008-08-28 22:04.