Gdzie jest .bashrc dla roota?

31

Wiem, że to nie jest najlepsza praktyka, ale w moim systemie deweloperskim loguję się jako root. Jaki jest ekwiwalent pliku .bashrc, aby móc aliasować niektóre funkcje?

Znalazłem /etc/bash.bashrc&, /etc/bash.bashrc.localale nie jestem pewien, gdzie mam wykonywać polecenia.

Uruchamianie SUSE x86_64.

dzięki, mjb.

Mbb
źródło

Odpowiedzi:

19

Prawdopodobnie najlepiej umieścić je w ~ / .bashrc. Wygląda na to, że root w niektórych dystrybucjach domyślnie nie dostaje normalnych, ale wystarczy cp /etc/skel/.bash* ~to naprawić.

Keith
źródło
Proszę bardzo --- nie wiedziałem o skelkatalogu. Czy wiesz, czy to jest ustawienie domyślne? Jeśli go edytuję, czy będzie działać uniwersalnie, jeśli użytkownik nie ma ~/.bashrc?
MBb
1
@mjb Tam nowe konta uzyskują domyślny katalog domowy. W useraddkopiuje pliki narzędziowe stamtąd. W przeciwnym razie nie jest używany. Możesz tam dodawać i zmieniać rzeczy, jeśli chcesz, aby każdy nowo utworzony użytkownik miał inny zestaw plików. Pomyśl o tym jako o nowym szablonie katalogu domowego użytkownika.
Keith
18

Co powiesz na katalog domowy root'a, czyli / root /?

Pod pewnymi względami root jest po prostu innym użytkownikiem (po prostu lepszy i dozwolony więcej). root ma katalog główny, ale nie jest podobny do innych użytkowników w / home /, ale po prostu / root / so root: s .bashrc jest zatem /root/.bashrc

Te w / etc są ustawieniami specyficznymi dla systemu dla wszystkich użytkowników, w tym root.


Dzięki grawitacji możesz wskazać, że możesz używać ~ root punktów do katalogu głównego katalogu głównego, niezależnie od tego, gdzie się znajduje.

Możesz to przetestować za pomocą

$> echo  ~root
/root

Więc nawet ty / root będzie działał na 99% w systemach tam dostępnych - root jest prawdopodobnie bardziej przenośny i prawdopodobnie będzie działał na 100%.

~root/.bashrc
Johan
źródło
1
Czasami jest w / home. Najlepiej użyć, ~root/.bashrcaby odwołać się do pliku w katalogu głównym katalogu głównego.
grawity
5
Głównego katalogu domowego nie ma w katalogu / home, ponieważ w niektórych systemach * nix / home znajduje się na innej partycji niż dysk systemowy i niekoniecznie jest zamontowany.
CarlF
Podkreślasz, dlaczego byłem tak zdezorientowany - w tej wersji nie ma /root/.bashrc.
MBb
prawdopodobnie działa na 100%, almots całkowicie rozumiem
Mateus Viccari
2

Zamiast używać /root/.bashrcspróbuj użyć /root/.profile- to to samo, po prostu inna nazwa.

Ponadto, jeśli używasz susię do rootowania, może nie czytać .bashrclub .profile - samo wydanie sunie uruchomi skryptów logowania. spróbuj zrobić

su -
Jerome3k
źródło
7
Zaczynam się różnić, że profil i bashrc to „to samo”.
slhck
Działa z ttylinux wer. 14.1 [boomslang], jądro Linuksa: 2.6.38.1
GeoMint
@ Slhck, jeśli to nie to samo, czy możesz wyjaśnić różnice? Jestem noob
Gabriel Fair
@Gabriel superuser.com/questions/183870/…
slhck 21.04.18
0

Zwykle .bashrcpowinien znajdować się plik dla użytkownika root: /root/.bashrc
jeśli tak nie jest, możesz skopiować 2 następujące pliki /root, a następnie możesz edytować .bashrcplik, jak chcesz.

cp /etc/skel/.bash_profile /root
cp /etc/skel/.bashrc /root
Nicolas
źródło
0

Podobny temat: Dlaczego suse nie ma .bash_profile lub .bashrc dla użytkownika root

SuSe używa pliku /etc/bash.bashrc do zarządzania środowiskiem. Nie jest wskazane dodawanie konfiguracji do tego pliku, ponieważ gdy serwer zostanie zaktualizowany, stracisz konfigurację osobistą.

Możesz utworzyć archiwum o nazwie bash.bashrc.local na / etc. System załaduje wszystkie instrukcje znalezione w tym pliku, a następnie wyszuka domyślną konfigurację i wykona oba.

# vi /etc/bash.bashrc.local

Baw się dobrze!

Leonardo Benevides
źródło
/etc/bash.bashrc dla SuSE Linux PROSZĘ NIE ZMIENIAĆ /etc/bash.bashrc Istnieją szanse, że zmiany zostaną utracone podczas aktualizacji systemu. Zamiast tego użyj /etc/bash.bashrc.local dla bash lub /etc/ksh.kshrc.local dla ksh lub /etc/zsh.zshrc.local dla zsh lub /etc/ash.ashrc.local dla zwykłej powłoki jesionowej dla ustawień lokalnych, ulubionych globalnych aliasów, zmiennych VISUAL i EDITOR itp.
Leonardo Benevides,
0

Szukałem tutaj, ponieważ na moim (64-bitowym) systemie Slackware 14.2 logowanie do roota na pewno NIE jest źródłem /root/.bashrc. DOBRE źródło /home/user/.bashrc przy logowaniu do konta użytkownika. Nie ma /etc/bash.bashrc ani żadnych innych plików bash w / etc. Najwyraźniej nie ma też takiego katalogu jak / etc / skel.

jrc
źródło
Zawsze miło jest widzieć linki do dokumentacji.
davidbaumann,
0

TL / DR: /etc/bashrc

Ten plik został włączony zarówno do Ciebie, ~/.bashrcjak i do wszystkich innych użytkowników, w tym root.

Marc
źródło