Quản trị net diễn đàn chia sẻ thông tin các thủ thuật mạng, internet bảo mật thông tin dành cho giới IT VIệt hy vọng là nơi bổ ích cho cộng đồng

Quản trị net diễn đàn chia sẻ thông tin các thủ thuật mạng, internet bảo mật thông tin dành cho giới IT VIệt hy vọng là nơi bổ ích cho cộng đồng (http://quantrinet.com/forum/index.php)
-   Giải Pháp Mạng - CNTT (http://quantrinet.com/forum/forumdisplay.php?f=486)
-   -   Cài đặt-Cấu hình Subversion + Trac + Lampp trên Ubuntu (http://quantrinet.com/forum/showthread.php?t=4096)

hoctinhoc 26-10-2009 01:59 PM

Cài đặt-Cấu hình Subversion + Trac + Lampp trên Ubuntu
 

Cài đặt-Cấu hình Subversion + Trac + Lampp trên Ubuntu



ối với Ubuntu thì việc cài đặt các gói phần mềm khá đơn giản và nhanh chóng. Nhưng đôi khi cũng có một số “sự kì diệu” mà ta luẩn quẩn mất time để cấu hình, cài đặt cho “bọn chúng” chạy trơn chu với nhau.
Vửa rồi có cài cái này trên window rồi và ko mất đến 15′. Nhưng h cài đặt chúng nó trên ubuntu thì mất 2 ngày liền của mình để mọi thứ chỉn chu.
Phần chuẩn bị như sau:
- Ubuntu Server 8.10
- Lampp 1.6.8a
Tất nhiên là máy tính có nối mạng - càng nhanh càng tốt http://bnok.vn/binhnd/wp-includes/images/smilies/4.gif
Nếu bạn tiến hành việc cài đặt thông qua proxy thì nhớ cầu hình cho nó thông mạng đã rồi hãy hỏi tại sao ko cài được nhé.
Có 2 cách cài : cài từ Sources và cài từ cái mà chúng nó đã build sẵn cho mình rồi - chỉ việc download và sử dụng (Ko biết gọi thế có đúng ko). Mình chọn cách thứ 2 (Cách 1 cài lâu vật vã!)
$ apt-get install subversion libapache2-svn trac libapache2-mod-python python-setuptools
Với Ubuntu 8.10 thì chắc ko gặp phải trường hợp ko tìm thấy gói cài đặt trong repositories đâu. Còn nếu bạn nào đang có Ubuntu bản cũ hơn thì tốt nhất là update lên cho đỡ rách việc
$ apt-get update
Sau khi quá trình download cài đặt thành công, tiến đến mình cấu hình cái nhỉ!

1. Tạo repos cho Subversion
$ mkdir /srv/SVN-DATA
$ svnadmin create /srv/SVN-DATA
2. Tạo csdl cho Trac
$mkdir /srv/TRAC-DATA
$trac-admin /srv/TRAC-DATA initenv
Project Name [My Project]>Project_name
Database connection string [sqlite:db/trac.db]>

//Mặc định csdl dùng cho trac sẽ là sqlite -> chỉ việc gõ enter nếu ko có ý kiến gì
Repository type [svn]>
// Chọn chương trình quản lý mã nguồn (mặc định là SVN) -> enter tiếp đi
Path to repository [/path/to/repos]> /srv/SVN-DATA
Templates directory [/usr/share/trac/templates]>
Enter tiếp đi

Cái editor này format lởm quá :”>
3. Cài đặt lampp
Nếu bạn nào ko thích cài lampp thì build từ đầu cũng được, nhưng để cho đơn giản mình dùng luôn cái này. Còn đâu các bước cũng tương tự thôi.

Giải nén lampp vào thư mục /opt/ ta được /opt/lampp

Để chạy các dịch vụ (apache + mysql…):
$ /opt/lampp/lampp start
Tắt đi:
$ /opt/lampp/lampp stop
4. Cấu hình subversion với apache
Mục đích của bước này là để bạn có thể thao tác tới repositories thông qua giao thức http (web)
Mình là mình có 1 con máy để ko nên mình cài mấy cái thứ này vào máy đó. Thông qua local network mình connect vào máy đó từ Laptop của mình và làm việc trên đó. Tiện quá phải ko? :”>

Nào, tiếp tục nào! bây h ta đi tìm file httpd.conf của apache2 cái. Bẹn nào cài riêng lẻ thì tự đi mà tìm. Còn mình dùng lampp thì nó ở đây: /opt/lampp/etc/httpd.conf http://bnok.vn/binhnd/wp-includes/images/smilies/71.gif

Chỉnh sửa nóa:
$ vim /opt/lampp/etc/httd.conf
và thêm cái này vào cuối cùng của file đó cho tiện theo dõi
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
LoadModule python_module modules/mod_python.so

<Location /repos>
DAV svn
AuthType Basic
AuthzSVNAccessFile /srv/SVN-DATA/conf/authz
SVNPath /srv/SVN-DATA
AuthName “Bay Cao Subversion Repository”
AuthUserFile /srv/svn.password
Require valid-user
</Location>
Trước khi khởi động lại apache thì bạn phải copy các module vửa khai báo ở trên vào /opt/lampp/modules cái đã

root@ubuntu:/usr/lib/apache2/modules# cp mod_dav_svn.so /opt/lampp/modules/
root@ubuntu:/usr/lib/apache2/modules# cp mod_authz_svn.so /opt/lampp/modules/
root@ubuntu:/usr/lib/apache2/modules# cp mod_python_svn.so /opt/lampp/modules/
Bây h mình giải thích qua 1 chút về mấy cái dòng bên trển nữa:
AuthUserFile /srv/svn.password :
Cái thằng này là nơi bạn chứa tài khoản những đứa bạn muốn cho nó truy cập (trong đó có bạn đấy)
Tạo thử 1 đứa xem sao:
$ htpasswd -cm /srv/svn.password boong 123456
-c : là khi mà file đó chửa tồn tại, từ lần sau bạn bỏ c đi

AuthzSVNAccessFile /srv/SVN-DATA/conf/authz :
Cái thằng này là nới chứa hệ thống permission cho từng đứa có trong svn.password . Bạn tự hỏi thêm bác google nhé.

5. Cấu hình trac với apache2

Lại mở cái httpd.conf kia ra và thêm vào cuối đoạn sau:
<Location /trac>
SetHandler mod_python
PythonHandler trac.web.modpython_frontend
PythonOption TracEnv “/srv/TRAC-DATA”
PythonOption TracUriRoot /trac
</Location>
<Location /trac/login>
AuthType Basic
AuthName “Login”
AuthUserFile “/srv/svn.password”
Require valid-user
</Location>
Để xem còn thiếu cái gì ko nào, uhm, được rồi, restart lại lampp cái!


Tèn ten! xong òi!

Bây h đường dẫn svn của bạn trên sẽ là: http://ip_may_do/svn
và trac là: http://ip_may_do/trac

Nếu có bài sau thì mình sẽ viết chi tiết hơn chút về các vấn đề bảo mật.

regards,


Suu tap



:battay:


Bây giờ là 01:15 PM. Giờ GMT +7

Diễn đàn tin học QuantriNet
quantrinet.com | quantrimang.co.cc
Founded by Trương Văn Phương | Developed by QuantriNet's members.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.