ระบบการจัดการแพ็คเกจผู้ใช้ในพื้นที่


10

ฉันจำเป็นต้องปรับใช้จัดการและใช้งานซอฟต์แวร์ในฐานะผู้ใช้ที่ไม่มีสิทธิพิเศษใน SuSE (นั่นคือไม่มีการเข้าถึงรูทใด ๆ ไม่สามารถใช้การจัดการแพ็คเกจของระบบ ฯลฯ )

ตัวเลือกของฉันคืออะไร?

ฉันต้องการนำตัวจัดการแพคเกจระบบ (YaST) กลับมาใช้ใหม่โดยตั้งค่าพื้นที่เก็บข้อมูลผู้ใช้ท้องถิ่นแยกต่างหาก ทางเลือกที่ดีที่สุดที่สองคือระบบการจัดการแพ็คเกจแยกต่างหากที่รองรับที่เก็บข้อมูลผู้ใช้ในพื้นที่ โดยเฉพาะอย่างยิ่งมันจะสนับสนุนการอัปเดตแบบกด (ตรงข้ามกับการดึง)


คำถามของ Canonical ที่ฉันกำลังมองหา แต่ยังไม่พบจนกระทั่งหลังจากที่ฉันเริ่มได้รับรางวัลมากมาย - ผู้จัดการแพคเกจที่ไม่ใช่รูท
Piotr Dobrogost

ฉันคิดว่าไม่มีอะไรจะพูดเกี่ยวกับเรื่องนี้เกินกว่าที่จะพูด มีวิธีการต่าง ๆ ที่เป็นไปได้สำหรับการติดตั้งซอฟต์แวร์ในฐานะผู้ใช้ที่ไม่ใช่รูท แต่ไม่มีระบบที่เป็นทางการดังนั้นจึงไม่มีคำตอบที่ยอมรับได้ แม้ว่ามันอาจดูเหมือนเหมือนคำถาม "ที่น่าสนใจมากและมีความสำคัญ" ก็อาจเพียงเพื่อที่จะชนกลุ่มน้อยเล็ก ๆ ของผู้ใช้ที่มีความต้องการที่ร้ายแรงสำหรับสิ่งดังกล่าวซึ่งพิจารณาที่อาจเกิดขึ้นมหาศาลปริมาณของการทำงานและปวดศีรษะที่เกี่ยวข้องกับการช่วยอธิบายว่าทำไม มันไม่ได้เกิดขึ้น
goldilocks

คำตอบ:


7

สำหรับ Gentoo นั้นมีโครงการGentoo Prefixซึ่งช่วยให้คุณสามารถติดตั้งแพ็คเกจไปยังที่อื่นที่แตกต่างจาก / ตัวจัดการแพคเกจของ Gentoo เขียนด้วย Python และสามารถพกพาได้ดังนั้นคุณสามารถติดตั้งแผนผังใหม่สำหรับผู้ใช้ที่ผู้ใช้นั้นสามารถเข้าถึงได้อย่างเต็มที่โดยไม่ทำลายอะไรเลย

สองปัญหาที่ฉันเห็น:

  1. คุณอาจจะต้องรวบรวมสิ่งต่าง ๆ มากมายหรือสร้างแพ็คเกจไบนารีสำหรับผู้ใช้ของคุณในแบบนั้นและคุณอาจจะต้องติดตั้งสิ่งต่าง ๆ มากมายสองครั้งเพื่อให้คำนำหน้าสิ่งทำงานได้อย่างถูกต้อง (ฉันคิดว่ามันยากที่จะสร้างสิ่งต่าง ๆ กับคุณติดตั้งแพคเกจแบบนั้น)

  2. คุณไม่มีบริการพุช

วิธีอื่น ๆ ที่ฉันเห็นจะให้หมัดไฟล์ tar.gz ซึ่งเป็นแพคเกจที่ทำเองจากแพตช์การกระจายของคุณเพื่อใช้คำนำหน้าที่แตกต่างกัน: สมมติว่าคุณสร้าง dir "Library" ใน dir ของผู้ใช้ทุกคนและเพิ่ม "~ / Library / usr / bin "ไปยังเส้นทางของผู้ใช้แต่ละคนตัวจัดการแพ็กเกจอย่างง่ายสามารถจัดการการติดตั้งได้ (คุณสามารถดู Pacman ของ Arch Linux สำหรับสิ่งนั้นเนื่องจากเป็นเพียงไฟล์. tar.gz และการอ้างอิง


1
แต่เขาไม่ได้ใช้ Gentoo เขาอยู่ใน SuSE ดังนั้นสิ่งนี้จะช่วยได้อย่างไร
ire_and_curses

เช่นเดียวกับ ire_and_curses กล่าวว่าสิ่งนี้มีไว้สำหรับ Gentoo ไม่ใช่ SuSE ฉันจะลงคะแนน แต่ฉันเป็นเพียง 123 ตัวแทน (ใช้เวลา 125 ลงคะแนน .. )
JamesTheAwesomeDude

3
คำนำหน้า Gentooยังสามารถติดตั้งได้ใน SUSE
zjhui

3
แม้ว่านี่ไม่ใช่คำตอบเฉพาะของ SuSE แต่ก็ไม่มีคำตอบเฉพาะของ SuSEดังนั้นใครบางคนที่ต้องมีระบบ linux ที่สามารถทำสิ่งนี้ได้อาจสนใจที่จะรู้ว่ามีอะไรให้ใช้งานจริง "ทางเลือก" แทบจะไม่เกี่ยวข้องหรือสัมผัสถ้าพวกเขาอยู่ในความเป็นจริงเป็นไปได้เท่านั้น + 1
goldilocks

0

ใช้ตัวจัดการผู้ใช้ที่มีสิทธิ์ [ได้รับอนุญาต :(] และคุณสามารถเรียกใช้คำสั่งที่ต้องการการเข้าถึงผู้ใช้ขั้นสูงในฐานะผู้ใช้ปกติทุกอย่างถูกติดตามและตรวจสอบ


2
Hi! ใครบางคนสามารถอธิบายเพิ่มเติมเกี่ยวกับเรื่องนี้อีกเล็กน้อย ... ? ผู้ใช้สามารถทำงานกับ Linux (รับแพ็คเกจ, ติดตั้ง, คอมไพล์และอื่น ๆ ) ตามปกติในสภาพแวดล้อมเครือข่ายที่ จำกัด (เช่นโดยไม่ต้องเข้าถึงการเล่นด้วยการตั้งค่าพร็อกซีในพื้นที่ / ระยะไกล ฯลฯ )
Nikos Alexandris

0

คุณสามารถอนุญาตทั้งหมดให้กับผู้ใช้ของคุณzypper family command/etc/sudoers file


คุณจะแม่นยำกว่านี้หน่อยได้ไหม? คุณจะทำเช่นนั้นได้อย่างไรมีข้อควรระวังอะไรบ้างที่ต้องรับความเสี่ยง?
vonbrand

zypperคำสั่งเช่น apt-get in debian หรือyumใน redhat-base distro ดังนั้นคุณสามารถ: youruser ALL = NOPASSWD: /usr/sbin/zypperจากนั้นคุณไม่จำเป็นต้องรูทสิทธิ์และรหัสผ่านของคุณ
PersianGulf

เมื่อคุณระบุคำสั่งคุณไม่มีความเสี่ยงใด ๆ
PersianGulf

1
แน่นอนว่าไม่มีความเสี่ยง ไม่ว่าผู้ใช้แบบสุ่มใด ๆ ที่สามารถติดตั้ง / ลบแพ็คเกจสามารถขันระบบได้อย่างยอดเยี่ยม
vonbrand

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