วันอาทิตย์ที่ 12 มีนาคม พ.ศ. 2560

การติดตั้งและแชร์ไฟล์ผ่าน SAMBA ให้กับ Ubutntu server

เขียน เว็บด้วย php มานาน ไหนๆ ก็มาทางนี้แล้ว มาทดลองทำเซิฟเวอร์ใช้เองเลยดีกว่า ด้วย Ubuntu Server ของฟรี ดีดี ยังมีอีกเยอะครับ อันนี้เป็นการติดตั้ง samba เป็นโปรแกรมสำหรับแชร์ไฟล์บน linux นะครับ ไปดูกันครับ ง่ายๆ

1. เปิด Terminal ขึ้นมา  ด้วยการกด Ctrl + Alt + t

      2. ให้ทำการ Update และ Upgrade Server ให้มีความเป็นปัจจุบันก่อน

  •     การ Update จะใช้คำสั่ง  $ sudo apt-get update  จากนั้นใส่รหัสผ่านลงไป
  •     การ Upgrade จะใช้คำสั่ง $ sudo apt-get upgrade จากนั้นใส่รหัสผ่านลงไป

ผลจากการ Update Upgrade เสร็จ

      3. ติดตั้ง SAMBA ด้วยแพ็คเกต samba โดยการใช้คำสั่งดังต่อไปนี้  $ sudo apt-get install samba  ดังรูป

ผลการติดตั้งเสร็จ



      4. ตรวจสอบการทำงานของ SAMBA โดยการใช้คำสั่งดังต่อไปนี้ $ netstat –tan จะพบว่ามี Service NetBIOS ทำงานอยู่ที่พอร์ต 139  และService Microsoft-DS ทำงานอยู่ที่พอร์ต  445 ดังรูป


     5. แก้ไขไฟล์คอนฟิกของ SAMBA ที่มีชื่อว่า smb.conf ซึ่งเก็บไว้ที่ /etc/samba/  โดยใช้คำสั่งดังต่อไปนี้
$ sudo gedit /etc/samba/smb.conf  ดังรูป

      6. บรรทัดที่ต้องทำการแก้ไขมีดังต่อไปนี้
workgroup = ชื่อ workgroup ที่ต้องการ
server string = ชื่อ samba server ที่ต้องการให้ client มองเห็น
security = กำหนดเป็น share หรือ user  
/* กรณีที่เป็น share คือ ไม่ต้องมีบัญชีผู้ใช้อยู่ในระบบก็สามารถใช้งาน SAMBA ได้
กรณีที่เป็น user คือ ต้องทำการล็อกอินเพื่อเข้าใช้งาน SAMBA โดยจะต้องใช้บัญชีผู้ใช้ที่มีอยู่ในเครื่อง Server เท่านั้น */
encrypt passwords = true หรือ false //เป็นการกำหนดว่าจะให้มีการเข้ารหัส  password หรือไม่
#===================== Share Definitions ===================
ในส่วนต่อไปนี้คือ เป็นการกำหนดให้ผู้ใช้ที่มีบัญชีอยู่ในระบบสามารถใช้บริการของ  SAMBA ได้ โดย Directoryหลักจะอยู่ที่  Home Directory ของผู้ใช้ที่ทำการ Login เข้าใช้บริการของ SAMBA  
 การใช้บริการ SAMBA ในส่วนนี้ สามารถเข้าใช้บริการโดยผ่านการอ้างอิงในช่อง Address Bar ของ Explorerดังนี้  \\Server IP\User Account on Server  เช่น  \\192.168.107.144\redcrow
[homes] //เป็นชื่อ Share Directory ที่ต้องการให้ผู้ใช้มองเห็น
            comment = Home Directories  //comment
browseable = yes หรือ no /* เป็นการกำหนดว่าจะให้มองเห็น directory นี้ได้หรือไม่  ถ้าเป็น yes คือมองเห็น  และใช้งานได้
แต่ถ้าเป็น no คล้ายๆกับเป็นการซ่อนไฟล์  คือ มองไม่เห็น  แต่ยังสามารถใช้งานได้  */
read only = yes หรือ no  /* เป็นการกำหนดว่าจะให้อ่านข้อมูลได้อย่างเดียวหรือแก้ไขได้ด้วย */
            create mask = 0700 //เป็นการกำหนด Permission ให้กับ file ที่อยู่ใน homes directory
directory mask = 0700  /* เป็นการกำหนด Permission ให้กับ directory ที่อยู่ใน homes directory */
            valid user = %S หรือ บัญชีผู้ใช้ที่ต้องการให้สามารถเข้าใช้บริการของ SAMBA ได้
/* กรณีที่กำหนดเป็น %S คือ ผู้ใช้คนใดก็ตามที่มีบัญชีอยู่ในระบบ สามารถเข้าใช้บริการของ SAMBAได้
กรณีที่กำหนดเป็นบัญชีผู้ใช้ เช่น peter,redcrow,pat คือการกำหนดระบุเฉพาะบัญชีผู้ใช้ที่ได้รับอนุญาตให้เข้าใช้บริการของ SAMBA ได้เท่านั้น */
               
และให้เพิ่มคอนฟิกต่อไปนี้ต่อท้ายไฟล์ smb.conf  ซึ่งในตอนแรกจะไม่มี  ให้เราเพิ่มเข้าไปเอง ดังนี้
[share] //เป็นชื่อ Share Directory ใหม่ที่ต้องการให้ผู้ใช้มองเห็น
            comment = Server Share //comment
            path = path ที่ต้องการจะ share  // เช่น /home/PShare/
read only = yes หรือ no  /* เป็นการกำหนดว่าจะให้อ่านข้อมูลได้อย่างเดียวหรือแก้ไขได้ด้วย */
            create mask = 0700 //เป็นการกำหนด Permission ให้กับ file ที่อยู่ใน homes directory
directory mask = 0700  /* เป็นการกำหนด Permission ให้กับ directory ที่อยู่ใน homes directory */
guest ok = yes หรือ no /* หากมีการกำหนดเป็น yes  จะหมายถึงการ share directory นั้นเป็นแบบ Public คือทุกคนสามารถใช้บริการได้ โดยไม่จำเป็นต้องมีชื่อผู้ใช้อยู่ใน Server */
valid user = %S หรือ บัญชีผู้ใช้ที่ต้องการให้สามารถเข้าใช้บริการของ SAMBA ได้
/* กรณีที่กำหนดเป็น %S คือ ผู้ใช้คนใดก็ตามที่มีบัญชีอยู่ในระบบ สามารถเข้าใช้บริการของ SAMBAได้
กรณีที่กำหนดเป็นบัญชีผู้ใช้ เช่น peter,redcrow,pat คือการกำหนดระบุเฉพาะบัญชีผู้ใช้ที่ได้รับอนุญาตให้เข้าใช้บริการของ SAMBA ได้เท่านั้น*/
               
    
       7. ทดลองกำหนดค่าดังนี้

workgroup = WORKGROUP
server string = SAMBA SERVER
security = user  
encrypt passwords = true 

 
 
#===================== Share Definitions ===================
[homes]
            comment = Home Directories 
browseable =  no
read only = no  
            create mask = 0700
directory mask = 0700  
            valid user = %S 

 
[share]
            comment = Server Share
            path = /home/PShare
read only = no
            create mask = 0777
directory mask = 0777  
guest ok = yes  

 
จากนั้น Save ไว้เหมือนเดิม

      8. สร้าง User สำหรับ SAMBA
                เรามีบัญชีผู้ใช้ของระบบ (Server)  อยู่แล้ว  แต่บัญชีนั้นยังไม่สามารถเข้าใช้บริการของ SAMBA ได้  เราจะต้องทำการ อนุญาตให้สามารถใช้งาน SAMBA ได้ก่อน ด้วยการกำหนด password การเข้าใช้งาน โดยการใช้คำสั่งดังต่อไปนี้  $ sudo smbpasswd –a user_account  ดังรูป

      9. จากนั้น Restart การทำงานของ Service SAMBA โดยใช้คำสั่งดังต่อไปนี้ $ sudo smbd –D  และ
$ sudo nmbd –D ดังรูป

     10. เมื่อกำหนดค่าคอนฟิกเสร็จแล้ว ให้ทำการสร้าง directory ที่จะแชร์ขึ้นมาและกำหนด permission  เป็น 777  ตามที่ได้ตั้งค่าคอนฟิกไว้ว่า path = /home/PShare create mask = 0777  และ directory mask = 0777  จากนั้นใช้คำสั่งดังต่อไปนี้  $ sudo mkdir /home/PShare/  แล้วตามด้วย
$ sudo chmod 777 /home/PShare/  ดังรูป

      11. เมื่อทำการตรวจสอบใน  /homeโดยพิมพ์คำสั่ง $ ls – l /home จะพบว่ามี directory PShare” ถูกสร้างขึ้น และมี  permission เป็น777 ดังรูป

      12. ทดสอบการเข้าใช้บริการ SAMBA ผ่านคอมพิวเตอร์อีกเครื่อง (Windiws 7) แต่ก่อนอื่นจะทำการตรวจสอบ IP ของเครื่อง Server ก่อน โดยการพิมพ์คำสั่งดังต่อไปนี้ที่ Server  $ sudo ifconfig ดังรูป

      13. ที่เครื่อง Client (Windows 7) จะมี Share File แสดงขึ้นมาในหน้าต่าง Network Explorer  ดังรูป

      14. ลองเข้าไปข้างใน Share File (UBUNTU) นั้นด้วยการดับเบิ้ลคลิกที่ “UBUNTU” จะพบว่ามีเพียง directory “share” เพียง directoryเดียวเท่านั้นที่เราสามารถมองเห็นได้ เนื่องจาก directory “homes” เราตั้งค่าคอนฟิกเป็น browseable = no จึงไม่สามารถมองเห็นได้  แต่ยังสามารถใช้งานได้  ดังรูป

หากมีการตั้งค่าคอนฟิกใน directory homes” เป็น browseable =  yes จะทำให้สามารถมองเห็นได้ดังรูป

      15. ทดลองเข้าใช้งานใน directory share
ด้วยการดับเบิ้ลคลิกที่ directory share  หากใน directory “share” ได้มีการแชร์ ไฟล์ไว้  เมื่อเราเปิดเข้าไปก็จะพบไฟล์ที่ได้แชร์ไว้ ดังรูป



      16. ทดลองเข้าใช้งานใน directory homes”   
                 เนื่องจาก directory homes” ถูกซ่อนไว้ไม่ให้มองเห็น ด้วยคอนฟิก  broweable = no  แต่ไม่ได้หมายความว่าเข้าใช้ไม่ได้  การเข้าใช้งานทำได้ดังนี้  พิมพ์  \\Server IP\User Account in Server เช่น \\192.168.107.144\redcrow  ลงในช่อง Address Bar ของ Explorer ดังรูป
 
      17. จะมีไดอะล็อกถามชื่อผู้ใช้กับรหัสผ่านแสดงขึ้นมา  ก็ให้ทำการกรอกลงไป  จากนั้นกดปุ่ม OK

      18. สามารถเข้าใช้งานได้ดังรูป

ไม่มีความคิดเห็น:

แสดงความคิดเห็น

Set MongoDB in the windows path environment

  Let’s set MongoDB in the windows environment in just a few steps. Step 1: First download a suitable MongoDB version according to your mach...