আমি কীভাবে অ্যাপাচি 2 ডকুমেন্টরটকে একটি "ভিবক্সএসএফ" ভার্চুয়ালবক্স শেয়ার্ড ফোল্ডারে সেট করব? (অনুমতি ইস্যু?)


17

আমি উবুন্টু 11.04 ডেস্কটপ একটি ভার্চুয়ালবক্স ভিএম-তে হোস্টে ভাগ করা ফোল্ডার সহ 32 বিট সেটআপ করি। ভাগ করা ফোল্ডারটি হ'ল

/media/sf_Dev/

আমি অ্যাপাচি 2 কে DocumentRootসেই ফোল্ডারে দেখানোর জন্য পরিবর্তন করতে চাই , সুতরাং আমি সেই ফাইলটিতে /etc/apache2/sites-available/defaultবিদ্যমান দুটি পাথ / মিডিয়া / এসএফ_ডেভ / পরিবর্তে / var / www এর পরিবর্তে সম্পাদনা করেছি এবং এটি সূচকটি html প্রদর্শন করবে না।

যখন দেখি /varসাথে সাথে ls -lদেখি

drwxr-xr-x  2 root root ... www

আর আমি যখন ls -l /media/দেখি

drwxrwx---  1 root vboxsf ... sf_Dev

এবং অ্যাপাচি সূচকটি দেখতে পাবে না বলে মনে করি html আমি সেই ডিরেক্টরিতে রেখেছি ( cp /var/www/index.html /media/sf_Dev/iirc)

আমি গ্রুপটি ভিবক্সএসফ করার জন্য এনভ্যাভারদের সম্পাদনা করার চেষ্টাও করেছি তবে আমি মনে করি যে আমি সে অংশটি ভুল করেছিলাম।

export APACHE_RUN_GROUP=www-data

প্রতি

export APACHE_RUN_GROUP=vboxsf

আমি কী ভুল করছি, সেই ডিরেক্টরি থেকে ফাইলগুলি পরিবেশন করতে অ্যাপাচি 2 পেতে আমার কী করা দরকার? (প্রযুক্তিগতভাবে আমি এপাচি-র জন্য ফাইলগুলি পরিবেশন করতে চাই /media/sf_Dev/apache/wwwতবে আমি একবারে একটি পদক্ষেপ পাই, তাই যদি এটি আপনাকে শর্ট-সার্কিটের জিনিসগুলিতে সহায়তা করে তবে তা হয়ে উঠুন)

উত্তর:


22

অ্যাবাচের জন্য পরিপূরক গোষ্ঠী হিসাবে vboxsf গ্রুপ যুক্ত করা সম্ভবত সবচেয়ে সহজ হবে।

উবুন্টু:

sudo usermod -a -G vboxsf www-data

ফেডোরা:

sudo usermod -a -G vboxsf apache

আমি যখন স্বয়ংক্রিয়ভাবে মাউন্ট করা ভাগ করা ফোল্ডারগুলি অ্যাক্সেস করতে চাই তখন এটি আমার জন্য করে। ফাইলগুলি অ্যাক্সেস করতে আপনি vboxsf গ্রুপে আপনার নিজের ব্যবহারকারীর নামও যুক্ত করতে চাইতে পারেন।


তবে অ্যাপাচি অ্যাপটি ব্যবহারকারীর নাম অনুসারে চলছে? আমি ভেবেছিলাম যে পরিবর্তন হয়েছে>।>
jcolebrand

আপনি সঠিক, আমি অ্যাপাচি ব্যবহারকারী ফেডোরা এবং উবুন্টুর জন্য মিশ্রিত করেছি। সম্পাদিত :)
ফুয়ু

1
ম্যানুয়াল মাউন্টিংয়ের সাথে আমার চারপাশে বিড়বিড় করে কিছু সময় বাঁচিয়েছে .. ধন্যবাদ!
xorinzor

এই সমাধানটি উবুন্টু 15 এ আমার জন্য এটি স্থির করেছে Many অনেক ধন্যবাদ!
ইয়ান লুইস

3

এটি কোনও অনুমতি ইস্যুর মতো দেখাচ্ছে। আপনার /media/sf_Dev/"অন্যান্য" (অনুমতি বিটের তৃতীয় গোষ্ঠী, যা বর্তমানে কোনও অনুমতি নেই বা ---) এর জন্য অনুমতি পড়তে এবং সম্পাদন করতে হবে ।

সুতরাং, আপনাকে এই কমান্ডটি চালাতে হবে (যেহেতু এটি উবুন্টু, সুডোট নোট করুন):

sudo chmod 775 /media/sf_Dev/

এটি "অন্যান্য" এর জন্য পঠন এবং সম্পাদন যুক্ত করবে এবং মালিক এবং গোষ্ঠীর জন্য সম্পূর্ণ অনুমতি ছেড়ে দেবে।

এছাড়াও সূচী ফাইলটি / মিডিয়া / এসএফ_দেভ / তে বিদ্যমান রয়েছে তা নিশ্চিত করুন exists (আমি ধরে নেব যে আপনি সিপি কমান্ডে সুডো ভুলে গেছেন এবং আপনি মূল হিসাবে চলছেন না))


1
আহহহ, কিন্তু আমি কি যে তবে পরিবর্তনটি আমি প্রয়োজন দেখা যায় না। Vboxfs সম্পর্কে কিছু এই পরিবর্তনগুলি হতে দেয় না (যেমন: এনএফটিএসের মতো) ... ওহ, যা সমস্যা হতে পারে, ফাইলগুলি মূলত এনটিএফএসে হোস্ট করা হয় (যেহেতু এটি একটি উইন্ডোজ হোস্ট) তাই আমি মনে করি না আমি এটা করতে পারে। Asking জিজ্ঞাসার আগে আমি ত্রুটিটি দেখে ভুলে গিয়েছিলাম। আমি আজ সন্ধ্যায় এটি পরীক্ষা করব। তবে, ধরে নিন এটি একটি অনুমতি ত্রুটি।
jcolebrand

@ jcolebrand বিধি # 1 সমস্যা সমাধানের: এটি প্লাগ ইন করা হয়েছে? মনে রাখবেন না যে আমি উত্তরের দীর্ঘমেয়াদী উপযোগিতা সম্পর্কে ভাবছি এবং আমি আপনাকে একটি ডিবি এবং। নেট লোক হিসাবে জানি। : পি
জর্জ মেরিয়ান

@ jcolebrand সুতরাং, নির্বোধ প্রশ্ন: আপনি কি অ্যাপাচি পুনরায় চালু করেছেন? sudo apache2ctl restart
জর্জ মেরিয়ান

hahahahaha, এই আমি কেন সাহায্যের প্রয়োজন, আমি একটি ডিবি এবং .net লোক নই;) ... হাঁ, আমি আসলে মধ্যে ছেড়ে sudo suএকবার এটি একটি বালিকা হচ্ছে তাই আমি সব ডিরেক্টরি ঢোকা এবং দেখুন সেখানে কি "ভগ্ন" ছিল পারে শুরু ... জোশ পিএইচপি ফাইলের সাথে পরে যা প্রস্তাব করেছিল আমি তা করতে যাচ্ছি।
jcolebrand

1
এটি সম্ভবত সম্ভব যে vboxsf ফাইল সিস্টেমের মূল ফোল্ডারের জন্য অনুমতি নির্ধারণকে সমর্থন করে না এবং এটি বিশ্বব্যাপী ফাইলের অনুমতি সেট করার জন্য মোড, ইউআইডি এবং গ্রিড মাউন্ট বিকল্প সরবরাহ করতে পারে।
billc.cn

2

নির্দিষ্ট ত্রুটিটি কী তা আপনি বলেন নি, কেবল

এবং অ্যাপাচি সূচকগুলি দেখতে পাবে না বলে মনে হয়। html আমি সেই ডিরেক্টরিটিতে রেখেছি

নির্দিষ্ট ত্রুটি সাহায্য করবে। আপনি এটি অ্যাপাচি-তে ফাইল করতে পারেন error_logযা সাধারণত /var/log/apache2/error.logউবুন্টের অধীনে থাকে তবে এটি আপনার ডিরেক্টরিতে কোনও ErrorLogনির্দেশকের মাধ্যমে কনফিগার করা যায়<VirtualHost>

আসল ত্রুটি ছাড়াই, আমি ধরে নিয়েছি জর্জ মারিয়ান সঠিক এবং এটি একটি অনুমতি ত্রুটি। আপনি কী গ্রুপ অ্যাপাচি ব্যবহার করছেন তা দেখতে পরীক্ষা করতে পারেন:

ps -o pid,group -o atime,comm=CMD awx | grep apache

/media/sf_Dev/তিনি যেমন বলেছিলেন তেমন অনুমতিগুলি তাড়া করার চেষ্টা করুন ।

আমি মনে করি আপনি এটি একটি Alias ​​নির্দেশের সাথে পরিচালনা করা ভাল কারণ এটি আপনাকে আপনার ডকুমেন্টরুটটির নির্দিষ্ট কিছু অংশ বাইরের স্থানে নির্দেশ করতে সহায়তা করবে:

Alias /info /media/sf_Dev
<Directory /media/sf_Dev >
  Order allow,deny
  Allow from all
</Directory>

সম্পাদনা: যদি অ্যাপাচি সার্ভারে mod_php(ফাস্টসিজিআই পিএইচপি নয়) থাকে এবং ব্যবহার না করে suexecথাকে তবে নীচের পিএইচপি স্নিপিট সহ অ্যাপাচি সঠিক জিআইডি (গ্রুপ আইডি) এর অধীনে চলছে কিনা তা আপনি নির্ধারণ করতে পারেন:

<?php

var_dump(posix_getegid());

নিশ্চিত করুন যে একই জিআইডি হিসাবে প্রত্যাবর্তন করে vboxsf। (আপনি vboxsf এর জন্য জিআইডি খুঁজে পেতে পারেন /etc/groups)


জিজ্ঞাসার আগে আমি ত্রুটিটি দেখে ভুলে গিয়েছিলাম। আমি আজ সন্ধ্যায় এটি পরীক্ষা করব। তবে, ধরে নিন এটি একটি অনুমতি ত্রুটি। জর্জের উপরে আমার প্রতিক্রিয়া দেখুন
jcolebrand

ঠিক আছে. তারপরে আমাদের অ্যাপাচি জিআইডি হিসাবে চালানোর দিকে নজর দেওয়া উচিত vboxsf। আপনি যে প্রাসঙ্গিক অংশটি পরিবর্তন করেছেন সেগুলি সম্পাদনা ও পোস্ট করতে পারবেন Group?
জোশ

আমি এনভ্যাভারগুলিতে একটি লাইন সম্পাদনা করেছি, এবং এটি গ্রুপ বলেছে, তবে আমি এখনই বাক্সটির দিকে তাকাচ্ছি না।
jcolebrand

0

যদি আপনি ভাগ করা ফোল্ডারটি অটো মাউন্ট করতে কনফিগার করেন। তারপরে আপনাকে প্রথমে একইটি অক্ষম করতে হবে এবং ভাগ করা ফোল্ডারটি ম্যানুয়ালি মাউন্ট করতে হবে। আপনি যখন ভিএমটি শুরু করবেন প্রতিবার এটি স্বয়ংক্রিয়ভাবে প্রয়োজন হলে আপনার নিজের / etc / fstab এর মধ্যে সংশ্লিষ্ট এন্ট্রি যুক্ত করতে হবে। (মনে হচ্ছে fstab এর মাধ্যমে ভিউবক্সের ভাগ করা ফোল্ডার মাউন্ট করার ক্ষেত্রে কোনও সমস্যা রয়েছে So সুতরাং /etc/rc.local এর মধ্যে নীচে উল্লিখিত কমান্ডটি যুক্ত করা আমার জন্য এটি শুরু করার জন্য কাজ করেছিল)।

সঠিক ব্যবহারকারী / গোষ্ঠী সহ ভাগ করা ফোল্ডার লোড করুন

আমি যতদূর বলতে পারি, এই ত্রুটিটি ভাগ করা ফোল্ডারের মালিক এবং গোষ্ঠীর কারণে। অ্যাপাচি আশা করে যে ফাইলগুলি গ্রুপ www-ডেটাতে অন্তর্ভুক্ত হবে। ডিফল্টরূপে, তবে, ভার্চুয়ালবক্সে ভাগ করা ফোল্ডারটি vboxsf ব্যবহারকারীর অন্তর্ভুক্ত। আমরা এই ব্যবহারকারীকে www-ডেটা গ্রুপে যুক্ত করব। এটি করতে, অতিথির উপর গোষ্ঠী বৈশিষ্ট্যগুলি সম্পাদনা করুন:

sudo usermod -a -G vboxsf www-data

আমরা এখন ভাগ করা ফোল্ডারটি মাউন্ট করব এবং এটিকে www-ডেটা ব্যবহারকারী এবং গোষ্ঠীতে নির্ধারণ করব। ব্যবহারকারীর এবং গোষ্ঠী আইডিটি পরীক্ষা করার জন্য, আপনি অতিথি মেশিনে / ইত্যাদি / পাসডাব্লুডি ফাইলটি দেখতে পারেন (বিড়াল / ইত্যাদি / পাসডাব্লু। গ্রেপ 'www-ডেটা')। ডেবিয়ান ভিত্তিক ওএসে, উভয় আইডি সাধারণত 33 মান হিসাবে সেট করা হয় So সুতরাং অতিথিকে কেবল নিম্নলিখিত কমান্ডটি জারি করুন:

mount -t vboxsf -o rw,uid=33,gid=33 website /media/sf_website

নোট করুন যে ওয়েবসাইটটি ভাগ করা ফোল্ডারের নাম (উপরের স্ক্রিনশটে চিত্রিত) এবং / মিডিয়া / এসএফ_উবসাইট যেখানে ফোল্ডারটি মাউন্ট করা হবে।

আরও বিশদ বিশদ এই লিঙ্কটি দেখুন http://jimmybonney.com/articles/configure_virtualbox_shared_folder_apache_virtual_host/

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.