Author: wiboon.w

  • ใช้ google script ทำ mail merge เนื้อหาเมลที่มี pre-filled form URL

    จากตอนที่แล้ว “ใช้ google script ทำ mail merge เนื้อหาเมลที่มี link” เรารู้วิธีใส่ link ไปในเนื้อหาเมล ในตอนนี้เราจะมาเปลี่ยน static link เป็น dynamic link (คือ link ที่มีการอ้างชื่อ cell จึงเป็น link ที่เปลี่ยนแปลงไปตามค่าที่อยู่ใน cell) จุดประสงค์ก็เพื่อส่ง link ให้ผู้ที่รับอีเมลกรอกข้อมูลลง google form ที่มีข้อมูลให้บางส่วนแล้ว (pre-filled form) ซึ่งเป็นข้อมูลของผู้รับอีเมลแต่ละคนที่แตกต่างกัน เช่น ให้มีฟิลด์ ชื่อ และ หน่วยงาน ไว้แล้ว เป็นต้น เมื่อเปิดฟอร์มจึงไม่ต้องกรอกชื่อ และ หน่วยงาน แต่ยังสามารถแก้ไขได้หากต้องการ แล้วให้กรอกข้อมูลเพิ่มในส่วนอื่น ๆ

    สมมติ
    1. เรามี google sheet ชื่อ members มี 4 คอลัมน์ อยู่แล้ว ดังนี้ รายการที่, ชื่อ, หน่วยงาน, อีเมล

    mmwp01

    2. เราต้องการสร้าง google form เพื่อสอบถาม ตอบรับร่วมงาน และ ประเภทอาหาร

    วิธีทำ ดังนี้
    1. สร้าง google form ขึ้นมา 1 อัน ตั้งชื่อว่า member-meeting1

    mmwp02

    2. สร้าง form field ดังนี้ ชื่อ, หน่วยงาน, ตอบรับร่วมงาน, ประเภทอาหาร

    3. เลือกเมนู Responses > เลือก Get pre-filled URL

    mmwp03

    4. กรอกข้อมูลชื่อตัวแปรลงในช่องข้อมูล เช่น ชื่อ ให้ใส่ f1, หน่วยงาน ให้ใส่ f2

    mmwp04

    5. กรอกเสร็จให้คลิก submit จะได้หน้าต่างแสดงเป็น URL และมีข้อความบอกให้เราคัดลอก (ctrl+c)

    mmwp05

    6. URL ที่คัดลอกนี้จะไปใส่ใน google sheet ชื่อ member ในคอลัมน์ใหม่ รวมเป็น 5 คอลัมน์ ดังนี้
    รายการที่, ชื่อ, หน่วยงาน, อีเมล, URL

    7. ที่ cell URL นี้ ให้ใส่ฟังก์ชั่น =HYPERLINK(“URL”,”URL”) และนำ URL ที่คัดลอกมาวางตรงคำว่า URL

    mmwp06

    8. ให้แทนที่ข้อความ ตรงที่มีคำว่า f1 ด้วย “&B2&”, แทนที่ f2 ด้วย “&C2&”

    mmwp07

    9. จากนั้นก็นำความรู้ในเรื่อง “ใช้ google script ทำ mail merge เนื้อหาเมลที่มี link” มาใช้ในการส่งอีเมลได้แล้ว
    9.1 เตรียมเนื้อหาจดหมายไว้ใน sheet ชื่อ Template
    mmwp08

    9.2 เตรียม range ของข้อมูล คีย์เองนะ

    mmwp09

    9.3 คัดลอก google script จากตอนที่แล้วมาใช้

    mmwp10

    9.4 สั่งให้ google script ชื่อ MailMergeWithLinkv2 ทำการส่งอีเมล

    mmwp11

    9.5 ตรวจสอบดูอีเมลที่ได้รับ

    mmwp12

    9.6 เมื่อคลิก link จากในเมล จะไปเปิด google form ขึ้นมา พร้อมข้อมูล 2 ฟิลด์แรก คือ ชื่อ และ หน่วยงาน ที่ดึงข้อมูลที่มีอยู่มาไว้ให้เลย จะได้ไม่ต้องคีย์บ่อย ๆ

    mmwp13

    9.7 ตรวจสอบข้อมูลที่กรอกผ่าน google form โดยที่เมนู Responses ใน form ให้เลือก Choose response destination และเลือก สร้างไฟล์ google spreadsheet ใหม่

    mmwp14

    จากนั้น จะได้ไฟล์

    mmwp15

    เปิดดู เห็นข้อมูลที่กรอกผ่าน google form มาเก็บไว้แล้ว

    mmwp16

     

    ความรู้นำมาจากเรื่องนี้:
    Pre-populate form answers
    https://support.google.com/docs/answer/160000?hl=en

  • ใช้ google script ทำ mail merge เนื้อหาเมลที่มี link

    ผมใช้ Yet another mail merge ซึ่งเป็น add-on เพื่อส่งอีเมลเรื่องเดียวกันไปยังเพื่อนๆจำนวนหนึ่ง ก็ใช้งานได้ดีมา 5 ครั้งแล้ว แต่พอครั้งหลังนี้ ผมต้องการส่งอีเมลที่ในเนื้อหามี link ให้ผู้ที่รับอีเมลสามารถคลิกเพื่อเปิดอ่านได้ แต่ลองหลายวิธีที่จะส่งด้วยวิธีที่เคยใช้ add-on ตัวนี้ก็จะแสดงเป็นข้อความ ไม่แสดงเป็น link ในอีเมล (อันนี้ต้องบอกก่อนว่า คาดว่าผู้ใช้ส่วนใหญ่ใช้โปรแกรมอีเมลที่มีการแสดงผลมากกว่าข้อความธรรมดา)

    ค้นหาดูก็พบว่า ต้องเปลี่ยนวิธีทำมาเป็นวิธีเขียน google script เพื่อส่ง mail merge แทน

    วิธีทำ ดังนี้
    1. สร้าง google sheet ตั้งชื่อ myusers
    1.1 sheet แรก ตั้งชื่อ Data ที่มีคอลัมน์ ดังนี้
    รายการที่, ชื่อ, คณะ, อีเมล, link1, link2

    mmwl01

    1.2 sheet สอง ตั้งชื่อ Template ที่มี 1 คอลัมน์ เพื่อเขียน subject และ ข้อความจดหมายที่มี link

    mmwl02

    1.3 sheet สาม ตั้งชื่อ Range ที่มี 3 คอลัมน์ ดังนี้
    header, data, template

    mmwl03

    2. ใส่ข้อมูลตามตัวอย่างรูปภาพ

    3. ที่ google sheet ให้คลิกที่ Tool > Script editor > เลือก Blank Project > ตั้งชื่อว่า myusers project

    mmwl04

    mmwl05

    4. แปะ google script ตามซอร์สโค้ดด้านล่างบทความนี้ และคลิก Save
    หมายเหตุ ซอร์สโค้ดนี้จะวางตำแหน่งอีเมลไว้ที่คอลัมน์ที่ 4

    mmwl06

    5. ปิดแท็บ google script (myusers project)

    6. ปิดแท็บ google sheet (myusers) แล้วเปิดใหม่

    7. เมื่อเปิดใหม่จะเห็นว่ามีเมนู Email และมี submenu ชื่อ MailMergeWithLinkv2

    mmwl07

    8. คลิกเมนู Email > MailMergeWithLinkv2
    จะมีการขอสิทธิในการรัน script ดังรูป

    mmwl08   mmwl09

    9. ไปตรวจสอบว่าอีเมลถูกส่งไปและมีเนื้อหาที่มี link ตามต้องการ

    mmwl10

    10. หากต้องการส่งอีกครั้งให้กับอีเมลที่ได้ส่งแล้ว ให้ดูที่คอลัมน์ อีเมล จะเห็นว่ามี Note เนื่องจากว่า google script นี้ได้เขียน Note ไว้ใน cell ใช้เป็นการป้องกันการส่งอีเมลซ้ำ

    mmwl11

    ให้คลิกขวาและเลือก Clear Note

    mmwl12

    ซอร์สโค้ดที่ใช้:

    function onOpen() {
      var submenu = [{name:"MailMergeWithLinkv2", functionName:"MailMergeWithLinkv2"}];
      SpreadsheetApp.getActiveSpreadsheet().addMenu('Email', submenu);  
    }
    
    function MailMergeWithLinkv2() {
      var ss = SpreadsheetApp.getActiveSpreadsheet(),
      DataSheet = SpreadsheetApp.setActiveSheet(ss.getSheetByName("Data")),
      TemplateSheet = SpreadsheetApp.setActiveSheet(ss.getSheetByName("Template")),
      RangeSheet = SpreadsheetApp.setActiveSheet(ss.getSheetByName("Range")),
    
      header = RangeSheet.getRange(2, 1).getValue(),
      data = RangeSheet.getRange(2, 2).getValue(),
      template = RangeSheet.getRange(2, 3).getValue(),
    
      dataRows = DataSheet.getRange(data).getValues(),
      headerRow = DataSheet.getRange(header).getValues(),
      numColumns = DataSheet.getRange(header).getNumColumns(),
      templateRows= TemplateSheet.getRange(template).getValues();
    
      for (var i=0 ; i < dataRows.length ; i++) {
        var mailmessage = "";
        for (var k=0 ; k < templateRows.length ; k++) {
          if ( k == 0 ) {
            var subject = templateRows[0][0];
          } else {
            mailmessage += templateRows[k][0] + "<br>\n"; 
          }
        }
        for (var j=0 ; j < numColumns ; j++) { 
          mailmessage = mailmessage.replace('{' + headerRow[0][j] + '}', dataRows[i][j]); 
        }
        //Test output with logger. Uncomment the line below.
        //Logger.log(mailmessage);
        //
        //Send Email start here, starting row is 2.
        var sender = "Sawadee Krub";   //email sender name
        var emailaddress = DataSheet.getRange(2+i, 4).getValue(); //email in column 4
        var options = {}
        options.htmlBody = mailmessage;
        options.name = sender;
        //Not send email again if it was sent. Clear note then can send email again.
        if (DataSheet.getRange(2+i, 4).getNote()) {
        } else {
          MailApp.sendEmail(emailaddress, subject, '', options);
          DataSheet.getRange(2+i, 4).setNote("Email sent on " + new Date); 
        }
        //Email sent
      } 
    }

     

    ความรู้นำมาจากเรื่องนี้:
    1) Embedding a link in Mail Merge
    https://productforums.google.com/forum/#!topic/docs/WvW-lAr3pg8
    และ
    2) Google Apps Scripts Workshop – Level 1
    http://sysadmin.psu.ac.th/2015/05/06/gasws-1/

    ในตอนต่อไป จะนำเสนอวิธีสร้าง link ที่เป็น pre-filled form URL ของ google form

  • วิดีโอแนะนำการติดตั้ง PSU12-Sritrang Server โปรแกรมสำหรับการจัดการห้องบริการคอมพิวเตอร์ (cloning & control PC)

    วิดีโอแนะนำการติดตั้ง PSU12-Sritrang Server โปรแกรมสำหรับการจัดการห้องบริการคอมพิวเตอร์ (cloning & control PC)
    โดย  Wiboon Warasittichai on youtube

    01 PSU12-sritrang install (ตอนที่ 1 วิธีติดตั้ง)
    PSU12-sritrang-t01
    https://youtu.be/GAhZhGCciY0

    02 PSU12-sritrang cloning (ตอนที่ 2 วิธีโคลนนิ่งฮาร์ดดิสก์)
    PSU12-sritrang-t02
    https://youtu.be/CegdT_LtE4k

    03 PSU12-sritrang features (ตอนที่ 3 คุณสมบัติของแต่ละเมนู)
    PSU12-sritrang-t03
    https://youtu.be/Dw_wAyMa3vA

    04 PSU12-sritrang control (ตอนที่ 4 การควบคุมเครื่องวินโดวส์ send, restart, shutdown, wakeonlan)
    PSU12-sritrang-t04
    https://youtu.be/o801BZ9ye0Y

    05 PSU12-sritrang prnews (ตอนที่ 5 ประชาสัมพันธ์ข่าวด้วยภาพ เมื่อ boot from network)
    PSU12-sritrang-t05
    https://youtu.be/FA2X182oKXo

    06 PSU12-sritrang windows master (ตอนที่ 6 เตรียมวินโดวส์ต้นฉบับที่ติดตั้ง cygwin)
    PSU12-sritrang-t06
    https://youtu.be/9XkLQQ-niz4

    07 PSU12-sritrang windows computer name (ตอนที่ 7 เปลี่ยนชื่อเครื่อง)
    PSU12-sritrang-t07
    https://youtu.be/TuW8_Z2U7V4

    08 PSU12-sritrang windows pgina freeradius (ตอนที่ 8 ตั้ง login ใช้ RADIUS server)
    PSU12-sritrang-t08
    https://youtu.be/58Pw-dbxljw

    09 PSU12-sritrang windows partitions (ตอนที่ 9 เตรียมฮาร์ดดิสก์ของวินโดวส์ต้นฉบับ)
    PSU12-sritrang-t09
    https://youtu.be/jP4oSqRNvCo

    10 PSU12-sritrang linuxmint master (ตอนที่ 10 เตรียมลินุกซ์มินท์ต้นฉบับ)
    PSU12-sritrang-t10
    https://youtu.be/zpR0UQbTy_U

    11 PSU12-sritrang control linuxmint (ตอนที่ 11 การควบคุมเครื่องลินุกซ์มินท์)
    PSU12-sritrang-t11
    https://youtu.be/bVtfc4x-kKU

    12 PSU12-sritrang server backup (ตอนที่ 12 สำเนาไฟล์เก็บไว้)
    PSU12-sritrang-t12
    https://youtu.be/dA7-pWjy35I

    และมีเอกสารแนะนำอยู่ที่ http://opensource.psu.ac.th/PSU-Open-server

  • iTALC 2.0.2 โปรแกรมควบคุมคอมพิวเตอร์ในห้องเรียน

    italc-installation-2-window
    มาแนะนำกันอีกสักรอบสำหรับ iTALC 2.0.2 โปรแกรมควบคุมคอมพิวเตอร์ในห้องเรียน เป็นซอฟต์แวร์ชนิดโอเพนซอร์สที่บางคนก็ได้ลองใช้ในเวอร์ชั่นแรก ๆ ไปบ้างแล้ว ผมลองเข้าไปดูในเว็บไซต์ผู้สร้างโปรแกรมก็เห็นว่ายังคงอัปเดตปรับปรุงโปรแกรมกันอยู่ถึงปัจจุบัน ก็เลยสนใจลองทดสอบดูครับ

    iTALC ทำอะไรได้หลายอย่าง เช่น ผู้สอนสามารถ Lock หน้าจอเครื่องผู้เรียน สามารถส่งภาพหน้าจอเครื่องผู้สอนไปยังหน้าจอเครื่องผู้เรียนได้ สามารถรีโมทคอนโทรลเข้าไปเครื่องผู้เรียนได้ สั่งปิดเครื่องทุกเครื่องได้ หรือ สั่งเปิดเครื่องได้หาก BIOS พร้อมใช้งาน

    ดาวน์โหลดโปรแกรมได้ที่ http://italc.sourceforge.net/
    italc-installation-1-file

    ติดตั้งเสร็จจะได้ไอคอนที่หน้า Desktop ดังรูป
    italc-installed-desktop-window
    และไอคอนที่หน้า Apps ดังรูป
    italc-installed-apps-window
    โปรแกรม iTALC Management Console
    italc-management-4-export-key-1-window
    เครื่องผู้สอน จะเรียกว่า master computer ในขั้นตอนการติดตั้งโปรแกรมที่เครื่องผู้สอน ให้เลือก component iTALC service และ iTALC master และให้เลือก Create new access keys
    italc-installation-3-choose-window
    เครื่องผู้เรียน จะเรียกว่า client computer ในขั้นตอนการติดตั้งโปรแกรมที่เครื่องผู้เรียน ให้เลือก component iTALC service แต่ไม่เลือก iTALC master และให้เลือก Import public key
    italc-management-4-export-key-2-window

    วิธีที่จะทำให้เครื่องผู้สอนควบคุมเครื่องผู้เรียนได้ก็คือการ export public key ซึ่งจะได้ไฟล์ชื่อ italc_public_key.key.txt ด้วยโปรแกรม iTALC Management Console นั้นเช่นกัน
    italc-management-4-export-key-4-window
    แล้วนำไปใส่เข้าในเครื่องผู้เรียนด้วยโปรแกรมเดียวกัน
    italc-management-import-key-3-window
    เมื่อทำขั้นตอนติดตั้งเสร็จแล้ว ก็เป็นการตั้ง classroom ว่าชื่ออะไร และมีคอมพิวเตอร์ใดบ้าง (IP) อยู่ใน classroom นี้ แล้วก็ใช้งานซึ่งการใช้งานง่ายมากเลย
    italc-setting-classroom-finished

    ผมเขียนวิธีการสำหรับ Windows 8.1 ที่นี่ครับ
    http://opensource.cc.psu.ac.th/โปรแกรมควบคุมคอมพิวเตอร์ในห้องเรียน

    และวิธีการสำหรับ Linux Mint 17.1 ที่นี่ครับ
    http://opensource.cc.psu.ac.th/ติดตั้ง_iTALC_บน_Linux_Mint

    คำถามยอดฮิตคือ แล้วมันใช้ควบคุมได้กี่เครื่อง อันนี้ผมยังไม่ได้ทดสอบครับ ฮ่า ฮ่า รอท่านทดสอบแล้วบอกผมด้วยนะครับ

    หวังว่าคงจะมีประโยชน์ อย่างน้อยที่สุดเอามาใช้ควบคุมเครื่องที่อยู่ในความดูแลไม่กี่เครื่องก็ใช้ได้นะ

  • Mail merge with gmail and google sheet

    หลังจากทำฟอร์มแบบสอบถามส่งเป็นจดหมายเวียน (mail merge) ให้กับผู้ดูแลระบบของคณะ/หน่วยงาน คิดว่าอยากเล่าให้เพื่อนๆฟังด้วยว่า มีเทคนิคอยู่ 1 เทคนิค คือ การใส่ส่วนเสริม (Add-ons) ชื่อ Yet Another Mail Merge เข้าไปใน Google Sheet และใช้มันเพื่อประสาน gmail (จดหมายร่าง) กับ google sheet ที่มีฟิลด์เก็บข้อมูล E-mail Address ของทุกคน

    mailmerge00

    ขั้นตอน

    1. สร้างฟอร์ม

    mailmerge01

    2. สร้างคำถามในฟอร์มและทดสอบฟอร์มให้เรียบร้อย

    mailmerge02

    3. สร้าง Google Sheet ที่มีฟิลด์ Name, Office, Email Address

    mailmerge03

    4. สร้างจดหมายฉบับร่าง ที่ในช่อง To: ไม่ต้องใส่ ให้เว้นไว้เฉยๆ ส่วนในเนื้อหามีอ้างถึง ฟิลด์ ที่ต้องการ

    mailmerge04

    5. กลับมาที่ Google Sheet ที่เมนูส่วนเสริม (Add-ons) ให้ดาวน์โหลดส่วนเสริมชื่อว่า “Yet Another Mail Merge” ซึ่งจะมีคำถามให้ยอมรับเงื่อนไข อ่านให้ละเอียดนะครับ) แล้วจะมีเมนูให้ใช้ ก็เลือกเมนูย่อย “เริ่มประสานอีเมล”

    mailmerge05

    6. ในช่อง จดหมายร่าง: ให้เลือกชื่อ Subject ของอีเมลที่ร่างไว้นั้น
    ในช่องชื่อผู้ส่ง: พิมพ์ชื่อผู้ส่งตามสะดวก

    mailmerge06

    ข้อจำกัดคือส่งได้วันละ 100 ฉบับ

    7. เมื่อคลิก ส่งอีเมล จะเห็นว่ามีการสร้างฟิลด์ Merge Status และใส่คำว่า EMAIL_SENT

    mailmerge07

    8. เช็คจดหมายส่งแล้ว จะเห็นว่าส่งอีเมลไปให้ทีละคน

    mailmerge08

    ข้อมูลอ้างอิงที่ผมใช้ในการทำงานนี้:

    1. Yet Another Mail Merge
    https://sites.google.com/site/scriptsexamples/available-web-apps/mail-merge

    mailmerge09

    2. Youtube วิดีโอ เรื่อง “Create a Mail Merge with Gmail and Google Drive 2014”

  • วิธีใช้เครื่องมือในการเขียนบล็อกใน wordpress

    how-to-add-new-post-in-wordpress

    ผมได้เขียนคำแนะนำวิธีใช้เครื่องมือในการเขียนบล็อกใน wordpress ไป วันนี้อยากนำมาเล่าสู่กันฟังอีกสักรอบ เพราะว่ามีสมาชิกใหม่ๆเข้ามาร่วมเยอะ

    เคยเขียนเรื่อง “KM เรื่อง การใช้งานสำหรับผู้เขียน wordpress” (http://sysadmin.psu.ac.th/2012/11/16/km-how-to-authoring-in-wordpress/) Posted on November 16, 2012 by วิบูลย์ วราสิทธิชัย

    อันนี้จะเป็นคำแนะนำวิธีการตั้งชื่อ URL Link เป็นภาษาอังกฤษ แม้ว่า เราจะตั้งชื่อเรื่องเป็นภาษาไทย ต้องใช้วิธีการ manual ในการแก้ไข

    ตั้งค่าการเผยแพร่บทความให้อ่านได้เฉพาะสมาชิกที่ login (http://sysadmin.psu.ac.th/2013/01/04/set-post-to-private/) Posted on January 4, 2013 by วิบูลย์ วราสิทธิชัย

    อันนี้จะเป็นคำแนะนำวิธีการซ่อนบทความที่ไม่ต้องการเปิดเผยเนื่องจากเป็นข้อมูลเฉพาะเจาะจงในม.อ. เช่น workshop PSU Passport Authentication อย่างนี้กำหนดค่าให้ login ก่อนจึงอ่านได้

    และวันนี้มีมาเล่าสู่กันฟังเพิ่มเติมครับว่า เราสามารถใส่รูปภาพ เพื่อเป็นรูปแรกสำหรับหน้าบล็อกเรื่องที่เขียนครับ โดยคลิกที่คำว่า Set featured Image อยู่ด้านขวามือข้างล่างหน้าบล็อกที่กำลังเขียน ให้อัปโหลดรูป (ต้องย่อขนาดรูปให้เล็ก ประมาณสัก กว้าง 130px สูง 130px ด้วยเครื่องมือตกแต่งรูปที่ใช้เป็น ก่อนอัปโหลดนะครับ) ขึ้นไปเก็บบน sysadmin.psu.ac.th แล้วคลิกเลือกมาใช้ ลืมบอกไปว่า Featured Image จะโผล่ในหน้าแรก (Home)

    ลองใช้งาน ติดขัดอย่างไรก็สอบถามมานะครับ

     

  • เทคนิคการเพิ่ม user ในระบบ linux คราวละมากๆ

    มีผู้สนใจ linux ได้สอบถามเข้ามาทางอีเมลว่า จะเพิ่ม user ในระบบ linux คราวละมากๆ พอจะมี shell scripts ให้นำไปใช้งานหรือเปล่า ผมก็มีอยู่แล้ว แต่ก็ปรับแต่งเล็กน้อย

    shell script นี้มีดังนี้
    1. makeusername.sh เพื่อสร้างไฟล์รายชื่อตามจำนวนที่ต้องการ เลขเริ่มต้น min และสิ้นสุด max
    2. bulkuseradd.sh เพื่อเพิ่ม user และ password แบบ random และสร้างไฟล์ .csv เก็บ user:password นำไปพิมพ์แจก user ได้
    3. bulkuserdel.sh เพื่อลบ user

    ผมเขียนไว้ในเว็บไซต์ opensource.cc.psu.ac.th หัวข้อ เทคนิค+scripts (
    http://opensource.cc.psu.ac.th/เทคนิคการเพิ่ม_user_ในระบบ_linux_คราวละมากๆ)

  • ติดตั้ง ownCloud เลือกใช้ user PSU Passport หรือ ftp server หรือ RADIUS Server

    เหมาะสำหรับหน่วยงานที่ต้องการทำ private cloud storage ของตนเอง โดยใช้ open source software ชื่อ ownCloud

    ownCloud-webpage
    สภาพแวดล้อม

    •     ติดตั้ง ownCloud ลงบน ubuntu server 14.04
    •     ติดตั้ง ownCloud เวอร์ชั่น ownCloud 7.0.4 (stable) แบบ apt-get install
    •     ติดตั้ง ownCloud เลือกใช้กับ MySQL/MariaDB Database
    •     ติดตั้ง ownCloud เลือกใช้ user PSU Passport หรือ เลือกใช้ user เดียวกับ ftp server หรือ RADIUS Server (โดยเลือกใช้ user name ผ่าน Apps ชื่อ External user support)

    ขั้นตอนเตรียม User Account

    1. ติดตั้ง ubuntu server 14.04.x ในขั้นตอน Install ให้เลือกแพ็กเกจ OpenSSH และ LAMP

    2. ติดตั้ง FreeRADIUS

    3. ติดตั้ง vsftpd

    4. ติดตั้ง lib-pam-radius

    5. แก้ไขไฟล์ที่เกี่ยวข้องกับ freeradius เพื่อเลือก database
    จบขั้นตอนนี้ เราได้ user ของ ftp server ซึ่งอาจจะเป็น local linux account หรือ ldaps user (PSU Passport) ผ่าน RADIUS server

    (ขั้นตอน 1-5 อ่านได้ที่นี่ ติดตั้ง ftp server + lib-pam-radius + authen psu-passport และ ldaps)

    ขั้นตอนถัดไปติดตั้ง ownCloud

    6. อ่านคำแนะนำวิธีติดตั้งผ่าน repository และ apt-get install owncloud

    7. สร้าง Datbase user, name, password

    8. ตั้งค่า ownCloud ครั้งแรกผ่านเบราว์เซอร์ เพื่อเลือก MySQL/MariaDB Server และ เลือกใช้ user name ผ่าน Apps ชื่อ External user support

    9. ติดตั้ง https ตามวิธีของท่าน (โปรดหาวิธีทำเองนะครับ)

    10. ที่เบราว์เซอร์เข้าใช้งานด้วย user ที่ใช้งานกับ ftp server ที่เราติดตั้งได้สำเร็จ
    จบขั้นตอนนี้ เรามี ownCloud ที่สามารถเข้าใช้งานด้วย user ที่เราเลือกไว้ในขั้นตอนที่ 5

    (ขั้นตอนที่ 6-10 อ่านได้ที่นี่ ติดตั้ง ownCloud และใช้ user เดียวกับของ ftp server)