I fixed this problem by rename the iconv in /usr/local/bin.
The command of @schspa outputs an stderr -bash: /usr/local/bin/iconv: No such file or directory, while the output shall be /home/XXX (gotten from a normal server). The phenomenon reminds me to raise the priority of /usr/bin/iconv (default at a normal server) by renaming / removing /usr/local/bin/iconv.
For further information, I put related lines of x2go's source codes below (reference). As you can see, the wrong output of iconv will raise this ambiguous error...
elif ! echo $HOME | iconv -f ASCII -t ASCII 1>/dev/null 2>/dev/null; then
- echo "Your home directory path contains non-ASCII characters. Aborting session startup."
+ msg="Your home directory path contains non-ASCII characters. Aborting session startup."
+ echo "$msg"
+ $X2GO_LIB_PATH/x2gosyslog "$0" "error" "$msg"
exit -5
fi