ติดตั้ง project-open บน ubuntu

จาก Wiki Opensource
รุ่นปรับปรุงเมื่อ 15:57, 5 มีนาคม 2553 โดย Wipat.s (พูดคุย | เรื่องที่เขียน)
(ต่าง) ←รุ่นปรับปรุงก่อนหน้า | รุ่นล่าสุด (ต่าง) | รุ่นปรับปรุงถัดไป→ (ต่าง)

---ยังอยู่ระหว่างการทดสอบนะครับ---


บันทึกนี้ปรับปรุงล่าสุดเมื่อวันที่ 05-03-2553

ดูแลโดย WIPAT



  1. ต้องให้ server ต่อเข้าและสามารถใช้งานอินเทอร์เนตได้ก่อน

  2. เข้าไปทำงานในพื้นที่ /usr/local/src ด้วยคำสั่ง   cd /usr/local/src
    ดาวน์โหลด install script มาเก็บไว้ก่อน

    หากเป็นรุ่น 32 bit ใช้คำสั่ง sudo wget  http://www.venkatmangudi.com/project-open-34/po-install-script-32bit.sh
    แล้วติดตั้งต่อด้วยคำสั่ง sudo sh /usr/local/src/po-install-script-32bit.sh | tee poinstall.log

    หากเป็นรุ่น 64 bit ใช้คำสั่ง sudo wget  http://www.venkatmangudi.com/project-open-34/po-install-script-64bit.sh
    แล้วติดตั้งต่อด้วยคำสั่ง sudo sh /usr/local/src/po-install-script-64bit.sh | tee poinstall.log

  3. ระบบจะเริ่มดำเนินการติดตั้งไปเรื่อยๆ เมื่อถึงหน้าต่าง Package configuration
    ข้อความเตือนว่า Obsolete major version 8.2 ...แนะนำให้ติดตั้ง postgresql-8.4 แทน
    ไม่ต้องสนใจ ให้เลื่อกไปเลือก <Ok> เพื่อทำงานต่อไป

  4. ระบบจะทำงานดาวน์โหลดข้อมูลจากอินเทอร์เนตมาเรื่อยๆจนกระทั่งมาหยุดรอที่ข้อความประมาณว่า
    Downloading other required files using CVS
    CVS password: Logging in to :pserver:anonymous@aolserver.cvs.sourceforge.net:2401/cvsroot/aolserver
    ให้กดแป้น Enter  จะได้ข้อความประมาณว่า
    cvs login: CVS password file /home/mama/.cvspass does not exist - creating a new file
    cvs checkout: Updating nspostgres
    ระบบจะทำงานต่อไป ให้รอๆๆ จนกระทั่งได้ข้อความว่า
    Rebooting in 30 seconds... Press Control-C to avoid reboot. Reboot is necessary for Project Open Install completion
    ระบบจะทำการรีบูทเองภายใน 30 วินาที

  5. ให้รอจน server บูทใหม่จนเสร็จ แล้วลองใช้ browser เข้าไปที่เวบ http://localhost:8000
    ถ้าได้หน้าเวบ ]project-open[ V3.4 แสดงว่าติดตั้งได้สำเร็จแล้ว

  6. ติดตั้งระบบสามารถส่งอีเมล์ออกต้องติดตั้งโปรแกม postfix ดังนี้
    ติดตั้งด้วยคำสั่ง sudo apt-get install postfix
    ระบบจะมีหน้าต่าง Postfix Configuration ขึ้นมา  ให้กด TAB ไปเลือกแถบ <Ok>
    จะได้อีกหน้าต่างให้เลื่อนไปเลือกแถบ Local only แล้วกด TAB ไปเลือกแถบ <Ok>
    ที่ช่อง System mail name :  ให้ป้อนชื่อ server
    ระบบจะติดตั้งต่อไปจนเสร็จ

    ให้แก้ไขแฟ้ม /etc/postfix/main.cf ปรับปรุงค่าตัวแปรดังนี้คือ
    default_transport = smtp
    relay_transport = smtp

    หากต้อง relay mail ไปให้ server อื่นส่งแทน ให้แก้ไขแฟ้ม /etc/postfix/main.cf 
    ตั้งค่าตัวแปรดังตัวอย่าง relayhost = other.mail.net

    เสร็จแล้วสั่งให้ posftix ทำงานใหม่ด้วยคำสั่ง sudo /etc/init.d/postfix force-reload

  7. ทดลองเข้าหน้าเวบ http://localhost:8000/acs-lang/admin/  ให้ login เข้าด้วย username ว่า sysadmin@tigerpond.com รหัสผ่านว่า system
    เริ่มจัดการระบบโดยไปเมนูด้านบน เลือกแถบ Admin   ได้หน้าเวบ ASUS Terms & Conditions  ให้เลื่อนไปด้านล่างสุด คลิกเลือกปุ่ม Enable ASUS
    จะได้หน้าเวบที่มีแถบเมนูสำหรับ Admin เพิ่มขึ้นมาอีกชุด


    ตั้งค่าภาษาไทย  ไปที่หน้าเวบ http://localhost:8000/acs-lang/admin/  
    ได้หน้าเวบ Administration of Localization ไปที่ส่วนของ Installed Locales
    ให้เลื่อนไปหา th_TH แล้วแล้วคลิกเลือกเปลี่ยนให้เป็น Enabled
    แล้วเลื่อนกลับไปด้านบนเลือกหัวข้อ Change system locale: ได้หน้าเวบ  Localization Parameters
    ที่ช่อง SiteWideLocale ให้เปลี่ยนกลายเป็นว่า th_TH
    ที่ช่อง SystemTimezone ให้เปลี่ยนกลายเป็นว่า Asia/Bangkok  แล้วคลิกปุ่ม OK


  8. ติดตั้งให้เชื่อมต่อ LDAP ทำดังนี้ 
    ต้องติดตั้งเครื่องมือของ LDAP  ก่อน ด้วยคำสั่ง sudo apt-get install ldap-utils

    เริ่มจัดการระบบโดยไปเมนูด้านบน เลือกแถบ Admin 
    ได้หน้าเวบที่แถบ Admin homeที่ส่วนของ Aministration ให้คลิกเลือก Package Manager
    ได้หน้าเวบ Package Manager  ไปด้านล่างสุด เลือกหัวข้อ  Install packages.
    ได้หน้าเวบ Package Installation ที่ส่วนของ Select Packages to Install
    ให้คลิกเลือก LDAP Authentication Driver for Active Directory 3.4.0.0.0  แล้วคลิกปุ่ม Next--> 
    ได้หน้าเวบข้อความประมาณว่า
    Installing packages...
    Installing LDAP Authentication Driver for Active Directory 3.4.0.0.0
    Installed LDAP Authentication Driver for Active Directory, version 3.4.0.0.0.
    Package enabled.
    Mounted an instance of the package at /auth-ldap-adldapsearch
    Done installing packages.
    You should restart the server now to make installed and upgraded packages available. Click here to restart the server now.
    ให้คลิกลิงค์ว่า Click here แล้ว project-open จะทำการ restart ตัวเอง

    ให้เริ่มจัดการระบบโดยไปเมนูด้านบน เลือกแถบ Admin แล้วเลือกแถบ  LDAP
    ได้หน้าเวบ Authentication ให้คลิกเลือก  Create new authority
    ได้หน้าเวบ New Authority ให้ป้อนข้อมูลดังนี้ 
    ที่ส่วนของ General   ที่ช่อง Name ให้ใส่ว่า LDAP  ที่ช่อง Short Name ให้ใส่ว่า LDAP  ที่ช่อง Enabled ให้คลิกเลือกเป็น Yes
    ที่ส่วนของ Authentication ที่ช่อง Authentication ให้คลิกเลือกเป็น LDAP
    ที่ส่วนของ Password Management ที่ช่อง Password Management  ให้คลิกเลือกเป็น LDAP
    ที่ส่วนของ Account Registration ที่ช่อง Account Registration ให้คลิกเลือกเป็น --Disabled--
    ที่ส่วนของ On-Demand Sync ที่ช่อง User Info ให้คลิกเลือกเป็น LDAP
    ที่ส่วนของ Batch Synchronization ที่ช่อง Batch sync enabled  ให้คลิกเลือกเป็น No
    ที่ช่อง GetDocument implementation และ ProcessDocument implementation ให้เลือกเป็น --Disabled--  แล้วคลิกปุ่ม OK
    ถึงตอนนี้ server จะ restart เอง ให้รอสักครู่ใหญ่ไม่เกิน 5 นาที ก็กลับมาที่หน้าเวบเดิม

    ให้จัดการระบบโดยไปเมนูด้านบน เลือกแถบ Admin แล้วเลือกแถบ  LDAP
    ได้หน้าเวบ Authentication ที่ส่วนของ Authorities ให้คลิกเลือกช่อง LDAP
    ได้หน้าเวบ LDAP ให้คลิกเลือก Configure drivers for this authority
    ได้หน้าเวบ Configure  ให้ป้อนข้อมูลดังนี้
    ที่ช่อง DNPattern:  ให้ใส่ว่า {username}@tigerpond.com
    ที่ช่อง UsernameAttribute: ให้ใส่ว่า uid
    ที่ช่อง BaseDN: ให้ใส่ว่า ou=People,dc=project-open,dc=com
    ที่ช่อง LdapURI: ให้ใส่ว่า ldap://ldap.project-open.com/
    ที่เหลือปล่อยว่างได้ แล้วคลิกปุ่ม OK

  9. การล้างข้อมูล demo ที่ติดมาตอนติดตั้ง ให้จัดการระบบโดยไปเมนูด้านบน เลือกแถบ Admin
    จะได้หน้าเวบที่มีแถบเมนูสำหรับ Admin เพิ่มขึ้นมาอีกชุด แล้วให้เลือกแถบ Admin Home
    ที่ส่วนของ Dangerous!! ให้คลิกเลือกหัวข้อ Cleanup Demo Data
    ได้หน้าเวบ Nuke Demo Data ให้คลิกเลือก Nuke all demo data in the system
    ได้หน้าเวบ Cleanup Demo Data มีคำถามว่า  Are you really sure to delete all data in your system?
    ให้ยืนยันล้างข้อมูลด้วยการคลิกที่ปุ่ม Cleanup All Data in the System  แล้วรอๆๆ จนเสร็จ

  10. แก้ไขให้ login เข้าด้วย username แทนอีเมล์  ให้จัดการระบบโดยไปเมนูด้านบน เลือกแถบ Admin
    จะได้หน้าเวบที่มีแถบเมนูสำหรับ Admin เพิ่มขึ้นมาอีกชุด แล้วให้เลือกแถบ Parmeters
    ได้หน้าเวบ Parameters ให้ไปคลิกที่ส่วนของ acs-kernel
    ได้หน้าเวบ Kernel Parameters ไปที่ส่วนของ Security
    ที่ช่อง UseEmailForLoginP ให้แก้ไขเปลี่ยนเป็น 0  แล้วคลิกปุ่ม OK
  11. --ยังไม่สำเร็จ
    หากต้องการเปลี่ยนเป็น port 80 แทน 8000 ตามที่ระบบติดตั้งมาไว้แล้ว ให้ทำดังนี้
    แก้ไขแฟ้ม /web/projop/etc/config.tcl   ปรับปรุงข้อมูลจากเดิม
    set httpport                  8000
    set httpsport                 8443
    เปลี่ยนใหม่ให้เป็นว่า
    set httpport                  80
    set httpsport                 443
    แล้วให้รีบูท server ใหม่

  12. หากต้องการแก้ไขหน้าแรกของเวบ ให้แก้ไขที่แฟ้ม /web/projop/www/index.adp
    ตัวอย่างแก้ไขให้หน้าแรกแสดงหน้าเวบ login เลย ทำดังนี้

    สร้างแฟ้ม /web/projop/www/index.tcl ใหม่มีข้อมูลดังนี้
    ad_page_contract {
        project-open Intranet index.tcl
        Provides the index.adp page with default values for
        the different login parameters
    } {
        {authority_id ""}
        {username ""}
        {email ""}
        {return_url "/intranet/"}
    }

    สร้างแฟ้ม /web/projop/www/index.adp ใหม่มีข้อมูลดังนี้
    <!-- ]project-open[ Intranet index.adp page -->
    <html><head><title>]project-open[ Intranet</title>
    <meta http-equiv=Content-Type content="text/html; charset=iso-8859-1">
    <link media=screen href="/intranet/style/style.default.css" type=text/css rel=StyleSheet>
    <body text=black bgColor=white>
    <table cellSpacing=0 cellPadding=0 width="100%" border=0>
      <tr>
        <td><A href="http://www.project-open.com/">
          <img src=/intranet/images/projop-logo.gif border=0 width=230 height=52>
        </A></td>
        <td vAlign=center align=middle></td>
        <td vAlign=center align=right></td>
      </tr>
    </table>
    <table cellSpacing=0 cellPadding=0 width="100%" border=0>
      <tr>
        <td align=left>
          <table cellSpacing=0 cellPadding=0 border=0>
            <tr height=19>
              <td><img alt="" src="/intranet/images/navbar_default/left-sel.gif"
                       width=19 border=0 heigth="19"></td>
              <td class=tabsel>
         <A class=whitelink href="/intranet/index">Home</A>
       </td>
              <td>
              <td><img alt="" src="/intranet/images/navbar_default/right-sel.gif"
                       width=19 border=0 heigth="19"></td>
              </tr>
          </table>
        </td>
      </tr>
      <tr>
        <td class=pagedesriptionbar colSpan=2>
          <table cellPadding=1 width="100%">
            <tr><td class=pagedesriptionbar vAlign=center>
              ]project-open[ Intranet
            </td></tr>
          </table>
        </td>
      </tr>
    </table><br>
    <table cellSpacing=0 cellPadding=0 width="100%" border=0>
      <tr>
        <td vAlign=top>
          <table cellSpacing=0 cellPadding=5 border=0>
            <tr><td class=tableheader>]project-open[ Links</td></tr>
            <tr><td class=tablebody>
                <LI><A href="/intranet/">]project-open[ Intranet</a><br>
                <LI><A href="http://www.project-open.com/">]project-open[ Web Site </a>
                <LI><A href="/">]project-open[ Developer Community</a>
                <LI><A href="/doc/">Documentation Home</a>
            </td></tr>
          </table>
        </td>
        <td>
          <table cellSpacing=0 cellPadding=5 border=0>
            <tr><td class=tableheader>Intranet Login</td></tr>
            <tr><td class=tablebody>
    <!-- Include the login widget -->
    <include src="/packages/acs-subsite/lib/login" return_url="@return_url;noquote@" no_frame_p="1" authority_id="@authority_id@" username="@username;noquote@" email="@email;noquote@" &="__adp_properties">
             </td>
            </tr>
          </table>
        </td>
      </tr>
    </table>
    <table cellSpacing=0 cellPadding=5 width="100%" border=0>
      <tr><td>
        Comments? Contact:
        <A href="mailto:support@project-open.com">support@project-open.com</A>
      </td></tr>
    </table>
    </body>
    </html>