A && B && C
ฉันมีสคริปต์ที่รันสามฟังก์ชั่น:
ฟังก์ชั่นB
จะต้องทำงานเป็นผู้ใช้ขั้นสูงในขณะที่A
และC
ไม่
ฉันมีวิธีแก้ปัญหาต่าง ๆ แต่สิ่งเหล่านี้ไม่เป็นที่พอใจ
sudo สคริปต์ทั้งหมด:
sudo 'A && B && C'
ดูเหมือนว่าเป็นความคิดที่ไม่ถูกต้องในการใช้งาน
A
และC
ในฐานะผู้ใช้ระดับสูงหากไม่จำเป็นทำให้สคริปต์โต้ตอบ:
A && sudo B && C
ฉันอาจต้องพิมพ์รหัสผ่านของฉัน แต่ฉันต้องการให้สคริปต์ของฉันไม่สามารถโต้ตอบได้เนื่องจากแต่ละฟังก์ชั่นอาจใช้เวลาสักครู่และฉันไม่ต้องการให้สคริปต์รอฉัน นั่นเป็นเหตุผลว่าทำไมมันถึงเป็นสคริปต์ในตอนแรกดังนั้นฉันจึงไม่ต้องดูมันเลย
วิธีการแก้ปัญหาโง่:
sudo : && A && sudo -n B && C
ครั้งแรกมันดูเหมือนว่าโง่ที่จะใช้ไม่มี-op แรกและเราก็ต้องข้ามนิ้วมือของฉันที่ไม่ได้ไปใช้เวลามากกว่า
sudo
$sudo_timeout
วิธีแก้ปัญหาสมมุติฐาน (ฉันหวังว่าคุณจะบอกฉันมันมีอยู่):
sudo --store-cred 'A && sudo --use-cred-from-parent-sudo B && C'
นั่นจะทำให้รหัสผ่านของฉันเริ่มต้นจากนั้นใช้ข้อมูลประจำตัวนั้นเมื่อจำเป็นเท่านั้น
คุณมีความคิดเห็นอย่างไรกับเรื่องนี้? ฉันประหลาดใจมากที่ไม่มีวิธีแก้ปัญหาดังกล่าวเพราะฉันคิดว่ามันเป็นปัญหาที่พบได้บ่อยมาก (เกี่ยวกับmake all && sudo make install
)
A
และชิ้นส่วนอย่างชัดเจนโดยใช้C
su -l some_non_priviliged_user
ไม่มีปัญหาการหมดเวลาและไม่มี Priveliges สำหรับ A และ C ฉันไม่คิดว่า 4 เป็นไปได้sudo
ดูเหมือนว่า "สถานะทั่วโลก" สำหรับผู้ใช้