TL, DR: มันเป็นความผิดของ AppArmor /home
และเนื่องจากฉันนอกไดเรกทอรีบ้านเป็น
ภายใต้การติดตั้งเริ่มต้นของ Ubuntu 10.04 แพคเกจapparmorจะถูกดึงเข้ามาเป็นการอ้างอิงทางอ้อมในระดับที่แนะนำของแพ็คเกจมาตรฐาน ubuntu บันทึกของระบบ ( /var/log/syslog
) แสดงว่า Apparmor ปฏิเสธความพยายามของ Evince ในการอ่าน~/.Xauthority
:
Jul 5 17:58:31 darkstar kernel: [15994724.481599] type=1503 audit(13415
03911.542:168): operation="open" pid=9806 parent=9805 profile="/usr/bin/evince"
requested_mask="r::" denied_mask="r::" fsuid=1001 ouid=1001 name="/elsewhere/home/gilles/.Xauthority"
การกำหนดค่า Evince เริ่มต้นสำหรับ Apparmor (ใน/etc/apparmor.d/usr.bin.evince
) อนุญาตอย่างมาก: อนุญาตให้อ่านและเขียนตามอำเภอใจภายใต้โฮมไดเร็กทอรีทั้งหมด อย่างไรก็ตามไดเรกทอรีบ้านของฉันในเครื่องนี้เป็นลิงค์สัญลักษณ์ไปยังตำแหน่งที่ไม่ได้มาตรฐานซึ่งไม่ได้ระบุไว้ในการกำหนดค่า AppArmor เริ่มต้น อนุญาตให้เข้าถึงได้ภายใต้/home
แต่ตำแหน่งจริงของไดเรกทอรีบ้านของฉันคือ/elsewhere/home/gilles
ดังนั้นการเข้าถึงถูกปฏิเสธ
แอปพลิเคชันอื่น ๆ ที่อาจได้รับผลกระทบจากปัญหานี้ ได้แก่ :
- Firefox แต่โปรไฟล์ของมันถูกปิดใช้งานโดยค่าเริ่มต้น (โดยการมีลิงก์สัญลักษณ์
/etc/apparmor.d/disable/usr.bin.firefox -> /etc/apparmor.d/usr.bin.firefox
)
- พิมพ์ CUPS PDF; ฉันไม่ได้ทดสอบ
~/PDF
แต่ผมคาดหวังว่ามันจะล้มเหลวในการเขียน
การแก้ไขของฉันคือการแก้ไข/etc/apparmor.d/tunables/home.d/local
และเพิ่มบรรทัด
@{HOMEDIRS}+=/elsewhere/home/
เพื่อให้ทราบตำแหน่งที่ไม่เป็นมาตรฐานของโฮมไดเร็กตอรี่(โปรดทราบว่าสิ่งสุดท้าย/
คือสิ่งสำคัญ, ดูความคิดเห็นใน/etc/apparmor.d/tunables/home.d/ubuntu
), จากนั้นเรียกใช้/etc/init.d/apparmor reload
เพื่ออัปเดตการตั้งค่า Apparmor
หากคุณไม่มีสิทธิ์ของผู้ดูแลระบบและผู้ดูแลระบบไม่ตอบสนองคุณสามารถคัดลอกevince
ไบนารีไปยังตำแหน่งอื่นเช่น~/bin
และจะไม่ครอบคลุมโดยนโยบาย Apparmor (ดังนั้นคุณจะสามารถเริ่มต้นได้ แต่ จะไม่ได้รับการรักษาความปลอดภัยเพิ่มเติมที่ จำกัด อย่างมากที่ Apparmor มอบให้)
ปัญหานี้ได้รับรายงานว่าอูบุนตูข้อผิดพลาด # ความละเอียดจะจัดการกรณีและปัญหาเมื่อผู้ใช้บางรายมีโฮมไดเร็กตอรี่ของตนตามที่ระบุไว้ใน/etc/passwd
ภายนอก/home
, แต่ไม่ใช่กรณีเช่นเหมืองที่ซึ่ง/home/gilles
เป็นลิงค์สัญลักษณ์