こんばんは,趙と申します.

いろいろ試してみたのですが,ぼくのところはうまくいきましたよ ^o^.
なので,ご報告します.# 意外なところに原因があるのですね.

サービスを起動するコマンドとして

service vncserver [start|stop]

をお使いになっているのですが,その代わりに

/etc/init.d/vncserver [start|stop]

で(rootで)やってみてください.

# /sbin/serviceはenv -iを使ってLANGとPATH以外の環境変数を
# 全部無効にしてあるので,USERもない -- それが原因みたいです.
# ... どうしてUSER環境変数が必要なのかは知りません :-9.