วันก่อนมีรุ่นพี่คนหนึ่งโทรมาหา บอกว่ากำลังจะไปธุระที่ญี่ปุ่น เลยจะถือโอกาสเที่ยวต่อ สุดท้ายก็เลยคุยกันถึงตั๋วรถไฟพิเศษสำหรับนักท่องเที่ยวที่เรียกว่า “Japan Rail Pass” พอคุยแล้วก็ถือโอกาสเอามาเขียนไว้ที่นี้ด้วย คราวหน้าโดนคนอื่นถามอีกจะได้บอกให้มาอ่านที่นี่ สมัยผมเป็นนักเรียน Japan Rail Pass เป็นตั๋วที่ใฝ่ฝันและอยากจะมีโอกาสได้ใช้ แต่ไม่มีสิทธิเนื่องจากตั๋วนี้ซื้อได้เฉพาะผู้ที่เข้าญี่ปุ่น ด้วยวีซ่านักท่องเที่ยวเท่านั้น นักเรียนไม่มีสิทธิ แล้วตั๋วนี้พิเศษยังไงล่ะ
Japan Rail Pass เป็นตั๋วที่เกิดจากความร่วมมือของบริษัท JR (การรถไฟของญี่ปุ่น ที่ถูกแปรรูปไปเป็นเอกชนแล้ว) ทั้งหกบริษัท ผู้ถือตั๋วนี้สามารถใช้บริการรถไฟของบริษัท JR ได้ไม่จำกัดจำนวนครั้ง ภายในเวลาที่กำหนด ซึ่งจะเริ่มต้นที่ 7 วัน ซึ่งบริษัท JR นี้เองที่เป็นผู้ให้บริการรถไฟความเร็วสูงระหว่างเมือง ที่เรียกว่า Shinkansen ด้วย จึงสามารถใช้ Japan Rail Pass เดินทางไปยังเมืองต่างๆ ได้ แถมยังจองที่นั่งได้ด้วย จึงอำนวยความสะดวกอย่างมากแก่นักท่องเที่ยว เนื่องจากตั๋วนี้มีไว้เฉพาะนักท่องเที่ยว หรือผู้ที่ไปอยู่ในญี่ปุ่นระยะสั้นเท่านั้น จึงไม่สามารถซื้อภายในประเทศญี่ปุ่นได้ จะต้องซื้อจากตัวแทนจำหน่ายก่อนที่จะเดินทางไปญี่ปุ่น อย่างในเมืองไทยก็สามารถหาซื้อได้จากสำนักงานของสายการบินญี่ปุ่น ทั้ง ANA และ JAL รวมถึงบริษัทท่องเที่ยวญี่ปุ่น เช่น JTB เป็นต้น ผมเองเคยซื้อจากสำนักงานของ ANA ซึ่งอยู่ภายในตึกซีพี แถวสีลม ซึ่งตัวแทนเหล่านี้จะออกเอกสารคล้ายๆ ใบเสร็จรับเงินให้ เราจะต้องถือใบนี้ไปที่สาขาของ JR (ที่อยู่ตามสถานีต่างๆ ที่สนามบินก็มี) เพื่อให้เจ้าหน้าที่ออกตั๋วให้ โดยเขาจะขอดูพาสปอร์ตเพื่อเช็คว่าเราเข้าเมืองมาเป็นนักท่องเที่ยวจริงๆ หรือไม่ เราสามารถบอกเขาได้ด้วยว่าอยากจะเริ่มใช้ตั๋วนี้วันไหน เมื่อถึงวันเริ่มใช้ก็นับไปเจ็ดวันได้เลย ในระหว่างนี้สามารถขึ้นรถไฟของ JR ไปไหนก็ได้ ไม่จำกัดจำนวนครั้ง อยากจะแวะลงกลางทางตรงไหนก็ได้ ไม่จำเป็นต้องเสียค่าใช้จ่ายใดทั้งสิ้น ถ้าจะใช้บริการ Shinkansen ก็สามารถเลือกนั่งที่นั่งแบบไม่ต้องจอง (เรียกว่า jiyuu-seki) คือไปรอขึ้นรถที่ชานชลาเลย หรือจะไปขอให้เจ้าหน้าที่จองที่นั่งและเที่ยวรถที่จะเดินทางให้ก่อนก็ได้ จะได้แน่ใจว่าเราจะมีที่นั่งแน่ๆ ไม่ต้องยืนหลายๆ ชั่วโมง การจองที่นั่งก็ไม่จำเป็นต้องเสียอะไรเพิ่มเติมอีก (ถ้าซื้อตั๋วแบบปกติจะต้องเสียเพิ่มอีกหลายร้อยเยน)
ทีนี้อาจจะสงสัยว่า JR ยอมให้ใช้ตั๋ว Japan Rail Pass ขึ้นรถไฟแบบไม่จำกัดจำนวนเที่ยวได้อย่างนี้ ตั๋วก็น่าจะราคาแพงมากๆ สินะ คำตอบก็คือ ถ้าดูจากค่าครองชีพไทย ตามราคาแล้วก็แพงเอาการทีเดียว ไม่ได้ลองเช็คเหมือนกันว่าปัจจุบันราคาเท่าไหร่ แต่ที่ผมเคยซื้อราคาประมาณ 27,000 เยน (หรือ 9,000 บาท) สำหรับประเภทใช้ได้เจ็ดวัน แต่ถ้าลองเอาราคานี้ ไปเทียบกับราคารถไฟแบบปกติ (ที่คนญี่ปุ่น หรือคนที่ไปอยู่ระยะยาวซื้อ) แล้วจะรู้สึกเลยว่าคุ้มมาก เพราะค่ารถไฟชินคันเซ็นแบบไปกลับจากโตเกียวไปโอซากา ก็ราคาประมาณ 25,000 เยนแล้ว ตั๋วแบบปกตินี้จะระบุไว้เลยว่าเดินทางจากไหนไปไหน จะลงรถระหว่างทางแล้วกลับมาขึ้นใหม่อีกก็ไม่ได้แล้ว ฉะนั้นถ้าวางแผนจะเดินทางไปหลายๆ เมืองในระหว่างที่ไปเที่ยวญี่ปุ่น ก็น่าจะลองพิจารณาตั๋ว Japan Rail Pass ดูได้ ผมคิดว่าน่าจะช่วยให้ควบคุมค่าเดินทางในญี่ปุ่นได้สะดวกยิ่งขึ้น เพราะรถไฟของ JR นี้มีให้บริการอยู่ทุกเมือง มีรถไฟหลายประเภท ทั้งระยะสั้น และระยะยาว แถมยังเอาตั๋ว Japan Rail Pass นี้เอาไปใช้กับรถบัสกับเรือที่บริหารโดย JR ก็ได้ด้วย อย่างเรือก็มีอยู่ที่เดียว คือเรือเฟอรี่ที่เชื่อมระหว่างฝั่งฮิโรชิมากับเกาะมิยาจิมา ซึ่งถือเป็นหนึ่งในสามของที่ๆ ควรจะต้องไปชมในญี่ปุ่น
แล้วพวกนักเรียนที่ไปอยู่นานๆ ล่ะ ถ้าอยากเที่ยวไกลๆ หลายๆ เมืองจะทำยังไง โดยปกติช่วงปิดเทอม JR จะมีตั๋วอีกประเภทหนึ่ง เรียกว่า Seishun-18 (seishun แปลว่า ฤดูใบไม้ผลิของช่วงชีวิต หรือวัยรุ่นนั่นเอง) ตั๋วนี้ก็สามารถขึ้นรถของ JR ได้ไม่จำกัดจำนวนครั้งเหมือนกัน ราคาค่าตั๋วก็ถูกมาก ตกวันละประมาณ 2000 เยนเอง แต่มีข้อจำกัดเดียวก็คือใช้ได้เฉพาะรถไฟธรรมดาที่วิ่งระหว่างเมืองเท่านั้น ไม่มีสิทธิจองที่นั่งใดๆ ทั้งสิ้น ถ้าไม่มีที่นั่งก็ต้องยืน หรือไม่ก็นั่งกับพื้นรถไฟซึ่งอาจจะถูกนายท้ายรถว่าเอาได้ เพราะฉะนั้นการเที่ยวด้วยตั๋วแบบนี้ก็ต้องอาศัยความทรหดอยู่พอควร เหมาะสำหรับวัยรุ่นอย่างเรา (เมื่อหลายปีที่แล้ว) เริ่มง่วงแล้ว ไว้ค่อยมาเล่าเรื่องตั๋ว seishun วันหลังล่ะกัน เมื่อไหรยังไม่รู้
Tags: japan, japan rail pass, travel
ในระบบเชลล์ของยูนิกซ์เวลาที่เราต้องการจะสั่งให้โปรแกรมทำงานแบบแบ็คกราวน์ จะทำโดยเรียกโปรแกรมนั้นพร้อมกับระบุเครื่องหมาย &
ต่อท้าย เช่น
$ firefox &แต่เราจะพบปัญหาเวลาที่ต้องการให้โปรแกรมที่สั่งให้ทำงานแบบแบ็คกราวน์นั้นทำงานต่อไปแม้ว่าเราจะออกจากระบบไปแล้ว เนื่องจากเวลาเราออกจากระบบ (logout) จะมีการส่งสัญญาณ SIGHUP (hangup) ไปยังโปรเซสทั้งหมดของเราที่กำลังทำงานอยู่ ซึ่งพฤติกรรมโดยปกติของโปรเซสเมื่อได้รับสัญญาณก็คือ หยุดการทำงานแบบไม่ปกติ (abnormal termination) จึงทำให้โปรแกรมที่เราหมายมั่นปั้นมือว่าจะให้ทำงานไปตลอดคืนนี้ หยุดทำงานไปโดยไม่รู้ตัว (กว่าจะรู้อีกทีก็อาจจะเช้าแล้ว ต้องเสียเวลารออีก)
วิธีการแก้ปัญหานี้มีหลายวิธี วิธีที่ยุ่งยากหน่อยก็คือแก้โปรแกรมโดยเรียกใช้ system call เพื่อดัก SIGHUP ไว้ โปรแกรมของเราจะได้ไม่ทำตามพฤติกรรมปกติซึ่งก็ดูจะยุ่งยากไปหน่อย และไม่สามารถใช้กับโปรแกรมที่ไม่เปิดเผยโค้ดได้ อีกวิธีหนึ่งก็คือการใช้โปรแกรม nohup ซึ่งจะทำตัวเป็นเหมือนเชลล์ห่อโปรแกรมของเราไว้อีกชั้นหนึ่ง โดยจะดักสัญญาณ SIGHUP ไว้ ทำให้โปรแกรมทำงานต่อไปหลังจากออกจากระบบ เช่น
$ nohup myprogram &
แต่ข้อเสียของโปรแกรม nohup ก็คือแม้ว่าเราจะกลับเข้ามาในระบบใหม่ เราก็จะไม่สามารถติดต่อหรือดูผลการทำงานของโปรแกรมได้ ผลลัพธ์ทั้งหมดจะต้องเก็บลงไฟล์ไว้ก่อนเท่านั้น ทำให้ไม่สะดวกเท่าที่ควร
screen เป็นโปรแกรมบนยูนิกซ์อีกโปรแกรมหนึ่งที่ช่วยอำนวยความสะดวกในการรันโปรแกรมแบบนี้
$ screen myprogramscreen จะทำงานคล้าย nohup เพียงแต่ว่าเมื่อเริ่มทำงาน screen จะทำให้ดูเหมือนว่าโปรแกรมของเราทำงานเป็นแบบฟอร์กราวน์ตามปกติทั่วไป เราสามารถสั่งให้ทำงานเบื้องหลังได้ โดยกด CTRL-A CTRL-D ต่อกัน โปรแกรมก็จะไม่เชื่อมต่อกับเทอร์มินัล แต่จะทำงานในแบบแบ็คกราวน์ แต่เราสามารถกำหนดให้ screen เรียกโปรแกรมของเราที่ทำงานอยู่ให้กลับมาอยู่เบื้องหน้าอีกครั้งได้ แม้ว่าเราจะออกจากระบบไป และกลับมาใหม่แล้วก็ตาม
$ screen -r
ในกรณีที่เรียกใช้ screen พร้อมกันหลายๆ โปรเซส ก็อาจจะต้องระบุรหัสโปรเซสที่ต้องการเรียกกลับมาบนเทอร์มินัล โดยอาจจะใช้ออปชัน -ls เพื่อแสดงโปรเซสของ screen ทั้งหมดก็ได้ นอกจากนี้ screen ยังมีออปชันให้เกิดสิ่งที่เป็นผลลัพธ์ทั้งหมดลงไฟล์ไว้ให้ด้วยก็ได้ ทำให้สะดวกในการเรียกดูผลลัพธ์ภายหลัง ผมเองก็ต้องพึ่งโปรแกรม screen เยอะเลยทีเดียวกว่าจะเรียนจบมาได้
รายละเอียดเพิ่มเติม: http://www.gnu.org/software/screen/
Tags: linux, nohup, screen, sighup, terminal, unix
วันก่อนได้หนังสือรวมคำบรรยายของท่านพุทธทาสภิกขุ เรื่อง “เห็นโลกเป็นของว่าง” มา เริ่มแรกท่านพูดเกี่ยวกับ อุณหิสสวิชโยวิจยกถา ซึ่งเป็นคาถาที่หลายคนเชื่อว่าเป็นการต่ออายุ โดยนำคาถาทั้งหมดมาแปลออกเป็นภาษาไทย ซึ่งก็ไม่ได้มีความหมายพิเศษอะไร
เป็นเพียงธรรมะขั้นพื้นฐาน แล้วท่านก็กล่าวว่า
ธรรมะที่เป็นหัวใจในพระพุทธศาสนา คือเรื่องสุญญตาก็ดี เรื่องอนัตตาก็ดี ผู้ใดเข้าถึงธรรมนั้นแล้ว ย่อมอยู่เหนือความตาย, ย่อมพ้นจากความตาย ย่อมไม่มีความตายเลยโดยประการทั้งปวง เพราะหมดความเป็นตัวเป็นตน เป็นสัตว์เป็นบุคคล เพราะไม่มีอุปาทานยึดมั่นสิ่งใด …
อ่านแล้วยิ่งเข้าใจในพุทธศาสนามากขึ้น พระพุทธองค์ไม่ได้พยายามให้เราทำสิ่งที่เหนือธรรมชาติ หรือเพ้อฝันถึงสวรรค์วิมานอะไรในโลกหน้า แต่ให้เราฝึกจิตใจตนเอง ให้ยอมรับในสิ่งที่กำลังจะเกิดขึ้น ตามธรรมดาของโลกนี้ แต่จะปฏิบัติตนอย่างไร ให้ยอมรับได้นั้น ยังเป็นเรื่องยากเหลือเกินสำหรับผม
ผมมักจะมีปัญหาเสมอในการใช้งานโปรแกรมต่างๆ ผ่านเน็ตเวิร์ค เนื่องจากที่ทำงานผมติดตั้งไฟร์วอลล์ที่อนุญาตให้ใช้งานหลักๆ ได้แค่ “เว็บ” กับ “ssh” อย่างเช่น ผมไม่สามารถอัพเดตข้อมูลแพคเกจของ MacPorts ได้ เพราะว่ามันใช้วิธี rsync ผ่านพอร์ต 783 ที่ไม่ได้รับอนุญาต ครั้นจะไปขอให้เขาเปิดพอร์ตเพิ่มก็ดูกระไรอยู่ ส่วนใหญ่ผมจึงมักจะอัพเดตข้อมูลแพคเกจที่บ้านก่อนมาทำงาน
จริงๆ แล้ว ถ้าหากเรามีเซิร์ฟเวอร์ที่ใช้งาน ssh ได้อยู่ภายนอก และเซิร์ฟเวอร์เครื่องนั้นไม่มีไฟร์วอลล์ เราจะสามารถใช้วิธี ssh tunneling เพื่อติดต่อจากเครื่องของเราผ่านเซิร์ฟเวอร์ออกไปโลกภายนอกได้
$ ssh xxx.myserver.net -L 1783:rsync.somewhere.com:783
จะเป็นการติดต่อผ่าน ssh ไปยังเครื่อง xxx.myserver.net ตัวเลือก -L ใช้กำหนด ssh tunneling โดยโปรแกรม ssh จะจับข้อมูลที่ส่งไปยังพอร์ท 1783 ของเครื่องเราทั้งหมด ส่งต่อผ่านไปยังเครื่อง xxx.myserver.net และส่งต่อไปยังพอร์ต 783 ของเครื่อง rsync.somewhere.com ทำให้เราสามารถใช้งานเครื่อง rsync.somewhere.com ที่อยู่ข้างนอกได้ โดย ssh ทำตัวเสมือนเป็นอุโมงค์ให้ข้อมูลของเราลอดผ่านไฟร์วอลล์ออกไป
ในทำนองเดียวกัน ผมก็มักจะใช้ ssh tunneling เพื่อต่อเข้ามาใช้งานเน็ตเวิร์คภายในหน่วยงาน เวลาผมอยู่ข้างนอก อย่างเช่น ถ้าผมอยากจะโหลดเปเปอร์จากฐานข้อมูลที่สถาบันเป็นสมาชิก ซึ่งปรกติเขาจะตรวจสอบบุคคลด้วยไอพีแอดเดรส เวลาผมอยู่บ้านผมก็จะแค่ ssh เข้ามาที่เซิร์ฟเวอร์ภายในสถาบันก่อนแล้ว โดยกำหนดให้ forward ข้อมูลไปยังเครื่อง proxy ที่สามารถใช้งานได้ จากนั้นผมก็แค่เซ็ต proxy บนเครื่องผมให้เป็น localhost และใช้พอร์ตที่กำหนด ก็จะดูเหมือนว่าผมใช้งานจากภายในหน่วยงาน ผมสามารถเข้าไปใช้งานฐานข้อมูลได้ตามปกติ
$ ssh xxx.myinternal.net -L 8080:proxy.myinternal.net:8080
โปรแกรม ssh ส่วนใหญ่จะสนับสนุน tunneling หรือบางทีเรียกว่า port forwarding อย่างเช่น บน Windows คนที่ใช้ putty ก็จะมีตัวเลือกให้กำหนดพอร์ตต้นทางและปลายทางได้ ดังรูป

วันนี้คิดถึงอะไรหลายๆ อย่างวนไปวนมา แล้วก็นึกถึงเพลง 世界に一つだけの花 (ดอกไม้ชนิดเดียวในโลก) ของ SMAP ที่มีเนื้อหาดี เปรียบเทียบมนุษย์แต่ละคนเป็นเหมือนดอกไม้
それなのに僕ら人間は どうしてこうも比べたがる?
ทำไมพวกเรามนุษย์ทั้งหลายจึงอยากเปรียบเทียบกัน?
一人一人違うのにその中で 一番になりたがる?
อยากจะเป็นที่หนึ่งในบรรดาผู้คนที่แตกต่างกันหรือ?そうさ僕らは
ที่จริงแล้ว เราแต่ละคนก็เป็นเหมือน
世界に一つだけの花
ดอกไม้ชนิดเดียวในโลกนี้
一人一人違う種を持つ
แต่ละคนมีเมล็ดพันธุ์ที่แตกต่างกันอยู่
その花を咲かせることだけに
การจะทำให้เมล็ดนั้นกลายเป็นดอกไม้ที่เบ่งบานได้
一生懸命になればいい
ด้วยพยายามของตัวเองอย่างเต็มที่ก็พอแล้ว
หลังจากสอนหนังสือมาสามปี ผมรู้สึกว่านักเรียนส่วนใหญ่ (ไม่ทั้งหมดหรอก แต่ว่าเยอะ) สนใจแค่คะแนนและเกรด ทำให้อาจารย์หลายๆ คน (รวมทั้งตัวผมด้วย) พยายามล่อนักเรียนด้วยการให้คะแนนไปซะทุกอย่าง มีนักเรียนไม่เยอะที่ผมรู้สึกว่าสนใจจริงๆ ในเนื้อหาที่กำลังเรียนอยู่ หรือพยายามเรียนรู้สิ่งต่างๆ เพิ่มเติมด้วยตัวเอง จริงๆ แล้วเกรดหรือคะแนน มันไม่ได้มีผลมากนักหรอกในโลกภายนอกมหาวิทยาลัย อาจจะจริงอยู่ที่เขาจะดูเกรดเวลารับเข้าทำงานหรือเรียนต่อ แต่หลังจากนั้นเมล็ดพันธุ์หรือต้นกล้าในแต่ละคนต่างหาก ที่จะเป็นส่วนสำคัญทำให้แต่ละคนกลายเป็นดอกไม้ที่สวยงาม และประสบความสำเร็จ จึงอยากให้ทุกคนสนใจที่จะบ่มเพาะตัวเองให้พร้อมที่จะออกไปเป็นดอกไม้ในโลกภายนอก
รู้สึกว่าวันนี้จะเขียนจริงจังไปแฮะ จริงๆ ก็แค่อยากแนะนำเพลงเท่านั้นแหละ อ้อ…ถ้าอยากอ่านคำแปลแบบเพราะๆ ก็ไปดูได้ที่ http://www.iknow.co.jp/user/delphine_bell/journal/2008/3/8/25745 อ่านแล้วกินใจกว่าที่ผมแปลข้างบนเยอะ ความสามารถในการแต่งประโยคของผมมีแค่นี้แหละ