Linux에서 Sudo란 무엇이며 어떻게 사용합니까?

우수한 XKCD 웹 만화에서 위의 만화를 고려하십시오 . 의자에 앉은 게으른 사람은 친구가 샌드위치를 ​​만들어 주기를 원하지만 만들어 줄 권한이 없습니다. 즉, 강력한 sudo 명령을 호출할 때까지입니다. 그 후 샌드위치는 어떤 식 으로든 만들어집니다. 

실생활에서 사람에게 sudo를 시도하는 것은 그다지 효과적이지 않을 수 있지만 Linux 세계의 모든 장애물을 통과하는 마법의 명령입니다 . 스도가 뭔가요? 그것이 존재하는 이유는 무엇입니까? 대답은 Linux 가 권한을 처리하는 방법에 있습니다.

Linux 사용자 권한(Linux User Permissions) 이해

Linux 는 권한을 처리하는 방식으로 인해 안전한 운영 체제로 간주됩니다. macOS( Linux(Linux) 와 조상을 공유 ) 및 Windows 와 같은 운영 체제는 이 점에서 이제 Linux 와 비슷하지만 (Linux)오픈 소스(Open Source) 운영 체제는 여전히 다소 독특합니다.

Linux가 권한을 처리하는 방법을 이해하면 sudo 명령에 대해 훨씬 쉽게 이해할 수 있습니다. 모든 최신 운영 체제에는 "관리자" 또는 "루트" 사용자 권한 수준이 있습니다. 관리자 또는 루트 계정이 있는 경우 설정을 변경하고 데이터를 삭제하고 일반적으로 컴퓨터에서 원하는 모든 작업을 수행할 수 있습니다. 

여기에는 데이터 손실이나 완전한 지우기 및 재설치가 필요할 수 있는 해서는 안 되는 일이 포함됩니다.

Linux 는 루트 사용자 수준 권한을 기본값으로 설정하지 않습니다. 대신, 귀하의 계정은 권한 수준을 높이지 않고 시스템의 정말 민감한 부분에 접근할 수 없습니다. 즉, 그래픽 인터페이스를 사용하여 평소와 다른 작업을 수행하려는 경우 시스템에서 관리자 암호를 입력하도록 요청합니다. 

그러나 터미널(Terminal) 명령줄을 사용하여 작업을 수행하려는 경우 sudo가 가장 안전하고 효율적인 방법입니다.

수도와 터미널

Linux 에서 자신에게 높은 권한을 부여하는 방법에는 두 가지가 있습니다 . 하나는 루트 사용자로 영구적으로 로그인하는 것입니다. 이것의 문제는 컴퓨터에 액세스할 수 있는 다른 사람이 혼란을 일으킬 수 있고 심지어 실수로 할 수 있다는 것입니다. Sudo 는 뒤따르는 특정 명령을 실행하기 위해 짧은 시간 동안만 권한을 높입니다.

수도 구문

Sudo의 구문(명령 형식)은 간단합니다. 실행하려는 명령 다음에 "sudo"를 입력하기만 하면 됩니다 .(Simply)

예를 들어 "sudo apt-get update"는 관련 파일에 나열된 모든 앱 저장소를 업데이트합니다. sudo 없이 실행하려고 하면 권한이 없다는 오류 메시지가 표시됩니다. 덧붙여서, 이것은 일반적으로 즐겨 사용하는 Linux 배포판을 새로 설치한 후 실행하려는 첫 번째 sudo 명령입니다. 

Sudo의 "수"

sudo의 "su"는 "superuser"의 줄임말이며 독립 실행형 명령입니다. "su" 명령을 사용하면 sudo로 승격되는 사용자의 권한을 변경할 수 있습니다. 

sudo는 일시적으로 루트로 승격되지만 su는 적절한 권한을 가진 다른 사용자로 변경합니다. 중요하지 않은 구별처럼 보일 수 있지만 sudo가 사용자를 승격시키는 계정을 변경해야 할 충분한 이유가 있습니다. 

우선(First) 계정을 변경한다는 것은 일반 사용자가 루트 비밀번호를 모른다는 것을 의미합니다. 둘째, 모든 sudo 명령에 대한 로그가 있습니다. 이는 시스템 관리자(루트)가 누가 su 명령을 실행했는지 조회할 수 있음을 의미합니다.

su의 구문은 본질적으로 sudo와 동일합니다.

Su 사용자 이름 -c 명령(Su USERNAME -c COMMAND)

USERNAME(Replace USERNAME) 을 명령을 실행하려는 사용자로 바꾸고 COMMAND(COMMAND) 를 실행하려는 Linux 명령으로 바꿉니다.

다른 사용자로 여러 명령을 실행하려면 다음을 사용하십시오.

수 사용자(Su USER)

(Replace USER)USER 를 원하는 사용자 계정 ID로 바꿉니다 .

su를 단독으로 사용하는 경우 Linux 는 "exit" 명령을 사용할 때까지 다른 사용자 계정으로 전환합니다. 이 사용자 또는 해당 세션의 터미널에 액세스하는 다음 사용자는 여전히 높은 권한을 갖게 된다는 점을 기억하는 것이 중요합니다. 이것이 일반적으로 su보다는 sudo를 사용하는 것이 더 나은 이유입니다.

Sudo 시간 제한

sudo 명령을 처음 사용하는 경우 암호를 입력해야 합니다. 그런 다음 해당 암호는 15분 동안 유효합니다. sudo visudo 명령을 실행하고 "timestamp_timeout="을 더 길거나 더 짧은 값으로 변경하여 이 기본값을 변경할 수 있습니다 . 그러나 sudo 암호가 유효한 기간을 연장하거나 단축해야 하는 합당한 이유가 없는 한 이 작업을 수행하지 않는 것이 좋습니다.

Sudo 옵션 스위치

sudo 구문은 간단하지만 몇 가지 스위치는 알아둘 가치가 있습니다. 다음 명령은 추가 정보를 열거나 sudo 세션을 제어하는 ​​데 도움이 됩니다.

  • -h 는 sudo에 대한 구문 및 명령 정보를 보여줍니다.
  • -V 는 컴퓨터의 sudo에 대한 현재 버전을 표시합니다.
  • -v sudo 시간 제한을 새로 고쳐 시계를 다시 시작합니다.
  • -l 은 사용자 권한을 나열합니다.
  • -k 는 현재 sudo 세션을 즉시 종료하여 상승된 권한을 제거합니다.

sudo에는 더 많은 옵션이 내장되어 있으며 위에 나열된 첫 번째 -h 스위치를 사용하여 모두 볼 수 있습니다.

위의 스크린샷은 도움말 옵션을 사용할 때의 결과입니다.

유용한 Sudo 명령

그렇다면 모든 Linux(Linux) 사용자가 알아야 할 sudo의 명령 은 무엇입니까? 우리는 이미 sudo apt-get update를 다루었지만 다음 사항에도 유의하십시오.

  • Sudo apt-get upgrade 는 설치된 모든 패키지를 업그레이드합니다.
  • Sudo apt-get install <package-name> 은 선택한 소프트웨어를 설치합니다. 패키지 이름을 설치하려는 이름으로 변경하기만 하면 됩니다.
  • 패키지 이름을 모르는 경우 dpkg –list 를 사용하십시오 .
  • 터미널에서 설치된 패키지를 제거하려면 sudo apt-get remove <package-name (다시 문제의 특정 패키지 이름으로 대체)을 사용하십시오.

이것들은 아마도 당신이 사용해야 할 첫 번째 sudo 명령일 것입니다. 그러나 위에서 배웠듯이 모든 명령이 sudo를 따를 수 있지만, 더 높은 권한이 필요한 명령만 사용해야 합니다.



About the author

저는 Edge 경험이 있는 숙련된 Windows 10 및 Windows 11/10 관리자입니다. 저는 이 분야에서 제공할 수 있는 풍부한 지식과 경험을 가지고 있습니다. 그렇기 때문에 제 기술이 귀사에 귀중한 자산이 될 것이라고 생각합니다. Windows 10과 Edge 모두에서 다년간의 경험을 통해 새로운 기술을 빠르게 배우고 문제를 신속하게 해결하며 비즈니스 운영에 대한 책임을 질 수 있습니다. 또한 Windows 10 및 Edge에 대한 경험을 통해 운영 체제의 모든 측면에 대해 매우 잘 알고 있으므로 서버 관리 또는 소프트웨어 응용 프로그램 관리에 도움이 될 것입니다.



Related posts