Sunday, February 15, 2009

RHCE 02-15 随堂笔记

今天上午课内容好多,不过下午老师有事不来了就把所有内容都练了一遍,觉得已经比较熟练,总结一点点经验。错误出了很多,不过在老师的帮助下还是全部都解决了。
  • rpm的一点点常用指令选项
# rpm -q name -- 查看name是否安装
# rpm -qa name -- 在所有包中查看name是否安装
# rpm -qf /bin/more -- 查看more文件的依赖关系 (如本例中的/bin/more 包是依赖于util-linux-2.13-0.44.el5)
# rpm -ql -- 查看一个已经安装过的rpm包的详细资料
# rpm -qpl -- 查看一个没有安装的rpm包的详细资料
.....对于rpm的使用方法网上有很多文章介绍,这里不再赘述。
  • Linux内核模块 -- 即驱动
Linux 的内核模块存在于 /lib/modules/$(uname -r) -- "$(uname -r)" 是你现在所使用的内核名常量,相当于执行 uname -r 后把得到的内容加到 /lib/modules/$(uname -r) 的结果。
# lsmod 指令能够列出系统中存在的模块。
# modprobe dm_zero 指令能够安装"dm_zero模块"
# rmmod dm_zero 指令能够卸载"dm_zero模块"
# modinfo bluetooth 指令能够查看"bluetooth"模块的详细信息
模块能够从其他的匹配机器上复制过来使用。
  • 修复Linux启动错误的实验
这个实验可以自己自定义很多种不同的情况,毕竟现在创造出来问题解决掉比将来遇到问题解决不了要好很多。

1.删除/boot/initrd-2.6.18-8.el5xen.img 的映像文件并想办法修复(映像文件名称可能不一样,取决于你所用内核。)
解决方法:使用和本地系统同版本的光盘引导系统,在开机显示boot:那里输入linux rescue 并敲回车。
进入以后会给你一个很简陋的shell,再完成之后他会告诉你本地系统被挂在到哪个文件夹(似乎是/mnt/sysimages/什么什么),按照他的提示chroot到你本地系统中:
# chroot /mnt/sysimages/blabla/
这时你就有了执行本地操作系统里面程序的权限,相当于是用光盘引导进入了本地电脑中。
接下来自己建立一个映像文件:
# mkinitrd /boot/initrd-$(uname -r)xen.img $(uname -r)xen
这条命令有几点需要注意:
1.他于一般的命令不同,目标文件在前面也就是建立的影像文件会放到/boot 中。2.initrd-$(uname -r)xen.img 的解释同这篇文章第二部分。
3.本机系统内核必须与光盘系统内核完全匹配,不然是没办法生成的。
以上是通过光盘的方法进行修复,当然我们也可以借助网络的办法修复。
在开机的时候选择网络引导,进行配置引导进入另一台含有与本地系统同版本yum仓库的电脑。
同样在boot:里面输入rescue(这里需要在含有yum仓库电脑配置使支持在启动时进入rescue模式,比较复杂,没和老师学来,等学会再发)。
然后可能过程有点像是安装,但是其实最后会让你进入rescue模式的。
剩下的过程和光盘引导修复的方法一样,不再赘述。

2.错误的LABEL和grub.conf 配置文件
这个实验是当grub.conf 定义root目录时使用LABEL标签但系统中错误指定或者没有指定LABEL标签内容导致无法引导系统。
比如我们使用
# e2label /dev/VolGroup00/LogVol00 abc
错误的指定/dev/VolGroup00/LogVol00 到abc目录,但是abc目录并非系统主目录"/"
并且我们在grub.conf 中错误的配置了root=LABEL=abc 或者root=LABEL=/etc 一类的,总之root=后面的LABEL并非存在的标签或者标签定义到错误的根目录。
解决方法:首先用上例的办法引导并用chroot切换到本地系统。
然后使用
# more /etc/fstab
查看本地系统磁盘挂载情况
/dev/VolGroup00/LogVol00 / ext3 defaults 1 1
LABEL=/boot /boot ext3 defaults 1 2
devpts /dev/pts devpts gid=5,mode=620 0 0
tmpfs /dev/shm tmpfs defaults 0 0
proc /proc proc defaults 0 0
sysfs /sys sysfs defaults 0 0
/dev/VolGroup00/LogVol01 swap swap defaults 0 0
可以见得/dev/VolGroup00/LogVol00 是我的主目录对应的分区。
然后用
# e2label /dev/VolGroup00/LogVol00 /
指定主目录 "/" 指向分区/dev/VolGroup00/LogVol00
然后在/boot/grub/grub.conf 中修改对应的root值,可以修改成:
root=/dev/VolGroup00/LogVol00 或者
root=LABEL=/
这样系统就可以启动了。
需要注意的是,如果系统是因为LABEL指定错误目录名并且grub.conf 中root定义错误而无法启动时,就算是在开机grub选单中更改了root=/dev/VolGroup00/LogVol00 用绝对路径也是访问不了系统的。他会卡在磁盘检测的时候,这时候按照提示输入管理员密码进入一个简单shell然后用e2label 更改错误的标签并重启才可以进入系统。

3.删除了MBR中的grub信息导致的无法启动
为了达到这样的效果我们需要编写一小段代码:
#!/bin/bash
dd if=/dev/zero of=/dev/sda bs=1 count=446
这段代码的意思是用/dev/zero 这段空代码覆盖到/dev/sda 也就是硬盘开头的446kb长度的内容。换句话说就是把MBR中的内容擦掉了。
注意:count=446一定不能更改,超过446一点都可能会把有用硬盘数据抹掉。
把上面那段代码保存为任意文件名,然后用
# chmod +x 文件名
加入可执行权限,再用
# ./文件名
执行这段代码并重新启动,就会发现在GRUB选单部分黑屏不动了。
解决方法:用光盘或者网络引导进入rescue模式,获得shell。执行
# grub-install /dev/sda
后面的/dev/sda 根据硬盘类型而定,SATA硬盘就是sda,IDE硬盘就是hda,第二块硬盘就是hdb或者sdb。
重启后就又可以引导系统了。

这类的实验还需要做很多,grub.conf 的内容也需要完全背下来,如果想在RHCE中考得满分的话。
  • Linux在网络中的应用
这段内容由于我没有网络方面的基础,听得有点晕,主要就是说Linux操作系统可以很方便的作为DNS、DCHP、路由器的等实现对公司开销的减省。老师讲的功能是:
更改hostname
用hostname查看并更改本机的别名
添加虚拟网卡
用 ifconfig eth0:0 IP地址 可以定义一个名为eth0:0的网卡并且指定IP地址,重启消失。
为了让他重启生效需要以下的步骤:
# cd /etc/sysconfig/network-scripts/
# cp ifcfg-eth0 ifcfg-eth0:0
# vi /ifcfg-eth0:0
删除掉其中的MAC地址那一行,改DEVICE=etho 的eth0为"ifcfg-" 后面接的那一部分,然后再自己定义一个IP地址就好了,格式为IPADDR=IP地址。
增加Linux路由器的功能
# vi /etc/sysctl.conf
更改net.ipv4.ip_forward = 0 的0 为1即可。
如果希望临时添加路由功能也可以利用/proc
# cat /proc/sys/net/ipv4/ip_forward
如果为0就表示没有开启,要开启不能编辑那个文件,需要echo进去:
# echo 1 > /proc/sys/net/ipv4/ip_forward
这样就好了,重启会失效。
为了让上面的命令配置立即生效的话需要用指令
# sysctl -p
  • 查看本机的caches
free命令可以查看到本机的caches,caches越大系统性能越好,如果想要把caches清空还是可以利用/proc
# echo 1 > /pro/sys/vm/drop_caches
这样系统caches就被drop掉了。
  • 学好mknod指令解决硬件问题
用mknod指令可以创建硬件设备文件,这个我没学好,+_+
  • vmstat只管查看系统性能情况
简单。
swapon -s 启用交换分区
这条命令和有些发行版的不太一样,需要-s 参数。
  • 查看用户登陆系统
uptime=w > who
  • tload查看系统负载
一样简单。
  • 对nfs和ftp在xen虚拟机安装时的认识
在网络安装的时候我们老容易犯错误,几乎都是把目录名称搞错。
在nfs使用的时候需要指定的目录名称是系统的绝对路径,比如/var/ftp/pub/rhel
而在ftp使用的时候需要指定的目录名称是系统的相对路径,也就是只用/pub/rhel就行了
而且在虚拟机已经启动了以后需要指定安装位置我们选择了ftp的话只用输入ftp的IP地址就行了,不能输入ftp:// 输了就会找不到地方的~~
好困=_=,明天开课了,祝愿我新学期能不那么辛苦~这周末再见!

Saturday, February 14, 2009

RHCE 02-14 随堂笔记

今天是我上的RHCE的第一堂课,看到RHCA的强大实力,顿时学习有了力量。超过前辈们就是我的目标!
把上课的内容小结一下。

上午是苏老师讲的131的第一章内容,下午吴老师抽讲了一些内容:
  • FTP和TFTP的区别
ftp使用的是TCP传输协议,可靠但是效率低,适用于广域网。
tftp就是简单的ftp,使用UDP协议,可靠性差但是效率高,适用于局域网。
  • 最基础的Linux就是initrd.img + vmlinuz
Linux == OS ==> kernel = initrd.img + vmlinuz
并且initrd是为了系统内核的稳定性建立的,是为了不把太多的东西加载到内核里面而独立出来的驱动。vmlinuz是Linux系统的主内核,包含常用驱动。
  • /proc强大
他可以做很多很夸张的事情,比如随意的断掉和连接一块硬盘,顶级的优化系统等,但是学起来很是恶心。
  • 老师排斥CDROM
感觉上老师是很能用MBA的人,他不喜欢用CDROM,所有的一切都是通过网络或者本地硬盘实现,他说用Live CD引导本地的安装用的指令是在boot: 后面输入 linux askmethod 这个以后我再研究,毕竟咱是菜鸟。
  • 关于First Boot
First Boot是老师觉得RedHat设计很不合理的一个地方,只有在图形安装时他才会出现,而且名为First Boot就是只有在第一次安装的时候才会用的上。因此后面学习优化系统的时候要把他从服务里面禁止掉。
  • Kdump是什么?
Kdump就是Kernel Dump,老师一开始把这个东西删除了,因为觉得没用,其实这个是超级有用的东西,可以用来排除内核错误,kernel死后他都能运行,可想如果木马以这种方式加载是何等的牛逼!~这个也是以后才用的着研究的东西。
  • 精简系统服务
简单的优化可以用setup命令里面的System services 设置就可以了。
以下服务一般去掉:
atd -- 自动化任务控制器,由于有了crond,所以老的就去掉了
bluetooth -- 蓝牙,我的电脑都没有,关掉是必须的
ip6tables -- ipv6的支持,我没有,所以关掉
isdn -- 几乎没人再用的上网方式,关掉
rhnsd -- 透过rhnsd服务器使RedHat保持最新状态,我当然没钱买这个了,所以用不找,关掉
sendmail -- 使用sendmail来发邮件,我都是用网页发邮件的,不用,关掉
yum -- update 学习用的RHEL嘛,更新还是我自己手动来做吧,省的不小心覆盖了以前修改的内容,关掉
  • 系统如何知道你的分区是可引导分区?
在可引导分区的第一扇区的最后两位上有诸如“0x55aa”的标记系统就知道这个是可引导的了。
  • grub引导
分为stage1和stage2,stage1有512kb
/boot/grub/stage1就是写在hd0里面的所有内容,有512kb大小,但是实际使用中是不用他的。
/boot/grub/ 中含有很多*_stage1_5 的文件,分别对应着不同的引导方式。
root=LABEL=/ 可以替换为 root/dev/sdax 也就是LABEL只是个标签,是可变的,用来替换绝对路径诸如/dev/sda1一类的。
rhgb是图形化启动
quiet是不显示内核加载的所有情况
  • 合理使用groupinstall
很多东西诸如Gnome、Virtualization需要使用
# yum groupinstall
来实现,这样才能完美使用。
  • 用rpm -ivh 而不用 rpm -uvh
-ivh是直接安装,以前的旧版本如果不冲突会保留,而-uvh参数安装为升级安装,会把以前的旧版本覆盖掉,诸如kernal的安装和编译的时候就需要使用-ivh安装以免编译失败造成无法使用和恢复。
  • partprobe的妙用
诸如在使用fdisk分完区以后需要重启,但是可以使用这条指令就可以不用重启也能应用新的分区方案。
  • NFS的简单配置
只要三个步骤:
# vim /etc/exports
填入:
/var/ftp/pub *(sync,ro)
即可,/var/ftp/pub 可以替换为需要的目录,*代表所有文件,sync代表同步,ro代表readonly
重启NFS:


如果需要载入nfs也是很简单的,有nfs可以淘汰ftp了:
# mount ip:目录 挂载到的目录
  • 提高效率的&
在需要很长时间执行的命令后面加上“ &”,里面是空格和&,回车后任务会在后台运行,输入jobs就会调出执行情况,执行完毕以后会有提示,在这期间你可以做别的任何事情。
  • 建立自己的yum仓库
在RHEL仓库中有诸如Server、VT、Cluster 等一类的文件夹,这些文件夹构成了RedHat的yum仓库。在没有RHN认证的情况下可以自己建立一个yum仓库使用,方法很简单,方法大同小异,下面以建立Server仓库为例。
Server里面包含有系统常用的一些服务程序,找到Server文件夹,cd进去。执行下面的安装指令:
# rpm -ivh creatrepo (按tab键补全后回车)
这个包使用来建立repodate文件夹中内容的。
接下来把yum仓库中的内容拷贝到本地电脑中,进入Server目录,执行:
# mv repodate repodate.bk (将repodate文件夹中内容转移到repodate.bk中相当于做一备份)
这时没有repodate文件夹了,所以要新建一个:
# mkdir repodate
cd进去,用createrepo指令建立一个新的repodate文件夹内容:
# createrepo -g repodate.bk/comps-rhel5-server-core.xml /var/ftp/pub/rhel/Server/
comps-rhel5-server-core.xml文件可能不叫这个名字,取决于你用的yum源版本,只要开头是comps的就行。/var/ftp/pub/rhel/Server/ 是你希望Server仓库存在于你系统中的位置。

这时一个Server的仓库就建立好了,剩下的VT等都可以通过这种方式建立。
然后你可以使用http或者ftp的方式发布给你的好友,通常建议使用http的方式,如果是局域网我们一般用ftp。
你的好友在使用是只要在/etc/yum.repos.d/ 中建立一个任何名字的.repo文件填入类似于下面的内容:
[Server]
name=Red Hat Enterprise Linux Server
baseurl=http://ftp.xalinux.org/rhel5.2/Server
enabled=1
gpgcheck=0

再yum clean all一下就好了
如果本机想使用本机上的yum源只要制定位置为file:///目录就可以了。
在新的RHEL5操作系统中gpgcheck如果设置为1就必须制定gpgkey的位置,一般在仓库主目录里面,也就是Server的上层目录中。详细内容还是Google一下为好。

以上是第一次上课学到东西的一点总结,有说的不对的地方您一定要指出!

Wednesday, February 11, 2009

西安昇旭的RHEL5更新源

今天老大给做了个RHEL5的源:

http://ftp.xalinux.org

是他通过自己的RHN账号登陆上服务器下载下来的。现在给出设置:

在/etc/yum.repos.d/ 目录下新建一个xalinux.repo的文件:

# vim /etc/yum.repos.d/xalinux.repo

写入以下内容:

[Cluster]
name=Red Hat Enterprise Linux $releasEVEr - $basearch - Cluster
baseurl=http://ftp.xalinux.org/rhel5.2/Cluster
enabled=1
gpgcheck=0

[ClusterStorage]
name=Red Hat Enterprise Linux $releasEVEr - $basearch - ClusterStorage
baseurl=http://ftp.xalinux.org/rhel5.2/ClusterStorage
enabled=1
gpgcheck=0

[Server]
name=Red Hat Enterprise Linux $releasEVEr - $basearch - Server
baseurl=http://ftp.xalinux.org/rhel5.2/Server
enabled=1
gpgcheck=0

[VT]
name=Red Hat Enterprise Linux $releasEVEr - $basearch - VT
baseurl=http://ftp.xalinux.org/rhel5.2/VT
enabled=1
gpgcheck=0


然后就可以享受和注册用户一样的待遇了~!

Tuesday, February 10, 2009

看看你的网站值多少钱

从别人那里看到一个有趣的网站可以查看你网站值多少钱:Stimator
这个博客的价值似乎很低很低饿:


看看我以前的博客(http://noodlejin.spaces.live.com):


发财咯,谁想要我8折出售拉!
本网站仅供娱乐,点击Check yours?进行测试


$5,295,704

Monday, February 09, 2009

中国Linux界的一些牛人

李亮,网名:holly,CCE现任维护人员,系上海交通大学毕业,目前在上海交通大学图书馆工作。对于CCE的分析、改写和维护起到了很大作用。另外还编写了若干Apache的模块,满足了某些特定要求。详情请访问http://programmer.lib.sjtu.edu.cn。

王剑,网名:Lark,GNOME/KDE/WindowMaker/GNU简体中文化(I18N/L10N)的领导者。目前所见到的各大中文发行套件当中缺省使用的桌面中文讯息皆为王剑先生所领导的zh_CN小组所完成。详情请访问http://i18n.linux.net.cn。

李振春,网名:shi,系自由拼音的作者。目前CCE-0.3x系列和Unicon系列以及Chinput系列所使用的智能拼音输入法模块皆直接来源于李振春先生的FreePY算法。详情请访问http://freepy.yeah.net。

邓煜(devin)、李凌(hahalee)、廖生苗(samuel)三剑客为蓝点Linux创始人,其首先实现(并非首先提出)的自内核使用FrameBuffer特性显示中文的技术开创了一个时代,为广大中文Linux爱好者提供了最好的中文Linux发行套件之一。详情请访问http://www.openunix.org。

赵蔚,网名:zhaow,是南京LUG领导人物,南京LUG是国内较早的LUG之一,他热心于技术和思想普及,目前为Debian中文计划的重量人物。

利启诚,网名:Mephisto,系清华大学电子工程系1994-1999年本科生,曾任水木清华BBS中Linux版斑竹,我个人认为他是历届Linux版斑竹中编程水平最高深之人物。曾经仅花费3天时间实现自TurboLinux中文版6.0开始使用的Unicon显示部分(输入法部分由马军老师实现),比起蓝点Linux的置入内核当中的zhcon更为安全;在极短时间内与智能启动管理器(SmartBootManager)作者苏哲合作,实现了光驱引导模块,此为全球第一个可以实现光驱引导的自由软件之启动管理器;参与InterMezo等国际项目,取得很好效果。

马军,网名:arthur,为北京Turbolinux公司研发工程师,系Unicon的原创作者之一,主攻Unicon之中文输入法部分,现在全面接管Unicon工作。详情请访问http://www.turbolinux.com.cn。

谢华刚,网名:vertex,系海南省海南中学毕业、清华大学热能系本科毕业和中科院计算所硕士研究生毕业,为国际项目LIDS(Linux入侵检测系统)创始人。详情请访问http://www.lids.org。

黄志伟,CLDP-中文Linux文档工程的领军人物,CLDP-LDP的中文版包括Linux HOWTO及mini-HOWTO中文文档,在整个中文地区广为流传。

章文嵩,系国际项目LVS(Linux虚拟服务器)创始人。详情请访问http://www.linuxvirtualserver.org/。

苏哲,网名:suzhe,现任水木清华Linux版斑竹,为国际项目SmartBootManager(智能启动管理器)原创者。曾多次撰稿宣传自由软件和Linux,并为社区贡献三个自由软件。其所创始之SBM据传将成为两个重要中文发行套件的默认系统启动管理器。详情请访问http://suzhe.gnuchina.org。

宫敏、张鹿,均为国内自由软件先驱和中坚人物,他们创建了著名的中国自由软件库站点。详情请访问http://freesoft.cei.gov.cn。

章峰,网名:fzhang,利索的脚(LisoLeg),即Linux源码学习小组领军人物,中国科技大学博士。组织《Linux设备驱动》的中文翻译版。对于国内Linux内核源码的研究起到不小的作用。详情请访问http://www.lisoleg.org。

何小波、陶品、郭海鹏、伏建军,为中国信息技术论坛AKA自由软件联盟创始人及主要人物,对于自由软件的宣传不遗余力。详情请访问http://www.aka.org.cn。

常晓光,北京Linux俱乐部发起人,为BJLC的创立和发展起到了领袖作用。详情请访问http://www.linuxchina.org。

袁萌:前实达朗新TomLinux总工,现为共创联盟软件总工,《Linux产业》/《共创软件》主编,是我国Linux界的旗手,大家都尊称他为袁老师,虽然他已经60几岁了,但他思想活跃,每天都会有新的思想在他的脑海中出现。

孙玉芳:中科红旗软件有限公司董事长,红旗Linux是国内一家由政府支持的Linux发行版本。

任一:冲浪平台软件有限公司总经理,国内第一家中文Linux发行版本公司XteamLinux的创始人。他有一句名言:做点COM经济的点。(http://www.XteamLinux.com.cn)

Iris Miller:TurboLinux公司的创始人,TurboLinux前任亚太区总裁。

洪峰:武汉荣世数据通讯有限公司总经理,是EasyLinux的中国代理,他所组织翻译的《开源软件文集》中文版一书,对于中国的自由软件发展产生了深远的影响,中国人从该书中感受了“开放源代码软件”对于整个IT产业的变革力量。(http://www.rons.net.cn)

倪光南:中科院院士,他积极呼吁政府及企业应该大力支持Linux在国内的发展。

于明俭:编程专家,Chinput汉字输入服务器软件项目的创始人。详情请访问http://yumingjian.home.china.com/或.../~yumingjian/。

陈向阳,网名:cxy,与方汉相似,曾任水木清华BBS中XWindow板斑竹,同样为Linux中文化立下汗马功劳,而且在打印方面属于专家级人物。在北京拓林思公司任职期间,参与开发TurboLinux中文版本。

方汉:网名:dfbb,技术和思想都很先进。曾任水木清华BBS中Linux板斑竹,为中文Linux的标准化规范贡献了巨大力量。在北京拓林思公司(TurboLinux北京公司)任职期间,所主持开发的TurboLinux中文版系列被认为是最好的中文Linux版本之一。 陈向阳和方汉合写的《Linux实用大全》一书,该书是国内较早的一本系统、全面、专业地介绍了Linux方方面面的知识,影响了一大批知识青年,带动了大家投身Linux事业的热情。原Turbolinux高级研发工程师,现为Mountain View Data公司员工。国内著名的Linux知名专家。详情请参考:http://www.mountainviewdata.com.cn/。

Rollaned,台湾LinuxFab的站长,LinuxFab是最早的一家中文Linux入口站点,现在访问该站的人气非常旺。(http://www.linuxFab.cx)

郑原忠,网名:小虫,著名的CLE-中文Linux延伸套件的领军人物。台湾很多繁体中文Linux套件使用了CLE,例如XLinux、Caldera OpenLinux、Linpus Linux等。

霍东灵,网名:Foka,Debian中文化工程的领导。

邓光磊:北京Linux俱乐部的前任会长,后来创建了中国Linux论坛,被《中国计算机报》评论为“中国自由软件的斗士”。(LinuxForum.net)

赵宇:北京Linux俱乐部现任主席;中国第一本Linux杂志《Linux世界》的前任主编;由他主持编撰出版过十余本Linux书籍。现为北京中科红旗软件有限公司平台事业部经理。

吴信全:陕西昇旭认证负责人,网名:心儿。国内仅有的几个RHCA持有者之一,年轻有为。致力于RedHat Linux中国地区的发展,现在正在进行分布式计算的研究。他的QQ群:16014261

Tuesday, February 03, 2009

Protestor Throws Shoe at Wen Jiabao at Cambridge University

FUck This Shit!

Copyright © 2006 - 2009 iCNPunk.BlogSpot.COM All rights reserved By ZerOnenOreZ & Blogger
Template Designed By iCNPunk Fixed for IE7