Dov'è .bashrc per root?


31

So che non è una buona pratica, ma sul mio sistema di sviluppo accedo come root. Qual è l'equivalente del file .bashrc in modo che io possa alias alcune funzioni?

Ho trovato il simbolo /etc/bash.bashrc& /etc/bash.bashrc.localma non sono sicuro di dove eseguire i comandi.

Esecuzione di x86_64 SUSE.

grazie, mjb.

Risposte:


19

Probabilmente è meglio metterli in ~ / .bashrc. Sembra che root non ottenga quelli normali per impostazione predefinita in alcune distro, ma devi solo cp /etc/skel/.bash* ~risolverlo.


Eccoci --- non sapevo della skeldirectory. Ti capita di sapere se è l'impostazione predefinita? Se lo modifico, funzionerà universalmente se l'utente non ha un ~/.bashrc?
— mbb,

1
@mjb Ecco dove i nuovi account ottengono la loro home directory predefinita. Lo useraddstrumento copia i file da lì. Altrimenti non viene utilizzato. Puoi aggiungere e modificare elementi lì dentro se desideri che ogni nuovo utente abbia un diverso set di file. Pensalo come il nuovo modello dir home utente.
— Keith l'

18

Che ne dici della home directory di root che è / root /?

Da alcuni aspetti, root è solo un altro utente (solo meglio e ha permesso di più). root ha una directory home, ma non è come gli altri utenti in / home /, ma semplicemente / root / quindi root: s .bashrc è quindi /root/.bashrc

Quelle in / etc sono impostazioni specifiche del sistema per tutti gli utenti, incluso root.


Grazie a grawity per sottolineare che è possibile utilizzare ~ root points nella directory principale di root, indipendentemente da dove si trova.

Puoi provarlo con

$> echo  ~root
/root

Quindi anche tu / root funzionerà al 99% sui sistemi là fuori ~ root è probabilmente più portatile e probabilmente funzionerà al 100%.

~root/.bashrc

1
A volte è in / home. È meglio usare ~root/.bashrcper fare riferimento al file nell'homeed di root.
— Grawity

5
La directory home principale non è in / home perché in alcuni sistemi * nix, / home si trova su una partizione separata dall'unità di sistema e non è necessariamente montata.
— CarlF,

Metti in evidenza perché ero così confuso --- non c'è /root/.bashrc su questa build.
— mbb,

probabilmente funzionerò al 100%, ho quasi capito perfettamente
— Mateus Viccari,

2

Invece di usare /root/.bashrcprova ad usare /root/.profile- è la stessa cosa, solo un nome diverso.

Inoltre, se si utilizza super accedere a root, potrebbe non essere in grado di leggere .bashrco .profile - solo l'emissione sunon eseguirà gli script di accesso. prova a fare

su -

7
Mi permetto di dissentire che un profilo e bashrc sono "la stessa cosa".
— Slhck,

Funziona con ttylinux ver 14.1 [boomslang], kernel Linux: 2.6.38.1
— GeoMint

@Slhck se non sono la stessa cosa, puoi spiegare le differenze? I'm a noob
— Gabriel Fair,


0

Normalmente il .bashrcfile per l'utente root dovrebbe essere lì: in /root/.bashrc
caso contrario, è possibile copiare i 2 seguenti file in /root, quindi è possibile modificare il .bashrcfile come desiderato.

cp /etc/skel/.bash_profile /root
cp /etc/skel/.bashrc /root

0

L'argomento simile: Perché suse non ha .bash_profile o .bashrc per l'utente root

Usa il file /etc/bash.bashrc per gestire l'ambiente. Non è indicato per aggiungere le configurazioni su questo file, perché quando il server viene aggiornato, perderai la tua configurazione personale.

È possibile creare un archivio chiamato bash.bashrc.local su / etc. Il sistema caricherà qualsiasi istruzione trovata su questo file, quindi cercherà la configurazione predefinita ed eseguirà entrambi.

# vi /etc/bash.bashrc.local

Divertiti!


/etc/bash.bashrc per SuSE Linux PER FAVORE NON CAMBIARE /etc/bash.bashrc Ci sono possibilità che le modifiche andranno perse durante gli aggiornamenti del sistema. Invece usa /etc/bash.bashrc.local per bash o /etc/ksh.kshrc.local per ksh o /etc/zsh.zshrc.local per la zsh o /etc/ash.ashrc.local per la semplice shell bourne ash per le impostazioni locali, alias globali preferiti, variabili VISUAL ed EDITOR, ecc ...
— Leonardo Benevides,

0

Ho guardato qui perché sul mio (64-bit) Slackware 14.2, l'accesso a root NON è sicuramente fonte /root/.bashrc. Fa sorgente /home/user/.bashrc all'accesso all'account utente. Non c'è /etc/bash.bashrc, o qualsiasi altro file bash in / etc. Né esiste alcuna directory come / etc / skel apparentemente, in gioco.


È sempre bello vedere alcuni link alla documentazione.
— davidbaumann,

0

TL / DR: /etc/bashrc

Questo file viene incorporato nel tuo ~/.bashrce in quello di tutti gli altri utenti incluso root.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.