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

คำถามที่เกี่ยวข้องกับคำสั่ง sudo ที่อนุญาตให้ผู้ใช้รันโปรแกรมด้วยสิทธิ์ของผู้ใช้อื่น (โดยปกติคือผู้ใช้รูท)

3
ฉันจะเรียกใช้ eclipse เป็น sudo ได้อย่างไร
ฉันได้อ่านว่ามันไม่ดีที่จะเรียกใช้โปรแกรม GUI sudoจากขั้วใช้ ในการจัดการอัปเดต eclipse ฉันต้องการสิทธิ์ยกระดับ (ภาพหน้าจอดู) ฉันจะทำอย่างถูกต้องได้อย่างไร
9 12.04  sudo  eclipse 

3
บางโปรแกรมไม่พบเมื่อใช้กับ sudo
ฉันเพิ่งติดตั้งไปที่/usr/local/goและ~/.bashrcเพิ่มสายนี้: export PATH=$PATH:/usr/local/go/bin ตอนนี้goทำงานได้จากบรรทัดคำสั่ง แต่sudo goให้ฉัน: $ sudo go sudo: go: command not found ~ $ sudo echo $PATH /usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/home/benjamin/algs4/bin:/usr/local/go/bin

4
จะให้สิทธิ์การปิดระบบแก่ผู้ใช้ได้อย่างไร?
ฉันใช้ Ubuntu 11.04 ฉันต้องการเรียกใช้สคริปต์ที่ตรวจสอบกระบวนการทำงานและปิดระบบเมื่อกระบวนการนั้นสิ้นสุดลง ในการทำเช่นนี้ผู้ใช้จำเป็นต้องเข้าถึงการปิดระบบเพื่อให้สคริปต์สามารถดำเนินการได้โดยไม่ต้องใช้รหัสผ่าน ฉันอ้างถึงหน้านี้และเพิ่มข้อความในไฟล์ sudoers ของฉัน sudo shutdown -h nowแต่ก็ยังคงขอให้ฉันรหัสผ่านทุกครั้งที่ผมดำเนินการ นอกจากนี้ฉันได้รับข้อผิดพลาดที่บอกว่าจำเป็นต้องมีสิทธิ์ใช้งานรูทเมื่อฉันปิดการทำงานโดยไม่ต้องใช้ sudo ไฟล์ sudoers ของฉันมีลักษณะเช่นนี้ # Cmnd alias specification Cmnd_Alias SHUTDOWN = /sbin/shutdown # User privilege specification root ALL=(ALL:ALL) ALL myusername ALL = NOPASSWD: SHUTDOWN ฉันจะให้สิทธิ์แก่ผู้ใช้เพื่อดำเนินการคำสั่งปิดเครื่องโดยไม่ต้องป้อนรหัสผ่านด้วยตนเองได้อย่างไร ขอบคุณ
9 11.04  sudo  shutdown 

4
Sudo แฮงค์โดยไม่ต้องใส่รหัสผ่าน
ฉันเพิ่งติดตั้งอูบุนตูใหม่และตอนนี้เมื่อฉันพยายามใช้ sudo ในเทอร์มินัลอีมูเลเตอร์มันแค่แฮงที่นั่นโดยไม่ต้องขอรหัสผ่าน ถ้าฉันสลับไปที่เทอร์มินัล (Ctrl + Alt + F1) และเข้าสู่ระบบ sudo จะทำงานตามที่คาดไว้ มีคนช่วยฉันคิดเรื่องนี้ได้ไหม
9 sudo 

2
การกู้คืนใด ๆ จากสิ่งนี้? sudo chmod 600. *
คำเตือน - DO NOTรันกล่าวถึงคำสั่ง ดังนั้นดูเหมือนว่าฉันจะทำสิ่งที่ค่อนข้างโง่ที่นี่เพื่อวางไว้อย่างอ่อนโยน ฉันพยายามเปลี่ยนการอนุญาตสำหรับไฟล์บางไฟล์ในไดเรกทอรีที่เริ่มต้นด้วย.การอ่าน / เขียนสำหรับ sudo / root เท่านั้น ความพยายามของฉันในการเปลี่ยนไฟล์หลายไฟล์ในครั้งเดียวดูเหมือนว่าจะทำบางสิ่งบางอย่างในระดับโลกอย่างน่ากลัว ในขณะที่อยู่ในไดเรกทอรี (ไม่ได้อยู่ที่ root dir) ฉันวิ่งได้sudo chmod 600 .*ดีฉันโพสต์สิ่งนี้จากโทรศัพท์ของฉันตอนนี้ ... ฉันยังคงเปิดหน้าต่างเทอร์มินัลในขณะนี้ แต่ฉันค่อนข้างแน่ใจว่าแล็ปท็อปไป นอนหลับฉันทำเสร็จแล้ว เฮฮาแปลว่าคำถามนี้เร่งด่วนเล็กน้อย โอ้และสิ่งนี้ดูเหมือนว่าจะมีการเปลี่ยนแปลงการอนุญาตอยู่ใกล้ทุกที่ที่ฉันคาดเดา ฉันไม่สามารถเรียกใช้lsหรือcd ..คำสั่ง ความพยายามในการcd /home/brianหรือcd ~ให้ข้อผิดพลาดbash: cd: /home/brian: Permission Deniedและความพยายามใด ๆ ที่sudoคำสั่งเพียงแค่พูดว่าbash: /usr/bin/sudo: Permission Denied ฉันกลัวที่จะรีบูทไม่มีเงื่อนงำหากมีสิ่งใดสร้างขึ้นในการกู้คืนจากสิ่งที่เป็นใบ้ แต่คิดว่าฉันจะลองถามที่นี่ก่อนที่จะทำสิ่งที่เลวร้ายยิ่งกว่า ฉันเป็นลีนุกซ์รุ่นใหม่เมื่อระบบปฏิบัติการหลักของฉันได้รับการสนับสนุนและได้รับการสนับสนุนมาเมื่อไม่นานมานี้ ความคิดใด ๆ ของสิ่งที่ต้องลองจะได้รับการชื่นชมอย่างมาก แก้ไข:ฉันต้องการให้คำชี้แจงเกี่ยวกับวิธีการ / คำสั่งนี้ถูกดำเนินการ …

2
ฉันจะค้นหาตัวแปรสภาพแวดล้อม SUDO_COMMAND ได้ที่ไหน
ปัจจุบันฉันเรียนรู้รากฐานของ Linux ด้วย Ubuntu และมีกิจกรรมเล็ก ๆ น้อย ๆ ที่ฉันต้องการค้นหาข้อมูลเกี่ยวกับตัวแปรสภาพแวดล้อม ฉันได้พบ 6/7 ข้อมูล SUDO_COMMANDแต่เพียงไม่สามารถหา นี่คือวิธีที่รายการไป: SHELL=/bin/bash USER=student SUDO_COMMAND= PWD=/home HOME=/home/student LOGNAME=student OLDPWD=/home/student ฉันสังเกตเห็นว่าข้อมูลมาตามลำดับและSUDO_COMMANDอยู่ระหว่างผู้ใช้และ pwd ฉันทำผิดพลาดที่ไหนสักแห่งหรือไม่?

5
ความเสี่ยงด้านความปลอดภัยในการใช้บัญชี admin ทุกวัน (ไม่ใช่รูท)?
สิ่งเดียวที่ทำให้บัญชีผู้ดูแลระบบของฉันแตกต่างจากบัญชีปกติคือบัญชีผู้ดูแลระบบของฉันเป็นสมาชิกของsudoกลุ่มและสามารถทำงานsudoได้ ปลอดภัยหรือไม่ที่จะใช้บัญชีผู้ดูแลระบบของฉันสำหรับงานประจำวัน ถ้าใช่ทำไม สมมติว่าฉันระมัดระวังมากที่ฉันใส่รหัสผ่านของฉันและรู้ว่าคำสั่งทำอะไรก่อนที่จะดำเนินการมันแน่นอน หากฉันใช้บัญชีที่ไม่ใช่ผู้ดูแลระบบปกติสำหรับบัญชีรายวันของฉันเมื่อฉันต้องการเรียกใช้บางอย่างในฐานะรูทฉันจะsuเข้าสู่บัญชีผู้ดูแลระบบของฉัน (ไม่ใช่ในรูทเนื่องจากไม่มีรหัสผ่านและถูกปิดใช้งาน!) และมีsudoคำสั่งใน เปลือกผู้ดูแลระบบ; หรือฉันจะสลับผู้ใช้แบบกราฟิก ดังนั้นจำนวนคำสั่งที่จะรันเหมือนกัน - การใช้บัญชีปกติจะหมายความว่าฉันต้องใส่รหัสผ่านผู้ดูแลระบบของฉันสองครั้งเมื่อใช้งานบางอย่างเป็นรูท ดังนั้นผู้ใช้ขั้นสูงควรทำงานทุกวันในบัญชีปกติแทนที่จะเป็นบัญชีผู้ดูแลระบบหรือไม่ และทำไมหรือไม่ โปรดทราบว่าโดย "บัญชีผู้ดูแลระบบ" ฉันหมายถึงบัญชีที่มีสิทธิ์ใช้sudoเพื่อเรียกใช้คำสั่งเป็นรูทไม่ใช่บัญชีรูท ฉันไม่เคยเข้าสู่ระบบในฐานะ root

1
เข้าถึง / dev / ttyUSB0 และ sudo
นี่เป็นคำถามแรกของฉันที่นี่ ฉันใช้ Ubuntu 12.04 และมีแอปพลิเคชันที่เข้าถึงพอร์ต USB ของคอมพิวเตอร์ ชื่อผู้ใช้อูบุนตูของฉันคือgadu จนถึงวันนี้ฉันได้ใช้คำสั่งต่อไปนี้เสมอ: sudo ./gadumaster และป้อนรหัสผ่านของฉัน (gadumaster เป็นแอปพลิเคชันที่เข้าถึง USB) คำสั่งนี้ใช้งานได้เช่นเดียวกับการเรียกใช้ฟังก์ชั่นการรีบูตระบบ () ที่ใช้ในการรีสตาร์ทแล็ปท็อปของฉันเมื่อเกิดสภาวะภายนอกจาก USB เกิดขึ้น วันนี้ฉันต้องเปลี่ยนสิ่งต่าง ๆ เพื่อให้แอปพลิเคชันนี้ทำงานโดยอัตโนมัติหลังจากแล็ปท็อปเริ่มทำงาน ดังนั้นฉันจึงเตรียมไฟล์สคริปต์และค้นหาวิธีการส่งรหัสผ่านไปยังสคริปต์ หลังจากที่ได้อ่านบทความบางฉันตัดสินใจที่จะอนุญาตให้เข้าถึง USB สำหรับผู้ใช้ของฉันโดยเพิ่มdialoutกลุ่ม: sudo adduser gadu dialout หลังจากรีบูตเครื่องฉันสามารถเริ่มต้นแอปพลิเคชันของฉันได้โดยพิมพ์เพียง: ./gadumaster สิ่งนี้ยอดเยี่ยม แต่ฉันต้องการวิธีเปิดใช้งานฟังก์ชั่นรีบูต () ฉันประหลาดใจเมื่อพบว่าคำสั่งต่อไปนี้ไม่ทำงานอีกต่อไป: sudo ./gadumaster ใช่การใช้งานแอพพลิเคชั่นด้วยsudoทำให้ฉันเกิดข้อผิดพลาด "ปฏิเสธสิทธิ์" เมื่อเชื่อมต่อกับ USB! ทราบว่าไม่มี sudo มันใช้งานได้! พยายามลบผู้ใช้ของฉันออกจากกลุ่มการโทรออก: sudo deluser gadu …

1
วิธีเปิดหน้าต่าง & แท็บเทอร์มินัล, ssh และ sudo su โดยอัตโนมัติ?
เมื่อฉันเริ่มต้นวันใหม่หน้าคอมพิวเตอร์ก่อนอื่นฉันต้องทำดังนี้: ในพื้นที่ทำงาน 1: เปิดหน้าต่างเทอร์มินัลใหม่ssh loginserverจากนั้นssh serverA1และsudo su account00 เปิดแท็บเทอร์มินัลใหม่ssh loginserverจากนั้นssh serverA2และsudo su account00 เปิดแท็บเทอร์มินัลใหม่ssh loginserverจากนั้นssh serverA3และsudo su account00 ในพื้นที่ทำงาน 2: เปิดหน้าต่างเทอร์มินัลใหม่ 1 ssh loginserverจากนั้นssh serverB1และsudo su account00 เปิดแท็บเทอร์มินัลใหม่ssh loginserverจากนั้นssh serverB2และsudo su account00 เปิดแท็บเทอร์มินัลใหม่ssh loginserverจากนั้นssh serverB3และsudo su account00 ในพื้นที่ทำงาน 3: ฯลฯ ... มีวิธีทำให้กระบวนการทั้งหมดเป็นแบบอัตโนมัติหรือไม่เช่นมีสคริปต์ที่เปิดแต่ละหน้าต่างเทอร์มินัลในพื้นที่ทำงานของตนเองแท็บเทอร์มินัลทั้งหมดในแต่ละหน้าต่างและคำสั่งssh/ sudo suคำสั่งที่เกี่ยวข้องทั้งหมดหรือไม่ ถ้าไม่ฉันจะทำให้ส่วนใดเป็นอัตโนมัติได้บ้าง

2
คำสั่ง 'sudo -s' ทำอะไรและใช้ในตัวอย่างนี้อย่างไร
ฉันมีข้อสงสัยดังต่อไปนี้ ในบทช่วยสอนที่เกี่ยวข้องกับการติดตั้งซอฟต์แวร์ที่ฉันกำลังติดตามบอกว่าฉันต้องรันคำสั่งต่อไปนี้ (ฉันกำลังทำมันลงในssh shell ดังนั้นรายการของขั้นตอนนี้จะจบลงด้วยexitคำสั่ง): sudo -s apt-get update apt-get install -y build-essential libtool libcurl4-openssl-dev libncurses5-dev libudev-dev autoconf automake screen exit ข้อสงสัยของฉันคือ: อะไรกันแน่ที่ไม่-sพารามิเตอร์ทำหลังจากsudoคำสั่ง? ค้นหาบนเว็บฉันพบว่า: commands [คำสั่ง] ตัวเลือก (s (เปลือก) เรียกใช้เชลล์ที่ระบุโดยตัวแปรสภาพแวดล้อม SHELL หากมีการตั้งค่าหรือเชลล์ตามที่ระบุในฐานข้อมูลรหัสผ่าน หากระบุคำสั่งคำสั่งจะถูกส่งไปยังเชลล์เพื่อดำเนินการผ่านตัวเลือก shellc ของเชลล์ หากไม่ได้ระบุคำสั่งเชลล์เชิงโต้ตอบจะถูกดำเนินการ ฉันดูเหมือนว่าsudo -sรันคำสั่งโดยใช้ตัวแปรสภาพแวดล้อมของเชลล์ แต่นี่ไม่ชัดเจนสำหรับฉัน: ในกรณีนี้คำสั่งที่เรียกใช้งานด้วยตัวแปรสภาพแวดล้อมคืออะไร? (มันจะรันsudo -sและไม่sudo -s [command]เท่านั้น)

4
sudo ไม่ขอรหัสผ่านแม้ว่าจะมีการรีบู๊ตหลายครั้ง
ฉันไม่ได้แก้ไข sudoers ของฉัน แต่ฉันไม่จำเป็นต้องป้อนรหัสผ่านเมื่อทำงานsudoในบรรทัดคำสั่ง ฉันสามารถรันคำสั่ง sudo ใด ๆ โดยไม่ต้องป้อนรหัสผ่านเพียงแค่เปิด terminal แม้หลังจากรีบูตระบบฉันจะหยุดสิ่งนี้ได้อย่างไร uid=1000(ktcool) gid=1000(ktcool) groups=1000(ktcool),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),108(lpadmin),1‌​24(sambashare)
8 sudo 

2
ฉันจะทำให้คำสั่ง sudo เริ่มต้นเมื่อเริ่มต้นด้วยความล่าช้า 1 นาทีได้อย่างไร
ฉันต้องการให้sudoคำสั่ง ( sudo service smbd restart) ทำงานหลังจากผ่านไป 1 นาที ฉันจะทำสิ่งนี้อย่างไร PS นี่คือระบบที่ไม่มีจอภาพเมาส์แป้นพิมพ์หรือลำโพงเชื่อมต่อ - เป็นเครื่องพิมพ์และไฟล์เซิร์ฟเวอร์

3
วิธีที่เหมาะสมในการให้ผู้ใช้ป้อนรหัสผ่านสำหรับสคริปต์ทุบตีโดยใช้เฉพาะ GUI (ที่ซ่อนเทอร์มินัล)
ฉันได้สร้างสคริปต์ทุบตีที่ใช้ kdialog เฉพาะสำหรับการโต้ตอบกับผู้ใช้ มันถูกเปิดตัวจากไฟล์ ".desktop" เพื่อให้ผู้ใช้ไม่เคยเห็นเทอร์มินัล ดูเหมือน 100% เหมือนแอป GUI (แม้ว่าจะเป็นเพียงสคริปต์ทุบตี) มันทำงานใน KDE เท่านั้น (Kubuntu 12.04) ปัญหาเดียวของฉันคือจัดการรหัสผ่านให้ปลอดภัยและสะดวก ฉันไม่สามารถหาทางออกที่น่าพอใจ สคริปต์ได้รับการออกแบบให้รันในฐานะผู้ใช้ปกติและแจ้งให้ใส่รหัสผ่านเมื่อต้องการคำสั่ง sudo ก่อน ด้วยวิธีนี้คำสั่งส่วนใหญ่ที่ไม่ต้องการสิทธิ์ sudo จะถูกเรียกใช้ในฐานะผู้ใช้ปกติ เกิดอะไรขึ้น (เมื่อสคริปต์รันจากเทอร์มินัล) คือผู้ใช้จะได้รับพร้อมต์สำหรับรหัสผ่านของพวกเขาหนึ่งครั้งและการหมดเวลา sudo เริ่มต้นทำให้สคริปต์เสร็จสิ้นรวมถึงคำสั่ง sudo เพิ่มเติมโดยไม่ต้องแจ้งผู้ใช้อีกครั้ง นี่คือวิธีที่ฉันต้องการให้ทำงานเมื่อเรียกใช้ GUI ด้านหลัง ปัญหาหลักคือการใช้kdesudoเพื่อเปิดสคริปต์ของฉันซึ่งเป็นวิธี GUI มาตรฐานหมายความว่าสคริปต์ทั้งหมดจะถูกดำเนินการโดยผู้ใช้รูท ดังนั้นความเป็นเจ้าของไฟล์จึงถูกกำหนดให้กับผู้ใช้รูทฉันไม่สามารถพึ่งพา~/ในพา ธ ได้และสิ่งอื่น ๆ อีกมากมายนั้นน้อยกว่าอุดมคติ การรันสคริปต์ทั้งหมดในฐานะผู้ใช้รูทเป็นเพียงโซลูชันที่ไม่น่าพอใจและฉันคิดว่านี่เป็นวิธีปฏิบัติที่ไม่ดี ฉันขอขอบคุณแนวคิดใด ๆ ที่ให้ผู้ใช้ป้อนรหัสผ่าน sudo เพียงครั้งเดียวผ่านทาง GUI ในขณะที่ไม่ได้ใช้สคริปต์ทั้งหมดในฐานะที่เป็นรูท …
8 bash  scripts  sudo  gui  kde4 

3
โฮมโฟลเดอร์ใน `root 'และไม่ใช่ใน' home '…ฉันสับสน!
ฉันมีปัญหากับhomeโฟลเดอร์ของฉันและนี่ทำให้ฉันมีปัญหาการอนุญาต ฉันได้ติดตั้งแอปพลิเคชั่นที่บอกฉันว่าฉันไม่ได้รับอนุญาตให้บันทึก/home/username/Desktopแต่ที่จริงบ้านของฉันอยู่ใน/home/username/Área de Trabalho(Área de Trabalho = เดสก์ท็อป แต่เป็นภาษาโปรตุเกส) การเข้าถึงขณะที่sudoบ้านของฉันแสดงในภาพด้านล่าง (ดูที่ไอคอนโฟลเดอร์) ( ข้างในเป็นdesktopโฟลเดอร์ ) การเข้าถึงตามปกติที่userบ้านของฉันแสดงในภาพด้านล่าง ( ข้างในเป็นÁrea de Trabalhoโฟลเดอร์ ) เป็นเรื่องปกติหรือไม่ ฉันควรบอกอูบุนตูว่าhomeโฟลเดอร์จริงของฉันอยู่ที่ไหน ฉันต้องทำอะไร ขอบคุณล่วงหน้า!

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