labunix's blog

labunixのラボUnix

さくらVPSのリモートコンソールとVNCコンソール(Deabin Wheezy)

■さくらVPSではKVMホストなので、
 下記とさほど変わらないコンソール定義がされているものだと思う。

 KVM: virsh コンソール接続 ( guest OS Ubuntu ) 
 http://lost-and-found-narihiro.blogspot.jp/2010/10/kvm-virsh-guest-os-ubuntu_18.html

■仮想マシンのDebian Wheezy側の設定を追ってみる。
 tty接続でトラブルがあった時用にメモ。
 今は何もトラブルは起こっていない。

■Debianでは「tty7」は「X Window System」用に使われる。

# grep tty7 /etc/inittab 
# Note that on most Debian systems tty7 is used by the X Window System,
# so if you want to add more getty's go ahead but skip tty7 if you run X.

■sshで接続中の端末は「pts」

# tty
/dev/pts/0

■Debianでは「co」が起動時のシリアルコンソール

# grep "^[1-6c].*getty" /etc/inittab
1:2345:respawn:/sbin/getty 38400 tty1
2:23:respawn:/sbin/getty 38400 tty2
3:23:respawn:/sbin/getty 38400 tty3
4:23:respawn:/sbin/getty 38400 tty4
5:23:respawn:/sbin/getty 38400 tty5
6:23:respawn:/sbin/getty 38400 tty6
co:12345:respawn:/sbin/getty -L ttyS0 115200 vt100

■ログイン時に以下で見てると、tty1と、ttyS0が使われることが分かる。
 ログインして「tty」コマンドを叩けば分かることだけど。。。

# watch -d -n 1 'ps ax | grep [g]etty'
Every 1.0s: ps ax | grep [g]etty
                Thu Aug 28 00:24:44 2014

 2986 tty2     Ss+    0:00 /sbin/getty 38400 tty2
 2987 tty3     Ss+    0:00 /sbin/getty 38400 tty3
 2988 tty4     Ss+    0:00 /sbin/getty 38400 tty4
 2989 tty5     Ss+    0:00 /sbin/getty 38400 tty5
 2990 tty6     Ss+    0:00 /sbin/getty 38400 tty6
 2991 ttyS0    Ss+    0:00 /sbin/getty -L ttyS0 115200 vt100
 7977 tty1     Ss+    0:00 /sbin/getty 38400 tty1

■リモートコンソールはログイン時に「ttyS0」に接続される。
 カーソルは不自然というか慣れない。速度は「115200」になる。

# tail -2 /var/log/auth.log | cut -c 28-
login[8255]: pam_unix(login:session): session opened for user root by LOGIN(uid=0)
login[8527]: ROOT LOGIN  on '/dev/ttyS0'

■VNCコンソールはログイン時に「tty1」に接続される。
 カーソルは自然。速度は「38400」になる。

# tail -2 /var/log/auth.log
Aug 28 00:33:20 vpslabunix login[8416]: pam_unix(login:session): session opened for user root by LOGIN(uid=0)
Aug 28 00:33:20 vpslabunix login[8574]: ROOT LOGIN  on '/dev/tty1'

■GRUB2の場合は、「tty0」か「ttyS0」になる。

# grep GRUB_CMDLINE_LINUX_DEFAULT /etc/default/grub 
GRUB_CMDLINE_LINUX_DEFAULT="quiet console=tty0 console=ttyS0,115200n8r"

■tty0だけttyグループに属していないデバイス。
 tty0はカレント仮想端末のエイリアスの扱い。ログインすると1から順に振られる。

# ls -l /dev/tty{[0-6],S0}
crw------- 1 root root 4,  0  828 00:06 /dev/tty0
crw------- 1 root tty  4,  1  828 00:33 /dev/tty1
crw-rw---- 1 root tty  4,  2  828 00:06 /dev/tty2
crw-rw---- 1 root tty  4,  3  828 00:06 /dev/tty3
crw-rw---- 1 root tty  4,  4  828 00:06 /dev/tty4
crw-rw---- 1 root tty  4,  5  828 00:06 /dev/tty5
crw-rw---- 1 root tty  4,  6  828 00:06 /dev/tty6
crw-rw---- 1 root tty  4, 64  828 00:32 /dev/ttyS0

■「tty」「tty0」「ttyN」の関係については、以下に説明がある。

 6.5 コンソール /dev/ttyN 
 http://linuxjf.sourceforge.jp/JFdocs/Text-Terminal-HOWTO-6.html#ss6.5

■Javaアプレットコンソールはブラウザのセキュリティ例外に追加してない。
 今のところ使う予定無し。

■2014/08/29追記
 VNCコンソールはGRUB2メニューが見えるけど、
 リモートコンソールではGRUB2メニューが見えなかった。
 以下はGRUB用でGRUB2用ではない。

 Debianセットアップ
 http://aka-tsuki.net/debian/install.html