[Linux] su와 sudo의 차이점(권한 획득 방법)

[Linux] su와 sudo의 차이점(권한 획득 방법)

Linux에서 su와 sudo는 모두 특정 작업을 수행하기 위해 다른 사용자의 권한을 빌리는 데 주로 사용되는 명령어인데요, 시스템 관리를 할 때, 일반 사용자 계정으로는 제약이 많기 때문에, 수행할 수 없는 작업들이 있을 수 있으며 이러한 경우, 관리자(root) 권한이 필요한 경우가 많이 있습니다. 이러한 경우 권한을 얻으려면 두 가지 명령어인 su와 sudo를 사용 할 수 있는데요, 이번 글에서는 su와 sudo의 동작 방식과 사용법의 차이점을 알아보겠습니다.

[Linux] su와 sudo의 차이점(권한 획득 방법)

su 명령어

su 명령어는 Switch User의 약자로, 뜻 그대로 다른 사용자로 전환하는데 사용됩니다. 일반적으로 su 명령어 뒤에 변경하고자 하는 사용자 ID를 입력하여 해당 사용자의 권한을 얻습니다.

사용방법

su [변경할 계정]
Password: [변경할 계정 비밀번호]

su 명령어는 단순히 사용자 계정을 전환하므로, 루트(root)로 로그인할 경우에도 이전 사용자의 환경과 작업 디렉토리가 유지됨(루트 권한으로 작업을 수행할 경우 주의가 필요함)

ex) root 사용자로 전환

s u r o o t

이후 root 사용자의 암호를 입력하라고 뜨며, 암호를 입력하면 root 사용자로 전환 됨.

sudo 명령어

sudo 명령어는 Superuser Do의 약자로, 임시로 특정 권한 (일반적으로 루트 권한)을 사용하여 명령을 실행하는데 사용됩니다.

사용 방법

sudo [명령어]
[sudo] password for [사용자 ID]: [사용자 비밀번호 입력]

sudo 명령어를 사용하면 특정 명령어에 대한 권한을 일시적으로 얻을 수 있으므로, su에 비해서 권한 부여에 조금 더 유연하고 안전합니다.

ex) root 사용자의 권한으로 vi 편집기를 실행

sudo vi / etc / passwd

이후 마찬가지로 root 사용자의 암호를 입력하라고 뜨며, 암호를 입력하면 vi 편집기가 root 사용자의 권한으로 실행됨

su와 sudo의 차이점

su와 sudo의 가장 큰 차이점은 su는 사용자를 전환하는 반면 sudo는 일시적으로 권한을 빌리는 것입인데요, 즉, su를 사용하면 현재 사용자가 다른 사용자로 완전히 전환되고, sudo는 현재 사용자는 그대로 유지하되 특정사용자로 권한만 일시적으로 실행합니다.

su와 sudo의 사용 예

  • root 사용자로 전환
  • 다른 사용자의 권한으로 명령어 실행
  • 패키지 설치
  • 시스템 설정 파일 수정
  • 사용자 추가
  • 계정 권한 변경 등..

결론

su와 sudo를 사용하면 시스템 관리 작업을 보다 편하게 수행할 수 있는데요, 그러나 두 명령어의 사용 목적을 잘 이해하고 적절하게 사용해야 합니다. 사실 보안적인 측면을 고려하여 sudo를 적절히 활용하는 것이 권장되기는 합니다. 이번 글 에서는 su와 sudo의 차이점에 대해 알아보았습니다. 시스템 관리에 있어서 적절한 권한 사용은 중요하므로, 상황에 맞게 올바르게 선택하여 사용하시기 바랍니다!

이전 글 – Linux(CentOS)에서 Oracle 재기동(시작,종료), 오라클 리스너(Listener) 재기동(시작,종료) 방법

이전 글 – SQL Plus란? 명령어 모음(AUTOCOMMIT, HEADING, LINESIZE, PAGESIZE,PAUSE, TIMING, SHOW)

Leave a Comment