Android

Utos ng Sudo sa linux

Linux Command Line Tutorial For Beginners 13 - sudo command

Linux Command Line Tutorial For Beginners 13 - sudo command

Talaan ng mga Nilalaman:

Anonim

Pinapayagan ka ng utos ng sudo na magpatakbo ng mga programa bilang isa pang gumagamit, sa pamamagitan ng default ang root user. Kung gumugol ka ng maraming oras sa linya ng utos, ang sudo ay isa sa mga utos na gagamitin mo nang madalas.

Ang paggamit ng sudo sa halip na pag-login bilang isang ugat ay mas ligtas dahil maaari kang magbigay ng limitadong mga pribilehiyo sa pangangasiwa sa mga indibidwal na gumagamit nang hindi alam ang root password.

Sa tutorial na ito, ipapaliwanag namin kung paano gamitin ang utos ng sudo .

Pag-install ng Sudo (sudo utos hindi natagpuan)

Ang pakete ng sudo ay paunang naka-install sa karamihan sa mga pamamahagi ng Linux.

Upang suriin kung naka-install ang package ng sudo sa iyong system, buksan ang iyong console, i-type ang sudo , at pindutin ang Enter . Kung na-install mo ang sudo ang system ay magpapakita ng isang maikling mensahe ng tulong, kung hindi, makikita mo ang isang bagay tulad ng sudo command not found .

Kung hindi mai-install ang sudo madali mong mai-install ito gamit ang package manager ng iyong distro.

I-install ang Sudo sa Ubuntu at Debian

apt install sudo

I-install ang Sudo sa CentOS at Fedora

yum install sudo

Pagdaragdag ng Gumagamit sa Sudoers

Sa pamamagitan ng default sa karamihan sa mga pamamahagi ng Linux na nagbibigay ng pag-access sa sudo ay kasing simple ng pagdaragdag ng gumagamit sa pangkat ng sudo na tinukoy sa sudoers file. Ang mga miyembro ng pangkat na ito ay maaaring magpatakbo ng anumang utos bilang ugat. Ang pangalan ng pangkat ay maaaring magkakaiba sa pamamahagi hanggang sa pamamahagi.

Sa mga pamamahagi batay sa RedHat tulad ng CentOS at Fedora, ang pangalan ng pangkat ng sudo ay wheel . Upang idagdag ang gumagamit sa pangkat na tumakbo:

usermod -aG wheel username

Sa Debian, Ubuntu at ang kanilang mga derivatibo, ang mga miyembro ng pangkat sudo ay binigyan ng pag-access sa sudo:

usermod -aG sudo username

Ang root user account sa Ubuntu ay hindi pinagana sa pamamagitan ng default para sa mga kadahilanang pangseguridad at hinihikayat ang mga gumagamit na magsagawa ng gawain sa administratibong sistema gamit ang sudo. Ang paunang gumagamit na nilikha ng installer ng Ubuntu ay isang miyembro ng pangkat ng sudo kaya kung nagpapatakbo ka ng mga pagkakataon sa Ubuntu ay ang gumagamit na iyong naka-log in na ipinagkaloob sa mga pribilehiyo ng sudo.

Halimbawa upang payagan ang gumagamit na linuxize na magpatakbo lamang ng mkdir utos bilang sudo, uri:

sudo visudo

at idagdag ang sumusunod na linya:

linuxize ALL=/bin/mkdir

Sa karamihan ng mga system, binubuksan ng utos ng visudo ang /etc/sudoers file kasama ang vim text editor. Kung wala kang karanasan sa vim suriin ang aming artikulo tungkol sa kung paano i-save ang isang file at umalis sa vim editor.

Maaari mo ring pahintulutan ang mga gumagamit na magpatakbo ng mga mando ng sudo nang hindi pinapasok ang password:

linuxize ALL=(ALL) NOPASSWD: ALL

Paano Gumamit ng Sudo

Ang syntax para sa utos ng sudo ay ang mga sumusunod:

sudo OPTION.. COMMAND

Ang utos ng sudo ay may maraming mga pagpipilian na kinokontrol ang pag-uugali nito ngunit karaniwang sudo ay ginagamit sa pinaka pangunahing anyo nito, nang walang anumang pagpipilian.

Upang magamit ang sudo, i-prefix lamang ang utos na may sudo :

sudo command

Kung saan ang command ay utos kung saan nais mong gamitin ang sudo.

Babasahin ni Sudo ang /etc/sudoers file at suriin kung ang gumagamit ng invoking ay binigyan ng pagtatasa ng sudo. Sa unang pagkakataon na gumamit ka ng sudo sa isang session, sasabihan ka upang ipasok ang password ng gumagamit at ang utos ay isasagawa bilang ugat.

Halimbawa, upang ilista ang lahat ng mga file sa /root direktoryo ng /root gagamitin mo:

sudo ls /root

password for linuxize:….bashrc.cache.config.local.profile

Oras ng password

Bilang default, hihilingin sa iyo ng sudo na ipasok muli ang iyong password pagkatapos ng limang minuto ng hindi aktibo na sudo. Maaari mong baguhin ang default na timeout sa pamamagitan ng pag-edit ng sudoers file. Buksan ang file na may visudo :

sudo visudo

Itakda ang default na timeout sa pamamagitan ng pagdaragdag ng linya sa ibaba, kung saan ang 10 ang oras ng tinukoy sa ilang minuto:

Defaults timestamp_timeout=10

Defaults:user_name timestamp_timeout=10

Magpatakbo ng isang Command bilang isang Gumagamit Maliban sa Root

Mayroong isang maling pagdama na ang sudo ay ginagamit lamang upang magbigay ng mga pahintulot sa ugat sa isang regular na gumagamit. Talaga, maaari mong gamitin ang sudo upang magpatakbo ng isang utos bilang anumang gumagamit.

Pinapayagan ka ng -u opsyon na magpatakbo ng isang utos bilang isang tinukoy na gumagamit.

Sa sumusunod na halimbawa ay gumagamit kami ng sudo upang patakbuhin ang whoami command bilang isang "richard" ng gumagamit:

sudo -u richard whoami

Ang utos ng whoami ay i-print ang pangalan ng gumagamit na nagpapatakbo ng utos:

richard

Paano Mag-redirect kay Sudo

sudo echo "test" > /root/file.txt

bash: /root/file.txt: Permission denied

Nangyayari ito dahil ang pag-redirect ng " > " ng output ay isinasagawa sa ilalim ng gumagamit na naka-log in, hindi ang tinukoy ng gumagamit ng sudo. Nangyayari ang pag-redirect bago mag- sudo utos ng sudo .

Ang isang solusyon ay mag-imbita ng isang bagong shell bilang ugat sa pamamagitan ng paggamit ng sudo sh -c :

sudo sh -c 'echo "test" > /root/file.txt'

Ang isa pang pagpipilian ay ang pipe ang output bilang isang regular na gumagamit sa utos ng tee tulad ng ipinakita sa ibaba:

echo "test" | sudo tee /root/file.txt

Konklusyon

Nalaman mo kung paano gamitin ang utos ng sudo at kung paano lumikha ng mga bagong gumagamit na may mga pribilehiyo ng sudo.

terminal sudo