Category Archives: unix/linux

unix,linux related

gentoo中文化之乱码解决方案

今天终于狠下心整顿gentoo的乱码,真是够爽快阿!!

之前用gentoo之前就一直很不爽gentoo的乱码,没办法,我没有文化,谁让我不看Handbook了?? 最郁闷的就是windows下的中文文件拷贝到gentoo之后,文件名出现乱码,移动硬盘也无法识别,让我超级地郁闷。
 

首先我用xfce4,听说这玩意很快,于是乎,赶紧下一个替代kde(kde让我有心里阴影,不敢使了)。从windows那里拷贝过来的中文文件名在xfce4下全是问号,我超级地郁闷。不断的google,又是02locale,又是i18n,就是无法解决,差点把我气坏了!!!终于遇到一个救星博客,地址:

http://tigertooth4.is-programmer.com/posts/3275.html 

根据这位哥哥的描述,是xfce的文件管理器:thunar本身设计有缺陷,无法识别中文。我晕!!差点没气坏!!

怎么办?? 当时正在给别人装ubuntu,突然急中生智,换个:gnome。 遂到官方网站看Handbook安装gnome。果然,gnome没有让我失望。windows拷贝过来的文件名不会出现乱码了,但是文件内容还是有乱码!!!


又上火了!!又去找手册帮忙,原因出在系统的本地化环境变量上。修改就可以了!!

下面贴出我自己的配置文件:

位于~目录下的.bashrc文件: ~/.bashrc:

LANG=”en_US.UTF-8″
LC_CTYPE=”zh_CN.GBK”
LC_NUMERIC=”en_US.UTF-8″
LC_TIME=”en_US.UTF-8″
LC_COLLATE=”en_US.UTF-8″
LC_MONETARY=”en_US.UTF-8″
LC_MESSAGES=”en_US.UTF-8″
LC_PAPER=”en_US.UTF-8″
LC_NAME=”en_US.UTF-8″
LC_ADDRESS=”en_US.UTF-8″
LC_TELEPHONE=”en_US.UTF-8″
LC_MEASUREMENT=”en_US.UTF-8″
LC_IDENTIFICATION=”en_US.UTF-8″ 

保存之后在终端执行: sudo env-update && source ~/.bashrc。

我用的是英文系统,能显示中文。请注意:LC_CTYPE选项,用GBK编码,不要用UTF-8编码。 至于各个编码的知识,我会在下面总结。
这里我不想对每个选项都做过多解释,自己到这里琢磨

http://www.gentoo.org/doc/en/guide-localization.xml


有用的帖子:

1.关于xfce4下中文乱码的原因: 

http://tigertooth4.is-programmer.com/posts/3275.html


2.Gentoo官方网站本地化指南(重要)

   http://www.gentoo.org/doc/en/guide-localization.xml  


中文指南:http://www.gentoo.org/doc/zh_cn/guide-localization.xml

3.关于各种各样的编码知识(很重要,必须理解了!!)

http://www.busfly.cn/csdn/post/ascii-utf-8-unicode-gbk-gb2312.html

4.Gentoo官方UTF-8指南

  http://www.gentoo.org/doc/en/utf-8.xml

 中文指南:

 http://www.gentoo.org/doc/zh_cn/utf-8.xml


中文我推荐使用GBK编码,英文我推荐使用UTF-8编码。

Gentoo 中文化历程之locale

gentoo的中文化一直是gentoo新手的遇到的一个特别头痛的问题,比如说,桌面的中文化,中文输入法的安装,amarok中文乱码,挂载分区的乱码,等等。
其中的一些基本问题我已经在我的博客中总结了:

http://zhongbeyond.blog.sohu.com/114005695.html   

下面我总结一下中文locale的设定:
1.
先修改locale.gen文件
#gedit /etc/locale.gen   

代码:
en_US  ISO-8859-1
en_US.UTF-8  UTF-8
zh_CN  GB18030
zh_CN.GBK  GBK
zh_CN.GB2312  GB2312
zh_CN.UTF-8  UTF-8

保存执行locale-gen:

#locale-gen  

2.建立 /etc/env.d/02locale
#gedit /etc/env.d/02locale  
 
在文本中输入:  
LANG=”zh_CN.GBK”
LC_CTYPE=”zh_CN.GBK”
LC_NUMERIC=”zh_CN.GBK”
LC_TIME=”zh_CN.GBK”
LC_COLLATE=”zh_CN.GBK”
LC_MONETARY=”zh_CN.GBK”
LC_MESSAGES=”zh_CN.GBK”
LC_PAPER=”zh_CN.GBK”
LC_NAME=”zh_CN.GBK”
LC_ADDRESS=”zh_CN.GBK”
LC_TELEPHONE=”zh_CN.GBK”
LC_MEASUREMENT=”zh_CN.GBK”
LC_IDENTIFICATION=”zh_CN.GBK”

保存后执行:
#env-update && source /etc/profile 

如果要安装scim输入法的话,你还需要建立: /etc/env.d/100i18n 文件。
#gedit /etc/env.d/100i18n

输入:
LANG=en_US.UTF-8
LC_CTYPE=zh_CN.UTF-8
LC_NUMERIC=”en_US.UTF-8″
LC_TIME=”en_US.UTF-8″
LC_COLLATE=”en_US.UTF-8″
LC_MONETARY=”en_US.UTF-8″
LC_MESSAGES=”en_US.UTF-8″
LC_PAPER=”en_US.UTF-8″
LC_NAME=”en_US.UTF-8″
LC_ADDRESS=”en_US.UTF-8″
LC_TELEPHONE=”en_US.UTF-8″
LC_MEASUREMENT=”en_US.UTF-8″
LC_IDENTIFICATION=”en_US.UTF-8″  

保存后执行:
#env-update && source /etc/profile

参考资料:
这个链接是官方的UTF-8指南:
http://www.gentoo.org/doc/zh_cn/utf-8.xml?style=printable  

这个链接是官方的本地化指南:
http://www.gentoo.org/doc/zh_cn/guide-localization.xml?style=printable 

init:no more processes left in this runlevel

我冲动之下,想更新gentoo 系统,步骤如下:

$ sudo emerge --sync
$ sudo emerge -avuDN world
$ sudo revdep-rebuild # app-portage/gentoolkit 包的一个工具。

可是,更新之后就出现了一个这样的问题,shutdown -h now和reboot命令出现问题了,关机和重启之后,总是会出现这样的问题:
init:no more processes left in this runlevel,
然后就一直停在这个地方。我当然不知道怎么回事,首先当然是google了。找到了这么一个帖子:

http://bugs.gentoo.org/show_bug.cgi?id=252632 
我大致看了一下,看不太明白,但是我里面有一行给我印象很深刻: 

emerge -pv udev openrc sysvinit。我按照这个命令试试,下载的软件信息里面右

 * Messages for package sys-fs/udev-141:

 * 
 * Updating persistent-net rules file
 *                                   
 * restarting udevd now.             
 *                                   
 * persistent-net does assigning fixed names to network devices.
 * If you have problems with the persistent-net rules,          
 * just delete the rules file                                   
 *      rm /etc/udev/rules.d/70-persistent-net.rules            
 * and then reboot.                                             
 *                                                              
 * This may however number your devices in a different way than they are now.                                                                     
 *                                                                       
 * If you build an initramfs including udev, then please                 
 * make sure that the /sbin/udevadm binary gets included,                
 * and your scripts changed to use it,as it replaces the                 
 * old helper apps udevinfo, udevtrigger, ...                            
 *                                                                       
 * mount options for directory /dev are no longer                        
 * set in /etc/udev/udev.conf, but in /etc/fstab                         
 * as for other directories.                                             
 *                                                                       
 * For more information on udev on Gentoo, writing udev rules, and       
 *          fixing known issues visit:                                   
 *          http://www.gentoo.org/doc/en/udev-guide.xml                  

 * Messages for package sys-apps/openrc-0.4.3-r2:

 * /etc/conf.d/rc is no longer used for configuration.
 * Please migrate your settings to /etc/rc.conf as applicable
 * and delete /etc/conf.d/rc
 * You should now update all files in /etc, using etc-update
 * or equivalent before restarting any services or this host.
 *
 * Please read the migration guide available at:
 * http://www.gentoo.org/doc/en/openrc-migration.xml
>>> Auto-cleaning packages...

>>> No outdated packages were found on your system.

 * GNU info directory index is up-to-date.

 * IMPORTANT: 28 config files in '/etc' need updating.

 * IMPORTANT: 1 config files in '/usr/share/config' need updating.
 * See the CONFIGURATION FILES section of the emerge
 * man page to learn how to update config files.

 * IMPORTANT: 1 news items need reading for repository 'kde4-experimental'.
 * Use eselect news to read news items. 

呵呵,看我加蓝色的那些字体,就是那些信息就了我,虽然我还不知道怎么回事,但,使用google的信心已决~~呵呵,不知道google对我有多重要~~

Gentoo下面从kde3.5升级到kde4.2的经历

 一.首先是安装不上amarok2 

 安装完Gentoo基本系统、kde桌面以后,一款电影播放器和音乐播放器自然是少不了啦。早就听说amarok的大名, 于是就找个机会下载amarok.   (1)emerge -av amarok          接着我一直在那里等,不幸的事情发生了:amarok中的某些包被我系统中的kdebase-startkde和x11-server这两个包block了,当时第一反应就google。         

 后来找到了Gentoo关于portage的官方文档,找到了解决办法:把系统中block的那些包都删除了。但是仔细想想,不对劲啊,那可是kdebase和x11的包啊,不能删除。  但是当时特别的想下载amarok,也没有管那么多,心中还是有些侥幸吧:反正出问题之后还可以安装。终于狠下心把这两个包都删除了。结果出问题了:打开不了home folder和system,我知道出问题了。终于退出桌面,回到基本系统:黑屏幕。我先删除kde3.5和xorg-x11,但是要命的是,在安装显卡驱动时又出错了,当时冒出的一大堆错误我也看不懂,好在之前安装Gentoo基本系统的时候训练好了心态,要不然我又得哭上一场;不想再去google了,于是又做出了如下决定:格式化整个盘,在重新安装Gentoo,这样也省事,要不然等我找到那个错误的话,我已经有60多岁了,呵呵~~   不出意料,安装过程挺顺利的,不过为了保险,还是安装了kde3.5。用了一阵子之后更新系统,但是,又出问题了,我的kdebase-startkde-3.5.10又block了一些包,我当时狂晕,又google,还发邮件给我的师兄,他们的回答出奇的一致:把kde3.5删了,当时把我郁闷的,我终于痛下决心,一定要把kde4.2.1安装到我的电脑上~~~很大的一个原因在下面:             

二.无法安装上sandbox  

第二次安装上kde3.5之后,更新系统,但是安装不了sandbox,冒出很多的错误信息,最后的一行引起了我的注意: FEATURES=”-sandbox” emerge sandbox ,又按照提示重新:emerge  FEATURES=”-sandbox” emerge sandbox,但是不管用,还是出那个错误。我又郁闷了,问题出在那里了???我一直在问,但是终究还是没有结果,最后不得不google,终于找到了解决办法:原来是内核编译是没有打开模拟32位程序运行的选项,打开即可。内核选项如下:    Executable file formats / Emulations      [*] IA32 Emulation    [*] IA32 a.out support  

 这是原文地址: http://justice666.blog.ccidnet.com/blog-htm-do-showone-type-blog-itemid-230384-uid-68180.html     

很感谢这篇文章。我弄明白了,原来是和cpu的位数有关系,于是我又赶紧(1)cd /usr/src/linux;(2)make menuconfig; 按照上面所说的一步一步配置内核。 更糟糕的事情发生了,我的内核选项里面竟然没有 [*] IA32 Emulation        [*] IA32 a.out support      这两项,我当时无语~~~当时几乎又放弃了,但是想想,如果放弃的话,之前的努力不都是白费了吗??安慰了自己之后又开始自己的google之路,我在搜索框中试着输入:

IA32 Emulation。我在google中找到了下面关于AMD64常见问题的帖子:http://www.gentoo.org/doc/zh_cn/gentoo-amd64-faq.xml                我当时吓坏了:我的CPU是AMD64的,但是刚开始我一直按照x86手册安装Gentoo;心情很复杂:该高兴吧,因为自己犯了一个超级严重的错误,在这个偶然的机会被发现了;该难过吧,因为又得重新把系统格式化了,重新安装~~~我从安装Gentoo基本文件那里重新安装,最后还是没有成功,到了chroot那步出了这样的问题:

chroot :cannot run command bin bash’ exec format error。      又google,找到了一篇对我很重要的文章:http://www.gentoo-wiki.info/Chroot_from_a_livecd 就是这段文字救了我:

 Troubleshooting Exec format error If the chroot command returns with the error “chroot: cannot run command `/bin/bash': Exec format error“, this usually indicates that the livecd environment is not compatible with that of the installed system.For example, the error is most frequently seen when trying to chroot to a 64-bit system (eg. amd64) from a 32-bit livecd (eg. x86).The solution is to use a livecd which is using the same architecture as the installed system.  

 我恍然大悟,原来我刻录的盘和我的cpu架构不一样~~我乐坏了,我又迫不及待地下载:install-amd64-minimal-2008.0-r1.iso刻了盘,重新踏上安装Gentoo之路,终于顺利安装完Gentoo基本系统,而且这个选项也有:Executable file formats / Emulation  [*] IA32 Emulation              [*] IA32 a.out support       接下来的重头戏当然是安装kde4,在网上搜了很多的帖子,也吸取了很多的教训,“天道酬勤”,老天爷终于还是很眷顾我,顺利完成了kde4的安装。 一个字:高兴、快乐。     

三.总结一下我成功安装kde4的经验以及一些好的帖子      

  (1)安装好gentoo基本系统之后,先安装nvidia-drivers,然后在安装xorg-x11,官方文档上有;

(2)添加gentoo-overlay-china(参看下面的帖子):

  http://www.linuxsir.org/bbs/thread272832.html 

(3)在/etc/portage下面新建:package.keywords文件,在里面输入以下内容(直接点击链接):package.keywords     (我在2009年4月7日添加的,可能以后有更新,版本:kde4.2)  

这些东西在Gentoo kde4的官方指南上找的,大家可以参考一下,下面的地址是Gentoo kde4官方指南: 

http://www.gentoo.org/proj/en/desktop/kde/kde4-guide.xml   

呵呵,英文的,当时我要是看懂我就已经安装成功了。(PS:但是主要是没有看懂其中的sets那部分东西,现在想来还真的很后悔,因为只不过就是添加几个sets而已。);

(4)添加kde overlay:    #layman -a kde    (以root用户运行)  ;

(5)下载桌面:  #emerge -pv kdebase-startkde  ;   把列出来的USE标记都写好,然后去掉-pv:emerge kdebase-startkde ,你就可以安装kde基本环境了; 如果你想安装kde完整的环境(更多的应用程序),你应该:emerge kde-meta    .至此,期待已久的kde4终于安装成功了~~

大家如果还有什么问题的话可以给我发邮件:zhongyijun48729730@gmail.com 

下面是kde4.2的两个截图: 

          

 

kde4.2 package.keywords

app-arch/libarchive
app-misc/strigi
app-office/akonadi-server
app-text/ebook-tools
dev-cpp/eigen:2
>=dev-libs/libical-0.33-r1
dev-libs/libzip
dev-libs/soprano
>=dev-util/cmake-2.6.2
>=kde-base/qimageblitz-0.0.4
media-sound/phonon
>=sci-mathematics/gmm-3.0
>=x11-apps/xinit-1.0.5-r2

kde-base/akonadi:4.2
kde-base/akregator:4.2
kde-base/amor:4.2
kde-base/ark:4.2
kde-base/automoc
kde-base/blinken:4.2
kde-base/bomber:4.2
kde-base/bovo:4.2
kde-base/cervisia:4.2
kde-base/dolphin:4.2
kde-base/dragonplayer:4.2
kde-base/drkonqi:4.2
kde-base/gwenview:4.2
kde-base/juk:4.2
kde-base/kaddressbook:4.2
kde-base/kalarm:4.2
kde-base/kalgebra:4.2
kde-base/kalzium:4.2
kde-base/kamera:4.2
kde-base/kanagram:4.2
kde-base/kapman:4.2
kde-base/kappfinder:4.2
kde-base/kapptemplate:4.2
kde-base/kate:4.2
kde-base/katomic:4.2
kde-base/kbattleship:4.2
kde-base/kblackbox:4.2
kde-base/kblocks:4.2
kde-base/kbounce:4.2
kde-base/kbreakout:4.2
kde-base/kbruch:4.2
kde-base/kbugbuster:4.2
kde-base/kcachegrind:4.2
kde-base/kcalc:4.2
kde-base/kcharselect:4.2
kde-base/kcheckpass:4.2
kde-base/kcminit:4.2
kde-base/kcmshell:4.2
kde-base/kcolorchooser:4.2
kde-base/kcontrol:4.2
kde-base/kcron:4.2
kde-base/kdeaccessibility-colorschemes:4.2
kde-base/kdeaccessibility-iconthemes:4.2
kde-base/kdeaccounts-plugin:4.2
kde-base/kdeartwork-colorschemes:4.2
kde-base/kdeartwork-desktopthemes:4.2
kde-base/kdeartwork-emoticons:4.2
kde-base/kdeartwork-iconthemes:4.2
kde-base/kdeartwork-iconthemes:4.2
kde-base/kdeartwork-kscreensaver:4.2
kde-base/kdeartwork-sounds:4.2
kde-base/kdeartwork-styles:4.2
kde-base/kdeartwork-wallpapers:4.2
kde-base/kdebase-cursors:4.2
kde-base/kdebase-data:4.2
kde-base/kdebase-desktoptheme:4.2
kde-base/kdebase-kioslaves:4.2
kde-base/kdebase-startkde:4.2
kde-base/kdebugdialog:4.2
kde-base/kdedglobalaccel:4.2
kde-base/kdegraphics-strigi-analyzer:4.2
kde-base/kde-l10n:4.2
kde-base/kdelibs:4.2
kde-base/kdemaildir:4.2
kde-base/kde-menu:4.2
kde-base/kde-menu-icons:4.2
kde-base/kdemultimedia-kioslaves:4.2
kde-base/kdenetwork-filesharing:4.2
kde-base/kdepasswd:4.2
kde-base/kdepim-icons:4.2
kde-base/kdepim-kresources:4.2
kde-base/kdepimlibs:4.2
kde-base/kdepim-strigi-analyzer:4.2
kde-base/kdepim-wizards:4.2
kde-base/kdeplasma-addons:4.2
kde-base/kdesdk-kioslaves:4.2
kde-base/kdesdk-misc:4.2
kde-base/kdesdk-scripts:4.2
kde-base/kdesdk-strigi-analyzer:4.2
kde-base/kdessh:4.2
kde-base/kdesu:4.2
kde-base/kde-wallpapers:4.2
kde-base/kdf:4.2
kde-base/kdialog:4.2
kde-base/kdiamond:4.2
kde-base/kdm:4.2
kde-base/kdnssd:4.2
kde-base/kdnssd:4.2
kde-base/keditbookmarks:4.2
kde-base/kephal:4.2
kde-base/kfile:4.2
kde-base/kfilereplace:4.2
kde-base/kfind:4.2
kde-base/kfloppy:4.2
kde-base/kfourinline:4.2
kde-base/kgamma:4.2
kde-base/kgeography:4.2
kde-base/kget:4.2
kde-base/kgoldrunner:4.2
kde-base/kgpg:4.2
kde-base/khangman:4.2
kde-base/khelpcenter:4.2
kde-base/khotkeys:4.2
kde-base/kiconfinder:4.2
kde-base/kig:4.2
kde-base/killbots:4.2
kde-base/kimagemapeditor:4.2
kde-base/kinfocenter:4.2
kde-base/kioclient:4.2
kde-base/kiriki:4.2
kde-base/kiten:4.2
kde-base/kjots:4.2
kde-base/kjumpingcube:4.2
kde-base/kleopatra:4.2
kde-base/klettres:4.2
kde-base/klines:4.2
kde-base/klinkstatus:4.2
kde-base/klipper:4.2
kde-base/kmag:4.2
kde-base/kmahjongg:4.2
kde-base/kmail:4.2
kde-base/kmailcvt:4.2
kde-base/kmenuedit:4.2
kde-base/kmimetypefinder:4.2
kde-base/kmines:4.2
kde-base/kmix:4.2
kde-base/kmousetool:4.2
kde-base/kmouth:4.2
kde-base/kmplot:4.2
kde-base/knetattach:4.2
kde-base/knetwalk:4.2
kde-base/knetworkconf:4.2
kde-base/knewstuff:4.2
kde-base/knode:4.2
kde-base/knotes:4.2
kde-base/knotify:4.2
kde-base/kode:4.2
kde-base/kolf:4.2
kde-base/kollision:4.2
kde-base/kolourpaint:4.2
kde-base/kommander:4.2
kde-base/kompare:4.2
kde-base/konqueror:4.2
kde-base/konquest:4.2
kde-base/konsole:4.2
kde-base/kontact:4.2
kde-base/kontactinterfaces:4.2
kde-base/kontact-specialdates:4.2
kde-base/kopete:4.2
kde-base/korganizer:4.2
kde-base/kpasswdserver:4.2
kde-base/kpat:4.2
kde-base/kpilot:4.2
kde-base/kppp:4.2
kde-base/kquitapp:4.2
kde-base/krdc:4.2
kde-base/kreadconfig:4.2
kde-base/kreversi:4.2
kde-base/krfb:4.2
kde-base/krosspython:4.2
kde-base/krossruby:4.2
kde-base/kruler:4.2
kde-base/krunner:4.2
kde-base/ksame:4.2
kde-base/ksaneplugin:4.2
kde-base/kscd:4.2
kde-base/kscreensaver:4.2
kde-base/kshisen:4.2
kde-base/ksirk:4.2
kde-base/ksmserver:4.2
kde-base/ksnapshot:4.2
kde-base/kspaceduel:4.2
kde-base/ksplash:4.2
kde-base/ksquares:4.2
kde-base/kstars:4.2
kde-base/kstart:4.2
kde-base/kstartperf:4.2
kde-base/kstartupconfig:4.2
kde-base/kstyles:4.2
kde-base/ksudoku:4.2
kde-base/ksudoku:4.2
kde-base/ksysguard:4.2
kde-base/ksystemlog:4.2
kde-base/ksystraycmd:4.2
kde-base/kteatime:4.2
kde-base/ktimer:4.2
kde-base/ktimetracker:4.2
kde-base/ktimezoned:4.2
kde-base/ktouch:4.2
kde-base/ktraderclient:4.2
kde-base/kttsd:4.2
kde-base/ktuberling:4.2
kde-base/kturtle:4.2
kde-base/ktux:4.2
kde-base/kubrick:4.2
kde-base/kuiserver:4.2
kde-base/kuiviewer:4.2
kde-base/kurifilter-plugins:4.2
kde-base/kuser:4.2
kde-base/kwallet:4.2
kde-base/kwalletd:4.2
kde-base/kweather:4.2
kde-base/kwin:4.2
kde-base/kwordquiz:4.2
kde-base/kwrite:4.2
kde-base/kwrited:4.2
kde-base/kxsldbg:4.2
kde-base/libkcddb:4.2
kde-base/libkcompactdisc:4.2
kde-base/libkdcraw:4.2
kde-base/libkdeedu:4.2
kde-base/libkdegames:4.2
kde-base/libkdepim:4.2
kde-base/libkexiv2:4.2
kde-base/libkholidays:4.2
kde-base/libkipi:4.2
kde-base/libkleo:4.2
kde-base/libkmahjongg:4.2
kde-base/libkonq:4.2
kde-base/libkpgp:4.2
kde-base/libksane:4.2
kde-base/libksieve:4.2
kde-base/libkworkspace:4.2
kde-base/libplasmaclock:4.2
kde-base/libtaskmanager:4.2
kde-base/lilo-config:4.2
kde-base/lokalize:4.2
kde-base/lskat:4.2
kde-base/marble:4.2
kde-base/mimelib:4.2
kde-base/nepomuk:4.2
kde-base/nsplugins:4.2
kde-base/okteta:4.2
kde-base/okular:4.2
kde-base/parley:4.2
kde-base/phonon-kde:4.2
kde-base/plasma-apps:4.2
kde-base/plasma-workspace:4.2
kde-base/powerdevil:4.2
kde-base/printer-applet:4.2
kde-base/pykde4:4.2
kde-base/renamedlg-plugins:4.2
kde-base/solid:4.2
kde-base/solid-hardware:4.2
kde-base/soliduiserver:4.2
kde-base/step:4.2
kde-base/superkaramba:4.2
kde-base/svgpart:4.2
kde-base/sweeper:4.2
kde-base/system-config-printer-kde:4.2
kde-base/systemsettings:4.2
kde-base/umbrello:4.2

# meta ebuilds
kde-base/kdeaccessibility-meta:4.2
kde-base/kdeadmin-meta:4.2
kde-base/kdeartwork-meta:4.2
kde-base/kdebase-meta:4.2
kde-base/kdeedu-meta:4.2
kde-base/kdegames-meta:4.2
kde-base/kdegraphics-meta:4.2
kde-base/kde-meta:4.2
kde-base/kdemultimedia-meta:4.2
kde-base/kdenetwork-meta:4.2
kde-base/kdepim-meta:4.2
kde-base/kdesdk-meta:4.2
kde-base/kdetoys-meta:4.2
kde-base/kdeutils-meta:4.2

终于完成Gentoo 2008的安装,快要吐血啦~~

说明:本文乃原创,如需转载,请注明出处~~~

随着昨天早上scim 中文输入法的安装,我的Gentoo终于算是基本竣工了,说是竣工,一点也不夸张,因为这确实是一个浩大的工程~~哎,一句话,累~~~,不过,我很高兴,很充实,我真的学了很多~~~

 从元旦的那天晚上11点30分开始安装,到昨天早上,算起来,怎么也得有20天的时间来安装这个系统了,每天平均的时间在四个小时以上~~~我知道安装Gentoo会花很多的时间,所以不得不抽期末的时间来安装,况且恰巧元旦的那天正好碰上通宵供电,当时我就乐了,心想:有这样的机会,三天左右我还不安装成功???   呵呵,事实证明我好幼稚,我踏上了一条长长的吐血之路~~安装的过程中出现老多的问题了。  

我想把这个安装过程记录下来,还有一些精彩的截图,希望对需要的朋友有一些用处,当然这里没有官方安装文档详细,这里提供的一些细节问题还是值得你注意的,比如说汉化的方面官方文档的说明就让我不太满意。官方安装文档,很详细(注意选对版本,比如说,你的机器是64位的,你就要选择amd64的):  

http://www.gentoo.org/doc/zh_cn/handbook/ 

 

下面是我总结安装过程中的一些注意事项:

一.我装的是双系统,分区状况:

/dev/sda1  Windows XP C 盘(11G); 

/dev/sda2  Gentoo boot 分区(43M);

/dev/sda3 Gentoo根(/)分区(60G);

/dev/sda5  Gentoo Swap 分区(400M);

/dev/sda6  Windows XP D 盘(62G);

/dev/sda7  Windows XP  E盘(18G).

先琢磨你如何安排你的分区,在运行下面的命令:

分区命令:cfdisk  /dev/sda(最好不要用fdisk /dev/sda 或者 fdisk /dev/hda,因为这个分区工具你看不到你的分区状况,Gentoo安装手册上用的就是这个工具,但是我觉得甚是不好用,强烈不推荐,你不信你可以试试); 

 之后会出现你硬盘的信息,按界面分区就可以了~~

我的情况:

/dev/sda2   /boot分区(50M);

/dev/sda3   /  分区(60G);

/dev/sda5   /swap 分区(400M);

 

二.注意:你如果安装双系统的话,一定一定要把你硬盘上的第一个分区给windows 的C盘,因为windows安装盘默认把硬盘的第一个分区当成C盘,你如果把linux的分区安装在第一个分区里,之后你安装windows的时候就会出错,我试过了。      

三.我当时安装时候的一些精彩截图

1. stage3

 

   

2.下载并安装portage快照

 

 

 


 
  3.选择镜像站点
    


4.更新portage 

 

 

 

 

 

 

5.安装内核源码

 

 

6.配置内核

 

 

7.编译内核 

 

 

8.安装内核 

这步一定不要忘记了,要不然后果会很严重:系统启动的时候会出现找不到镜像文件的错误~~~

#cp arch/i386/boot/bzImage/boot/kernel-*-r* (写上你内核的相应版本)
 
 

  在安装完基本系统之后,紧接着就开始安装桌面:kde,gnome或者Xface,

由你自己去选择;安装手册上有详细介绍,我这里也不多说了。

我安装系统守护进程工具,网络工具等等的一些东西:

系统日志工具:

    


cron守护进程:


安装网络工具:

 

 

 

下面我总结我安装过程中出现的错误,或许对大家的帮助很大:



 一.配置内核

问题一:无法找到root文件系统

这里出的问题是最多的,也是最难解决的,我在这里折腾了将10天左右。

我当时的错误信息如下:

(1)Root-NFS:No NFS server available,giving up;
(2)VFS:Unable to mount root fs via NFS,trying floppy;
(3)VFS:Cannot open root device "sda3" or unknown block(2,0);
(4)Please append a correct "root = " boot option;

here are the available patitions:0b00  1048575 sr0 drivers:sr;
(5)kernel panic -not syncing:VFS:

Unable to mount root fs on unknown block(2,0);  


   注意最后的那行,问题就是那里了,后来查了无数的帖子,发了无数的帖子,

最后终于在gentoo中文论坛上找到问题的解决办法了:

http://www.linuxsir.org/bbs/thread320006.html

我超级感谢这个帖子,弄去弄来原来是我的主板驱动:

Device Drivers --->ATA/ATAPI/MFM/RLL support

--->AMD and nVidia IDE support);

和scsi驱动:

Device Drivers --->SCSI device support --->SCSI disk support);

还有SATA驱动:

Device Drivers --->

Serial ATA (prod) and Parallel ATA (experimental) drivers

--->NVIDIA SATA support;  

没有编进内核,也就是选项前面必须有“*”号,不能把他们编译成模块;   

 

问题二:无法找到内核在什么地方

我当时出现的信息如下:

Error 15: File not found
Press any key to continue...  

 

原因:我没有拷贝内核镜像,也就是忘记如下命令:

# cp arch/i386/boot/bzImage/boot/kernel-*-gentoo-*; 

导致系统启动的时候找不到内核镜像,也就是/boot分区中没有kernel;  

解决方法,用安装盘进入系统重新配置,编译和拷贝内核;

 

二.安装桌面

 

开始我就决定安装GNOME了,可惜电脑不争气,没有安装成功,代码如下:

 (1)vim /etc/make.conf

(2)USE="-qt3 -qt4 -arts -kde X dbus gtk gnome hal avahi";

(3)emerge gnome 

我下载gnome时候的截图:

(3)$ echo "exec gnome-session" > ~/.xinitrc;

(4)$startx;(以普通用户运行);

 当时我还满怀信心地看见那熟悉的桌面,可惜电脑还是出现
可怕的黑屏幕(PS:其实我很喜欢黑屏幕的,感觉很深邃,但是那个时候就是害怕啊~~呵呵~~)
心想,完了,以后不会一直和黑屏幕打交道吧??
静下心来想想,没事,安装不了GNOME,为何不试试KDE呢??听说KDE比GNOME漂亮多了~~~ 抱着试试的心态,又踏上安装kde桌面的征程:
我当时的代码:
(1)emerge kde-meta;
(2)$ echo "exec startkde" > ~/.xinitrc;
(3)$startx; 
 
结果还是那个黑屏幕,当时差点死心了,真的怕了黑屏幕了,
不过我还是不死心,想想:是不是我少打了哪个命令了??
再折回安装手册仔细地看,原来startkde这个东西没有安装,
于是我又试试:
 #emerge kdebase-startkde; 
接着:$startx(切换到普通用户)  
哈哈,桌面终于露出来了:蓝蓝的,色感极佳~~我的天啊,
当时把我兴奋的,我都高兴了好几个小时呢,我记得那天晚上 好像是我寒假最快乐的时光了,哈哈~~

看看我安装kde成功后的画面:

 


  

kde真美~

呵呵,不过还是有些遗憾,至今仍然没有弄清楚GNOME出现的错误~~~
我和KDE的情况做了比较,我有如下想法:startgnome没有安装~~
呵呵,乱猜的,没有试验过~~

 
 
三.系统的汉化工作
    这个问题也折腾了我将近一个星期的时间,开始以为按照
官方手册上的步骤就能看到中文,可是,异想天开啊:
#vim /etc/make.conf
LINGUAS="zh_CN zh_CN.UTF-8"  
#emerge kde-i18n
 后来google了一些gentoo中文美化的一些资料,终于
找到解决办法了,下面是那个对我中文化帮助很大的那个地方:
http://www.91linux.com/html/linux_pub/gentoo/20070202/558.html
 (看最后的部分就行了,前面的没必要看)  
问题算是解决了,想想看,原来是自己没有下载中文字体~~

    我又按照上面那个地址安装了输入法,但是也没有成功,
不得不google了一下,终于找到下面的好帖子:

http://www.cnblogs.com/wllyy189/archive/2008/09/28/1301195.html
呵呵,这个地方又救了我一命,后来仔细一想,原来是环境变量没有设置正确~~~
至此,我心里踏实了很多啊~~~
强烈奉劝各位,在emerge kde-i18n之后一定要找一些中文美化的
帖子,因为官方文档上没有提到中文字体的安装问题,像上面我贴出来的地址就是很好的一个地方~~
唉,20多天的努力算是有了一个结果了,回想这个过程,感慨颇多,但最刻骨铭心的是:
有时候坚持是多么重要啊!!! 有什么问题的话可以给我发邮件:
zhongyijun48729730@gmail.com

Page 8 of 8« First...45678