2011-12-10 15 views
22

मैंने अभी अपने यूबंटू सर्वर पर svn सेट अप किया है। मेरे पास मेरा एक उपयोगकर्ता है जिसे मैं लॉगिन कर सकता हूं। समस्या यह है कि जब भी मैं फ़ाइल संरचना पर बदलाव करने की कोशिश करता हूं तो मुझे अनुमति से इनकार कर दिया जाता है।एसवीएन अनुमति अस्वीकार - txn-current-lock

 
Can't open file '/var/www-svn/db/txn-current-lock': 
Permission denied 

मेरे रेपो में है /var/www-svn और उस फ़ोल्डर पर अनुमति उपयोगकर्ता और समूह के लिए drwxr-xr-x है SVN (मैं अनुमति के साथ बुरा हूँ तो मुझे लगा कि अगर सही है पता नहीं है) । Svn समूह में लॉग इन करने वाला मेरा उपयोगकर्ता svn समूह में है, फिर भी मैं फ़ाइल संरचना को बदल नहीं सकता। मैं क्या गलत कर रहा हूँ? यह काम करता है अगर मैं उपयोगकर्ता के फ़ोल्डर और फ़ोल्डर को अपने उपयोगकर्ता को बदलता हूं जो मैं भी लॉगिन करता हूं।

svnserve.conf में, anon का उपयोगकोई भी और Auth-पहुँचलिखने के लिए निर्धारित है पर सेट है।

+0

आप रेपो (svn, http, file, आदि ..) तक कैसे पहुंच रहे हैं? – prodigitalson

+0

svn (TortoiseSVN रिपो ब्राउज़र का उपयोग कर)। – Marwelln

+0

अच्छी तरह से एक्सेस/auth (svnserve.conf) के लिए आपकी कॉन्फ़िगरेशन कैसा दिखता है? – prodigitalson

उत्तर

8

svnserve deamon मेरे उपयोगकर्ता के तहत, रूट के रूप में नहीं चला। मैंने अपने उपयोगकर्ता के नीचे चल रहे svnserve प्रक्रियाओं को मार दिया और इसे रूट के रूप में पुनरारंभ किया। यह अब काम करता है।

3

यह superuser.com के लिए एक सवाल लगता है (मैं sudo chown -R svn:svn www-svn अंदर/var निर्देशिका टाइप करके/www-svn।/Var के मालिक बदल)। पहली बार, समूह svn में उस फ़ोल्डर पर लेखन अनुमति नहीं है। तो शायद यह समस्या है। इस http://www.svnforum.org/threads/35493-Can-t-open-db-txn-current-lock-permission-denied

+3

कोशिश करें: chmod -R 770/var/www-svn/ –

10

पर एक नजर डालें आप/var/www-SVN/फ़ोल्डर के लिए setuid बिट जोड़ने के लिए, लेन-देन वहाँ फ़ोल्डरों लेनदेन के संरक्षण के लिए SVN के चलाने के दौरान उत्पन्न हो जाएगा के तहत कारण फ़ोल्डरों का प्रतिनिधित्व कर रहे है जो ।

इस छोटे शब्दों में इसका मतलब है सिर्फ

chmod +s -R /var/www-svn/ 

समस्या का समाधान करना चाहिए बनाते हैं।

+1

मैंने बस उस आदेश को चलाया, लेकिन एक ही त्रुटि हुई। – Marwelln

6

मेरी समस्या यह समाप्त हो गई कि मैंने अनुमतियां लागू कीं, फिर svnadmin create किया ताकि सेटिंग अनुमति की आवश्यकता हो।

$ sudo chown -R www-data:subversion myproject 
$ sudo chmod -R g+rws myproject 
0

इतना ही नहीं बल्कि, यदि आपका भंडार उपयोगकर्ता और समूह SVN

(sudo chown -R svn:svn /var/svn/repos) के स्वामित्व में है

उपयोगकर्ताओं को, जो यह SVN समूह के लिए उपयोग कर सकते हैं जोड़ने के लिए सुनिश्चित करें। vi /etc/group

svn:x:502:user1,user2 
11
फाइल सिस्टम स्वामित्व किया जाना चाहिए पर या पिछले पर

भंडार फ़ोल्डर में एक ही linux उपयोगकर्ता है कि आपके SVN या वेब-डीएवी के माध्यम से अपाचे पर काम कर रहा है द्वारा/लिखने की अनुमति पढ़ा है ...

मेरे मामले में यह था:

$ chown -R www-data:www-data /svn/reponame 
0

हालांकि सवाल बहुत पुरानी है, यह गूगल पर उच्च स्थान पर है, लेकिन अपाचे/httpd लिनक्स पर पर तोड़फोड़ समाधान उपयोगी नहीं लगते हैं के साथ एक।

मैं अपाचे, सेंटोस लिनक्स पर उपversण चला रहा हूं। मेरे लिए समस्या SELinux और अक्षम करने के कारण थी जिसने मेरी मदद की।

इसे करने से पहले सावधानी की आवश्यकता है क्योंकि इसे SELinux को अक्षम करने के लिए उत्पादन सर्वर पर अनुशंसित नहीं किया जा सकता है। ऐसा करने का प्रयास करने से पहले कृपया दस्तावेज़ीकरण को अच्छी तरह से पढ़ें।

https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Security-Enhanced_Linux/sect-Security-Enhanced_Linux-Enabling_and_Disabling_SELinux-Disabling_SELinux.html

स्टीवर्ट के रूप में टिप्पणी में सुझाव दिया, एक और समाधान फ़ाइल अनुमतियों को अपडेट करते हैं, हालांकि अधिक जानकारी के उपलब्ध नहीं हैं, फाइल अनुमति के साथ कुछ फेरबदल के आसपास की मदद करनी चाहिए कर रहा है। मैं एक साझा Webfaction सर्वर से दूसरे की ओर पलायन किया गया था मेरी विशेष मामले में

:

+0

पोस्ट किया गया लिंक टूट गया है। आप यहां सीधे उत्तर क्यों पोस्ट नहीं कर सकते थे? यही कारण है कि "लिंक केवल जवाब" पर फंसे हुए हैं। अब हम कभी नहीं जानते .... – Stewart

+1

@ स्टीवर्ट क्षमा करें कि लिंक नीचे है। ऐसा लगता है कि यह खोज इंजन कैश या archive.org का उपयोग करके पुनर्प्राप्त किया जा सकता है। सबसे अच्छा मुझे याद है, SELinux के साथ मुद्दों को अक्षम करके हल किया गया है। ऐसा करने का प्रयास करें और परिणामों को जानने दें। एक प्रोड सर्वर पर ऐसी कार्रवाई करने से पहले थोड़ा सावधान रहें और अच्छी तरह से पढ़ें। –

+0

मैंने अंत में फ़ाइल स्वामित्व को बदलकर समस्या को ठीक किया। – Stewart

1

मामले में आप sudo अधिकार नहीं है। फ़ाइलों को कॉपी करने के लिए मेरे उपयोगकर्ता नाम पर संपूर्ण भंडार स्वामित्व असाइन किया जाना चाहिए, जबकि रिपो को सुलभ होने के लिए स्वामी को अपाचे होना चाहिए। मैं chown apache:mygroup repo लागू नहीं कर सका क्योंकि मेरे पास उपयोगकर्ता अपाचे तक पहुंच नहीं है। रूट पहुंच के बिना इसे बनाने के लिए एकमात्र तरीका chmod -R 777 . मेरी रिपोजिटरी रूट के अंदर था, अंततः एक लॉक फ़ाइल को हटा रहा था जिस पर मुझे गाउन करने की कोई अनुमति नहीं थी। आखिर में इस मुद्दे को हल किया और मैं फिर से प्रतिबद्ध कर सकता था।

संबंधित मुद्दे