linux 查看源码
如果想进一步了解linux系统,熟悉一些系统底层的东西还是非常必要的,我们可以先了解一些linux命令是如何实现相关功能的,那么如何获得命令的源代码呢?下面我们详细介绍一下。
下面以获取cat命令的源代码为例说明:
cd /sbin
rpm -qif cat
//rpm -qif `which cat` 将显示如下信息:
--------------------------------------------------------------------------
Name : coreutils Relocations: (not relocatable)
Version : 5.2.1 Vendor: Red Hat, Inc.
Release : 31.8.el4_7.1 Build Date: 2008年10月23日 星期四 21时04分08秒
Install Date: 2009年04月07日 星期二 10时17分33秒 Build Host: ls20-bc2-14.build.redhat.com
Group : 系统环境/基础 Source RPM: coreutils-5.2.1-31.8.el4_7.1.src.rpm
Size : 7314345 License: GPL
Signature : DSA/SHA1, 2008年10月27日 星期一 22时56分59秒, Key ID 219180cddb42a60e
Packager : Red Hat, Inc.
URL : ftp://alpha.gnu.org/gnu/coreutils/
Summary : GNU 核心工具:一组在 shell 脚本中常用的工具。
Description :
这些是 GNU 的核心工具。该软件包是老的 GNUfileutils、sh-utils、
和 textutils 软件包的组合。
--------------------------------------------------------------------------
通过上面的信息,我们可以知道cat命令是来源于coreutils-5.2.1-31.8.el4_7.1.src.rpm源码包,我们可以到上面信息提到的 ftp://alpha.gnu.org/gnu/coreutils/上去下载tarball,也可以到rpmfind.net网站上去搜索coreutils-5.2.1-31.8.el4_7.1.src.rpm下载此源码包。
若是下载的tar.gz包,则tar zxvf tar.gz包即可;
若是下载的src.rpm源码包,则:
1、rpm2cpio coreutils-5.2.1-31.8.el4_7.1.src.rpm| cpio -idv
2、此时会在当前目录下产生coreutils-5.2.1.tar.bz2文件
3、bzip2 -d coreutils-5.2.1.tar.bz2 解压,会产生coreutils-5.2.1.tar 文件
4、tar xvf coreutils-5.2.1.tar 此时在当前目录下将产生coreutils-5.2.1目录,源码便在其中。
进入coreutils-5.2.1目录,下面的src文件夹便是存放cat命令源代码的地方,当然了除了cat,linux的很多基础的外置命令的源代码都存放其中,像cp,chown,chm
相关文档:
一、VMware Tools安装手记(For Linux Guest OS)
为什么要装 VMware Tools?
因为它可以改善 Virtual Machine 的运行性能,而且可以让 Host OS 和 Guest OS
互通有无,这样我们就不用伤脑筋,要架设什么服务器,来沟通两个 OS,现在就让我们开始吧!
VMware Tools所在位置:VMware 安装路径 \VMware\VMware
Workstati ......
查看软件xxx安装内容
dpkg -L xxx
查找软件
apt-cache search 正则表达式
查找文件属于哪个包
dpkg -S filename apt-file search filename
查询软件xxx依赖哪些包
apt-cache depends xxx
查询 ......
上次在碰到这问题,在网上找了解决方法,可是没记下来。这星期要换机器,要把原来linux下的mysql数据库移到另一台服务器上。安装suse系统、再配置telnet、ftp服务、安装java JDK并配置、再安装eclipse和mysql,又花了一天的时间。感觉还是不熟练,配置防火墙老是不能将telnet和ftp服务排外。mysql又碰到了中文乱码问题,又在 ......
安装后
运行snavigator
出现
Can't find a usable tk.tcl in the following directories:
/opt/sourcenav/share/tk8.3
/opt/sourcenav/share/tk8.3/tk.tcl: no event type or button # or keysym
no event type or button # or keysym
while executing
"bind Listbox <MouseWheel> {
%W yview scroll ......