Computer >> 컴퓨터 >  >> 체계 >> Linux

Linux에서 Sudo란 무엇이며 사용하는 방법

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

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

    Linux에서 Sudo란 무엇이며 사용하는 방법

    Linux 사용자 권한 이해

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

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

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

    Linux에서 Sudo란 무엇이며 사용하는 방법

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

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

    수도와 터미널

    Linux에서 Sudo란 무엇이며 사용하는 방법

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

    Sudo 구문

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

    Linux에서 Sudo란 무엇이며 사용하는 방법

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

    Sudo의 "Su"

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

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

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

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

    수 USERNAME -c 명령

    USERNAME을 명령을 실행하려는 사용자로 바꾸고 COMMAND를 실행하려는 Linux 명령으로 바꾸십시오.

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

    수 사용자

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

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

    Sudo 시간 제한

    Linux에서 Sudo란 무엇이며 사용하는 방법

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

    Sudo 옵션 스위치

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

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

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

    Linux에서 Sudo란 무엇이며 사용하는 방법

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

    유용한 Sudo 명령

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

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

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