没错,是adduser的特性,lpic考试中着重考过这个问题。 root特殊之处就在于,不受adduser的限制,因为adduser要运行,系统中就必须存在root。 然而,为何不使用默认/etc/skel到/root呢?个人认为可能是安全问题。
在 2011年4月2日 下午5:45,apo <[email protected]>写道: > 这个不是debian自己有的现象,redhat系列的系统也存在/etc/skel。 > 应该是adduser这个命令工具提供的特性,这个路径可以修改/etc/adduser.conf进行定制。 > > 在使用adduser命令时,只要是添加normal user,都会复制这个路径下的 skeletal configuration文件。 > 至于root本身,也不是adduser可以添加的了吧。:D > > ------------------ 原始邮件 ------------------ > *发件人:* "Shell Xu"<[email protected]>; > *发送时间:* 2011年4月2日(星期六) 下午4:06 > *收件人:* "apo"<[email protected]>; "Debian Chinese GB"< > [email protected]>; > *主题:* Re: 回复: gnome-terminal: su - usrname进入后,无法输入中文 > > debian中有个有趣的现象。所有用户,包括安装时新建的用户,都会从/etc/skel复制模板过来。然而root本身是不复制模板的。 > 我怀疑是安全性问题,毕竟root下执行的代码,越少越好。 > > 在 2011年4月2日 下午3:55,apo <[email protected]>写道: > >> apo:~# dpkg -S /usr/bin/locale >> libc6: /usr/bin/locale >> >> 这本是glibc库的一部分,可参考库手册locals and internationalization章节。 >> >> 系统要支持中文,你肯定要在#dpkg-reconfigure locales 添加中文,然后设置环境变量,选择期望的locale数据。 >> >> `su'和`su -'的本来就是一个保持当前用户的环境设置,另一个完全切换成目标用户的环境设置。 >> su正常,说明你当前用户的环境设置正确。su -不正常,只是说明root账户的环境下,语言相关的变量没有设置而已。 >> >> -apo@cn >> >> ------------------原始邮件------------------ >> *发件人:*"yuanwei xu"<[email protected]>; >> *发送时间:*2011年4月1日(星期五) 晚上9:17 >> *收件人:*"CHEN Xing"<[email protected]>; >> *抄送:*"段会强"<[email protected]>; "Debian-zh_CN"< >> [email protected]>; >> *主题:*Re: gnome-terminal: su - usrname进入后,无法输入中文 >> 在 2011年4月1日 上午12:18,CHEN Xing <[email protected]> 写道: >> > 如果以前没有设置过B用户的locale为POSIX,可能是系统默认locale的问题。dpkg-reconfigure locale一下看看吧。 >> > >> >> 没有 locale 这个包, 奇怪。 >> $which locale 显示是 /usr/bin/locale, >> #dpkg -S locale 显示是在 libc-bin 里, >> #dpkg-reconfigure libc-bin 没有出现配置画面 >> >> 有一个 locales 的包, >> #dpkg-reconfigure locales 出现配置画面,选择全系统的 locales 为 zh_CN.utf-8 >> 后,再添加新用户,并 su - 登录,确认更改有效。 >> >> 貌似 locales 是负责生成的,而 locale 是调用的。 >> >> >> >> >> > CHEN, Xing / 陈醒 >> > >> > >> > >> > 在 2011年3月31日 上午9:08,yuanwei xu <[email protected]> 写道: >> >> 还是环境变量的问题,我在 A 帐户下登录 gnome/console,然后通过 su - B 登录,运行 $locale ,所有 >> >> LC_XXX="POSIX",打开 VIM ,显示encoding,fileencoding 都是 latin,中文显示有乱码. >> >> 我如果直接用 B 帐户登录 gnome/console,$locale 显示的则都是 zh_CN.UTF-8。那现在就是在 .bashrc >> >> 里面加入下面这些变量,有点像是做个显示声明之类的。 >> >> >> >> export LANG=zh_CN.UTF-8 >> >> export LC_CTYPE="zh_CN.UTF-8" >> >> export LC_NUMERIC="zh_CN.UTF-8" >> >> export LC_TIME="zh_CN.UTF-8" >> >> export LC_COLLATE="zh_CN.UTF-8" >> >> export LC_MONETARY="zh_CN.UTF-8" >> >> export LC_MESSAGES="zh_CN.UTF-8" >> >> export LC_PAPER="zh_CN.UTF-8" >> >> export LC_NAME="zh_CN.UTF-8" >> >> export LC_ADDRESS="zh_CN.UTF-8" >> >> export LC_TELEPHONE="zh_CN.UTF-8" >> >> export LC_MEASUREMENT="zh_CN.UTF-8" >> >> export LC_IDENTIFICATION="zh_CN.UTF-8" >> >> export LC_ALL= >> >> >> >> A用户是我装系统的时候设置的,B用户则是后来加的。root 的 .bashrc 现在也要加这些语句才行,以前似乎不存在这个问题。 >> >> >> >> 在 2011年3月30日 上午12:22,CHEN Xing <[email protected]> 写道: >> >>> 如果su没问题但su -有问题,可能是环境变量的问题吧,但似乎又不应该是这个问题……你试着在su -之后的环境运行下这些命令? >> >>> export GTK_IM_MODULE=xim >> >>> export QT_IM_MODULE=xim >> >>> export XMODIFIERS="@im=fcitx" >> >>> 如果能好使,把它加到/root/.bashrc里好了 >> >>> >> >>> CHEN, Xing / 陈醒 >> >>> >> >>> >> >>> >> >>> 在 2011年3月29日 上午6:34,yuanwei xu <[email protected]> 写道: >> >>>> (补一个到list) >> >>>> >> >>>> 在 2011年3月29日 下午9:24,段会强 <[email protected]> 写道: >> >>>>> 我的没有此问题。 >> >>>>> 你用su试试,不输入用户名。 >> >>>> >> >>>> 用su 是没有问题的,但几天前是没有这个问题的。用 su 也不错,谢谢。 >> >>>> >> >>>>> 在 2011-03-29二的 21:17 +0800,yuanwei xu写道: >> >>>>>> 各位好,刚刚发现在 gnome-terminal 中用 su - 进入到root >> >>>>>> 用户后,无法输入中文(fcitx),打出词组后,按空格,没有输入,只是窗口闪一下;用鼠标中键也只能粘贴英文,粘贴中文时,出现提示: >> >>>>>> (arg: 7)。退回到当前用户,一切又是正常的,在 “Root 终端” 下键入中文也是正常。 >> >>>>>> 有什么解没有,谢谢。 >> >>>>> >> >>>>> >> >>>>> >> >>>>> >> >>>> >> >>> >> >> >> > >> > > > > -- > 无能者无所求,饱食而遨游,泛若不系之舟 > blog: http://shell909090.com/blog/ > twitter: http://twitter.com/shell909090 > > -- 无能者无所求,饱食而遨游,泛若不系之舟 blog: http://shell909090.com/blog/ twitter: http://twitter.com/shell909090

