জিএনইউ / লিনাক্সে কীভাবে সাবভার্সন (এসভিএন) সার্ভার সেট আপ করবেন - উবুন্টু [বন্ধ]


95

আমার উবুন্টু চলমান একটি ল্যাপটপ রয়েছে যা আমি সাবভার্সন সার্ভার হিসাবে কাজ করতে চাই। উভয়ই আমি স্থানীয়ভাবে প্রতিশ্রুতিবদ্ধ, এবং অন্যদের দূরবর্তীভাবে। এই কাজ পেতে প্রয়োজনীয় পদক্ষেপগুলি কী কী? দয়া করে এতে পদক্ষেপগুলি অন্তর্ভুক্ত করুন:

  • অ্যাপাচি এবং প্রয়োজনীয় মডিউলগুলি কনফিগার করুন (আমি জানি একটি এসভিএন সার্ভার তৈরি করার অন্যান্য উপায় আছে তবে আমি এটি অ্যাপাচি-নির্দিষ্ট করতে চাই)
  • সার্ভার অ্যাক্সেসের একটি নিরাপদ উপায় (এসএসএইচ / এইচটিটিপিএস) কনফিগার করুন
  • অনুমোদিত ব্যবহারকারীদের একটি সেট কনফিগার করুন (হিসাবে তাদের অবশ্যই কমিট করার অনুমতি দেওয়া হবে তবে ব্রাউজ করার জন্য নিখরচায়)
  • প্রাথমিক প্রতিশ্রুতি (ধরণের "হ্যালো ওয়ার্ল্ড") দিয়ে সেটআপটি বৈধ করুন

এই পদক্ষেপগুলিতে কমান্ড লাইন বা জিইউআই অ্যাপ্লিকেশন নির্দেশের কোনও মিশ্রণ জড়িত থাকতে পারে। যদি আপনি পারেন তবে দয়া করে নোট করুন যেখানে নির্দেশাবলী নির্দিষ্ট বন্টন বা সংস্করণের সাথে সুনির্দিষ্ট এবং যেখানে কোনও নির্দিষ্ট সরঞ্জামের ব্যবহারকারীর পছন্দটি ব্যবহার করা যেতে পারে (বলুন, vi এর পরিবর্তে ন্যানো )।


আমি কি উবুন্টুতে সাবভার্সন সার্ভার এবং কোনও প্ল্যাটফর্মের ক্লায়েন্ট ব্যবহার করতে পারি? উইন্ডোতে কচ্ছপ এসভিএন ক্লায়েন্টের মতো?
রাহেল হাসান

উত্তর:


145

আমি আমার ল্যাপটপটিকে সাবভার্সন সার্ভার তৈরি করার পদক্ষেপ নিয়েছি। এখানে তার দিকনির্দেশের জন্য ক্রেডিট অবশ্যই আলেফজারোতে যেতে হবে । আমার কাছে এখন একটি ওয়ার্কিং এসভিএন সার্ভার রয়েছে (যা বর্তমানে কেবল স্থানীয়ভাবে পরীক্ষা করা হয়েছে)।

নির্দিষ্ট সেটআপ: কুবুন্টু 8.04 হার্ডি হেরন

এই গাইড অনুসরণ করার জন্য প্রয়োজনীয়তা:

  • প্যাকেজ ম্যানেজার প্রোগ্রাম অ্যাপ্লিকেশন
  • পাঠ্য সম্পাদক (আমি কেট ব্যবহার করি)
  • sudo অ্যাক্সেস অধিকার

1: অ্যাপাচি এইচটিটিপি সার্ভার এবং প্রয়োজনীয় মডিউলগুলি ইনস্টল করুন:

sudo apt-get install libapache2-svn apache2

নিম্নলিখিত অতিরিক্ত প্যাকেজ ইনস্টল করা হবে:

apache2-mpm-worker apache2-utils apache2.2-common

2: এসএসএল সক্ষম করুন

sudo a2enmod ssl
sudo kate /etc/apache2/ports.conf

নিম্নলিখিতটি ফাইলটিতে রয়েছে কিনা তা যোগ করুন বা পরীক্ষা করুন:

<IfModule mod_ssl.c>
    Listen 443
</IfModule>

3: একটি এসএসএল শংসাপত্র তৈরি করুন:

sudo apt-get install ssl-cert
sudo mkdir /etc/apache2/ssl
sudo /usr/sbin/make-ssl-cert /usr/share/ssl-cert/ssleay.cnf /etc/apache2/ssl/apache.pem

4: ভার্চুয়াল হোস্ট তৈরি করুন

sudo cp /etc/apache2/sites-available/default /etc/apache2/sites-available/svnserver
sudo kate /etc/apache2/sites-available/svnserver

পরিবর্তন (পোর্টস কনফনে):

"NameVirtualHost *" to "NameVirtualHost *:443"

এবং (এসএনএসভারসে)

<VirtualHost *> to <VirtualHost *:443>

সার্ভারএডমিনের অধীনে (ফাইল এসএনএসভারেও অন্তর্ভুক্ত) যুক্ত করুন:

SSLEngine on
SSLCertificateFile /etc/apache2/ssl/apache.pem
SSLProtocol all
SSLCipherSuite HIGH:MEDIUM

5: সাইট সক্ষম করুন:

sudo a2ensite svnserver
sudo /etc/init.d/apache2 restart

সতর্কতাগুলি কাটিয়ে উঠতে:

sudo kate /etc/apache2/apache2.conf

যুক্ত করুন:

"ServerName $your_server_name"

:: সংগ্রহস্থল (ies) যুক্ত করা: নিম্নলিখিত সেটআপটি ধরে নেওয়া হয়েছে যে আমরা একাধিক সংগ্রহস্থল হোস্ট করতে চাই। প্রথম সংগ্রহস্থল তৈরি করার জন্য এটি চালান:

sudo mkdir /var/svn

REPOS=myFirstRepo
sudo svnadmin create /var/svn/$REPOS
sudo chown -R www-data:www-data /var/svn/$REPOS
sudo chmod -R g+ws /var/svn/$REPOS

A.এ. আরও সংগ্রহস্থলের জন্য: আবার step ধাপ করুন (আরইপিওএসের মান পরিবর্তন করা), পদক্ষেপটি বাদ দিনmkdir /var/svn

7: একটি অনুমোদিত ব্যবহারকারী যুক্ত করুন

sudo htpasswd -c -m /etc/apache2/dav_svn.passwd $user_name

8: ওয়েবডিএভি এবং এসভিএন সক্ষম এবং কনফিগার করুন:

sudo kate /etc/apache2/mods-available/dav_svn.conf

সংযুক্ত বা অসম্পূর্ণ:

<Location /svn>
DAV svn

# for multiple repositories - see comments in file
SVNParentPath /var/svn

AuthType Basic
AuthName "Subversion Repository"
AuthUserFile /etc/apache2/dav_svn.passwd
Require valid-user
SSLRequireSSL
</Location>

9: অ্যাপাচি সার্ভার পুনরায় চালু করুন:

sudo /etc/init.d/apache2 restart

10: বৈধতা:

বিরক্ত একটি ব্রাউজার:

http://localhost/svn/$REPOS
https://localhost/svn/$REPOS

উভয় একটি ব্যবহারকারীর নাম এবং পাসওয়ার্ড প্রয়োজন। আমি অস্বস্তিকর বলে মনে করি:

<LimitExcept GET PROPFIND OPTIONS REPORT>

</LimitExcept>

ইন /etc/apache2/mods-available/dav_svn.conf, বেনামী ব্রাউজিং অনুমতি দেয়।

ব্রাউজারটি "রিভিশন 0: /" দেখায়

কিছু প্রতিশ্রুতিবদ্ধ:

svn import --username $user_name anyfile.txt https://localhost/svn/$REPOS/anyfile.txt -m “Testing”

শংসাপত্রটি গ্রহণ করুন এবং পাসওয়ার্ড লিখুন। আপনি স্রেফ কী প্রতিশ্রুতিবদ্ধ তা পরীক্ষা করে দেখুন:

svn co --username $user_name https://localhost/svn/$REPOS

এই পদক্ষেপগুলি অনুসরণ করে (ধরে নিলাম যে আমি কোনও ত্রুটি অনুলিপি / আটকানো হয়নি) আমার ল্যাপটপে আমার একটি ওয়ার্কিং এসভিএন সংগ্রহস্থল ছিল।


নির্দেশিকাগুলিও জয়ন্তীর উপর পুরোপুরি কাজ করেছিল। ধন্যবাদ!
মাইকেল মউসা

6
নিখুঁতভাবে কাজ করার জন্য মনে হয়েছে, তবে এটি অ্যাক্সেস করার চেষ্টা করার সময় আমি একটি 403 নিষিদ্ধ পেয়েছি এবং পাসওয়ার্ডের জন্য কোনও প্রম্পট নেই। ভুল হতে পারে কি কোনও ইঙ্গিত?
করোনা

@ কোরোনা: কীভাবে এটিতে অ্যাক্সেস করা হচ্ছে: এসভিএন কমান্ড চালাচ্ছেন বা এতে ব্রাউজ করছেন?
গ্রুন্ডলেফ্লেক

4
"NameVirtualHost *" to "NameVirtualHost *:443"এসএনএসবারভার <VirtualHost *> to <VirtualHost *:443>সেটিংসে থাকা অবস্থায় পোর্টস কনফতে রয়েছে । এটি উল্লেখ করা উচিত। আমি বেশ বিভ্রান্ত হয়ে পড়েছি কারণ আমি নেম ভার্চুয়ালহোস্টের জন্য এসএনএসভারর সেটিংসে অনুসন্ধান করেছি এবং এটি খুঁজে পাইনি।
ওয়ান্ডাং

4
ডেবিয়ান স্ট্রেচে এটির libapache2-mod-svnপরিবর্তে আপনার ইনস্টল করা দরকার বলে মনে হয় libapache2-svn(যেহেতু পরবর্তীকালে আর উপলব্ধ নেই)।
TheStoryCoder

2

এরপরে, আমাকে কার্যকর করতে হবে (উপরে বর্ণিত উদাহরণের প্রসঙ্গে)

do sudo chmod g + w /var/svn/$REPOS/db/rep-cache.db

do সুডো www-ডেটা: www-data /var/svn/$REPOS/db/rep-cache.db

অন্যথায় স্থানীয় পরিবর্তনগুলি সম্পাদন করার সময় আমি 409 ত্রুটি পেয়েছি (যদিও প্রতিশ্রুতিগুলি সার্ভারের পক্ষে কার্যকর ছিল, তবে স্থানীয় আপডেটগুলির সাথে আমার অনুসরণ করা প্রয়োজন)


1

এই নিবন্ধটি পুরো প্রক্রিয়াটির বেশ ভাল একটি রুডাউন দেবে বলে মনে হচ্ছে। আমি নির্দেশাবলী অনুসরণ করে সুপারিশ করব এবং তারপরে আমি এবং অন্যান্য লোকেরা এই প্রতিক্রিয়াগুলির সাথে লিঙ্কিত নিবন্ধগুলিতে সম্বোধন করা হয়নি এমন কোনও সমস্যা সম্পর্কে আরও কিছু সুনির্দিষ্ট প্রশ্ন পোস্ট করব।


1

আপনি যদি ওয়েবসারভারটি হিট করার সময় 403 টি নিষিদ্ধ হয়ে থাকেন তবে এটি এমন কারণ হতে পারে যে আপনি কোনও হোস্টনাম ব্যবহার করেছেন যা আপনি আপনার কনফিগার ফাইলে নির্দিষ্ট করেছেন (যেমন লোকালহোস্ট বা 127.0.0.1)। পরিবর্তে https: // whetveryousetasyourhostname আঘাত করার চেষ্টা করুন ...


আর একটি 403 কারণ: একটি syMLink এ svn পাথ সেট করুন। যদি আপনার এসএনএন পাথটি একটি সিমিলিংক হয় তবে আপনাকে নিম্নলিখিত সিমলিংকের অনুমতি দিতে হবে।
কোপোলি

-2

টার্মিনালে একটি একক কমান্ড লিখুন।

টার্মিনালটি খুলতে দয়া করে Ctrl+ Alt+ টিপুন Tএবং তারপরে এই কমান্ডটি টাইপ করুন:

$sudo apt-get install subversion

-2

অ্যাপাচি এর জন্য:

sudo apt-get -yq install apache2

এসএসএইচের জন্য:

sudo apt-get -yq install openssh-server

সাবভার্সনের জন্য:

sudo apt-get -yq install subversion subversion-tools

আপনি যদি চান যে আপনি এগুলিকে একটি কমান্ডের সাথে সংযুক্ত করতে পারেন:

sudo apt-get -yq install apache2 openssh-server subversion subversion-tools

আমি বাকিদের সাহায্য করতে পারি না ...

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