티스토리 뷰
리눅스(Linux)에서 특정 명령을 실행하거나 파일에 접근하기 위해서는 루트(root) 권한이 필요합니다. 일반 사용자(유저)가 root 권한을 사용하기 위해서 su, sudo 명령어를 사용합니다. 이 글에서는 두 명령의 차이점과 사용법을 정리합니다.
su (switch user) 명령어
현재 계정을 로그아웃을 하지 않고 다른 계정으로 전환하는 명령어
su
root 사용자로 변경한다.
암호를 물어볼 때 root 암호를 입력해야 한다.
su user01
다른 사용자로 변경한다.
su - user01
다른 사용자로 변경하면서 환경변수까지 적용한다. (su, su - 차이)
(쉘과 홈 디렉토리가 변경된 것을 확인할 수 있다.)
whoami
현재 사용자를 확인한다.
logout (또는 exit)
이전 계정으로 돌아온다.
su -c 'apt-get update'
root 권한으로 하나의 명령만 실행한다.
(sudo와 비슷하게 사용 가능)
sudo (superuser do) 명령어
현재 계정에서 root 권한을 이용하여 명령어를 실행할 때 사용
sudo apt-get update
sudo 다음에 실행할 명령을 입렵하면 root 권한으로 명령어를 실행한다.
실행하기 전 현재 사용자의 비밀번호를 물어본다.
(root 사용자의 암호를 물어보는 su 명령어와 차이가 있다.)
sudo -i 또는 sudo -s
i, s 옵션을 사용하여 sudo 명령도 su처럼 root 계정으로 전환이 가능하다.
(s옵션은 현재 디렉토리를 유지하지만 i옵션 /root 디렉토리로 이동한다.)
/etc/sudoers 파일에 지정된 사용자만 sudo 명령을 사용할 수 있다.
visudo 프로그램을 이용하여 /etc/sudoers 파일을 수정한다.
sudo visudo
...
# User privilege specification
root ALL=(ALL:ALL) ALL
user01 ALL=(ALL:ALL) ALL
...
파일을 위와 같이 수정하면 user01 사용자도 sudo 명령을 쓸 수 있다.
(사용할 수 있는 명령어를 좀 더 세밀하게 지정할 수도 있다.)
리눅스 사용자 관리 명령어 (추가 useradd, adduser, 삭제 userdel, 변경 usermod)
리눅스 그룹 관리 명령어 (groups, groupadd, groupdel, gpasswd, newgrp, usermod)
리눅스 권한 관리 명령어 사용법 정리 (chmod, chown, chgrp 명령어)
- TAG
- linux, root 권한, root 권한 획득, su 명령어, sudo 명령어, 리눅스, 리눅스 root 권한, 리눅스 su, 리눅스 sudo, 리눅스 visudo, 리눅스 루트 권한
-
흑 컴퓨터 웹사이트 제작위해 mysql php Apache을 설치 했습니다.
apache설치 확인을 위해
Debian이나 Ubuntu GNU / Linux에서는 필요한 모든 웹 서버 패키지를 설치할 apache2 메타 패키지를 설치할 수 있습니다.
sudo apt-get install apache2
Red Hat Enterprise에서는 httpd 패키지를 사용하여 Apache를 설치하고 다음 명령을 사용하여 부팅 할 때 루트로 시작할 수 있도록 구성 할 수 있습니다.
yum install httpd
chkconfig --levels 235 httpd on
service httpd start
를 입력하라는데 아무리 찾아도 어디에 입력해야하는지 안나옵니다,,
명령프롬포트에 입력하면 실행할수 있는 파일이 아니라고 나오고
sudo 어디다가 입력했는지 알수 있을까요?ㅠㅠ..... 2018.01.13 12:46 -
빌노트 최근 우분투만 만져서 레드햇은 사실 잘 모릅니다.
각 명령어 앞에 sudo를 사용해보시고
그래도 안되면 yum부터 잘 동작하는지 알아봐야 할 것 같습니다.
더 자세한 내용은 구글링을 해보세요. 2018.01.16 20:52 신고 -
쩌리 yum install httpd
chkconfig --levels 235 httpd on
service httpd start
는 그냥 쉘에서 한줄 한줄 실행하시면 되는대
안되는 건가요?
무슨 말인지 이해가 안됩니다. 2018.02.23 02:07 -
가니 사용자권한을 root 권한을 얻으려고 su - 라고 입력했는데 패스워드를 묻더군요 근데 패스워드가 입력이 안되고 자꾸 su : incorrect password 라고 뜨네요 이거 왜이러죠? 2018.03.06 09:21
-
빌노트 루트 암호가 없거나 틀린 것 같습니다.
passwd 명령으로 암호를 지정해보세요. 2018.03.06 09:31 신고 -
행인 안녕하세요?
갓 입문한 사람입니다.
윈도즈에 도커 및 컨테이너 깔아 공부중입니다.
sudo명령이 들어먹지 않는데 어떻게 해야 합니까?
(bash: sudo: command not found)라고 뜹니다.ㅠㅠ
whoami하면 root라 하고
groups해도 root라고 합니다.
/etc/밑에 sudoers라는 파일이 없습니다. 2018.06.02 23:15 -
빌노트 root 권한이라면 sudo를 사용할 필요가 없을 것 같습니다.
만약 sudo가 필요하면
apt-get install sudo로 설치할 수 있습니다. 2018.06.03 18:49 신고 -
문태승 안녕하세요!
루트계정으로 갔다가 다시 유저모드로 가는게 su - pi 잖아요? 그런데 껐다가 다시 켜면 계속 루트계정으로 시작이 되네요...
원래대로 시작부터 유저모드로는 어떻게 하나요>?? 2019.05.15 20:35 -
빌노트 방법은 다양합니다. 구글링하셔서 원하는 방법을 찾으시기 바랍니다. 2019.06.09 23:02 신고
-
지나가다 usermod -a G sudo [user]로 수도 권한만 주면 되죠.
visudo로 하는 방법은 틀렸다 봅니다. 2020.10.21 14:03 -
빌노트 감사합니다. 2020.12.11 22:49 신고
-
감사합니다. 안녕하세요.
저는 학교에서 생물정보학 공부하면서 학교에서 만들어준 서버에 접속해서 그 안에서 서버를 사용하고 있습니다.
다만 한가지 궁금한 점이, 프로그램을 서버내에 설치하는 과정에서 sudo make install 을 해야하는데 제 아이디 비밀번호를 넣으면
root 관리자는 다른 사람(학교서버이름)이라고 나와서요.
혹시 프로그램을 다운받아서 사용할 다른 방법이나 sudo 비밀번호를 제 아이디 비밀번호를 사용할 수 있는 방법이 있을까요?
감사합니다! 2020.11.25 18:43 -
빌노트 서버 관리자에게 문의를 해봐야겠네요. 학교 서버의 경우 보안때문에 모든 권한을 열어주지 않습니다. 2020.12.11 22:49 신고