Intenté guardar alias (ver más abajo) para el usuario raíz en .bash_profile
/var/root/.bash_profile y reiniciar Terminal, pero no funcionó. ¿ Dónde .bash_profile
debe estar el archivo para mantener alias persistentes en la terminal?
$ cat /var/root/.bash_profile
alias grep='grep --color=always'
alias net='sudo netstat -ap tcp && sudo lsof -Pn -i4'
mis especificaciones:
sh-3.2# system_profiler SPSoftwareDataType
Software:
System Software Overview:
System Version: OS X 10.8.5 (12F45)
Kernel Version: Darwin 12.5.0
Boot Volume: lily
Boot Mode: Normal
Computer Name: lily’s MacBook Air
User Name: System Administrator (root)
Secure Virtual Memory: Enabled
Time since boot: 12:37
El nombre de archivo de configuración adecuado del shell raíz estándar (es decir, sh) es .profile. Así que cambie el nombre de .bash_profile a .profile:
mv /var/root/.bash_profile /var/root/.profile
source /var/root/.profile
Esto funciona al iniciar sesión como root en la GUI.
Intentar sudo su
en el shell de un sudoer no obtendrá el archivo .profile de root. Utilice sudo -i
en su lugar.
sudo ln -s "/Users/${LOGNAME}/.bash_profile" /var/root/.profile
Resultado:
$ sudo ls -lha /var/root/.profile
lrwxr-xr-x 1 root wheel 24B Oct 5 12:40 /var/root/.profile -> /Users/phx/.bash_profile
Luego, el suyo propio ~/.bash_profile
se cargará para la raíz cuando usted sudo -s
o sudo -i
(junto con sus funciones y alias) .
Sin embargo , no he podido hacer que esto funcione para comandos únicos sudo
.
~/.bash_profile
es una ubicación en la que el usuario puede escribir, y todo lo que contiene se ejecuta automáticamente como raíz durante una sesión de shell de nivel raíz, por lo que en realidad podría usarse para establecer la persistencia. De acuerdo, tendría que saber que /var/root/profile
estaba vinculado a ~/.bash_profile
, pero aún no es seguro. Solo digo.
lirio
lirio
.bashrc
en el/var/root/
directorio? acabo de notar que no hay bashrclirio
$ sudo su
para obtener la raíz, los alias ya no están disponibleslirio
.profile
(no .bash_profile) con$ sudo -i
obras! si lo pones en una respuesta con gusto lo aceptare