'/root/.config/git/attributes' तक पहुँचने में असमर्थ: अनुमति> अस्वीकृत "


10

हमारे उबंटू सर्वर में हम Nginx उपयोगकर्ता के रूप में क्लोन करने में सक्षम हैं /usr/share/nginx/www, जिसमें www-data:www-डेटा स्वामित्व को चेतावनी के रूप में मिल रहा है

"चेतावनी:" /root/.config/git/attributes तक पहुँचने में असमर्थ: अनुमति से वंचित "

हम कमांड को निष्पादित कर रहे हैं sudo -u www-data git clone <repo>.

सुडो के साथ हमें यह चेतावनी मिल रही है अन्यथा इसका काम ठीक है।

हम रूट उपयोगकर्ता के रूप में क्लोन करने में सक्षम हैं और कोई समस्या नहीं है।

.gitconfig केवल रूट में स्थित है और कृपया सामग्री देखें:

root@geo:~# cat /root/.gitconfig
[user]
        name = pc_user
        email = pcgeopc@gmail.com
root@geo:~#

क्या कोई इस पर हमारी मदद कर सकता है।

हमने विभिन्न विकल्पों को आज़माया जैसे कि मैन्युअल रूप से /root/.config/सीधे बनाया गया और अनुमति आदि को बदला गया। लेकिन कुछ भी काम नहीं कर रहा है। क्या कोई इस पर मेरी मदद कर सकता है।

कृपया इसे भी देखें:

root@geo:/setup/test# ll /setup/
total 16
drwxr-xr-x  4 www-data www-data 4096 Oct  9 00:14 ./
drwxr-xr-x 24 root     root     4096 Oct  9 00:14 ../
drwxr-xr-x  3 www-data www-data 4096 Oct  9 00:14 test/

root@geo:/setup/test# sudo -u www-data git clone -v git@....../test.git
Cloning into 'test'...
remote: Counting objects: 8323, done.
remote: Compressing objects: 100% (6459/6459), done.
remote: Total 8323 (delta 1543), reused 8241 (delta 1500)
Receiving objects: 100% (8323/8323), 39.85 MiB | 19.52 MiB/s, done.
Resolving deltas: 100% (1543/1543), done.
Checking connectivity... done.
warning: unable to access '/root/.config/git/attributes': Permission denied

तो यह git सेटअप के साथ एक मुद्दा लगता है। क्या कोई भी हमारा मार्गदर्शन कर सकता है।


मैं एक Ubuntu 14.04 पर इस सेटअप का उपयोग कर रहा हूं। जब मैं एक और उबंटू 12.04 में एक ही सेटअप करता हूं तो यह पूरी तरह से ठीक है।

इसके अलावा मैंने यह किया है:

एक उपयोगकर्ता जियोक बनाया और sudoers सूची में जोड़ा और जब हम जियोक उपयोगकर्ता के रूप में लॉग इन किया और इस कमांड को sudo -u www-data git clone -v git@....../test.git पूरी तरह से काम कर रहे हैं।

तो मुद्दा यह है कि जब हम सीधे Ubuntu 14.04 में रूट यूजर के रूप में लॉग इन करते हैं और sudo -u www-data git cloneइस चेतावनी के आते ही क्लोन करते हैं । लेकिन इसकी उबंटू 12.04 में नहीं है।

हम Ubuntu 14.04 पर git संस्करण 1.9.1 का उपयोग कर रहे हैं। हमने git को 2.1.1 संस्करण में भी अपग्रेड किया है।


1
यह काफी विशिष्ट है कि फ़ाइल सिस्टम अनुमतियाँ www-डेटा सहित सभी अन्य उपयोगकर्ताओं को फ़ाइलों को एक्सेस करने से रोकती हैं /root। यदि निश्चित रूप से AppArmor या SELinux जैसी चीजों से फ़ाइल-सिस्टम अनुमतियाँ नहीं हैं, तो वेबसर्वर का उपयोग / रूट ब्लॉक करना चाहिए।
HBruijn

ऐसा लगता है कि नहीं .. मैंने प्रश्न को संशोधित किया है कृपया जाँच करें।
जियो

डुप्लिकेट stackoverflow.com/questions/27150926/...
rofrol

मैं इस उत्तर का उपयोग कर रहा हूं और यह उत्तर मेरे लिए काम कर रहा है। स्वयं प्रयास करें
Toir427

जवाबों:


10

@ मम सही है। यह उपयोगकर्ता के गृह परिवेश चर के rootबजाय स्क्रिप्ट के लिए आपके गृह परिवेश चर का एक मुद्दा है www-data

आपको सिर्फ सू-कमांड में -H स्विच जोड़ना होगा, हालांकि यह काफी आसान है:

sudo -u www-data -H git clone -v git@....../test.git

1

मुझे लगता है कि HOMEचर गलत तरीके से सेट किया गया है।

से गूगल समूह धागा ,

गृह पर्यावरण चर सेट किया गया था, /rootइसलिए इसे देखा गया /root/.gitconfigया /root/.config/git/configचूंकि अप्रकाशित उपयोगकर्ता तक पहुंच नहीं थी , इसलिए इसे /rootएक त्रुटि थी।

तो समाधान मेरे लिए था कि उपयोगकर्ता के गृह निर्देशिका में घर को स्थापित करने के लिए


मेरे लिए यह शुरू हो रहा था: HOME = / home / git git daemon ...
rofrol

-1

आपको बस उपयोगकर्ता तब दूसरे रूट का उपयोग करके अपने स्टैश उदाहरण को पुनः आरंभ करने की आवश्यकता है। आमतौर पर, उपयोगकर्ता वही होगा जो आपने स्थापना के समय उपयोग किया है।

उदा

ऐसा करने से आपका होम वैरिएबल / होम / एटलस्टैश के रूप में सेट हो जाएगा और आपकी समस्या को हल कर देगा

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.