Tag Archives: gnome

GNOME 2.16

รีลีสแล้ว เช็คจาก Release Note ก็เป็นไปตามแผน orca, alacarte, gnome-power-manager gtk# tomboy มาจริงๆ ก็คงทำให้ sticky note โดน deprecated ไป

อื่นๆ ก็ดูจะเป็นการก้าวสั้นๆ อาทิ การเริ่มต้นเข้ามาของ composite สำหรับ metacity ซึ่งเป็นตัวอวดลูกเล่นบนเดสก์ท็อป .. cairo ก็เริ่มมีบทบาทมากขึ้น .. libgnomeprint โดน deprecated หันไปใช้ API ตัวใหม่ใน GTK+ 2.10 แทน .. ที่รอมานานคือ Nautilus CD Burner สั่ง on-the-fly ได้เสียที … และที่อาจจะเห็นชัดสุดตามที่ระบุใน release note อาจจะเป็น Tango Icon Theme

/me .. รอ Edgy Eft ..

gnome-vfs-rsync ?

เรื่องซิงค์/แบ็คอัพข้อมูลเป็นปัญหาใหญ่อันนึงที่นั่งคิดแล้วคิดอีก แล้วก็ยังคิดวิธีดีๆ ไม่ได้ โจทย์คือผมมีข้อมูลสำคัญๆ อยู่ราวๆ 2 กิกะไบต์ ทำยังไงจะแบ็คอัพหรือซิงค์ไปเก็บไว้เครื่องอื่นได้ง่ายๆ ? เวลานี้ผมอาศัยการจัดไดเรคทอรีให้เหมาะกับการแบ็คอัพแล้วสั่ง rsync ไปไว้อีกเครื่องนึง ซึ่งพอจะช่วยได้แต่ยังไม่ถูกใจ อยากได้ที่สะดวกกว่านี้ เลยคิดหาวิธีอื่น ประมาณว่าเป็นไดเรคทอรี/โฟลเดอร์เทียมๆ ที่เก็บไฟล์ที่ต้องการ sync (คล้ายๆ MS Briefcase ?) สั่งซิงค์ก็โอนทั้งไฟล์ทั้งโครงสร้างไปไว้เครื่องปลายทางที่กำหนดไว้ .. คีย์เวิร์ด ‘เทียม’ โผล่ออกมากพร้อมกับคำว่า ‘ไดเรคทอรี’ เลยนึกไปถึง GnomeVFS เข้าให้ .. เออ อันนี้แหละที่อาจจะเป็นคำตอบ

ตอนนี้ refine โจทย์เป็น เขียน GnomeVFS module สำหรับซิงค์ข้อมูล ประมาณว่าเปิด nautilus ใส่โลเกชัน เป็น backup:/// หรือ sync:/// หรือ … ก็จะปรากฎพื้นที่ของไดเรกทอรีเทียม แสดงชื่อไฟล์ที่ต้องการซิงค์ไปเก็บไว้ที่เครื่องอื่น แบ็คเอ็นด์ ตั้งใจว่าจะใช้ rsync + ssh เหมือนเดิม (rsync -e ssh .. ) .. ก็พอดีเจอพี่เทพในห้อง #tlwg เลยเล่าให้ฟังพร้อมสอบถามเรื่องวิธีเขียน ได้คำแนะนำมาเป็นเว็บเพจของ IBM สอนการเขียน GnomeVFS module .. คุณเด่นสินเรียกสิ่งที่ผมคิดจะทำว่า gnome-vfs-rsync ก็เข้าท่าดี ..

วันนี้บันทึกเป็นไอเดียเรื่องนี้ไว้ก่อน กันลืม .. ส่วนจะลงมือเมื่อไหร่ ค่อยหาเวลาว่างๆ ทำ คงใช้เวลาหลายอยู่ ไอ้ผมก็ช่างเขียนโปรแกรมเก่งเหลือเกิน ถึงจะเคยแฮ็กมาบ้าง แต่ยังไม่เคยเขียนโปรแกรม GNOME/GTK เป็นชิ้นเป็นอันเลยซักตัว .. Hello World ยังไม่เป็นเล้ย .. แต่เอาวะ คันก็ต้องเกา .. scratch the itch อย่างพี่เทพบอกโดยแท้ .. ลอล

X.org + GNOME 2.6.2 + Live CD@home

วันศุกร์ตั้งใจจะลง X.org กับ GNOME 2.6.2 แต่ตื่นมาก็เย็นแล้ว ที่ว่าจะกลับบ้านเลยเลื่อนเป็นตอนเช้าเสาร์แทน

คืนศุกร์นั่งอัปเกรดระบบทั้ง Peorth และ Yggdrasil .. ลงที่ Yggdrasil โดยใช้ Synaptic ช่วยเลือกแพ็กเกจ พอเลือกได้สั่ง Execute โหลดแพ็กเกจมา 4-500 แพ็กเกจเห็นจะได้ เริ่มติดตั้งไปสักพัก ค้าง .. Synaptic เอาอีกแล้ว .. ตัดสินใจว่าลงใหม่เลยดีกว่า เริ่มต้นใหม่ที่ TLE Lite เปลี่ยน XFree86 เป็น X.org ตามด้วยอัปเกรดเป็น 2.6.2 และเป็น aowthai/TLC เต็มตัว (รายงานการติดตั้ง aowthai) ขั้นตอนอัปเกรดยุ่งยากพอสมควร ถึงจะมี apt ช่วยไว้เยอะแล้วก็ตาม .. และเพราะไลบรารีมีการเปลี่ยนแปลง เลยเป็นการบังคับให้ต้อง rebuild gimp abiword gaim aalib และ trafshow ใหม่สำหรับไลบรารีใหม่ๆ ด้วย .. พอทำบน Yggdrasil ได้เลยอัปเกรด Peorth ต่อ .. เรียบร้อยแล้วก็ genbasedir + sync ขึ้นเซิร์ฟเวอร์ เสร็จราวๆ หกโมงกว่าๆ .. เก็บของกลับบ้าน …

วันเสาร์ ออกเดินทางหกโมงครึ่ง ถึงขอนแก่นราวๆ สิบโมงครึ่ง .. เที่ยวนี้พก TLE Live CD กับ MandrakeMove มาด้วย เลยได้ลองใช้กับเครื่องที่บ้าน (Urd) .. MandrakeMove ผ่านฉลุย ใช้งานได้ราบรื่นมากๆ .. ส่วน TLE LiveCD สแกนหา image ไม่เจอ เลยยุ่งยากหน่อย เล่นเอามึนไปเหมือนกัน

อัปเดตแพ็กเกจ The GIMP 2.1.0 Unstable นอกจาก rebuild ให้ใช้ไลบรารีของ GNOME 2.6.2 แล้วก็คอมไพล์ให้ใช้ Little CMS สำหรับ Color Management และ libwmf สำหรับ Windows Meta File ด้วย .. ใครอยากใช้ก็ตามมาใช้ aowthai กับผมได้นะ :)

เน็ตเวิร์กไดรว์ ผ่าน sftp บน GNOME 2.6

บน GNOME เวอร์ชันก่อนๆ เราสามารถแม็ปเน็ตเวิร์กไดรว์ผ่านทาง smb หรือ ftp ส่วนใน GNOME 2.6 นอกจาก smb และ ftp แล้ว Gnome-VFS ยัง สนับสนุน sftp และ WebDAV ด้วย ทำให้เราสามารถแม็ปเน็ตเวิร์กไดรว์ผ่านโพรโตคอลเหล่านี้ได้ วิธีการคือดับเบิลคลิก “Computer” เลือกเมนู “File ? Connect to server … ” จะปรากฏไดอะล็อกกรอกข้อมูลสร้างเน็ตเวิร์กไดรว์

Link name: ชื่อลิงก์

Location (URL): กรอก sftp://[email protected]/path/to/dir/

เช่น

กด connect เป็นอันเสร็จขั้นตอนการแม็ปเน็ตเวิร์กไดรว์ ซึ่งจะมีไอคอนของเน็ตเวิร์กไดรว์ปรากฏในไดอะล็อกคอมพิวเตอร์ และบนเดสก์ท็อป การใช้งานก็เหมือนระบบไฟล์ปกติ ซึ่ง drag & drop ได้ ทำให้อัปโหลด/ดาวน์โหลดไฟล์ผ่าน sftp ได้สะดวกขึ้นมาก

โน้ต

  • วิธีนี้ใช้ได้กับทุกโพรโทคอลที่ gnome-vfs สนับสนุน (e.g., ftp://… smb://… )
  • gnome-vfs ไม่สามารถ accept host key ได้ หากไม่เคยเชื่อมต่อเครื่องปลายทางมาก่อนเลย ให้ใช้ ssh/sftp/scp บนคอมมานด์ไลน์ในการเชื่อมต่อครั้งแรกเพื่อ establish host key จากนั้นจึงใช้การเชื่อมผ่านทาง gnome-vfs
  • หากจำเป็น gnome-vfs จะถามรหัสผ่านในการเชื่อมต่อ เราสามารถเลือกให้บันทึกรหัสผ่านเก็บใน gnome-keyring ได้ และเลือกได้ว่าให้จำรหัสผ่านไปตลอด หรือเฉพาะ session นั้นๆ
  • ถ้าใช้เครื่องส่วนตัว ลองพิจารณาใช้ public-key authentication สำหรับ ssh ซึ่งสะดวกและปลอดภัยกว่าการใช้รหัสผ่าน วิธีการคือ

สร้าง public key pair เช่นสร้าง RSA key pair ขนาด 1024 บิต จะสั่งงานเป็น

$ ssh-keygen -t rsa -b 1024

จากนั้นทำตามขั้นตอนการสร้าง key pair เสร็จเรียบร้อยแล้วจะได้ไฟล์ id_rsa และ id_rsa.pub (หรือ id_dsa/id_dsa.pub กรณีสร้าง DSA key pair) เก็บไว้ใน ~/.ssh/

จากนั้นทำยังไงก็ได้ให้ข้อมูลใน id_rsa.pub (หรือ id_dsa.pub) ไปต่อท้ายไฟล์ ~/.ssh/authorized_keys ในเครื่องปลายทาง เช่น

scp id_rsa.pub [email protected]:
ssh [email protected]
password:
user@remote $ cat id_rsa.pub >> ~/.ssh/authorized_keys
user@remote $ rm id_rsa.pub

เสร็จแล้ว ลอง ssh [email protected] หากตามขั้นตอนถูกต้อง และ sshd ที่เครื่องปลายทางเปิดให้ใช้ public key authentication จะสามารถล็อกอินเครื่องปลายทายได้โดยไม่ต้องกรอกรหัสผ่าน Gnome-VFS ก็จะไม่ถามรหัสผ่านเช่นกัน

คำเตือน: key pair เป็นข้อมูลสำคัญมาก โดยเฉพาะ id_rsa/id_dsa ซึ่งเป็น private key ระวังอย่าให้ตกไปอยู่ในมือผู้อื่นเป็นอันขาด (เป็นเหตุผลว่าทำไมถึงควรใช้ public key authentication เฉพาะเครื่องส่วนตัวเท่านั้น)