링크 ux sudo 명령

3081 단어 linux
sudo 명령 문법
sudo [- bhHpV] [- s] [- u] [명령] 또는 sudo [- klv] 인자  -b  백 스테이지 에서 명령 을 집행 하 다.  -h  도움말 보이 기.  -H  HOME 환경 변 수 를 새로운 신분 의 HOME 환경 변수 로 설정 합 니 다.  -k  비밀 번 호 를 끝 내 는 유효기간, 즉 다음 에 sudo 를 실행 할 때 비밀 번 호 를 입력 해 야 합 니 다.  -l  현재 사용자 가 실행 할 수 있 고 실행 할 수 없 는 명령 을 보 여 줍 니 다.  -p  암 호 를 묻 는 알림 기 호 를 바 꿉 니 다.  -s  지정 한 셸 을 실행 합 니 다.  -u    지정 한 사용 자 를 새로운 신분 으로 합 니 다.이 인 자 를 추가 하지 않 으 면 루트 를 새로운 신분 으로 설정 합 니 다.  -v  비밀번호 유효기간 5 분 연장.  -V  버 전 정보 보이 기.  -S  표준 입력 흐름 대체 터미널 에서 암 호 를 가 져 옵 니 다.
sudo 프로그램 관련 파일
/etc/sudoers/etc/init.d/sudo/etc/pam.d/sudo/var/lib/sudo/usr/share/doc/sudo/usr/share/lintian/overrides/sudo/usr/share/bash-completion/completions/sudo/usr/bin/sudo/usr/lib/sudo
기본 설정
시스템 은 기본적으로 sudo 라 는 그룹 을 만 들 었 습 니 다.사용 자 를 이 그룹 에 가입 시 키 면 사용 자 는 sudo 의 권한 을 가지 게 됩 니 다.사용 자 를 sudo 그룹 에 가입 하 는 방법 에 대해 서 는/etc/group 파일 을 직접 편집 할 수 있 습 니 다. 물론 sudo 권한 이 있 는 사용 자 를 사용 하여 이 일 을 해 야 합 니 다.
$ sudo vim /etc/group

sudo 그룹 에 새 사용 자 를 추가 하려 면 여러 사용 자 를 쉼표 로 구분 해 야 합 니 다.
또는 usermod 명령 을 사용 하여 사용 자 를 한 그룹 에 추가 할 수 있 습 니 다.
$ sudo usermod -a -G sudo jack

위의 설정 에서 사용자 jack 을 sudo 그룹 에 추 가 했 기 때문에 사용자 jack 이 로그 인 하면 sudo 명령 을 통 해 루트 권한 으로 명령 을 수행 할 수 있 습 니 다!
상세 설정
앞의 설정 에서 저 희 는 사용자 jack 을 sudo 그룹 에 가입 시 켰 을 뿐 루트 권한 을 통 해 명령 을 수행 하 는 능력 을 가지 게 되 었 습 니 다.지금 우 리 는 이것 이 어떻게 발생 했 는 지 묻 고 싶 습 니 다.sudo 명령 을 설정 하 는 방법 을 소개 할 때 가 되 었 습 니 다!sudo 명령 의 설정 파일 은/etc/sudoers 입 니 다.(주의,/etc/sudoers 의 설정 내용 이 매우 풍부 합 니 다. 간단 한 소개 만 하 겠 습 니 다. 더 많은 정 보 를 알 고 싶 으 시 면 man sudoers 를 참고 하 십시오.) 이 파일 을 편집 하 는 것 은 단독 명령 이 있 는 visudo 입 니 다. (이 파일 은 vim 명령 으로 열지 않 는 것 이 좋 습 니 다.) 문법 을 잘못 쓰 면 심각 한 결 과 를 초래 할 수 있 기 때 문 입 니 다. 이 도 구 는 당신 이 쓴 문법 을 검사 합 니 다.이 파일 의 문법 은 다음 과 같은 형식 을 따 릅 니 다. who where whom command 는 어떤 사용자 가 어느 호스트 에서 누구의 신분 으로 명령 을 수행 하 는 지 설명 합 니 다. 그러면 이 where 는 그 호스트 ssh 연결 을 허용 해 야 뒤의 명령 을 수행 할 수 있 습 니 다. 파일 에 서 는 기본적으로 루트 사용자 에 게 규칙 을 정의 합 니 다.
root    ALL=(ALL:ALL)       ALL

루트 는 루트 사용 자 를 표시 합 니 다.ALL 은 모든 호스트 에서 실행 할 수 있 고 이렇게 192.168.100.0/24 할 수 있다 고 밝 혔 다.(ALL: ALL) 은 누구의 신분 으로 실행 되 는 지, ALL: ALL 은 루트 가 누구의 신분 으로 명령 을 수행 할 수 있 는 지 를 의미 합 니 다.ALL 은 어떤 명령 도 표시 합 니 다.그러면 모든 규칙 은 루트 사용자 가 모든 호스트 에서 모든 명령 을 수행 할 수 있 는 것 입 니 다.
이제 잭 이 왜 루트 권한 을 통 해 명령 을 수행 할 수 있 는 능력 을 가지 고 있 는 지 대답 할 수 있 습 니 다./etc/sudoers 파일 열기: sudo 그룹의 모든 사용 자 는 루트 권한 을 통 해 명령 을 수행 할 수 있 습 니 다!
다시 예 를 들 면:
nick   192.168.10.0/24=(root) /usr/sbin/useradd

위의 설정 은 닉 이 192.168.10.0/24 네트워크 에서 호스트 를 연결 하고 루트 권한 으로 useradd 명령 을 실행 할 수 있 도록 합 니 다.
sudo 를 설정 할 때 비밀 번 호 를 입력 할 필요 가 없습니다.
sudo 명령 을 실행 할 때 항상 비밀 번 호 를 입력 해 야 합 니 다.일부 응용 장면 도 sudo 를 실행 할 때 비밀 번 호 를 입력 하 는 상호작용 과정 을 피해 야 한다.그럼 어떻게 설정 해 야 하나 요?사실 간단 합 니 다. 설정 줄 에 NOPASSWD 를 추가 하면 됩 니 다.
******    ALL=(ALL) NOPASSWD: ALL

다시 해 봐, 비밀 번 호 를 입력 할 필요 가 없 는 거 아니 야?
sudo 로그
ubuntu 에서 sudo 의 로 그 는 기본적으로/var/log/auth. log 파일 에 기 록 됩 니 다.우리 가 sudo 명령 을 실행 할 때 관련 로 그 는 모두 기록 된다.예 를 들 어 다음 그림 에 표 시 된 것 은 sudo 명령 을 실행 하 는 로그 입 니 다.

좋은 웹페이지 즐겨찾기