Score:2

เป็นไปได้ไหมที่จะเปิดตัว nautilus หรือ gedit ด้วยสิทธิ์ขั้นสูง

ธง au

บางครั้งฉันต้องแก้ไขไฟล์ใน / ฯลฯ. ฉันรู้ว่าฉันสามารถทำได้ด้วยคอนโซล (sudo mv some/file /etc/some/file, sudo nano /etc/some/file) ฯลฯ แต่ฉันพบว่าวิธีนี้ค่อนข้างเทอะทะ เรียกฉันว่านิสัยเสีย แต่ฉันคุ้นเคยกับเครื่องมือ GUI เช่น Nautilus และ Gedit จริงๆ

การแจกจ่ายเช่น Ubuntu Mate หรือ Mint ช่วยให้ง่ายขึ้น: ฉันสามารถคลิกขวาที่โฟลเดอร์ จากนั้นเมนูบริบทจะปรากฏขึ้นพร้อมกับตัวเลือกต่างๆ เช่น "เปิดในฐานะผู้ดูแลระบบ" จากนั้นคลิกสองครั้งที่ไฟล์ข้อความจะเปิดขึ้นใน gedit ที่มีสิทธิ์ยกระดับ

อย่างไรก็ตาม ฉันไม่พบตัวเลือกดังกล่าวใน Ubuntu เวอร์ชัน Unity ที่เป็นค่าเริ่มต้น:

ป้อนคำอธิบายรูปภาพที่นี่

บันทึก:

  • ฉันทราบคำถามแล้ว วิธีเรียกใช้ Nautilus ด้วยสิทธิพิเศษขั้นสูง แต่วิธีแก้ไขที่แนะนำในที่นี้คือการใช้ gksudoซึ่งใช้งานไม่ได้อีกต่อไป
  • ฉันคิดว่าฉันทำได้เสมอ sudo gedit /etc/อะไรก็ตาม, แต่ - AFAIK - ใช้ ซูโด ด้วยเครื่องมือ GUI นั้นไม่แนะนำอย่างยิ่ง
  • ฉันจำได้ว่าบางคนบอกว่าไม่ควรเรียกใช้เครื่องมือ GUI ที่มีสิทธิ์ขั้นสูง เลย. ดูเหมือนจะไม่เป็นเช่นนั้น อย่างไรก็ตาม เนื่องจากเครื่องมือ GUI เริ่มต้นบางตัวขอการยกระดับ ซอฟต์แวร์ Ubuntu อาจเป็นหนึ่งในตัวอย่างที่โดดเด่นที่สุด:

ป้อนคำอธิบายรูปภาพที่นี่

มีวิธีเรียกใช้ Nautilus หรือ Gedit ด้วยสิทธิ์ขั้นสูงหรือไม่?

muru avatar
us flag
สิ่งนี้ตอบคำถามของคุณหรือไม่ [วิธีเปิด Nautilus ในฐานะผู้ดูแลระบบใน Ubuntu 19.04](https://askubuntu.com/questions/1171784/how-to-open-nautilus-as-admin-in-ubuntu-19-04)
muru avatar
us flag
สิ่งที่ `admin://` ควรทำงานร่วมกับยูทิลิตี้ GNOME อื่น ๆ เช่น gedit
Paul Benson avatar
us flag
เมื่อฉันใช้ Ubuntu ฉันแก้ไขไฟล์ข้อความด้วย 'sudo gedit' เป็นเวลาสองสามปีและไม่เคยมีปัญหา หรือแก้ไขไฟล์ข้อความรูทด้วย 'sudo nano' ซึ่งตอนนี้ฉันใช้มากกว่าเนื่องจากเป็นโปรแกรมแก้ไขข้อความสากลของ Linux 'gksudo' ถูกแทนที่ด้วย (โดยใช้ gedit) `gedit admin:///PathToRootFile`
gaazkam avatar
au flag
@muru ข้อผิดพลาดนี้: `GDBus.Error:org.freedesktop.PolicyKit1.Error.Failled: หัวเรื่องกระบวนการ Unix ไม่มีชุด uid'
gaazkam avatar
au flag
@PaulBenson ดูด้านบน
Paul Benson avatar
us flag
@gaazkam `xed admin://..........` ใช้งานได้ดีกับ Mint เหมือนตอนที่ฉันใช้ gedit กับ Ubuntu ดังนั้นฉันจึงไม่เชื่อว่ามีอะไรเปลี่ยนแปลง เช่น `gedit admin:///etc/hosts` ควรเปิดไฟล์โฮสต์หลังจากพิมพ์รหัสผ่าน
gaazkam avatar
au flag
@PaulBenson อย่างที่ฉันพูด ผลลัพธ์นี้ใน `GDBus.Error:org.freedesktop.PolicyKit1.Error.Failled: หัวเรื่องกระบวนการ Unix ไม่มีชุด uid' Ubuntu 21.10 เวอร์ชันเริ่มต้น (ไม่ใช่ Lubuntu, Kubuntu หรือรีมิกซ์อื่นๆ)
heynnema avatar
ru flag
วิธี **ที่เหมาะสม** ในการเริ่มแอปพลิเคชัน GUI ด้วย privs จาก CLI คือการใช้ `sudo -H` เช่น `sudo -H gedit /etc/filename`
Paul Benson avatar
us flag
ฉันไม่ได้ลองใช้ Ubuntu 21 โดยย้ายไปที่ Mint และ Manjaro หลังจาก Ubuntu 20.04 ซึ่งใช้งานได้เสมอสำหรับฉัน แค่ไม่ชอบโนมจึงไม่รู้ว่ามีข้อผิดพลาดกับ 21 หรือไม่ หากคุณเรียกใช้ `id -ng myusername` แสดงว่าคุณเป็นสมาชิก sudo หรือไม่
gaazkam avatar
au flag
@PaulBenson `id -ng m` พิมพ์เฉพาะ `m` แต่ฉันยังใช้ sudo ได้ `กลุ่ม m` แสดง `m adm cdrom sudo dip plugdev lpadmin lxd sambashare`
gaazkam avatar
au flag
@heynnema ว้าว หลังจากอ่านมาหลายปี "*อย่าใช้ `sudo` สำหรับแอพ GUI ให้ใช้ `gksudo`/`pkexec`/`admin://`/`อะไรอย่างอื่น`/`ไม่มีอะไรเลย แทน อย่าเรียกใช้แอพ GUI เป็น root`*" ฉันรู้สึกประหลาดใจเล็กน้อยที่ได้อ่านว่าฉันสามารถใช้ `sudo -H` เพื่อเรียกใช้แอป GUI ได้... แต่เดี๋ยวก่อน มันใช้งานได้ :)
heynnema avatar
ru flag
@gaazkam ฉันใส่มันเป็นคำตอบกุ๊กกิ๊ก หากคุณคิดว่ามันตอบคำถามของคุณ โปรดอย่าลืมยอมรับโดยคลิกที่ไอคอนเครื่องหมายถูกที่ปรากฏทางด้านซ้ายของคำตอบของฉัน ขอบคุณ!
ar flag
สิ่งนี้ตอบคำถามของคุณหรือไม่ [ฉันจะเริ่ม Nautilus ในฐานะ root ได้อย่างไร](https://askubuntu.com/questions/156998/how-do-i-start-nautilus-as-root)
heynnema avatar
ru flag
@gaazkam สถานะโปรด ...
gaazkam avatar
au flag
@heynnema ฉันยินดีรับคำตอบของคุณหากชัดเจนว่าแนวทางของคุณเป็นแนวทางที่แนะนำจริงๆ ใช้งานง่าย สะดวก และดูเหมือนจะได้ผล แต่... ฉันมักถูกบอกเสมอว่าเราไม่ควรใช้ sudo เพื่อเรียกใช้แอป GUI *แม้ว่า* การทำเช่นนั้นดูเหมือนจะได้ผลเสมอ คุณอ้างอิงเอกสารที่ระบุว่า `sudo -H` "*ร้องขอให้นโยบายความปลอดภัยตั้งค่าตัวแปรสภาพแวดล้อม HOME เป็นโฮมไดเร็กทอรีที่ระบุโดยรายการฐานข้อมูลรหัสผ่านของผู้ใช้เป้าหมาย*" (ต่อ)
gaazkam avatar
au flag
...เพียงพอที่จะแก้ไขปัญหาที่อาจเกิดขึ้นจากการเรียกใช้แอป GUI ด้วย sudo หรือไม่ (เราได้รับการเตือนเสมอ) ตัดสินยาก เพราะฉันไม่รู้จริง ๆ ว่าปัญหาอะไรจะเกิดขึ้นและเกิดขึ้นได้อย่างไรโปรดทราบว่าเอกสารที่คุณอ้างถึงไม่ได้ระบุอย่างชัดเจนว่าตัวเลือก `-H` "*ทำให้ปลอดภัยในการเรียกใช้แอป GUI ด้วย `sudo`*" ดังนั้น ผมเชื่อว่าคำตอบของคุณควรอธิบายว่าทำไมและอย่างไรถึง `sudo -H` คือ "*the*" วิธีที่เหมาะสมในการยกระดับสิทธิ์ของแอป GUI
gaazkam avatar
au flag
@heynnema ฉันขอโทษถ้าสิ่งที่ฉันพูดฟังดูหยาบคาย ฉันไม่แน่ใจจริงๆ ว่าฉันอยู่ในฐานะที่จะตรวจสอบคำตอบของคุณเช่นนี้ได้ ดังนั้น หากไม่มั่นใจว่าวิธีการของคุณเป็นแนวทางที่เหมาะสมจริง ๆ ฉันขอระงับการตัดสินและไม่ลงคะแนนเสียง แต่เนื่องจากคุณถามถึงสถานะ... ก็คุณอยู่นี่แล้ว
heynnema avatar
ru flag
@gaazkam ฉันได้แก้ไขคำตอบเพื่อให้ข้อมูลเพิ่มเติมเล็กน้อยและเพื่อให้คุณชัดเจนขึ้นเล็กน้อย
Score:3
ธง cn

คุณสามารถมีเมนูคลิกขวาที่อนุญาตให้เปิดไฟล์ที่มีสิทธิ์รูทได้อย่างง่ายดายโดยการติดตั้งแพ็คเกจ nautilus-admin. ส่วนขยายหอยโข่งนี้เพิ่มตัวเลือกเมนูคลิกขวาสองตัวเลือก หนึ่งในนั้นช่วยให้คุณเปิดไฟล์ในฐานะรูทเพื่อแก้ไขใน gedit รายการอื่นอนุญาตให้คุณเปิดหน้าต่าง nautilus โดยมีสิทธิ์รูท

แพ็คเกจนี้รวมอยู่ในที่เก็บมาตรฐานของ Ubuntu และสามารถติดตั้งได้ด้วยคำสั่ง

sudo apt ติดตั้ง nautilus-admin.dll

มันขึ้นอยู่กับแบ็กเอนด์ของผู้ดูแลระบบของ GNOME กล่าวคือ เอฟเฟกต์จะเหมือนกับว่าคุณเปิดไฟล์จากบรรทัดคำสั่งด้วยปุ่ม ผู้ดูแลระบบ:// URI เช่น

gedit ผู้ดูแลระบบ:///etc/fstab
gaazkam avatar
au flag
ทั้ง `nautilus-admin` และ `admin://` เกิดข้อผิดพลาด: `GDBus.Error:org.freedesktop.PolicyKit1.Error.Failled: หัวเรื่องกระบวนการ Unix ไม่มีชุด uid'
Score:2
ธง cn
raj

คุณสามารถใช้ได้ pkexec แทน gksudo. วิธีการวิ่งของฉันเช่น gedit ที่มีสิทธิ์ยกระดับคือการสร้างสคริปต์เป็นต้น /usr/local/bin/su_geditโดยมีเนื้อหาดังนี้

#!/bin/bash
pkexec env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY gedit $*

จากนั้นคุณสามารถสร้าง .เดสก์ทอป ไฟล์สำหรับสคริปต์นี้ ตัวอย่างเช่น /usr/share/applications/su_gedit.desktop (ผมยังไม่ได้ทดสอบว่าที่อื่นนอกจาก /usr/share/applications จะทำงาน) คัดลอกเนื้อหาจาก org.gnome.gedit.desktop และแก้ไขให้เหมาะสม กล่าวคือ เปลี่ยน ชื่อ= และ ความคิดเห็น= บรรทัดอะไรก็ได้ที่คุณต้องการ (เช่น ชื่อ = ตัวแก้ไขข้อความรูท และ Comment=แก้ไขไฟล์ข้อความด้วยสิทธิ์รูท) และแทนที่ gedit โดย /usr/local/bin/su_gedit ทั้งหมด ผู้บริหาร= เส้น

หลังจากที่คุณทำเช่นนี้ เมื่อคลิกขวาใน Nautilus บนไฟล์ที่เปิดตามปกติใน gedit และเลือก "เปิดด้วยโปรแกรมอื่น" คุณควรเห็นรายการ "Root Text Editor" ของคุณในรายการ แม้ว่าจะไม่มีอยู่ หากคุณคลิกปุ่ม "แสดงโปรแกรมทั้งหมด" คุณควรจะสามารถเลือกได้

อีกวิธีหนึ่งคือการสร้างสคริปต์ที่คล้ายกันซึ่งทำงานแบบยกระดับ คำพังเพย-terminalและสร้างตัวเรียกใช้งานสำหรับสคริปต์นั้น เช่น ในแผง GNOME ของคุณหรือบนเดสก์ท็อป จากเทอร์มินัลนั้น คุณก็สามารถเรียกใช้ได้ gedit เป็นราก นั่นคือสิ่งที่ฉันมักจะทำ

gaazkam avatar
au flag
ไม่ใช่วิธีที่ง่ายที่สุด แต่... มันได้ผล :)
Score:0
ธง ru

จากความคิดเห็น...

เดอะ เหมาะสม และวิธีที่ง่ายที่สุดในการเริ่มแอปพลิเคชัน GUI ด้วย privs จาก CLI คือการใช้ sudo -H.

ตัวอย่าง: sudo -H gedit /etc/ชื่อไฟล์

จาก ซูโด หน้าคน...

 -H, --ชุดบ้าน
             ขอให้นโยบายความปลอดภัยตั้งค่าสภาพแวดล้อมที่บ้าน
             ตัวแปรไปยังโฮมไดเร็กทอรีที่ระบุโดยเป้าหมาย
             รายการฐานข้อมูลรหัสผ่านของผู้ใช้ ขึ้นอยู่กับนโยบาย
             นี่อาจเป็นพฤติกรรมเริ่มต้น

ดังนั้น -ชม ทำให้ธง ซูโด สมมติ รากโฮมไดเร็กทอรีเป็น บ้าน แทนโฮมไดเร็กทอรีของผู้ใช้ปัจจุบัน มิฉะนั้นบางไฟล์ใน ผู้ใช้โฮมไดเร็กทอรีของ 's จะกลายเป็นของ root ซึ่งอาจนำไปสู่ปัญหาต่างๆ

บันทึก: ตัดตอนมาจาก ธง '-H' ใน 'sudo -H' หมายถึงอะไร

ปัญหาที่พบบ่อยที่สุดของการใช้งาน ซูโด ปราศจาก -ชม ตัวเลือกคือการสร้างลูปการเข้าสู่ระบบ

กรณีนี้อาจเกิดขึ้นได้เนื่องจากไฟล์ต่อไปนี้เปลี่ยนจาก your_username:your_username เป็น root:root...

-rw------- 1 your_username your_username 407910 2 พฤศจิกายน 08:56 น. ICEauthority
-rw------- 1 your_username your_username 58 23 มิ.ย. 2560 .Xauthority
us flag
คุณมีพื้นฐานเพิ่มเติมหรือไม่ว่าเหตุใดวิธีนี้จึงเป็นวิธีที่แนะนำ ~ในขณะนี้~ ในขณะที่เราได้รับคำสั่งมาหลายปีว่าอย่าเรียกใช้แอปพลิเคชันกราฟิกโดยใช้ `sudo` เพิ่งเพิ่มตัวเลือก `-H` ใน `sudo` หรือไม่ เหตุใดการตั้งค่า "โฮมไดเร็กตอรี่ที่ระบุโดยเป้าหมาย" จึงแก้ปัญหาก่อนหน้านี้ด้วยการดำเนินการแอพ GUI โดยใช้ `sudo`
heynnema avatar
ru flag
@PJSingh สำหรับคำตอบบางส่วน โปรดดู https://askubuntu.com/questions/1206020/what-does-h-flag-in-sudo-h-mean ปัญหาที่พบบ่อยที่สุดคือการวนซ้ำการเข้าสู่ระบบ
Score:0
ธง ke

นีโม่ - เป็นตัวจัดการไฟล์เริ่มต้นที่มาพร้อมกับ Cinnamon Desktop นีโมช่วยให้คุณ คลิกขวา ที่ใดก็ได้ในไดเร็กทอรีที่กำหนดและ "เปิดเป็นรูท."

จากนั้นหน้าต่างที่สองจะเปิดขึ้นพร้อมกับแบนเนอร์ "สิทธิพิเศษระดับสูง" สีน้ำเงิน

หวังว่านี่จะช่วยได้!

บันทึก - (ดูเหมือนว่าคุณต้องการใช้ Nautilus ต่อไป ดังนั้นไม่ต้องสนใจคำแนะนำนี้หากคุณไม่ต้องการเปลี่ยนไปใช้โปรแกรมจัดการไฟล์อื่น)

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา