GNU / Linux /

[PROBLEMA] Bash profile & Sudo

Participa en el tema [PROBLEMA] Bash profile & Sudo en el foro GNU / Linux.
Buenas gente tengo un problema que no lo puedo resolver a ver si me dan ...

Buscar en este tema:
 
  •  
    ExtrañoInocente escribió el 07/04/2008 a las 08:18 hs.
     
    ¿Mensaje inapropiado?
    #1 [PROBLEMA] Bash profile & Sudo
    Buenas gente tengo un problema que no lo puedo resolver a ver si me dan una mano. Estoy con Linux Mint 4 (Basado en Ubuntu 7.10) y tengo un profile de bash que modifique para todos los usuarios, es decir toquetee el /etc/bash.bashrc para agregar unas variables de entorno usando export para que cualquier usuario que se loguee en la consola bash se seteen...

    Ahora hasta ahi tiodo bien, me logueo con mi user normal y las variables de entorno se setean, me logueo como root y tambien se setean, ahroa si yo estoy con mi usuario normal y ejecuto sudo junto con algun comando la svariables de entorno no se setean o dejan de existir...

    Para dar un ejemplo Yo instale Apache Maven 2.8 en /opt/maven y estableci una variable de entorno llamada MAVEN_HOME=/opt/maven y ademas agregue al path a $MAVEN_HOME/bin todo eso dentro del /etc/bash.bashrc

    Luego si yo hago "sudo mvn" me deberia funcionar ya que el comando mvn esta dentro de $MAVEN_HOME/bin/ que deberia estar en el path tal cual lo indique en /etc/bash.bashrc pero no lo encuentra... Si ejecuto el comando sin sudo con cualquier usuario lo encuentra al comando.

    Como puedo resolver esto?

    Saludos
    Pablo
    +
     
    0
    Me gusta
     
    http://www.psicofxp.com/forums/gnu-linux.50/690049-problema-bash-profile-and-sudo.html
    | Más
  • LuisManson escribió el 07/04/2008 a las 19:20 hs. ¿Mensaje inapropiado?

    #2 Re: Bash profile & Sudo

    leyendo el man de sudo en primer lugar...

    la opcion q buscas es -E...como implementarlo...se me ocurren 2 o 3 cosas, lo dejo a tu criterio

    man sudo
    Me gusta este mensaje
  • broli escribió el 08/04/2008 a las 07:12 hs. ¿Mensaje inapropiado?

    #3 Re: Bash profile & Sudo

    leete el man del bash.
    las shells pueden ser de dos tipos. creo que eran loguin y algo mas
    una es cuando te logues, y la otra es cuando lanzas un subshell
    en uno de los dos casos no se sourcea /etc/bashrc
    aunque siempre se sourcea /etc/profile
    por lo que veo, sudo ejecuta bash en la forma que el mismo bash no sourcea esos archivos que vos necesitas

    otra recomendacion medio aparte, no edites /etc/profile
    pone (si no lo tiene)

    Código:
    for i in /etc/profile.d/*.sh ; do
        if [ -r "$i" ]; then
            . $i
        fi
    done
    
    y en dentro de la carpeta /etc/profile.d/ crea un sh por cada cosa que quieras modificar
    queda mas limpio, y si el linux actualiza el /etc*profile no te destruye lo que hiciste
    Me gusta este mensaje
  • ExtrañoInocente escribió el 08/04/2008 a las 08:10 hs. ¿Mensaje inapropiado?

    #4 Re: Bash profile & Sudo

    Gracias Broli, al final me resigne, en vez de ejecutar sudo, mala costumbre que me dio el maldito Ubuntu, fue empezar a usar la cuenta root que tengo habilitada en mi Linux Mint 4 y ahora en vez de hacer $ sudo XXXXXXX hago:

    $ su
    $ // Aca escribo password de root
    $ XXXXXXX

    Ahora lo que no entendi Broli es lo siguiente... ese snippet de codigo bash que me pusiste donde lo escribo? en /etc/bash.bashrc????

    Saludos
    Pablo
    Me gusta este mensaje
  • broli escribió el 08/04/2008 a las 08:32 hs. ¿Mensaje inapropiado?

    #5 Re: Bash profile & Sudo

    deberia estar ya en /etc/profile , y la carpeta /etc/profile.d deberia existir y tenes scripts.

    hice referencia al codigo para que entiendas que pasa. si solo te digo "pone eso en un script en /etc/profile.d/" ibas a lograr sacarlo andando, pero no sabrias como
    Me gusta este mensaje
  • LuisManson escribió el 08/04/2008 a las 17:17 hs. ¿Mensaje inapropiado?

    #6 Re: Bash profile & Sudo

    ??? reinventando la rueda?

    Lo que yo dije no es exactamente lo que queres? sudo -E llama a sudo de forma q preserve las variables de entorno... -i hace una login shell, tambien te puede servir.

    Sea como sea, metes esto como alias en el profile y a la m*** o de ultima editando el sudoers, en el man, sobre la opcion -E dice cual es la opcion.
    Me gusta este mensaje
  • ExtrañoInocente escribió el 08/04/2008 a las 18:00 hs. ¿Mensaje inapropiado?

    #7 Re: Bash profile & Sudo

    Che LuisManson gracias por la ayuda que me queres brindar pero en Ubuntu Linux 7.10 y Linux Mint 4.0 Daryna el sudo no tiene la opcion -E tiene la opcion -e pero hace algo mas distinto a lo que quiero hacer.

    Adjunto man de sudo Ubuntu 7.10

    sudo -K | -L | -V | -h | -k | -l | -v

    sudo [-HPSb] [-a auth_type] [-c class|-] [-p prompt] [-u username|#uid]
    {-e file [...] | -i | -s | command}

    sudoedit [-S] [-a auth_type] [-p prompt] [-u username|#uid] file [...]



    -e The -e (edit) option indicates that, instead of running a command,
    the user wishes to edit one or more files. In lieu of a command,
    the string "sudoedit" is used when consulting the sudoers file. If
    the user is authorized by sudoers the following steps are taken:
    1. Temporary copies are made of the files to be edited with
    the owner set to the invoking user.

    2. The editor specified by the VISUAL or EDITOR environment
    variables is run to edit the temporary files. If neither
    VISUAL nor EDITOR are set, the program listed in the editor
    sudoers variable is used.

    3. If they have been modified, the temporary files are copied
    back to their original location and the temporary versions
    are removed.

    If the specified file does not exist, it will be created. Note
    that unlike most commands run by sudo, the editor is run with the
    invoking user’s environment unmodified. If, for some reason, sudo
    is unable to update a file with its edited version, the user will
    receive a warning and the edited copy will remain in a temporary
    file.

    Y esto es lo que me tira si ejecuto sudo -E gedit archivo.txt

    pablo@pablo-desktop:~$ sudo -E gedit archivo.txt
    sudo: illegal option `-E'
    usage: sudo -K | -L | -V | -h | -k | -l | -v
    usage: sudo [-HPSb] [-p prompt] [-u username|#uid]
    { -e file [...] | -i | -s | <command> }

    Saludos
    Pablo
    Me gusta este mensaje
  • LuisManson escribió el 10/04/2008 a las 18:11 hs. ¿Mensaje inapropiado?

    #8 Re: Bash profile & Sudo

    WOW, q cosa rara, y en el sudoers no tenes la variable env_reset ?
    Me gusta este mensaje


Estadísticas del tema
  • 7 RESPUESTAS
  • 1738 VISTAS
  • 3 USUARIOS RESPONDIERON
 
Ir arriba
Contacto | Acerca de | Ayuda | Términos Legales | privacidad | Pautas de convivencia | Mapa de los foros | TrabajÁ con nosotros
©2008 Psicofxp.com S.A. - Todos los derechos reservados
Certifica IAB