31 Rpm命令手册
一、安装
命令格式:
rpm -i ( or --install) options file1.rpm ... fileN.rpm
参数:
file1.rpm ... fileN.rpm 将要安装的RPM包的文件名
详细选项:
-h (or --hash) 安装时输出hash记号 (``#’’)
--test 只对安装进行测试,并不实际安装。
--percent 以百分比的形式输出安装的进度。
--excludedocs 不安装软件包中的文档文件
--includedocs 安装文档
--replacepkgs 强制重新安装已经安装的软件包
--replacefiles 替换属于其它软件包的文件
--force 忽略软件包及文件的冲突
--noscripts 不运行预安装和后安装脚本
--prefix 将软件包安装到由 指定的路径下
--ignorearch 不校验软件包的结构
--ignoreos 不检查软件包运行的操作系统
--nodeps 不检查依赖性关系
--ftpproxy 用 作为 FTP代理
--ftpport 指定FTP的端口号为
通用选项
-v 显示附加信息
-vv 显示调试信息
--root 让RPM将指定的路径做为"根目录",这样预安装程序和后安装程序都会安装到这个目录下
--rcfile 设置rpmrc文件为
--dbpath 设置RPM 资料库存所在的路径为
二、删除
命令格式:
rpm -e ( or --erase) options pkg1 ... pkgN
参数
pkg1 ... pkgN :要删除的软件包
详细选项
--test 只执行删除的测试
--noscripts 不运行预安装和后安装脚本程序
--nodeps 不检查依赖性
通用选项
-vv 显示调试信息
--root 让RPM将指定的路径做为"根目录",这样预安装程序和后安装程序都会安装到这个目录下
--rcfile 设置rpmrc文件为
--dbpath 设置RPM 资料库存所在的路径为
三、升级
命令格式
rpm -U ( or --upgrade) options file1.rpm ... fileN.rpm
参数
file1.rpm ... fileN.rpm 软件包的名字
详细选项
-h (or --hash) 安装时输出hash记号 (``#’’)
--oldpackage 允许"升级" 到一个老版本
--test 只进行升级测试
--excludedocs 不安装软件包中的文档文件
-- includedocs 安装文档
--replacepkgs 强制重新安装已经安装的软件包
--replacefiles 替换属于其它软件包的文件
--force 忽略软件包及文件的冲突
--percent 以百分比的形式输出安装的进度。
--noscripts 不运行预安装和后安装脚本
--prefix 将软件包安装到由 指定的路径下
--ignorearch 不校验软件包的结构
-- ignoreos 不检查软件包运行的操作系统
--nodeps 不检查依赖性关系
--ftpproxy 用 作为 FTP代理
--ftpport 指定 FTP的端口号为
通用选项
-v 显示附加信息
-vv 显示调试信息
--root 让RPM将指定的路径做为"根目录",这样预安装程序和后安装程序都会安装到这个目录下
--rcfile 设置rpmrc文件为
--dbpath 设置RPM 资料库存所在的路径为
四、查询
命令格式:
rpm -q ( or --query) options
参数:
pkg1 ... pkgN :查询已安装的软件包
详细选项
-p (or ``-’’) 查询软件包的文件
-f 查询属于哪个软件包
-a 查询所有安装的软件包
--whatprovides 查询提供了 功能的软件包
-g 查询属于 组的软件包
-- whatrequires 查询所有需要 功能的软件包
信息选项
显示软件包的全部标识
-i 显示软件包的概要信息
-l 显示软件包中的文件列表
-c 显示配置文件列表
-d 显示文档文件列表
-s 显示软件包中文件列表并显示每个文件的状态
--scripts 显示安装、卸载、校验脚本
-- queryformat (or --qf) 以用户指定的方式显示查询信息
--dump 显示每个文件的所有已校验信息
-- provides 显示软件包提供的功能
--requires (or -R) 显示软件包所需的功能
通用选项
-v 显示附加信息
-vv 显示调试信息
--root 让RPM将指定的路径做为"根目录",这样预安装程序和后安装程序都会安装到这个目录下
--rcfile 设置rpmrc文件为
--dbpath 设置RPM 资料库存所在的路径为
五、校验已安装的软件包
命令格式:
rpm -V ( or --verify, or -y) options
参数
pkg1 ... pkgN 将要校验的软件包名
软件包选项
-p Verify against package file
-f 校验所属的软件包
-a Verify 校验所有的软件包
-g 校验所有属于组 的软件包
详细选项
--noscripts 不运行校验脚本
- -nodeps 不校验依赖性
--nofiles 不校验文件属性
通用选项
-v 显示附加信息
-vv 显示调试信息
--root 让RPM将指定的路径做为"根目录",这样预安装程序和后安装程序都会安装到这个目录下
--rcfile 设置rpmrc文件为
--dbpath 设置RPM 资料库存所在的路径为
六、校验软件包中的文件
语法:
rpm -K ( or -- checksig) options file1.rpm ... fileN.rpm
参数:
file1.rpm ... fileN.rpm 软件包的文件名
Checksig--详细选项
--nopgp 不校验PGP签名
通用选项
-v 显示附加信息
-vv 显示调试信息
--rcfile 设置rpmrc文件为
七、其它RPM选项
--rebuilddb 重建RPM资料库
-- initdb 创建一个新的RPM资料库
--quiet 尽可能的减少输出
--help 显示帮助文件
--version 显示RPM的当前版本
32 Mount使用指南
在Linux中,如果你要使用储存设备 (Mo、硬盘、光驱等) ,就得先将它挂上 (Mount),而当储存设备挂上了之后,就可以把它当成一个目
录来进行访问。挂上一个设备使用mount命令。
在使用mount这个指令时,至少要先知道下列三种信息:
1. 要Mount对象的文件系统类型? (File system type)
2. 要 Mount对象的设备名称? (/dev/????)
3. 要将设备Mount到哪个目录去?
一、获得系统支持的文件系统类型
就第一点来说,用户可以执行
cat /proc/filesystems
来获得机器上支持的文件系统类型。如果系统并不支持你要挂接设备的文件系统类型,那你可能需要重新编译内核以使其增加对该种文件
类型支持。关于如何编译内核请参照LinuxAid在线培训栏目中的相关文章。
常用的文件系统有:
Win95/98常用的FAT 32文件系统 :vfat
Win NT用的文件系统 :ntfs
OS2用的文件系统 :hpfs
Linux用的文件系统 :ext2
光盘片用的文件系统 :iso9660
其中虽然vfat是指FAT 32 系统,但事实上它也兼容FAT 16的文件系统类型。
二、确定设备的名称
在Linux中,设备名称通常都在/dev里。这些设备名称的命名都是有规则的,我们可以用"推理"的方式把设备名称找出来。
譬如说/dev/hda1这个IDE设备。hd是Hard Disk(硬盘)的意思,sd是SCSI Device ,fd是Floppy Device(或是Floppy Disk?)。a则是代表第
一个设备,通常IDE接口可以接上四个IDE设备(例如四块硬盘)。所以要识别IDE硬盘的方法分别就
是:hda、hdb、hdc、hdd。此外,hda1中的"1"代表hda的第一个硬盘分区
(partition),hda2代表hda的第二个分割区,依此类推。
此外,你可以直接检查/var/log/messages这个文件,在该文件中可以找到计算机开机后,系统已辨认出来的设备代号。
三、查找挂接点
最后我们要决定将设备挂接到哪里,先查看一下你的计算机是不是有个/mnt的空目录?该目录就是专门用来当作挂载点(Mount Point)的目
录。建议您在/mnt里多建这几个目录:/mnt/cdrom、/mnt/floppy、/mnt/mo等来当作目录的专用挂载点。
举例而言,如要挂载下列五个设备的话,其执行指令可能是 (假设都是Linux
的ext2系统,如果是Win XX的话,请将ext2 改成vfat):
1. 软盘 ===>mount -t ext2 /dev/fd0 /mnt/floppy
2. MO ===>mount -t ext2 /dev/sda /mnt/mo
3. cdrom ===>mount -t ext2 /dev/hdc /mnt/cdrom
4. SCSI cdrom ===>mount -t iso9660 /dev/sdb /mnt/scdrom
5. SCSI cdr ===>mount -t iso9660 /dev/sdc /mnt/scdr
这是假设,如果你的设备的名称跟这个不同的话请自行修改。
最后需要注意的是:
1. 执行mount动作时先打一下pwd看看现在的目录是不是在挂载点,如果现在目录在挂载点的话,mount (或umount)不会成功 (会显示
device busy)。
2. 想卸载某设备的语法是umount 目录名,例如umount /mnt/cdrom 等
33 中文man pages
linuxforum.net维护了一个中文man pages翻译计划,主页在 http://cmpp.linuxforum.net
现在大部分man pages已经翻译完成,并发布了 0.3版本的cman ,下载连接:
http://cmpp.linuxforum.net/download/cman- 0.3.tar.gz
安装方法(cman的INSTALL文件):
您只需要运行这个目录下面的脚本 install.sh, 象这样:
$./install.sh
它就会自动安装.
如果您以 root 用户的身份安装(系统安装),这些手册文件将安装
到 /usr/local/cman 目录下,如果您是以普通用户身份安装,那么这
些手册文件将安装到 ~/cman 目录下。
第一次安装后,安装脚本将为您修改一些设置,以后将不再进行这些
设置.系统安装时,设置放在 /etc/profile 里,普通用户安装时,
放在 ~/.bash_profile 里。
在运行完 install.sh 脚本后,您只要重新登陆一下就可以使用了。
使用方法:以查询ls命令的man为例:只需要
cman ls
就会以中文显示ls 的 man,当然首先要求系统可以正常显示中文。设置方法参见本站的帖子
34 用linux为局域网xwindow服务器提供字体服务,让X-WinPro支持中文显示
(1) 用xfs的方法
前提是xfs可以正确提供中文字体服务,具体设置参见linux汉化文章:
以root用户登陆linux,
编辑 /etc/X11/fs/config, 把最后面的一行
no- listen=tcp
注释掉(前面加一个#),重新启动xfs
#/etc/rc.d/init.d/xfs restart
现在xfs就可以为其它计算机提供字体服务了。下面运行xwin32的Xsettings编辑 xwin32的字体设置,在字体目录列表里面插入一行:
tcp/linux_ip:7100
linux_ip是提供xfs服务的机器的 ip地址。
保存退出,重新启动xsession就可以通过xfs显示中文了。
(2)把linux下中文字体拷贝到xindows的用法:
最基本的使用可以把/usr/X11R6/lib/X11/fonts/misc下面的 gb16st.pcf.gz, gb24st.pcf.gz, gb16fs.pcf.gz先 考到一个临时目录,然
后gunzip *.pcf.gz解压(因为xwinpro不认识gz压缩的pcf字库),然后把三个字体(扩展名未pcf)拷到windows下xwinpro的fonts目录下一个新
目录里,按照下面文件写一个fonts.dir(其实就是linux下的字体描述去掉.gz),并在xsettings里把新字体目录加上就行了。
fonts.dir:
3
gb16st.pcf -isas-song ti-medium-r-normal --16-160 -72-72-c-160-gb2312.1980-0
gb24st.pcf -isas-song ti-medium-r-normal--24-240-72-72-c-240-gb2312.1980- 0
gb16fs.pcf -isas-fangsong ti-medium-r-normal--16-160-72-72-c-160-gb2312.1980-
0
高级一点的用法,使用 redoffice 提供的ROFONTS,显示效果较好,使用方法和上面一样,也要先解压,并改fonts.dir里面的文件名去掉
.gz。
35 redhat8.0中文版在shell下为何不能显示中文
redhat则没有预先提供控制台中文支持。前面两位说的是两种解决方法,分别是采用zhcon和cce的方法。
这两个软件都很好找,个人觉得zhcon比较方便。
除非你想用unicon的输入法,zhcon最新的版本已经不再需要unicon了,如果你的显卡没有framebuffer支持也可以使用。
到http://zhcon.gnuchina.org 去下载最新版。
安装步骤,[]中的内容为可选项:
tar xzf zhcon-0.2.1.tar.gz
./configure [-- prefix=/usr]
我的configure结果:
Configuration:
Target system: i686-pc-linux-gnu
Source code location: .
C++ Compiler: c++
C++ Compiler flags: -O2 -DNDEBUG -funsigned-char -Wall
C Compiler: gcc
C Compiler flags: -O2 -DNDEBUG -funsigned-char -Wall
VGA support: yes
gpm moues support: no
libggi support: no
unicon support: no
zhcon binary dir: /usr/local/bin
zhcon files dir: /usr/local/lib/zhcon
make
make install
36 改网卡的mac地址?!
直接修改/etc/sysconfig/ifcfg-eth0文件,增加 MACADDR="00:33:33...."即可
37 samba HOWTO Collections 中文版
http://www.linuxforum.net/doc/Samba...Collection.html
38 为什么设置redhat 8.0面板上程序属性时会出现panel程序崩溃错误?
经过全新安装和测试发现,设置redhat 8.0面板上程序属性时出现panel程序崩溃错误是由redhat 8.0缺省的中文输入法miniChinput的Bug
造成的,关闭中文输入法或者换成其它输入法就可以解决此问题。另外,使用flash 6的mozilla打开网页时退出也是由中文输入法造成的。解
决建议:卸载miniChinput,安装xsim输入法。
39 在linux下面批量建立用户
1. 创建用户数据文件user.txt
先创建一个文本用户文件,每一列按照/etc/passwd密码文件格式书写,要注意每个用户的用户名、UID、宿主目录不可以相同。其中密码栏
可以留作空白或打上×号。请看范例文件:
user01::600:100:user:/home/user001:/bin/bash
user02::601:100:user:/home/user002:/bin/bash
…
2. 将 user.txt中的数据导入
以root身份执行:/usr/sbin/newusers < user.txt
然后执行命令了:vipw或vi /etc/passwd检查是否已经存在这些用户的数据,并从检查用户目录是否建立。
3. 对/etc/shadow进行解码
执行命令:/usr/sbin/pwunconv,将/etc/shadow产生的shadow解码,然后回写到/etc/passwd中,并将/etc/shadow的shadow密码栏去掉。
这是为了下一步的密码转换工作。
4. 创建密码对照文件 passwd.txt
编辑密码对照文件,范例文件如下:
user01:密码
user02:密码
…
5. 将密码对照文件数据导入
以root身份执行命令:chpasswd < passwd.txt 将passed.txt文件的数据写入/etc/passwd中。
6. 对密码编码为shadow password
确定密码经编码写入/etc/passwd后执行命令/usr/sbin/pwconv将密码编码为shadow password,并将结果写入:/etc/shadow。
#pwconv
40 在redhat 8下面使用xpdf查看中文pdf文件的方法
acroread for linux 最新版本为 5.06,到adobe网站去下载,同时下载adobe提供的中文字体包。
redhat已经包含了xpdf,可以支持中文显示,不过需要自己设置一下才能支持中文,具体步骤:
把/usr/share/xpdf/chinese-simplified/add-to- xpdfrc的内容拷贝到/etc/xpdfrc 文件最后,由于该文件有一个不大不小的bug,需要
把里面
cidToUnicode Adobe-GB1 /usr/share/xpdf/chinese-simplified/Adobe-G1.cidToUnicode
改成:
cidToUnicode Adobe-GB1 /usr/share/xpdf/chinese-simplified/Adobe-GB1.cidToUnicode
该文件来自xpdf-chinese-simplified-1.01- 10.noarch.rpm,如果没有安装需要首先安装。同时还有繁体中文支持