หน้าเว็บ

วันอาทิตย์ที่ 15 เมษายน พ.ศ. 2555

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

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  หากใน directoryshare” ได้มีการแชร์ ไฟล์ไว้  เมื่อเราเปิดเข้าไปก็จะพบไฟล์ที่ได้แชร์ไว้ ดังรูป




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

 

      17. จะมีไดอะล็อกถามชื่อผู้ใช้กับรหัสผ่านแสดงขึ้นมา  ก็ให้ทำการกรอกลงไป  จากนั้นกดปุ่ม OK


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



4 ความคิดเห็น:

  1. ไม่ระบุชื่อ19 มีนาคม 2559 เวลา 23:29

    ขอบคุณมากครับเป็นประโยชน์กับหลายคน มากครับ ขอบคุณอีกครั้งคับผม

    ตอบลบ
  2. ขอบคุณมากครับ เป็นประโยชน์มาก ๆ เข้าใจง่าย ..

    ตอบลบ
  3. ผมเพิ่งมาดูครับ ทุกขั้นตอนเข้าใจง่าย ทำแล้วใช้ได้เลย พอดีช่วงนี้อยากศึกษาอะไรเล่น จอบทความมีประโยชน์มากจริงๆ ขอบคุณครับ

    ตอบลบ
  4. ผมขอเพิ่มด้วยด้วยคนครับ คำว่าขอบคุณ เพราะผมใช้ ubuntu มาประมาล9-10 ปีได้แล้วชอบมากเลยครับ และเท่าที่ผมใช้มา ขอโทษนะ ดีกว่าของบิลเกตแยะ สเถียนกว่าทุกเรื่องเลย (สำหรับ นักพัฒนาแล้ว windows สู้ไม่ได้ครับ) good work for all linux

    ตอบลบ