让英文Linux系统显示和输入中文
- 格式:doc
- 大小:47.50 KB
- 文档页数:7
在Red Hat Enterprise Linux 4下安装中文输入法把Firefox3的使用解决后,这两天一直为中文输入法困恼,今天在gedit和firefox中都能输入汉字了,我想把整个中文输入环境全部理顺,只是再花点时间的问题了,这里把过程小结一下。
我的Linux系统中文显示没问题,当初用光盘安装系统时,ttfonts-zh_CN已经装好了,如果你是全英文的系统,中文都没法显示,你要先装中文字库,见Install Chinese Fonts (读1这一段就行了)。
在X窗口系统下的输入方法(Input Method)常见的有Xcin、Chinput和scim等,scim是目前走输入法通用化的一种,在这个框架下,中文搭上拼音模块可用来输拼音,其它非英语民族搭上各自的语言模块可输各自的文字。
我找到了scim官网,根据指示下载了3个包,即scim-1.4.7, scim-pinyin-0.5.91, scim-tables-0.5.7。
scim 官网提供了安装方法,我在装scim包时没有用configure选项(缺省装在/usr/local下没什么不好)。
装好这些包后,怎么启动scim服务,并使拼音输入法生效,scim官网讲得不清楚,强烈推荐“在OpenBSD 4.4 上搭建中文语言环境”这篇文章,虽然这是为OpenBSD写的,对我还起到了不小的帮助作用,强调三个关键命令,第一个# gtk-query-immodules-2.0>/var/db/gtk-2.0/gtk.immodules,这个gtk-query-immodules-2.0命令的结果要写到你机器对应的gtk.immodules文件中(注意是覆盖式,不是追加式写入),我的gtk.immodules文件在/etc/gtk-2.0/i386*/目录下;第二个export XMODIFIERS="@im=SCIM",注意大小写,如果敲成小写的scim,Ctrl+Space就出不来中文输入菜单了;第三个export GTK_IM_MODULE=scim,这里scim要小写。
linux系统应用微课版答案盛剑会答案第1章Linux系统介绍1. Linux系统有哪些主要的优点?答:Linux的优点主要有:开放性、多用户、多任务、良好的图形用户界面、设备的独立性、丰富的网络功能、可靠的系统安全、良好的可移植性、丰富的应用软件支持、内核完全免费等优点。
2. 常用操作系统有哪些?它们各具有那些特点?答:常用操作系统主要有Linux、Unix、Windows等。
Linux是一个内核完全免费、可运行在多个硬件平台、功能齐全、安全性好、界面友好的一种操作系统。
Unix功能强大、稳定性好,但价格昂贵,不适合小型企业或者个人使用。
Windows是一个功能完全的多任务操作系统,具有丰富的应用软件,友好的用户界面,但Windows主要运行在基于Intel体系结构的PC系列机上,由微软公司独立控制系统的设计、升级和维护,用户使用Windows需要支付一定的费用。
3. Linux的组成结构有哪些?答:Linux由四个主要部分组成,即内核、Shell、文件系统和实用工具。
4. Linux系统的主要应用领域有哪些?答:Linux系统主要应用在桌面系统、服务器、嵌入式系统和集群计算机等领域。
第2章Linux系统的安装1. 什么是Linux的多系统安装?答:Linux的多系统安装指在同一台计算机中,除了安装Linux外还安装其他操作系统。
此时,需要对计算机中的硬盘空间进行合理分配,并且按照不同操作系统的需要,在硬盘上建立相应格式的分区。
一般来说,Linux的多系统安装指在同一台计算机中同时安装Windows系统和Linux系统。
2. 虚拟机安装Linux有什么特点?答:与多系统Linux相比,虚拟机安装Linux采用了完全不同的概念。
多系统Linux在一个时刻只能运行一个系统,在系统切换时需要重新启动机器。
而虚拟机安装Linux系统是同时运行多个操作系统,而且每个操作系统都可以进行虚拟的分区、配置而不影响真实硬盘的数据,并且还可以将几台虚拟机连接为一个局域网。
Linux设置locale中⽂显⽰如果你是⼀个Linux新⼿,并且刚刚安装了⼀个新的英⽂系统但想要设置成中⽂系统,肯定会接触到上⾯⼏个变量,在⽹上搜索了⼀系列解决⽅法,给⼀些变量赋⼀下值,再export⼀下,或者写到配置⽂件⾥⾯,然后就搞定了,但究竟为什么要这样做,可能还是⼀知半解。
通过这两天⾃⼰对⽹上看到的⼀些⽂章的整理和⾃⼰的试验,在这⾥记录⼀下⾃⼰的理解。
⼀、什么是locale?locale这个单词中⽂翻译成地区或者地域,其实这个单词包含的意义要宽泛很多。
Locale是根据计算机⽤户所使⽤的语⾔,所在国家或者地区,以及当地的⽂化传统所定义的⼀个软件运⾏时的语⾔环境。
?上⾯这个解释摘上⽹上,说得好⽞乎,举两个简单的例⼦:?a)在“简体中⽂”的环境,运⾏df命令,第⼀⾏显⽰的是:⽂件系统?1K-块?已⽤?可⽤?已⽤%?挂载点?⽽在“繁体中⽂”的环境下,运⾏df命令,第⼀⾏显⽰的是:檔案系統?1K-區段?已⽤?可⽤?已⽤%?掛載點?b)在中⽂环境下运⾏date命令,显⽰的是2013年?01⽉?27⽇?星期⽇?15:57:01?CST?⽽在英⽂环境下,运⾏date命令,显⽰的是Sun?Jan?27?15:57:46?CST?2013?看到上⾯两个例⼦,我想应该⽐较清楚了,不同地区对⼀些计算机词汇、⽇期显⽰等⽅⾯都有各⾃的习惯,⽐如中国⼤陆通常使⽤“⽂件系统”,⽽台湾或者⾹港地区则会⽤“檔案系統”,这显然不是简单的从简体到繁体的转换⽽已,所以可以想像,有⼀套系统在为各个地区的本地化服务。
?locale把按照所涉及到的使⽤习惯的各个⽅⾯分成12个⼤类,这12个⼤类分别是:??1、语⾔符号及其分类(LC_CTYPE)?2、数字(LC_NUMERIC)?3、⽐较和习惯(LC_COLLATE)?4、时间显⽰格式(LC_TIME)?5、货币单位(LC_MONETARY)?6、信息主要是提⽰信息,错误信息,状态信息,标题,标签,按钮和菜单等(LC_MESSAGES)?7、姓名书写⽅式(LC_NAME)?8、地址书写⽅式(LC_ADDRESS)?9、电话号码书写⽅式(LC_TELEPHONE)?10、度量衡表达⽅式?(LC_MEASUREMENT)?11、默认纸张尺⼨⼤⼩(LC_PAPER)?12、对locale⾃⾝包含信息的概述(LC_IDENTIFICATION)。
locale详解locale 是国际化与本⼟化过程中的⼀个⾮常重要的概念,个⼈认为,对于中⽂⽤户来说,通常会涉及到的国际化或者本⼟化,⼤致包含三个⽅⾯:看中⽂,写中⽂,与 window中⽂系统的兼容和通信。
从实际经验上看来,locale的设定与看中⽂关系不⼤,但是与写中⽂,及window分区的挂载⽅式有很密切的关系。
本⼈认为就像⼀个纯英⽂的Windows能够浏览中⽂,⽇⽂或者意⼤利⽂⽹页⼀样,你不需要设定locale就可以看中⽂。
那么,为什么要设定 locale呢?什么时候会⽤到locale呢?Tags: locale 设定原因解释⼀、为什么要设定locale 正如前⾯我所讲的,设定locale与你能否浏览中⽂的⽹页没有直接的关系,即便你把locale设置成 en_US.ISO-8859-1这样⼀个标准的英⽂locale你照样可以浏览中⽂的⽹页,只要你的系统⾥⾯有相应的字符集(这个都不⼀定需要)和合适的字体(如simsun),浏览器就可以把⽹页翻译成中⽂给你看。
具体的过程是⽹络把⽹页传送到你的机器上之后,浏览器会判断相应的编码的字符集,根据⽹页采⽤的字符集,去字体库⾥⾯找合适的字体,然后由⽂字渲染⼯具把相应的⽂字在屏幕上显⽰出来。
在下⽂本⼈会偶尔把字符集⽐喻成密码本,个⼈觉得对于⼀些东西⽐较容易理解,假如你不习惯的话,把全⽂copy到任何⽂本编辑器,⽤字符集替换密码本即可。
那有时候⽹页显⽰乱码或者都是⽅框是怎么回事呢?个⼈认为,显⽰乱码是因为设定的字符集不对(或者没有相应的字符集),例如⽹页是⽤UTF-8编码的,你⾮要⽤GB2312去看,⽽系统根据GB2312去找字体,然后在屏幕上显⽰,当然是⼀堆的乱码,也就是说你⽤⼀个错误的密码本去翻译发给你的电报,当然内容那叫⼀个乱;⾄于有些时候浏览的⽹页能显⽰⼀部分汉字,但有很多的地⽅是⽅框,能够显⽰汉字说明浏览器已经正确的判断出了⽹页的编码,并在字体库⾥⾯找到了相应的⽂字,但是并不是每个字体库都包含某个字符集全部的字体的缘故,有些时候会显⽰不完全,找⼀个⽐较全的⽀持较多字符集的字体就可以了。
linux服务器默认使⽤中⽂字符集zh_CN.UTF-8⼀.问题描述和相关概念linux服务器的字符集设置可能影响到⽹站页⾯出现 “” 等问号乱码,还有可能导致⽂件中的部分出现乱码。
locales设置:语⾔设置选项真的是⼀个⾮常强⼤的系统,如果要更改语⾔系统,必须要重新安装软件,这就是windows存在多国语⾔版的原因。
⽽linux⾮常⽅便,我们可以通过locales设置,将linux从英⽂版更改为中⽂版,下⾯我们来看看如何更改语⾔设置。
⼆.原因简单的说是因为服务器没有安装zh_CN.UTF-8 字符集,导致不⽀持中⽂!locale //执⾏这个命令,查看和语⾔编码有关的环境变量显⽰如下:LANG=LANGUAGE=en_US:enLC_CTYPE="POSIX"LC_NUMERIC="POSIX"LC_TIME="POSIX"LC_COLLATE="POSIX"LC_MONETARY="POSIX"LC_MESSAGES="POSIX"LC_PAPER="POSIX"LC_NAME="POSIX"LC_ADDRESS="POSIX"LC_TELEPHONE="POSIX"LC_MEASUREMENT="POSIX"LC_IDENTIFICATION="POSIX"LC_ALL=可以看到⼤多数都默认为POSIX 类型的,这时可以改的默认字符集为zh_CN.UTF-8(我测试过改了没问题哦,可以解决乱码问题。
如果能通过设置SecureCrt等终端可以解决的话,就没必要改了)三.解决办法环境:Ubuntu 12.04.5 LTS \n \l1.安装基本的软件包(第2步安装 zh_CN 中⽂字符集时要⽤到)sudo apt-get update //系统更新软件包列表sudo apt-get install -y language-pack-zh-hanssudo apt-get install -y language-pack-zh-hant2.cd /usr/share/localessudo ./install-language-pack zh_CN //开始安装zh_CN中⽂字符集3. 编辑 sudo vim /etc/environment //环境变量配置⽂件添加下⾯zh_CN.UTF-8有关的,添加完就变成默认的了哦:LANG=zh_CN.UTF-8LANGUAGE=en_US:enLC_CTYPE="zh_CN.UTF-8"LC_NUMERIC="zh_CN.UTF-8"LC_TIME="zh_CN.UTF-8"LC_COLLATE="zh_CN.UTF-8"LC_MONETARY="zh_CN.UTF-8"LC_MESSAGES="zh_CN.UTF-8"LC_PAPER="zh_CN.UTF-8"LC_NAME="zh_CN.UTF-8"LC_ADDRESS="zh_CN.UTF-8"LC_TELEPHONE="zh_CN.UTF-8"LC_MEASUREMENT="zh_CN.UTF-8"LC_IDENTIFICATION="zh_CN.UTF-8"LC_ALL=zh_CN.UTF-84.重新登录⼀次shellsource /etc/environment //使刚才添加的⽣效。
Linux下如何设置中⽂字体1. 查看当前系统语⾔登陆linux系统打开操作终端之后,输⼊echo $LANG可以查看当前使⽤的系统语⾔。
如:** en_US.UTF-8 表⽰英⽂**** zh_CN.UTF-8 表⽰中⽂**2. 查看安装的语⾔包查看是否有中⽂语⾔包可以在终端输⼊locale命令,如有zh_cn表⽰已经安装了中⽂语⾔``如果没有中⽂语⾔呢?可以通过⽹上下载安装中⽂语⾔包yum install kde-l10n-Chinese(不能联⽹的通过其他电脑下载,上传上去吧)3. 如何修改系统语⾔为中⽂1. 临时更换语⾔如果只是临时更换linux系统的语⾔环境,可以通过输⼊设置 LANG=语⾔名称,如中⽂是 zh_CN.UTF-8(注意我这⾥本来就是中⽂的,我临时设置为英⽂LANG="zh_CN.UTF-8" )``2. 修改系统默认语⾔vi /etc/sysconfig/i18n(注意改好之后重启⼀下系统)4. 安装查看字体命令在开始安装之前,我们先查看系统中已经安装的字体。
要查看系统中已经安装的字体,我们可以使⽤fc-list命令进⾏查看。
如果系统中没有该命令的话,我们需要先安装相关的软件包。
在centos上,使⽤如下命令进⾏安装:yum install -y fontconfig mkfontscale5. 安装字体使⽤root账号,进⼊到根⽬录cd ~上传myfonts⽂件夹拷贝myfonts到/usr/share/fonts⽂件夹下,mv myfonts /usr/share/fonts进⼊到myfonts⽬录:cd /usr/share/fonts/myfonts执⾏如下命令:mkfontscalemkfontdirfc-cache -fv查看是否已经安装对应的字体:fc-list :lang=zh-cnfc-cache -fv 命令⽤来刷新linux的字体缓存,使其⽴刻⽣效PS:以上所有操作基本都需要root权限。
linux乱码问题:LANG变量的秘诀2009-12-14 16:03对于国内的Linux用户,经常烦恼的一个问题是:系统常常在需要显示中文的时候却显示成了乱码,而由于某些原因,需要英文界面的系统的时候,却苦于系统不能正常输入和显示中文.另外,由于大部分主要Linux发行版都是以英语为主体的,英文界面的系统和应用程序不管在界面的美观程度和稳定程度上都比中文的略好一些,各种奇怪的BUG也要少一些。
因此,很多稍微有英语基础的Linux 用户都宁愿使用英文界面的系统。
但是,矛盾又突现出来:在英文系统下,如何才能正常显示和输入中文呢?有没有两全其美的方案呢?因此,笔者开始探索如何解决这个问题。
我的完美状态是:系统和应用程序全部为英文(系统菜单、应用程序工具栏、默认输入法等),而我需要阅读和撰写中文文档的时候,能正确的显示中文并调出中文输入法。
经过尝试,设置成功,现在以FC4 Linux为例,讲解一些相关知识和设置过程。
本文主要通过修改系统配置的过程来展现修改linux系统配置的一般思路和过程,如果你不太有耐心看完,请跳过文章的1—4节,直接看第五节快速设置部分。
一,相关变量介绍我们知道大部分Linux系统是无所谓中文版和英文版的,以FC4 Linux为例,系统发行的时候全世界都一样,系统是中文的还是英文的完全取决于你选择的语言包。
不同国家的人在安装使用的时候选择属于自己国家的语言包,应用程序中的语言也不是写死的,它根据系统的设置来调用相关的语言,所以,一个应用程序写出来不经过修改,全世界不同国家的用户都可以以母语界面使用它,这就事所谓的internationalization(国际化),简称 i18n。
这也是未来软件的发展趋势。
那么,如果我在系统中安装了不同的语言包和不同的字体,系统是如何判断我所要的语言界面并调用相关的字体的呢?系统中那些文件和变量在控制这些呢?在redHat和FC系列Linux系统下,记录系统默认使用语言的文件是/etc/sysconfig/i18n,如果默认安装的是中文的系统,i18n的内容如下:代码:LANG="zh_CN.UTF-8" SYSFONT="latarcyrheb-sun16"SUPPORTED="zh_CN.UTF-8:zh_CN:zh"其中LANG变量是language的简称,稍微有英语基础的用户一看就看出来这个变量是决定系统的默认语言的,即系统的菜单、程序的工具栏语言、输入法默认语言等。
Ubuntu14.04安装中文输入法以及解决Gedit中文乱码问题1 设置中文显示环境1. 打开System Settings2. 打开Personal-> Language Support.会弹出如下对话框,提示你“语言支持没安装完整”。
点击“Remind Me Later”.3. 在“Language Support”中,点击“Install/Remove Languages”,在打开的窗口中,找到“Chinese(simplified)”并勾选上,点击“Apply Changes”。
4. 上面只是下载了语言包,还需要切换系统语言才能使之生效。
在“Language Support”中“Language for menus and windows”的最底部,将“汉语(中国) ”拖到“English(United States)”之上,字体由“灰色”变为“黑色”。
重启系统,整个界面就变成中文了。
(如果仍想保留英文系统,这一步骤可以省略)2 设置中文输入法1.首先,在“Language Support”->“Keyboard input method system”中选择ibus ,点击“Apply System-Wide”(应用到整个系统),然后close。
这时按下“Ctrl + 空格键”还是切换不了,需要设置下IBUS。
2. 打开System Settings->Personal下的“Text Entry(文本输入)”。
点击左下角的“+”,在打开的“Choose an input source”中找到“Chinese(Pinyin)”,点击“Add”,添加。
添加后,可以点击“^”“v”调整输入法的默认位置。
3安装googlepinyin输入法1. 打开“Ubuntu Software Center”,在搜索栏中搜索“ibus”,在显示结果最下方,点击显示所有的项目。
2. 找到“Googlepinyin engine for ibus”并点击“Install”。
让英文Linux系统显示和输入中文对于国内的Linux用户,经常烦恼的一个问题是:系统常常在需要显示中文的时候却显示成了乱码,而由于某些原因,需要英文界面的系统的时候,却苦于系统不能正常输入和显示中文.另外,由于大部分主要Linux发行版都是以英语为主体的,英文界面的系统和应用程序不管在界面的美观程度和稳定程度上都比中文的略好一些,各种奇怪的BUG也要少一些。
因此,很多稍微有英语基础的Linux用户都宁愿使用英文界面的系统。
但是,矛盾又突现出来:在英文系统下,如何才能正常显示和输入中文呢?有没有两全其美的方案呢?因此,笔者开始探索如何解决这个问题。
我的完美状态是:系统和应用程序全部为英文(系统菜单、应用程序工具栏、默认输入法等),而我需要阅读和撰写中文文档的时候,能正确的显示中文并调出中文输入法。
经过尝试,设置成功,现在以FC4Linux为例,讲解一些相关知识和设置过程。
本文主要通过修改系统配置的过程来展现修改linux系统配置的一般思路和过程,如果你不太有耐心看完,请跳过文章的1—4节,直接看第五节快速设置部分。
一,相关变量介绍我们知道大部分Linux系统是无所谓中文版和英文版的,以FC4Linux为例,系统发行的时候全世界都一样,系统是中文的还是英文的完全取决于你选择的语言包。
不同国家的人在安装使用的时候选择属于自己国家的语言包,应用程序中的语言也不是写死的,它根据系统的设置来调用相关的语言,所以,一个应用程序写出来不经过修改,全世界不同国家的用户都可以以母语界面使用它,这就事所谓的internationalization(国际化),简称i18n。
这也是未来软件的发展趋势。
那么,如果我在系统中安装了不同的语言包和不同的字体,系统是如何判断我所要的语言界面并调用相关的字体的呢?系统中那些文件和变量在控制这些呢?在redHat和FC系列Linux系统下,记录系统默认使用语言的文件是/etc/sysconfig/i18n,如果默认安装的是中文的系统,i18n的内容如下:代码:LANG="zh_CN.UTF-8"SYSFONT="latarcyrheb-sun16"SUPPORTED="zh_CN.UTF-8:zh_CN:zh"其中LANG变量是language的简称,稍微有英语基础的用户一看就看出来这个变量是决定系统的默认语言的,即系统的菜单、程序的工具栏语言、输入法默认语言等。
SYSFONT是system font的简称,决定系统默认用哪一种字体。
SUPPORTED变量决定系统支持的语言,即系统能够显示的语言。
需要说明的是,由于计算机起源于英语国家,因此,不管你把这些变量设置成什么,英语总是默认支持的,而且不管用什么字体,英文字体总包含在其中。
这些变量中LANG变量是在字符模式和图形界面下都用到的,在你登录系统后就被读取并生效,相信很多人在字符界面下输入Linux命令的时候经常会遇到显示出来的出错信息是乱码的情况,必需安装zhcon或者cce等字符模式下的中文软件才能正常显示中文的出错信息。
如果我不要他显示中文乱码,我也不要为了看个很简单的出错信息而特意起用zhcon那我该怎么办呢?一个简单的零时解决的办法就是设置一下LANG变量:代码:[root@gucuiwen ~]# LANG="en_US.UTF-8"即把系统的语言临时设置成英文,或者更简单一点,可以直接这样:代码:[root@gucuiwen ~]# LANG=""即把LANG变量清空,由于英语是无论什么情况都支持的,LANG变量被清空后,系统就默认用英语。
这样设置后,在字符模式下输出的出错信息等就是全英文的了。
但这种设置是临时的,只是临时改变了LANG这个bash变量而已。
当退出重新登录或者切换到其他字符终端后就无效了。
到现在,读者应该想到了,只要把i18n文件中的LANG变量设置成英文的”en_US.UTF-8”,就可以永久解决这个问题了。
修改后的文件如下:代码:#LANG="zh_CN.UTF-8"LANG="en_US.UTF-8"SYSFONT="latarcyrheb-sun16"SUPPORTED="zh_CN.UTF-8:zh_CN:zh"请不要把LANG变量简单的清空,因为这个变量不仅在字符模式下用到,在图形界面下也用到,简单清空在字符模式下确实不会有问题,但在图形界面下,却会造成中文无法正常显示的情况,在过去Re d ha t 系列的版本中i18n文件中还有一个叫LANGUAGE的变量,专门控制图形界面下的语言设置,现在的FC系列中已经把这两个变量整合成一个变量了。
经过修改这个变量,重新起动图形界面后,就可以看到界面一经完全是英文的了。
但是按ctrl+空格却不能调出中文输入法,输入法菜单中也不能添加中文输入法。
我们只简单的修改了LANG变量改变了系统语言设置,当然这一步也可以用图形界面下的工具修改,而不用亲自修改配置文件。
二,关于运行等级这个问题似乎和这篇文章的的主题无关,但是介于现在越来越多的linux新手遇到linux图形界面的问题,而且在中文输入法设置过程中也牵涉到这些问题,因此想顺便提一下。
现在的linux安装完成后,默认就运行在第5个系统运行级别。
在SYSTEM V 风格的UNIX 系统中,系统被分为不同的运行级别,这和BSD分支的UNIX有所不同,常用的为0~6七个级别:0关机1单用户2不带网络的多用户3带网络的多用户4保留,用户可以自给定义5图形界面的多用户6重起系统由于现在的Linux系统安装完后就运行在第5个级别,即系统启动后直接进入图形界面,而不用在字符模式下登录后用startx或者xinit 来起动图形界面。
这样看起来很方便。
但是有什么坏处呢?一旦你改变了某些设置,显示出问题的时候,系统不断在图形和字符间派徊,新手又不知道如何应对,十分麻烦,而且对于学习研究Linux的人来说,这样不利于了解和学习Linux底层的一些东西。
很早就用Linux的老用户都知道,过去的Linux如redhat6.0,都是默认运行接别为3,即使后来的RedHat9.0也可以在安装时候选默认字符登录还是图形登录。
但现在的FC系列和其他大多数版本都不管三七二十一直接帮用户选择了直接图形界面登录。
虽然对于大多数菜鸟来说,Linux确实越来越简单了,但是很多乐趣,那些新手也体验不到了。
也许你不相信,直接图形登录到系统确实会有很多问题,因此,作为一个有6年Linux使用经验的Linux和Solaris 系统管理员,我强烈建议在系统安装完成后把系统的默认运行等级设置在第3级,在字符终端登录后,再手工输入startx 命令起动图形界面。
可以用如下的方法修改:用文本编辑器修改/etc/inittab文件,把代码:id:5:initdefault:这一行,修改成代码:id:3:initdefault:保存后就重起,系统就默认起动到字符界面。
不同运行级别之间的差别的在于系统默认起动的服务的不同,如运行级别3默认不启动X图形界面服务,而运行级别5却默认起动。
本质上是没有区别的,更无所谓不同级别间功能强弱的问题。
用户完全可自给定义不同级别的默认服务。
在任何运行级别,用户都可用init 命令来切换到其他运行级别。
三,调出中文输入法:我之所以要在上面费那么多笔墨来讲系统运行级别,是因为对系统的认识是从底部向上开始的。
先把默认运行级别修改成3级别,当然,如果你实在不想修改,就临时用init 3命令切换到第3级。
这样你就可以用startx起动图形界面,然后用ctrl+alt+backspace退出图形界面。
请注意我说的是“退出”图形界面,而不是按ctrl+alt+F2切到一个字符终端。
好了,一切由startx开始。
当你需要在Linux系统中设置某个东西,或者配置某个服务的时候,最关键的是要知道,这一切是怎么开始的。
知其然必需知其所以然。
如果你有空把/etc/rc.d 目录下的系统起动时运行的脚本通读一遍,就完全知道了/etc下的各种配置文件是用来干什么的、如何修改、修改后有什么效果等等。
玩起系统来也能随心所欲想怎么改就怎么改。
这就是我一直强调的,知其然一定要知其所以然。
一定要深入系统,读脚本,学会用命令和手工修改系统配置文件。
这样对系统才会有透彻的了解,整天用图形界面的工具是不能帮助你对系统有教为透彻深入的了解的,不同的linux系统提供的图形界面配置程序会不同,但命令和配置文件都是相同的,越是底层的东西越具有通用性。
所以,应当先学会手动配置和修改系统配置文件,等熟悉了以后,再用图形界面的工具修改,以便减少工作量。
上面提了一下我解决问题的思路。
我是顺着这个思路开始的:中文输入法是在图形界面下使用的,是图形界面下运行的一个程序。
而图形界面中的一切,都是由startx程序开启运行的。
这就是问题的根源。
找出startx的位置:代码:[root@gucuiwen ~]# which startx/usr/X11R6/bin/startx看startx是一个脚本还是二进制文件:代码:[root@gucuiwen ~]# file /usr/X11R6/bin/startx/usr/X11R6/bin/startx: Bourne shell script text executable发现startx是一个shell 脚本,于是我打开它分析并阅读,看看能不能找到一些关于输入法起动过程和相关变量的线索:代码:[root@gucuiwen ~]# vi /usr/X11R6/bin/startx我找到了该脚本在运行过程中调用的其他脚本和配置文件的信息:代码:userclientrc=$HOME/.xinitrcuserserverrc=$HOME/.xserverrcsysclientrc=/etc/X11/xinit/xinitrcsysserverrc=/etc/X11/xinit/xserverrc并且知道,startx的目的是寻找系统中可用的桌面系统X服务器系统、以及用户自定义的参数,最终调用xinit来初始化X图形界面。
我没有在startx脚本中找到直接和起动输入法相关的代码,于是就可以肯定,输入法相关的代码在startx调用的脚本中。
于是我来到/etc/X11/xinit/目录下,阅读并分析该目录下的脚本,这些脚本有些是startx直接调用的,有些是被startx调用的脚本再调用的,存在着多级嵌套的关系,没有一点耐心还真是搞不清楚。