टीएल, डीआर: यह अपरमोर की गलती है, और मेरे होम डायरेक्टरी के बाहर होने के कारण /home
।
उबंटू 10.04 के एक डिफ़ॉल्ट स्थापना के अंतर्गत, एपआर्मर पैकेज के रूप में एक अप्रत्यक्ष की सिफारिश स्तरीय की निर्भरता में खींच लिया जाता है ubuntu-मानक पैकेज। सिस्टम लॉग ( /var/log/syslog
) यह दर्शाता है कि एपरसन पढ़ने के प्रयास को खारिज कर रहा है ~/.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"
अप्पर्मर (इन /etc/apparmor.d/usr.bin.evince
) के लिए डिफ़ॉल्ट एवियन कॉन्फ़िगरेशन बहुत ही अनुमति है: यह सभी घरेलू निर्देशिकाओं के तहत मनमाने ढंग से पढ़ने और लिखने की अनुमति देता है। हालाँकि, इस मशीन पर मेरी होम डाइरेक्टरी गैर-मानक स्थान की एक प्रतीकात्मक कड़ी है जो कि डिफ़ॉल्ट AppArmor कॉन्फ़िगरेशन में सूचीबद्ध नहीं है। के तहत पहुंच की अनुमति है /home
, लेकिन मेरे घर की निर्देशिका का वास्तविक स्थान है /elsewhere/home/gilles
, इसलिए पहुंच से वंचित है।
इस समस्या से प्रभावित होने वाले अन्य अनुप्रयोगों में शामिल हैं:
- फ़ायरफ़ॉक्स, लेकिन इसका प्रोफ़ाइल डिफ़ॉल्ट रूप से (एक प्रतीकात्मक लिंक की उपस्थिति से
/etc/apparmor.d/disable/usr.bin.firefox -> /etc/apparmor.d/usr.bin.firefox
) अक्षम है ।
- CUPS पीडीएफ प्रिंटिंग; मैंने परीक्षण नहीं किया है, लेकिन मुझे उम्मीद है कि यह लिखने में विफल रहेगा
~/PDF
।
मेरा फिक्स /etc/apparmor.d/tunables/home.d/local
लाइन को संपादित और जोड़ना था
@{HOMEDIRS}+=/elsewhere/home/
घर निर्देशिकाओं के गैर-मानक स्थान को मान्यता दी है (ध्यान दें कि अंतिम /
महत्वपूर्ण है; टिप्पणियों को देखें /etc/apparmor.d/tunables/home.d/ubuntu
), फिर /etc/init.d/apparmor reload
अप्पर्मर सेटिंग्स को अपडेट करने के लिए चलाएँ।
यदि आपके पास व्यवस्थापक विशेषाधिकार नहीं हैं और सिस्टम प्रशासक अनुत्तरदायी है, तो आप evince
बाइनरी को किसी भिन्न स्थान पर कॉपी कर सकते हैं ~/bin
, और यह Apparmor पॉलिसी द्वारा कवर नहीं किया जाएगा (इसलिए आप इसे शुरू कर पाएंगे, लेकिन बहुत सीमित अतिरिक्त सुरक्षा बर्दाश्त नहीं की जाएगी जो अप्पर्मर प्रदान करता है)।
इस समस्या को Ubuntu बग # 447292 के रूप में रिपोर्ट किया गया है । रिज़ॉल्यूशन उस मामले को संभालता है जब कुछ उपयोगकर्ताओं के पास उनके घर की निर्देशिका /etc/passwd
बाहर में सूचीबद्ध होती है /home
, लेकिन ऐसे मामलों में नहीं, जहां मेरा /home/gilles
एक प्रतीकात्मक लिंक है।