Como posso manter minha variável de ambiente ao fazer o sudo? (csh, CentOS)

0

Eu li Como faço para fazer o sudo preservar meu ambiente variáveis? e eu tenho as linhas abaixo no meu arquivo / etc / sudoers.

Defaults        env_reset
.....
Defaults        env_keep += "PATH"

mas minha variável PATH é diferente quando estou fazendo sudo como mostrado abaixo.

ckim@stph45:~/testsocket] printenv PATH
/home/ckim/Neuro/py-faster-rcnn/caffe-fast-rcnn/.build_debug/tools/:/home/ckim/anaconda2/lib:/home/ckim/anaconda2/bin:/home/ckim/uClinux/sparc-uclinux-3.4.4/bin:/opt/abde-rtems/bin:/opt/abde/bin:/opt/abocd/bin:/usr/lib64/qt4/bin:/home1/vivado-2014.3.1/DocNav:/home1/vivado-2014.3.1/Vivado/2014.3.1/bin:.:/bin:/usr/bin:/usr/sbin:/usr/local/bin:/sbin:/usr/X11R6/bin:/usr/local/Acrobat7.0/bin:/home1/cadence/installs/INCISIV152/tools/bin:/home1/cadence/installs/INCISIV152/tools/bin/64bit:/home1/cadence/installs/INCISIV152/tools.lnx86/bin/64bit:/home1/ise132/ISE_DS/ISE/bin/lin64:/home1/ise132/ISE_DS/ISE/synopsys:/home1/ise132/ISE_DS/PlanAhead/bin:/home1/ise132/ISE_DS/ChipScope/bin/lin64:/home/ckim/bin
ckim@stph45:~/testsocket] sudo printenv PATH
/sbin:/bin:/usr/sbin:/usr/bin

O que pode estar errado? Eu estou fazendo isso no tcsh no CentOS 6.7 (Final).

EDIT (pergunta alterada): (graças a quixotesca) Depois de adicionar "." para secure_path no arquivo sudoers, o secure_path está em vigor para que eu possa deixá-lo encontrar meu executável no diretório atual, mas isso me dá esse erro.

ckim@stph45:~/testsocket] sudo TCPEchoServer 7
sudo: ignoring 'TCPEchoServer' found in '.'
Use 'sudo ./TCPEchoServer' if this is the 'TCPEchoServer' you wish to run

Como posso fazer o shell não ignorar "." em secure_path? Eu não quero colocar './executável', é por isso que eu comecei essa pergunta.

    
por Chan Kim 22.03.2017 / 09:00

0 respostas