최근에 VPS 서버를 세팅하는데 시간을 많이 사용하고 있다. 코딩만해서 repository에 push만 해 보았지.. 특별히 서버를 세팅 할 기회가 있었는데 이번에 아주 맨땅에 헤딩하면서 배우고 있다.


오늘 나타난 에러는 요런 에러였다.

bash: chkconfig: command not found


(음.. 뭐냐 넌.. )

자초지정은 이러했다.


VPS를 구입하게 되면 shared hosting (공유호스팅)과 다르게 사용자에게 root 권한을 함께 준다. 그래서, 나는 보안을 위해서 새로운 사용자를 mlee 추가하였다. 물론 /etc/sudoers 파일을 수정해서 mlee가 root가 될 수 있도록 하였다. 



mlee로 로그인하였고. 그리고 sudo -s를 사용하여 root가 되었다.

하지만, 당연히 있을것이라 생각했던 chkconfig (root 였을때는 문제 없이 사용 할 수 있었음) 를 실행했더니. 해당 command를 찾을 수 없다는 것이였다. 

왜일까? 다른것들은 모두 무시 하더라도.. 난 root가 되면서 분명 root로 로그인 했을때와 같은 환경을 사용한다고 생각하고 있는데..왜 root로 로그인 할때는 되던것이 sudo -s를 사용하여 root가 되었을때는 안되는 것일까.


문제는. su 사용하면서 root가 될때의 문제였다.

su  와  su -  는 다르다.


su 라고 하면.. 자신이 사용하려는 유저의 환경(path 등을) 로딩하지 않는다.

su -s 라고 하면 .. 자신이 사용하려는 유저의 환경을 로딩한다.




저작자 표시 비영리 변경 금지
TAG

댓글을 달아 주세요