Remote Terminal Linux

รูปภาพของ adisorn_it
adisorn_it
Rating 2
Posts: 51
Joined: 28-09-2008

อีกปัญหาแล้วครับที่อยากทราบ

คือว่าที่เครื่องลูกผมใช้ linux mandrak 8.1 แล้วรัน level 4 ด้วย user=user1 แล้วมันจะเข้า Terminal tty1 แล้วผมก็สั่งรัน application สักหนึ่งโปรแกรมรันทิ้งไว้

คราวนี้ผมก็ไปที่เครื่อง server แล้วใช้ ssh และ telnet ลอง remote มาที่เครื่อง client ด้วย user1 ที่ใช้รันบนเครื่องลูกผมก็สามารถติดต่อทำอะไรได้ตามปกติ แต่ที่ผมอยากรู้ว่ามันมีวิธีที่ทำให้เราสามารถที่จะเห็นโปรแกรมหรือ application ที่เรารันทิ้งไว้บนเครื่องที่เรา remote ไปไหมครับประมาณว่าเราไปอยู่ที่หน้าเครื่องลูกจริงคล้ายกับโปรแกรม remote desktop ของ ms windows นะครับ เพราะว่าถ้า remote ไปมันก็จะเข้าหน้าจอเหมือนตอนเราเริ่มเข้าใช้ตอนแรก จุดประสงค์ก็คือต้องการเห็นโปรแกรมที่รันไว้ก่อนหน้านี้จนถึงขณะที่เรา remote ไปนะครับ

รูปภาพของ taz
taz
Rating 10
Posts: 1154
Joined: 02-12-2002
guide
guide ให้ว่าใช้คำสั่งscreen ps.ใชoperaminiตอบลำบาก
--

=Read The Fxxx Manual _| ̄|○

Don't Learn to HACK - Hack to LEARN

ถ้าไม่รู้ว่า RTFM คืออะไรให้ไปอ่าน ถามอย่างไรจึงจะได้คำตอบ

รูปภาพของ adisorn_it
adisorn_it
Rating 2
Posts: 51
Joined: 28-09-2008
guide ให้ว่าใช้คำสั่งscreen ps.
ครับ เดี่ยวไปทำดูก่อนนะครับได้เรื่องยังไงเดี๋ยวมาตอบครับ
รูปภาพของ adisorn_it
adisorn_it
Rating 2
Posts: 51
Joined: 28-09-2008
guide ให้ว่าใช้คำสั่งscreen ps.

มาแล้วครับ ok เลยขอบคุณมากนะครับ

option ที่ใช้หลักๆก็มี -r -d ที่ต้องการใช้

screen -r                 "เปิด กรณีมี pid เดียว"

or screen -r pid.tty.hostname  " เปิด หลาย pid"

screen -d  "ออกจาก remote screen"

คำสั่งตัวนี้มันมีจุดเสียตรงบ้างครับ

รูปภาพของ taz
taz
Rating 10
Posts: 1154
Joined: 02-12-2002
เท่าที่ใช

เท่าที่ใช้มายังไม่เจอปัญหาอะไรนะครับเปิด ทิ้งไว้ให้ทำงานร่วมกับ process ที่รายงาน log ออกหน้าจอตลอดเวลา ทิ้งไว้นานๆก็ไม่ตายไม่งอแงง

ข้อเสียอย่างเดียวที่เห็นคือเรียก screen -r พร้อมกัน 2 ที่ไม่ได้ (เหมือน remote desktop ของ win เรียก2ที่พร้อมกันไม่ได้)คนที่ screen -r ทีหลังจะได้ session การทำงานไปคนแรกจะหลุดแต่โปรแกรมข้างในก็ไม่มีปัญหาอะไรบางทีผมเคยสั่ง screen vi file ทิ้งไว้เป็นเดือนๆจนลืม นานจัด

แต่ปรกติผมเขียน rc มันใหม่เป็น

# use visual bell
vbell on
# # replace ctrl-A by ctrl-O
escape ^Oo
# # set a big scrolling buffer
defscrollback 5000
# # Set the caption on the bottom line
caption always "%{= kw}%-w%{= BW}%n %t%{-}%+w %-= @%H - %LD %d %LM - %c"

เขียนไว้ใน .screenrc ใน home ของตัวเอง

จริงๆ คำสั่ง screen สร้าง tab ได้ด้วยคือ1 terminal เรียก 1screen แล้วใน 1 screen มี tab ย่อยข้างใน สะดวกมากเวลา ssh ไปทำงานไกลๆแล้วอยากได้ อีกหน้าจอโดยไม่ต้อง ssh อีกรอบ

ถ้าใช้ rc ของผม ถ้าจะเรียก tab เพิ่ม กด CTRL+O+C

ถ้าจะเลื่อนการทำงานไป tab อื่น กด CTRL+O+N หรือ CTRL+O+P

จริงๆ rc ตัวนี้ผมก็ไปเอามาจากblogคนต่างชาติเหมือนกันจำไม่ได้ละblogใคร

ปิด tab ก็ exit ธรรมดาเลย

ps. ctrl command ของ screen ปรกติใช้ ctrl+a ใน rc ผมเปลี่ยนเป็น ctrl+o

--

=Read The Fxxx Manual _| ̄|○

Don't Learn to HACK - Hack to LEARN

ถ้าไม่รู้ว่า RTFM คืออะไรให้ไปอ่าน ถามอย่างไรจึงจะได้คำตอบ

รูปภาพของ adisorn_it
adisorn_it
Rating 2
Posts: 51
Joined: 28-09-2008
ข้อเสียอย่างเดียวที่เห็นคือเรียก screen -r พร้อมกัน 2 ที่ไม่ได้

ตรงนี้ละครับที่ผมต้องการเพราะว่าพอดีงานที่ผมดูแลเครื่องที่ remote ไปมันต้องแสดงที่หน้าจออยู่ตลอดเวลา ส่วนเครื่องที่เรา telnet ไปก็ต้องสามารถดูได้ด้วยเพราะถ้าเกิด เรา telnet ไปแล้วเราก็จะเห็นผู้เดียวส่วนคนที่นั่งอยู่ที่เครื่องปลายทางก็จะไม่รู้ว่ามันทำงานถึงไหนแล้วครับ

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

ขอบคุณมากเลยครับ

รูปภาพของ taz
taz
Rating 10
Posts: 1154
Joined: 02-12-2002
คิดว่ามัน
คิดว่ามันน่าจะเป็นข้อจำกัดของโปรแกรม ก็สลับกันใช้เอาเพราะแค่หลุดจากscreenเฉยๆโปรแกรมข้างในไม่ได้ตายไปด้วย หรือว่าต้องใช้งานพร้อมกันทุกวินาที
--

=Read The Fxxx Manual _| ̄|○

Don't Learn to HACK - Hack to LEARN

ถ้าไม่รู้ว่า RTFM คืออะไรให้ไปอ่าน ถามอย่างไรจึงจะได้คำตอบ

รูปภาพของ adisorn_it
adisorn_it
Rating 2
Posts: 51
Joined: 28-09-2008
หรือว่าต้องใช้งานพร้อมกันทุกวินาที
ใช่แล้วครับคือที่เครื่องลูกต้องแสดงผลที่หน้าจอตลอดเวลาเพื่อที่ว่าคนที่เดินเช็คงานเอางานเข้าออกต้องดูที่จออย่างเดียวส่วนเครื่องที่ server ต้องการเข้าไปดูเฉพราะบางช่วงครับ จึงอยากรู้ว่ามันมีวิธีอะไรอีกไหมก้ได้ลองทดลองดูอยู่หลายตัวแต่ยังไม่ได้ครับ
รูปภาพของ taz
taz
Rating 10
Posts: 1154
Joined: 02-12-2002
ไม่แน่ใจต

ไม่แน่ใจตรงตามต้องการหรือเปล่าไม่เคยลองด้วยสิ

วิธีแรก http://sysadmingear.blogspot.com/2007/10/how-to-install-ttysnoop-on-linu...

 

วิธีที่2

http://bisqwit.iki.fi/source/snapscreenshot.html

 

วิธีที่ 3 (วิธีนี้แนะนำเลยเพราะง่ายดี)

ถ้าต้องการเห็นหน้าจอของ tty1 ก็

เอา user root ใช้คำสั่งนี้

cat /dev/vsc1 >/tmp/screen

แล้ว vi ดูเลยว่า /tmp/screen มีหน้าตาเป็นอย่างไร

ps. tty1=vsc1 tty2=vsc2 ไล่ไปเรื่อยๆ

 

วิธีที่ 4

เนื่องจากวิธีที่ 2-3 จะ take screen ที่มีสีไม่ได้มันจะขึ้นเป็น esc char แทนมีคนเขียนให้ dump ออกมาเป็นสีได้ตามนี้

http://vcsadump.sourceforge.net/

file ที่ dump ออกมาจะอยู่ในรูป html format เปิดดูได้เลย 

--

=Read The Fxxx Manual _| ̄|○

Don't Learn to HACK - Hack to LEARN

ถ้าไม่รู้ว่า RTFM คืออะไรให้ไปอ่าน ถามอย่างไรจึงจะได้คำตอบ

รูปภาพของ adisorn_it
adisorn_it
Rating 2
Posts: 51
Joined: 28-09-2008
vcsdump
รูปภาพของ adisorn_it
adisorn_it
Rating 2
Posts: 51
Joined: 28-09-2008
cat /dev/vsc1 and vcsadump

พี่ taz ผมได้ลองใชคำสั่ง cat /dev/vsc1 แล้วมันก็โอเคนะแต่ว่ามันมองเห็นแต่ตัวหนังสือพอดี application ที่ผมใช้มันเเป็นสีคล้ายกับโปรแกรม setup ของ linux redhat

แล้วผมก็ลองใช้คำโปรแกรม vcsadump ไม่รู้ว่าผมทำตามขั้นตอนถูกรึเปล่าหลังจากที่ผมแตกไฟล์ที่ download มา

1. make colortest.c เพื่อทดลองสีดูก็แสดงสีบน tty ได้

2.make vcsadump.c

3. นำไฟล์ vcdump.html ไปไว้ที่ /var/www/html แล้วเปลี่ยน index.html เป็น vcdump.html แทน

4. แล้วลองไปเปิดคอมฯอีกเครื่อง แล้วก็สั่ง link มาที่ ip ของเครื่อง vcdump.html ผลปรากฏว่าได้ดังภาพข้างบน

แต่ว่าทุกครั้งที่ต้องการดู screen ที่ tty ต้องพิมพ์ $./vcsadump -h

ทุกครั้งที่เครื่อง vcsadump ถึงจะเห็นภาพหนึ่งครั้งเหมือนกับว่าต้องพิมพ์ก่อนแล้วเครื่องที่ link มาถึงจะดูได้ มันพอมี option ตัวไหนไหมครับที่ไม่ต้องให้เราไปพิมพ์ $./vcsadump -h ที่เครื่องนั้นตลอดสามารถที่จะเห็นภาพการทำงานของโปรแกรม ณ ปัจจุบันที่รันงานอยู่

มันสามารถดูผ่านเว็บได้มันก็โอเคครับแต่ต้องมีคนค่อยนั่นพิมพ์ตลอดผมไม่รู้ว่ามันใช้ option ตัวไหนสามารถพิมพ็ครั้งเดียวแล้วสามารถจับ screen ได้ตลอดครับ

ขอบคุณมากครับพี่เดี๋ยวผมขอทดลองต่อมันน่าจะได้เดี๋ยวมาให้คำตอบครับ

อีกอย่างครับตอน configure มันบอกว่าให้ไป set ค่า console ให้เป็น vcsa ด้วยตรงนี้ผมไม่เข้าครับ

รูปภาพของ taz
taz
Rating 10
Posts: 1154
Joined: 02-12-2002
เอาไปเขีย
เอาไปเขียนไว้ในcrontabสิครับ
--

=Read The Fxxx Manual _| ̄|○

Don't Learn to HACK - Hack to LEARN

ถ้าไม่รู้ว่า RTFM คืออะไรให้ไปอ่าน ถามอย่างไรจึงจะได้คำตอบ

รูปภาพของ adisorn_it
adisorn_it
Rating 2
Posts: 51
Joined: 28-09-2008
เอาไปเขียนไว้ในcrontabสิครับ

ตอนแรกผมก็ทำอย่างพี่บอกนั่นแหละปรกติสั่งโปรแกรมทำงานผมก็สั่งที่ crontab ครับสั่งโปรแกรมตัวอื่นสั่งปดิเครื่องอะไรก็ได้ แต่ว่าลองสั่งที่ตัว vcsadump กลับไม่มีการตอบสนองอะไรเลยลองทำหลายรอบแล้วครับ ผมก็ไม่เข้าใจว่ามันเป็นเพราะอะไร

ที่ vi crontab

*/2 0-10 * * * root /home/user/vcsadump/./vcsadump -h

ผมสั่งให้มันทำงานทุก 2 นาทีตั่งแต่เวลา 0-10 นาฬิกาโดยไฟล์ที่สั่งรันอยู่ที่ folder /home/user/vcsadump

ชื่อไฟล์ที่รัน ./vcsadump -h

รูปภาพของ taz
taz
Rating 10
Posts: 1154
Joined: 02-12-2002
*/2 0-10 * * * root

*/2 0-10 * * * root /home/user/vcsadump/vcsadump -h

 

ไม่ต้องมี ./ อีกรอบก็ได้

error ของ crontab น่าจะอยู่ใน mail ของ root ไปอ่านดูแล้วแก้ตาม error ถ้าหาไม่เจอก็น่าจะอยู่ใน /var/log

เกือบลืมแล้วก็ enter ให้ขึ้นบรรทัดใหม่ด้วยนะครับใน crontab หนะ ถ้าไม่ enter ขึ้นบรรทัดใหม่มันไม่ทำงาน (อันนี้เจอมากับตัวตอนเขียน sis-backupนั่งงมตั้งนาน)

ถ้ามันยังไม่ได้เพราะมันต้องรันผ่าน tty ก็คงต้องเขียน shell script ให้มันวน loop check เวลารันเอา

แต่ผมดู code มันแล้วมันไม่น่าจะต้องการ tty สำหรับ run คำสั่งนี้น่าจะใช้ cron ได้เพราะมัน dump จาก /dev/vsc มาเหมือนกับเรา cat มาแต่มันมา parser ให้เป็นสีให้ดูง่ายๆเท่านั้นเอง

 ps. เพิ่งสังเกต ss  ไม่ได้เพราะ IEแน่ เลย LOL 

ps2. แซวเล่นเด้อ 

--

=Read The Fxxx Manual _| ̄|○

Don't Learn to HACK - Hack to LEARN

ถ้าไม่รู้ว่า RTFM คืออะไรให้ไปอ่าน ถามอย่างไรจึงจะได้คำตอบ

รูปภาพของ adisorn_it
adisorn_it
Rating 2
Posts: 51
Joined: 28-09-2008
crontab หนะ ถ้าไม่ enter ขึ้นบรรทัดใหม่มันไม่ทำงาน
ได้แล้วครับติดตรงไม่ได้ enter นี่ละครับไม่หน้าเป็นไปได้ส่วนเรื่องคำสั่ง screen ที่ให้เห็นสองหน้าจอพร้อมกันนะเดียวผมขอไปลองหาวิธีอีกครั้งละกันสงสัยมากทำไมถึงดูสองจอพร้อมกันไม่ได้ถ้าได้นะ จะแจวมากเลยครัยทั้งสามารถแก้ไขข้อมูลได้พร้อมกับเห็นหน้าจอปลายทางนะคงดีมากๆครับ
Syndicate content