bashrc

Warum Debian und/oder eine seiner Spielarten? Was muss ich vorher wissen? Wo geht es nach der Installation weiter?
Antworten
Benutzeravatar
eeknay
Beiträge: 37
Registriert: 01.11.2003 19:14:09

bashrc

Beitrag von eeknay » 29.08.2005 22:09:41

Hallo.

Ich habe ein schicke bashrc als user im home verzeichnis liegen, die auch funktioniert.

ich starte ein bash, alles schön.
jetzt mache ich ein su und die bashrc wird nicht mehr benutzt.
ich hab diese schon nach /root/.bashrc kopiert => nichts
dann hab ich die .bashrc bei dem user und root gelöscht und alles in /etc/bash.bashrc geschrieben, aber das problem nach dem su befehlt bleibt.

weiß jemand woran das liegt?
Shit happens when you party naked!

Benutzeravatar
mauser
Beiträge: 1854
Registriert: 27.01.2005 22:34:48

Beitrag von mauser » 29.08.2005 22:15:50

hi,

wenn du "su user" machst, wird der user direkt gewechselt, ohne das umgebungsvariablen und ähnliches ausgelesen werden. du bleibst auch im selben verzeichnis, auch wenn du kein leserecht hast. wenn du aber den befehl "su - user" benutzt, werden all diese sachen erledigt und du bekommst eine saubere loginshell.
mfg
mauser

Benutzeravatar
eeknay
Beiträge: 37
Registriert: 01.11.2003 19:14:09

Beitrag von eeknay » 29.08.2005 22:30:27

wie genau sollte ich das eingeben?

"su -" hab ich sonst immer benutzt.
Shit happens when you party naked!

Benutzeravatar
KBDCALLS
Moderator
Beiträge: 22456
Registriert: 24.12.2003 21:26:55
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Dortmund
Kontaktdaten:

Beitrag von KBDCALLS » 29.08.2005 22:54:28

Genauso

Code: Alles auswählen

su - root
als Beispiel für Root.
Was haben Windows und ein Uboot gemeinsam?
Kaum macht man ein Fenster auf, gehen die Probleme los.

EDV ist die Abkürzung für: Ende der Vernunft

Bevor du einen Beitrag postest:
  • Kennst du unsere Verhaltensregeln
  • Lange Codezeilen/Logs gehören nach NoPaste, in Deinen Beitrag dann der passende Link dazu.

gms
Beiträge: 7798
Registriert: 26.11.2004 20:08:38
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von gms » 29.08.2005 23:15:19

Code: Alles auswählen

su -
sollte auch funktionieren, dann hast du aber noch das Problem, daß bei einer Loginshell nicht die .bashrc sondern die .bash_profile oder .profile verwendet wird. Daher mußt du noch die .bashrc aus der .bash_profile aus aufrufen.

Gruß
gms

Benutzeravatar
eeknay
Beiträge: 37
Registriert: 01.11.2003 19:14:09

Beitrag von eeknay » 29.08.2005 23:58:37

KBDCALLS hat geschrieben:Genauso

Code: Alles auswählen

su - root
als Beispiel für Root.
dann passiert folgendes:

Unbekannte ID: -
Shit happens when you party naked!

Benutzeravatar
eeknay
Beiträge: 37
Registriert: 01.11.2003 19:14:09

Beitrag von eeknay » 29.08.2005 23:59:23

gms hat geschrieben:

Code: Alles auswählen

su -
sollte auch funktionieren, dann hast du aber noch das Problem, daß bei einer Loginshell nicht die .bashrc sondern die .bash_profile oder .profile verwendet wird. Daher mußt du noch die .bashrc aus der .bash_profile aus aufrufen.

Gruß
gms

wie genau kann ich das machen?

gruß,
eeknay
Shit happens when you party naked!

gms
Beiträge: 7798
Registriert: 26.11.2004 20:08:38
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von gms » 30.08.2005 00:02:05

eeknay hat geschrieben:

Code: Alles auswählen

su - root
dann passiert folgendes:
Unbekannte ID: -
Tippfehler detected ?

gms
Beiträge: 7798
Registriert: 26.11.2004 20:08:38
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von gms » 30.08.2005 00:06:36

eeknay hat geschrieben:wie genau kann ich das machen?
Ich glaube normalerweise sind da auskommentierte Zeilen in der .bash_profile drinnen. Ansonsten

Code: Alles auswählen

. ~/.bashrc
in die Datei .bash_profile aufnehmen

Gruß
gms

[edit]
gms@gms1:~$ su - - root
Unbekannte ID: -
gms@gms1:~$ su - root
Password:
[/edit]

Benutzeravatar
KBDCALLS
Moderator
Beiträge: 22456
Registriert: 24.12.2003 21:26:55
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Dortmund
Kontaktdaten:

Beitrag von KBDCALLS » 30.08.2005 08:52:24

In der ,bash_profile steht folgendes.

Code: Alles auswählen

     15 #include .bashrc if it exists
     16 if [ -f ~/.bashrc ]; then
     17    . ~/.bashrc


Es wird erst auf das Vorhandensein ein .bashrc geprüft wenn der Test positiv ausgeht dann wird die Datei eingebunden.

Das steht so in der Bash 3 drin, funtioniert aber genauso mit der Bash 2. Bei der Bash 2 muß mans von Hand eintragen.
Was haben Windows und ein Uboot gemeinsam?
Kaum macht man ein Fenster auf, gehen die Probleme los.

EDV ist die Abkürzung für: Ende der Vernunft

Bevor du einen Beitrag postest:
  • Kennst du unsere Verhaltensregeln
  • Lange Codezeilen/Logs gehören nach NoPaste, in Deinen Beitrag dann der passende Link dazu.

Benutzeravatar
eeknay
Beiträge: 37
Registriert: 01.11.2003 19:14:09

Beitrag von eeknay » 30.08.2005 10:22:13

jep, danke. habs jetzt
Shit happens when you party naked!

Antworten