คำถามติดแท็ก sudo

คำสั่ง sudo เป็นโปรแกรมสำหรับระบบปฏิบัติการ Unix และ Unix-Like บางระบบที่อนุญาตให้ผู้ใช้รันโปรแกรมด้วยสิทธิ์ความปลอดภัยของผู้ใช้รายอื่น โดยทั่วไปแล้วเป็น superuser หรือผู้ใช้รูท

3
วิธีเรียกใช้งานคำสั่งในฐานะรูทใน git post-receive hook
ฉันเพิ่งตั้ง repo git ระยะไกลบนเซิร์ฟเวอร์สำหรับเว็บแอปที่ทำงานเป็นบริการพุ่งพรวด ฉันต้องการใช้ hook post-receive เพื่อเรียกการกระทำที่จำเป็นในการอัปเดตรหัสแอปพลิเคชันและหยุดจากนั้นเริ่มบริการพุ่งพรวดอีกครั้ง นี่คือไฟล์ repo.git / hooks / post-receive ของฉัน: #!/bin/bash export GIT_WORK_TREE=/var/www/current/myapp/ echo "Checking out new files and restarting app" echo $USER git checkout -f sudo /sbin/stop myapp-service sudo /sbin/start myapp-service ตามข้อมูลที่ฉันอ่านที่นี่: askUbuntu.comวิธีรับคำสั่งพุ่งพรวดเพื่อดำเนินการในฐานะ root คือการแก้ไขไฟล์ visudo ของฉัน นี่คือตัวอย่างที่เกี่ยวข้อง: %sudo ALL=(ALL:ALL) ALL admin ALL=(ALL:ALL) NOPASSWD: …
12 linux  bash  git  sudo  upstart 

3
เข้าสู่ระบบเพื่อ vi ทำการเปลี่ยนแปลงลืม sudo ก่อน - ตอนนี้คืออะไร
ฉันทำการเปลี่ยนแปลงไฟล์กำหนดค่าบนคอมพิวเตอร์ Ubuntu Linux ด้วยเครื่องมือแก้ไข vi เป็นเวลานาน น่าเสียดายที่ฉันลืม sudo ก่อนดังนั้นตอนนี้ฉันอยู่ในเครื่องมือแก้ไข แต่ไม่สามารถบันทึกการเปลี่ยนแปลงของฉันได้เนื่องจากสิทธิ์ขาดหายไป ฉันสามารถย้อนกลับไปหาผู้ใช้ในเทอร์มินัลย้อนหลังได้หรือไม่?
12 linux  permissions  sudo  vi 

3
ใช้งานได้จริง (ใกล้กับ Linux คลาสสิกมากที่สุด) วิธีใช้ (อัตโนมัติ) SUDO สำหรับ CygWin
ความสามารถในการใช้sudoคำสั่งในCygWin นั้นมีประโยชน์และเร็วกว่าการเปิดเชลล์ที่ยกระดับ: Luis@Kenobi /cygdrive/c/Users/Luis $ net user /add TestUser System error 5. Access denied. Luis@Kenobi /cygdrive/c/Users/Luis $ sudo net user /add TestUser Command completed successfully. ดังที่แสดงด้านบนคุณสามารถเรียกใช้คำสั่ง / สคริปต์ของ Windows ได้เช่นเดียวกับ Linux สำหรับฉันเรียบร้อย ทำงานบนคอนโซลระยะไกล (SSH) และอนุญาตให้รวมคำสั่งWindows / Linux ดังนั้นความสามารถในการดำเนินงานการบริหารจึงเป็นสิ่งจำเป็น แต่โครงการSUDO for CygWinมีพฤติกรรมที่อาจเป็นอันตราย : มันทำงานเป็นสถาปัตยกรรมเซิร์ฟเวอร์ / ไคลเอนต์ในความเป็นจริงลูกค้า (sudo) ส่งคำขอของคำสั่งไปยังเซิร์ฟเวอร์ (sudoserver.py) ที่ภายใน (ไม่ฟังนอก …

1
เหตุใดจึงไม่มีไฟล์ sudoers:“ / etc / sudoers: ไม่มีไฟล์หรือไดเรกทอรีดังกล่าว”?
ฉันกำลังพยายามเพิ่มผู้ใช้ผู้ดูแลระบบใหม่ แต่: # adduser username admin adduser: The user `username' does not exist. # man sudoers No manual entry for sudoers # less /etc/sudoers /etc/sudoers: No such file or directory ระบบคือ Debian 7 (เสียงดัง) สิ่งที่ฉันทำผิด

5
ทำไม "sudo -u root echo` whoami` "ไม่คืนค่าราก
คุณใช้ sudo เพื่อรันคำสั่งในฐานะผู้ใช้รูทจริงบน Ubuntu ได้อย่างไร? ตอนแรกฉันคิดว่านี่เป็นพฤติกรรมเริ่มต้นของ sudo จนกระทั่งฉันวิ่ง: myuser@localhost:~$ sudo echo `whoami` myuser myuser@localhost:~$ sudo -u root echo `whoami` myuser อย่างไรก็ตามนี่คือประเภทของพฤติกรรมที่ฉันต้องการ แต่ในบรรทัดเดียวเท่านั้น: myuser@localhost:~$ sudo su - root@localhost:~# echo `whoami` root
11 linux  ubuntu  sudo 

5
ฉันจะบอก sudo ให้เขียนไฟล์ด้วย umask 0022 ได้อย่างไร
ฉันเพิ่งอัพเกรดเป็น Snow Leopard ฉันสังเกตว่าไฟล์บางไฟล์ที่เขียนโดย MacPort นั้นได้รับการติดตั้งโดยไม่ได้รับอนุญาต - ไฟล์นั้นเขียนด้วย umask 0077 ฉันคิดว่าฉันได้ จำกัด ปัญหา: คำสั่งจะถูกเรียกผ่านportsudo .bashrcไฟล์ของฉันระบุ umask เป็น 0077 ใน OS X เวอร์ชั่นเก่า (10.5 และต่ำกว่า) sudo ใช้ umask ของผู้ใช้รูท (ซึ่งคือ 0022) อย่างไรก็ตามตอนนี้มันใช้umask ของฉัน 0077 อย่างไรก็ตามมีการsudoใช้พฤติกรรมเก่าหรือไม่? ตอนนี้มันเป็นชนิดที่น่ารำคาญเพราะผมต้องใช้sudoในการเรียกใช้คำสั่งง่ายๆเช่นport installed, port outdatedฯลฯ (ปัญหาอธิบายไว้ในรายละเอียดเพิ่มเติมในตั๋ว MacPortนี้) แก้ไข ฉันค้นพบumaskตัวเลือกสำหรับ sudo และใน/etc/sudoersฉันเพิ่มบรรทัดต่อไปนี้: Defaults umask=0022 อย่างไรก็ตามสิ่งนี้ไม่ได้ทำงานตามที่ต้องการเพราะumask จริงที่ใช้โดยsudoเป็นสหภาพของหน้ากากผู้ใช้ที่มีหน้ากากเริ่มต้นนี้ เพื่อแทนที่พฤติกรรมของsudoumask และใช้ค่าเริ่มต้นโดยตรง …

1
ssh + sudo + su ลงในเชลล์ล็อกอิน
ฉันมีเครื่องหลายเครื่องที่ฉันใช้เป็นประจำเท่านั้นsudo suเพื่อใช้ในส่วนที่เหลือของการเข้าสู่ระบบในฐานะผู้ใช้ที่มีวัตถุประสงค์พิเศษ เวิร์กโฟลว์ทั่วไปคือ: mymachine:~ me$ ssh me@othermachine othermachine:~ me$ sudo su - specialuser # note: no password needed othermachine:~ specialuser$ # do stuff ฉันต้องการต้มสิ่งนี้ลงในสายการบินเดียวที่ฉันสามารถใช้นามแฝงได้ดังนั้นฉันจึงสามารถตั้งชื่อแทนสำหรับแต่ละเครื่องและไปยังตำแหน่งที่ฉันต้องเป็นคำสั่งเดียวโดยไม่ต้องพิมพ์sudo su - specialuserหม้อต้ม ฉันอาจตั้งค่าme@othermachineให้ใช้sudo suในการเข้าสู่ระบบ แต่ฉันต้องการที่จะรักษาความยืดหยุ่นในการทำงานราวกับmeว่าฉันต้องการ ( หมายเหตุ:ฉันไม่มีการควบคุมใด ๆothermachineหรือวิธีการตั้งค่านี่เป็นขั้นตอนการทำงานที่กำหนดไว้ที่ฉันเข้ามาเมื่อฉันถูกว่าจ้าง) ความคิดแรกของฉันเป็นเพียงแค่ ssh me@othermachine "sudo su - specialuser" และงานประเภทนี้ แต่มันทำให้ฉันพรอมต์ไม่^Cฆ่าและออกจากระบบและฉันคิดว่าสิ่งอื่น ๆ อีกมากมายอาจผิดด้วย หลังจากอ่านคำสั่ง Run Remote ssh ด้วย Full …
11 bash  ssh  sudo 

1
อนุญาตให้ผู้ใช้ของกลุ่มใดกลุ่มหนึ่งเรียกใช้คำสั่งโดยไม่มี sudo
ฉันรู้วิธีแก้ไข / etc / sudoers เพื่อให้ฉันสามารถเรียกใช้คำสั่งเป็น sudo ได้โดยไม่ต้องป้อนรหัสผ่านของฉันอย่างไรก็ตามมีวิธีอนุญาตให้โปรแกรมทำงานได้อย่างสมบูรณ์โดยไม่ต้องใช้ sudo โดยผู้ใช้ทุกคนในกลุ่ม (โปรแกรมที่ฉันต้องการเรียกใช้คือ "mount" และ "umount")
11 linux  passwords  sudo 

1
จะสร้างลิงค์สัญลักษณ์ใน / usr / bin บน Mac ได้อย่างไร?
สภาพแวดล้อม: OSX Sierra, Kernel เวอร์ชั่นดาร์วิน 16.3.0 ปัญหาหลัก: ฉันต้องการใช้เชลล์สคริปต์จำนวนมากในที่เก็บส่วนกลางซึ่งมี #! / usr / bin / zsh บน Mac ของฉัน zsh อยู่ใน / bin / zsh ความพยายามแก้ไข: ฉันต้องการสร้างลิงก์สัญลักษณ์ ln -s /bin/zsh /usr/bin/zsh บัญชีผู้ใช้ของฉันมีสิทธิ์ผู้ดูแลระบบ แต่ฉันไม่รูทและฉันไม่ต้องการเปิดใช้งานผู้ใช้รูทบน Mac เครื่องนี้ ดังนั้นก่อนอื่นเลย sudo su เพื่อรับเชลล์ที่มีสิทธิ์ใช้งานรูทแล้วดำเนินการคำสั่งln อย่างไรก็ตามฉันยังคงได้รับข้อความแสดงข้อผิดพลาดln: / usr / bin / zsh: ไม่อนุญาตให้ใช้งาน คำถาม: เหตุใดฉันจึงได้รับข้อความแสดงข้อผิดพลาดนี้ ฉันต้องทำอย่างไรเพื่อสร้างลิงค์ มีวิธีที่ดีกว่าเพื่อให้บรรลุเป้าหมายเดิมของฉันหรือไม่? …
11 shell  sudo  symbolic-link  su  ln 

7
วิธีการรันโปรแกรมในฐานะรูทโดยไม่มี“ sudo”?
ฉันมีโปรแกรมเลขฐานสองบางตัวใน OS X ที่สามารถเรียกใช้ในฐานะรูทเท่านั้น ฉันเบื่อที่จะเตรียมsudoทุกครั้งที่ฉันเรียกใช้และพิมพ์รหัสผ่านและต้องการให้มันทำงานโดยอัตโนมัติเมื่อฉันเรียกใช้มันเป็นประจำโดยไม่ต้องขอรหัสผ่าน เจ้าของโปรแกรมคือรูทและกลุ่มเป็นวงล้อ ฉันพยายามchmod ug+sตั้งค่า userid และ groupid เมื่อทำการประมวลผลไปยัง root / wheel แต่เมื่อฉันรันโปรแกรมโดยไม่ใช้ sudo มันก็ยังบ่นว่ามันสามารถทำงานได้เฉพาะกับ sudo หรือ root
10 macos  security  sudo  root  setuid 

5
การป้องกันมัลแวร์จากการดมรหัสผ่าน sudo
ฉันมักจะได้ยินคนที่อ้างsudoว่าเป็นหนึ่งในอุปสรรคสำคัญของมัลแวร์ที่ติดคอมพิวเตอร์ Linux อาร์กิวเมนต์ที่นิยมใช้กันมากที่สุดดูเหมือนจะเป็นไปตาม: สิทธิ์ของรูทจำเป็นต้องแก้ไขการกำหนดค่าระบบและต้องใช้รหัสผ่านเพื่อรับสิทธิ์รูทดังนั้นมัลแวร์ไม่สามารถแก้ไขการกำหนดค่าระบบโดยไม่ต้องใส่รหัสผ่าน แต่มันดูเหมือนว่าฉันว่าโดยปกติในระบบส่วนใหญ่เมื่อมีการติดเชื้อมัลแวร์บัญชีผู้ดูแลระบบ, การเพิ่มสิทธิ์เป็นเล็กน้อย - sudoมัลแวร์เพียงแค่มีการรอให้ผู้ใช้สามารถเรียกใช้ มีวิธีใดบ้างที่มัลแวร์จะได้รับสิทธิ์รูทเมื่อผู้ใช้รันsudoและเราจะป้องกันพวกเขาได้อย่างไร แก้ไข:ฉันสนใจเป็นพิเศษในการป้องกันบัญชีผู้ดูแลระบบที่ถูกบุกรุก กล่าวคือบัญชีที่มีสิทธิ์ใช้งานรูทเต็มรูปแบบด้วยsudo(เช่นบัญชีผู้ใช้ในระบบเดสก์ท็อปทั่วไป)
10 linux  security  sudo  malware 

2
ทำไม sudo จำเป็นสำหรับการรีบู๊ตในเครื่อง แต่ไม่ได้มาจาก GUI?
เมื่อฉันเปิดเครื่องและเข้าสู่บัญชีของฉันฉันสามารถทำสิ่งที่ฉันต้องการและแม้กระทั่งปิดเครื่องหรือพูดว่ารีบูต แต่ถ้าฉันเปิดเทอร์มินัลแล้วลองเรียกใช้คำสั่งrebootหรือshutdownต้องมีการเข้าถึงรูท ทำไมเป็นเช่นนี้ ฉันคิดว่าสาเหตุบางอย่างของพฤติกรรมเช่นนี้สำหรับคุณอาจเป็นที่ต้องการsshแต่ฉันไม่แน่ใจเกี่ยวกับมันหรือฉันอาจขาดหายไปบางจุด
10 linux  sudo  reboot 


5
เข้าถึง sudo สำหรับการทำงานเดสก์ท็อปใน Gnome / KDE หรือไม่
ฉันรู้สึกโง่ที่ถามคำถามนี้ ฉันใช้ CentOS 5.4 และ KDE ฉันดาวน์โหลดไฟล์เก็บถาวรและฉันต้องการลาก / วางเนื้อหาลงในโฟลเดอร์ที่ฉันต้องการเข้าถึงรูทเพื่อเขียน เห็นได้ชัดว่าฉันสามารถไปที่สถานีและ sudo blah blah แต่ฉันจะเข้าถึง sudo สำหรับขั้นตอนเดสก์ท็อปได้อย่างไร เช่นเดียวกับการลากและวางไฟล์อย่างง่าย ๆ ? KDE บอกฉันว่าฉันไม่ได้รับอนุญาตให้ทำเช่นนั้น แต่ไม่ให้ตัวเลือกในการป้อนรหัสผ่านรูทหรือ sudo
10 desktop  kde  gui  centos  sudo 

1
Ubuntu 15.04: ระงับจากคอนโซลโดยไม่มี sudo
เป็นเวลาหลายปีที่ฉันสามารถระงับเครื่องที่ใช้ Ubuntu ของฉันจากบัญชีปกติโดยใช้ dbus-send --system --print-reply --dest="org.freedesktop.UPower" /org/freedesktop/UPower org.freedesktop.UPower.Suspend สิ่งนี้ไม่ทำงานใน Ubuntu 15.04 อีกต่อไปซึ่งมีรายงานต่อไปนี้: Error org.freedesktop.DBus.Error.UnknownMethod: Method "Suspend" with signature "" on interface "org.freedesktop.UPower" doesn't exist ทางเลือกหนึ่งที่จะระงับโดยไม่ต้องแจ้งรหัสผ่านคือการแก้ไขsudoerssudo pm-suspendแล้ว มีวิธีอื่นใดที่ไม่เกี่ยวข้องกับการให้สิทธิ์รูตหรือไม่?
10 linux  ubuntu  sudo  suspend  dbus 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.