sudo ( 에스 높은 안에 BE ~하다 ) Linux의 명령은 일반적으로 슈퍼유저만 실행할 수 있는 일부 명령의 접두사로 사용됩니다. 명령 앞에 sudo를 붙이면 해당 명령은 높은 권한으로 실행됩니다. 즉, 적절한 권한이 있는 사용자가 슈퍼유저와 같은 다른 사용자로서 명령을 실행할 수 있도록 허용합니다. 이는 Windows의 관리자 권한으로 실행 옵션과 동일합니다. sudo 옵션을 사용하면 여러 관리자를 가질 수 있습니다.
다음을 사용할 수 있는 사용자는 sudo 명령에 항목이 있어야 합니다. sudoers 다음 위치에 있는 파일 /etc/sudoers . sudoers 파일을 편집하거나 보려면 sudo 명령을 사용해야 한다는 점을 기억하십시오. sudoers 파일을 편집하려면 visudo 명령을 사용하는 것이 좋습니다.
기본적으로 sudo에서는 사용자가 루트 비밀번호 자체가 아닌 사용자의 비밀번호인 비밀번호로 자신을 인증해야 합니다.
sudo 명령 구문:
sudo -V | -h | -l | -v | -k | -K | -s | [ -H ] [-P ] [-S ] [ -b ] | [ -p prompt ] [ -c class|- ] [ -a auth_type ] [-r role ] [-t type ] [ -u username|#uid ] command>
sudo 명령에서 사용 가능한 옵션
| 옵션 | 설명 | 통사론 |
|---|---|---|
| -안에 | -V(버전) 옵션을 사용하면 sudo가 버전 번호를 인쇄하고 종료합니다. 호출하는 사용자가 이미 루트인 경우 -V 옵션은 sudo가 컴파일된 기본값 목록을 인쇄합니다. | sudo -V> |
| -엘 | -l(목록) 옵션은 현재 호스트에서 사용자에게 허용된(및 금지된) 명령을 인쇄합니다. | sudo -l> |
| -h 또는 –help | -h(도움말) 옵션을 사용하면 sudo가 사용법 메시지를 인쇄하고 종료합니다. | sudo -h> |
| -안에 | -v(유효성 검사) 옵션이 주어지면 sudo는 사용자의 타임스탬프를 업데이트하고 필요한 경우 사용자의 비밀번호를 묻는 메시지를 표시합니다. 이렇게 하면 sudo 시간 초과가 5분 더 연장되지만(또는 sudoers에 지정된 대로) 명령이 실행되지 않습니다. 이것은 어떤 출력도 제공하지 않습니다. | sudo -v> |
| -케이 | sudo에 대한 -k(kill) 옵션은 사용자의 타임스탬프를 무효화합니다. 따라서 다음에 sudo를 실행할 때 비밀번호가 필요합니다. 이 옵션은 비밀번호가 필요하지 않으며 사용자가 로그아웃 파일에서 sudo 권한을 취소할 수 있도록 추가되었습니다. | sudo -k> |
| -케이 | -k 옵션과 마찬가지로 -K(sure kill) 옵션은 사용자의 타임스탬프를 완전히 제거하는 데 사용됩니다. 마찬가지로 이 옵션에는 비밀번호가 필요하지 않습니다. | sudo -K> |
| -비 | -b (백그라운드) 옵션은 sudo에게 주어진 명령을 백그라운드에서 실행하도록 지시합니다. -b 옵션을 사용하면 쉘을 사용할 수 없습니다. 직업 통제 프로세스를 조작합니다. | sudo -b [command]> (백그라운드에서 실행하려는 명령으로 명령을 바꾸십시오) |
| -피 | sudo -p 프롬프트 명령을 사용하면 sudo가 사용자 비밀번호를 요청할 때 표시하는 비밀번호 프롬프트를 사용자 정의할 수 있습니다. 기본적으로 sudo는 다음과 같은 일반 비밀번호 프롬프트를 표시합니다. | sudo -p 'Enter your password' [command]> (백그라운드에서 실행하려는 명령으로 명령을 바꾸십시오) |
| -N | -n 옵션을 사용하면 sudo가 비밀번호를 묻지 않고 명령을 실행할 수 있습니다. 이 옵션은 sudo 명령을 백그라운드 작업으로 실행하거나 쉘 스크립트에서 실행할 때 유용합니다. -n 옵션은 비대화형을 나타냅니다. | sudo -n [command]> (백그라운드에서 실행하려는 명령으로 명령을 바꾸십시오) |
| -안에 | -u 옵션을 사용하면 sudo가 루트가 아닌 사용자로 지정된 명령을 실행합니다. 사용자 이름 대신 UID를 지정하려면 #uid를 사용하세요. | sudo -u [user] [command]> (백그라운드에서 실행하려는 명령으로 명령을 바꾸십시오) |
| -에스 | -s 옵션은 SHELL 환경 변수가 설정된 경우 지정된 쉘을 실행하거나 passwd 파일에 지정된 쉘을 실행합니다. | sudo -s [command]> (백그라운드에서 실행하려는 명령으로 명령을 바꾸십시오) |
| -시간 | -H 옵션은 passwd에 지정된 대로 HOME 환경 변수를 대상 사용자(기본적으로 루트)의 홈 디렉터리로 설정합니다. 기본적으로 sudo는 HOME을 수정하지 않습니다. | sudo -H [command]> (백그라운드에서 실행하려는 명령으로 명령을 바꾸십시오) |
| -에스 | -S 옵션을 사용하면 sudo가 터미널 장치 대신 표준 입력에서 비밀번호를 읽습니다. | sudo -S [command]> (백그라운드에서 실행하려는 명령으로 명령을 바꾸십시오) |
| -ㅏ | -a 옵션을 사용하면 sudo가 /etc/login.conf에서 허용하는 대로 사용자를 확인할 때 지정된 인증 유형을 사용하게 됩니다. 시스템 관리자는 /etc/login.conf에 auth-sudo 항목을 추가하여 sudo 관련 인증 방법 목록을 지정할 수 있습니다. | sudo -a [auth-type] [command]> (백그라운드에서 실행하려는 명령으로 명령을 바꾸십시오) |
| — | — 플래그는 sudo가 명령줄 인수 처리를 중지해야 함을 나타냅니다. -s 플래그와 함께 사용하면 가장 유용합니다. | sudo -- [command]> (백그라운드에서 실행하려는 명령으로 명령을 바꾸십시오) |
몇 가지 명령의 출력
1. -V: -V(버전) 옵션을 사용하면 sudo가 버전 번호를 인쇄하고 종료합니다. 호출하는 사용자가 이미 루트인 경우 -V 옵션은 sudo가 컴파일된 기본값 목록을 인쇄합니다.
자바에서 난수 생성
sudo -V
자바 arraylist 정렬
2. -l: -l(목록) 옵션은 현재 호스트에서 사용자에게 허용된(및 금지된) 명령을 인쇄합니다.
sudo -l
3. -h 또는 –help: -h(도움말) 옵션을 사용하면 sudo가 사용법 메시지를 인쇄하고 종료합니다.
sudo -h
환경 변수
이러한 환경 변수는 sudo에서 사용됩니다.
| 꼬리표 | 설명 |
|---|---|
| 편집자 | 사용할 기본 편집기 -그것은 (sudoedit) VISUAL이 설정되지 않은 경우 모드 |
| 집 | ~ 안에 -에스 또는 -시간 모드(또는 sudo가 –enable-shell-sets-home 옵션), 대상 사용자의 homedir로 설정 |
| 길 | 다음과 같은 경우 정상적인 값으로 설정하십시오. 보안_경로 sudoers 옵션이 설정되었습니다. |
| 껍데기 | -s 옵션으로 실행할 쉘을 결정하는 데 사용됩니다. |
| SUDO_PROMPT | 기본 비밀번호 프롬프트로 사용됨 |
| SUDO_COMMAND | sudo가 실행하는 명령으로 설정 |
| SUDO_USER | sudo를 호출한 사용자의 로그인으로 설정 |
| SUDO_UID | sudo를 호출한 사용자의 uid로 설정 |
| SUDO_GID | sudo를 호출한 사용자의 gid로 설정 |
| SOUTH_PS1 | 설정되면 PS1이 해당 값으로 설정됩니다. |
| 사용자 | 대상 사용자(루트가 아닌 경우 루트)로 설정합니다. -안에 옵션이 지정됨) |
| 시각적 | 사용할 기본 편집기 -그것은 (sudoedit) 모드 |
Linux의 sudo 명령 – FAQ
Linux에서 'sudo'란 무엇입니까?
Sudo는 루트 사용자만이 가지고 있는 권한으로 사용자가 명령을 실행할 수 있도록 하는 Linux의 명령입니다. 이는 사용자가 루트 사용자로 로그인하지 않고도 관리 권한으로 작업을 수행하는 데 도움이 되지만 때로는 위험할 수도 있습니다.
`sudo` 권한이 필요한 Linux 명령은 무엇입니까?
네트워킹 명령, 패키지 관리 명령, 시스템 수준 명령 등 sudo 권한으로 실행하는 데 필요한 Linux 명령이 많이 있습니다. 예를 들어, 실행하기 위해 sudo 권한이 필요한 명령은 `yum`, `systemctl`, `mount`, `apt-get`, `fdisk` 및 `ifconfig`입니다.
sudo로 무엇을 실행할 수 있나요?
실행하려면 sudo 권한이 필요한 Linux 명령이 많이 있지만 중요한 시스템 구성 및 파일을 수정할 수 있으므로 주의해서 사용해야 합니다. 결과를 방지하려면 명령을 실행하기 전에 두 번 확인해야 합니다. 다음과 같은 명령:
- 새 패키지 설치: `sudo apt-get 설치 패키지_이름`
- 시스템 업데이트: `sudo apt-get 업데이트 && sudo apt-get 업그레이드`
- 시스템 구성 수정: `sudo nano /etc/fstab`
- 시스템 서비스 시작: `sudo systemctl start service_name`
- 시스템 서비스 중지: `sudo systemctl stop service_name`
- 새 사용자 계정 만들기: `sudo user사용자 이름 추가`
- 파일 권한 변경: `sudo chmod 755 파일_이름`
Linux에서 su와 sudo 명령의 차이점은 무엇입니까?
Linux에서는 su(사용자 전환) 명령을 사용하여 사용자가 다른 사용자(종종 루트 사용자)로 로그인하고 해당 파일 및 설정에 액세스할 수 있습니다. 반면에 sudo 명령을 사용하면 사용자는 루트 사용자로 로그인하지 않고도 향상된 권한으로 특정 명령을 실행할 수 있습니다. Sudo는 사용자에게 임시 루트 권한을 부여하는 보다 안전한 방법입니다.
Linux에서 사용자 sudo 액세스 권한을 어떻게 부여하고 받나요?
Linux에서는 `sudores`라는 파일에서 사용자 이름을 추가하거나 제거하여 `sudo` 액세스 권한을 부여하거나 가져올 수 있습니다. sudoers에 사용자 이름을 추가하려면 `sudo visudo` 명령을 실행하고 파일을 편집한 후 사용자에게 액세스 권한을 부여하는 줄을 추가해야 합니다. 예: 사용자 이름 ALL=(ALL:ALL) ALL은 사용자에게 sudo 명령에 대한 전체 액세스 권한을 부여합니다.
그리고 sudoers 파일을 편집하고 sudo 액세스 권한을 부여하는 줄을 제거하는 데 사용되는 것과 동일한 sudo visudo 명령을 사용하여 사용자의 sudo 액세스를 비활성화할 수 있습니다. 해당 줄이 삭제되면 사용자는 더 이상 sudo 명령을 사용하여 권한 있는 명령을 실행할 수 없습니다.
결론
리눅스에서는sudo>명령은 특수 능력을 잠금 해제하는 마법의 열쇠처럼 작동하여 일반적으로 슈퍼유저만이 할 수 있는 중요한 작업을 수행할 수 있게 해줍니다. 이는 소프트웨어 설치나 시스템 설정 변경과 같이 높은 권한으로 명령을 수행하기 위한 권한을 요청하는 방법입니다. 너는 사용한다sudo>명령 앞에 슈퍼유저로 실행할 수 있음을 표시합니다. 사용sudo>, 다른 사람이 아닌 본인임을 증명하기 위해 일반적으로 자신의 비밀번호를 입력해야 합니다. 기억하다,sudo>강력하므로 조심해서 사용하세요! 컴퓨터의 중요한 내용을 변경할 수 있습니다. 이해함으로써sudo>및 옵션을 통해 Linux를 보다 효과적이고 안전하게 사용할 수 있습니다.