뭐만하면 퍼미션 디나이가 뜨는 것이었다. 즉 권한이 없다는 말인데 그래서 처음 배운게 sudo명령어를 앞에 붙이는 방법이었다.
매번 명령어마다 앞에 sudo를 붙이는게 귀찮아 조금 더 알아보니 su 명령어로 root계정으로 전환하는 방법 이었다.
처음에는 su가 superUser의 줄임말인줄 알았다.
그러던중 /etc/profile 에 분명히 alias를 등록해 놓았는데 su로 계정을 전환해도 매번 source /etc/profile을 안하면 alias가 초기화 되있었다.
모르고 쓰니 알턱이 없었고 구글링으로 약간의 공부를 한 결과 정말 내가 모르고 썼다는걸 느껴 정리를 해본다.
1. su (Swich User)
우선 su는 그저 root계정으로 전환하는 Super User인줄 알았는데 Swich User 즉 사용자 전환 명령어였다.
파라미터를 안주면 기본으로 root계정으로 전환되었던 것뿐..
- 로그아웃 없이, 다른 사용자로 로그인을 가능하게하는 리눅스 명령어 - 파라미터가 없으면 "su"는 "su root"와 동일(=root 계정으로 로그인) - 로그인 하려는 계정의 패스워드가 필요하다 - 전환 하려는 계정의 환경변수는 가져오지 않는다.
저 마지막 줄 때문에 alias를 가져오지 못했던 것이다.
su - 로 계정을 전환하면 해당 계정에 환경변수까지 가져올 수 있다.
2. sudo (Substitute User Do)
sudo명령어는유닉스및유닉스 계열운영 체제에서, 다른 사용자의 보안 권한, 보통슈퍼유저로서 프로그램을 구동할 수 있도록 하는프로그램이다. 명칭은 본래 슈퍼유저로서의 실행에 사용되던 것에서 “superuser do”에서 유래하였으나, 후에 프로그램의 기능이 확장되며 “substitute user do”(다른 사용자의 권한으로 실행)의 줄임말로 해석되게 되었다.