>운영 및 유지보수 >리눅스 운영 및 유지 관리 >리눅스 시스템에서 su와 sudo를 사용하는 방법

리눅스 시스템에서 su와 sudo를 사용하는 방법

齐天大圣
齐天大圣원래의
2020-09-10 15:50:532504검색

일반적으로 서버에 직접 로그인할 때는 루트 계정을 사용하지 않는 것을 권장하며, 루트 사용자를 사용하여 운영해야 하는 경우에만 ID를 전환하는 것이 좋습니다. 다음으로 두 가지 ID 전환 명령 su와 sudo에 대해 이야기하겠습니다.

su

su 명령은 현재 사용자에서 새 사용자로 전환하는 데 사용됩니다. 새 사용자 ID로 전환하는 경우 전환 사용자의 비밀번호를 입력해야 합니다.

一般用法:su - 用户名

-or-l: ID를 변경하면 작업 디렉터리와 HOME, SHELL, USER, 로그 이름도 동시에 변경됩니다. 또한 PATH 변수도 변경됩니다.

다음은 이 명령의 사용법을 보여줍니다.

$ id # 当前用户是admin
uid=1005(admin) gid=1006(admin) groups=1006(admin)
$ su - # 不输入用户名则表示切换到root用户
Password: <===输入root用户的密码

sudo

su를 사용하여 사용자를 전환하려면 새 사용자의 비밀번호를 입력해야 합니다. 마음대로 다른 사람에게 루트 비밀번호를 제공합니다. 이 문제를 해결하기 위해 sudo를 사용할 수 있습니다. 아래에서 sudo를 소개하겠습니다.

새로 전환된 사용자 비밀번호(종종 루트 사용자 비밀번호)를 알아야 하는 su와 비교하여, sudo를 실행하려면 자신의 비밀번호만 입력하면 됩니다. 비밀번호가 필요하지 않도록 설정할 수도 있습니다. sudo를 잘 사용하려면 /etc/sudoers 구성 파일을 마스터해야 합니다. 하지만 이 파일은 vim이나 vim을 사용하여 수정할 수 없습니다. 지정된 명령인 visudo를 사용하여 수정해야 합니다.

다음은 sudo의 사용법을 보여줍니다.

sudo [옵션] 명령

  • -b: 어쨌든 백그라운드에서 후속 명령을 실행합니다.

  • -u: 후속 명령을 실행할 사용자를 지정합니다.

  • sh -c 여러 명령을 실행

[root@bajiecxg tmp]# sudo -u gwx touch a.txt
[root@bajiecxg tmp]# ll a.txt 
-rw-r--r-- 1 gwx gwx 0 10月 29 17:49 a.txt
# 使用sh -c执行多条命令
[root@bajiecxg tmp]# sudo -u gwx sh -c "mkdir gwx;cd gwx;\
touch 1.txt"
[root@bajiecxg tmp]# ll gwx/
总用量 0
-rw-r--r-- 1 gwx gwx 0 10月 29 17:53 1.txt

/etc/sudoers 파일을 살펴보겠습니다. 기본 구성 형식은 다음과 같습니다

root    ALL=(ALL)   ALL

사용자 계정 로그인 소스 호스트 = 전환 가능한 사용자 ID 실행 가능한 명령

위 즉, 루트 사용자는 모든 호스트에서 로그인하고, 모든 ID를 전환하고, 모든 명령을 실행할 수 있습니다.

이제 사용자 admin을 추가하여 그가 어떤 명령도 실행할 수 있도록 하겠습니다. 그런 다음 visodu 명령을 사용해야 합니다. 새 줄을 추가하려면 다음과 같이

admin ALL=(ALL) ALL

그런 다음 여러 운영 및 유지 관리 관리자가 있고 모두 sudo를 사용하여 명령을 실행할 수 있어야 하는 경우 여러 구성을 추가해야 합니다. 쉬운 방법이 있나요? 예, 사용자를 휠 그룹에 추가하기만 하면 됩니다. 그렇다면 왜 이 그룹에 가입해도 괜찮을까요? /etc/sudoers의 99행을 살펴보세요.

%wheel  ALL=(ALL)   ALL

또한 sudo를 사용할 때 비밀번호를 사용하지 않고 사용자가 명령을 실행하도록 허용할 수도 있습니다.

%wheel    ALL=(ALL)   NOPASSWD: ALL
# 属于wheel这个组的用户执行sudo命令时,不需要输入密码


또한 사용자에게 제한된 명령 권한을 부여하여 사용자가 실행만 할 수 있도록 할 수도 있습니다. 여러 명령

admin ALL=(ALL) /usr/bin/ls,/usr/bin/cd

그 외에도 sudo에는 사용자 별칭, 명령 별칭 등 다양한 용도가 있습니다. 관심 있는 어린이는 관련 정보를 스스로 확인할 수 있습니다.

위 내용은 리눅스 시스템에서 su와 sudo를 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.