例如:想在Linux系统下查看cat命令工具的源码,方法如下:
1、查看工具的路径
$whereiscat
cat:/bin/cat/usr/share/man/man1/cat.1.gz
2、查看工具所属的包
$dpkg-S/bin/cat
coreutils:/bin/cat
coreutils就是cat的源码包名
3、下载工具源码包
$sudoapt-getsourcecoreutils
[sudo]passwordforlizh:
正在读取软件包列表...完成
正在分析软件包的依赖关系树
正在读取状态信息...完成
需要下载10.8MB的源代码包。
获取:1http://mirrors.sohu.com/ubuntu/maverick/maincoreutils8.5-1ubuntu3(dsc)[1,891B]
获取:2http://mirrors.sohu.com/ubuntu/maverick/maincoreutils8.5-1ubuntu3(tar)[10.7MB]
获取:3http://mirrors.sohu.com/ubuntu/maverick/maincoreutils8.5-1ubuntu3(diff)[21.5kB]
下载10.8MB,耗时42秒(254kB/s)
gpgv:于2015年07月06日星期一13时49分55秒CST创建的签名,使用RSA,钥匙号21B2133D
gpgv:无法检查签名:找不到公钥
dpkg-source:警告:对./coreutils_8.5-1ubuntu3.dsc校验签名失败
dpkg-source:info:-8.5
dpkg-source:info:unpackingcoreutils_8.5.orig.tar.gz
dpkg-source:info:applyingcoreutils_8.5-1ubuntu3.diff.gz
② 查看SUSE LINUX版本
查看SUSE LINUX版本
1、cat /proc/version
内核版本
Linux version 2.6.5-7.244-smp (geeko@buildhost) (gcc version 3.3.3 (SuSE Linux))
2、uname -a
内核版本
Linux WebServer 2.6.5-7.244-smp #1 SMP Mon Dec 12 18:32:25 UTC 2005 UTC 2005 i686 i686 i386 GNU/Linux
3、lsb_release -a
发行版本
LSB Version: core-2.0-noarch:core-3.0-noarch:core-2.0-ia32:core-3.0-ia32:grap
hics-2.0-ia32:graphics-2.0-noarch:graphics-3.0-ia32:graphics-3.0-noarch
Distributor ID: SUSE LINUX
Description: SUSE LINUX Enterprise Server 9 (i586)
Release: 9
Codename: n/a
4、cat /etc/SuSE-release
可以看到补丁版本
SUSE LINUX Enterprise Server 9 (i586)
VERSION = 9
PATCHLEVEL = 3
③ 如何查看 linux 内核源代码
Linux的内核源代码可以从很多途径得到。一般来讲,在安装的linux系统下,/usr/src/linux目录下的东西就是内核源代码。
对于源代码的阅读,要想比较顺利,事先最好对源代码的知识背景有一定的了解。对于linux内核源代码来讲,我认为,基本要求是:1、操作系统的基本知识;2、对C语言比较熟悉,最好要有汇编语言的知识和GNU C对标准C的扩展的知识的了解。另外在阅读之前,还应该知道Linux内核源代码的整体分布情况。我们知道现代的操作系统一般由进程管理、内存管理、文件系统、驱动程序、网络等组成。看一下Linux内核源代码就可看出,各个目录大致对应了这些方面。Linux内核源代码的组成如下(假设相对于linux目录):
arch 这个子目录包含了此核心源代码所支持的硬件体系结构相关的核心代码。如对于X86平台就是i386。
include 这个目录包括了核心的大多数include文件。另外对于每种支持的体系结构分别有一个子目录。
init 此目录包含核心启动代码。
mm 此目录包含了所有的内存管理代码。与具体硬件体系结构相关的内存管理代码位于arch/*/mm目录下,如对应于X86的就是arch/i386/mm/fault.c 。
drivers 系统中所有的设备驱动都位于此目录中。它又进一步划分成几类设备驱动,每一种也有对应的子目录,如声卡的驱动对应于drivers/sound。
ipc 此目录包含了核心的进程间通讯代码。
moles 此目录包含已建好可动态加载的模块。
fs Linux支持的文件系统代码。不同的文件系统有不同的子目录对应,如ext2文件系统对应的就是ext2子目录。
kernel 主要核心代码。同时与处理器结构相关代码都放在arch/*/kernel目录下。
net 核心的网络部分代码。里面的每个子目录对应于网络的一个方面。
lib 此目录包含了核心的库代码。与处理器结构相关库代码被放在arch/*/lib/目录下。
scripts此目录包含用于配置核心的脚本文件。
Documentation 此目录是一些文档,起参考作用。
俗话说:“工欲善其事,必先利其器”。 阅读象Linux核心代码这样的复杂程序令人望而生畏。它象一个越滚越大的雪球,阅读核心某个部分经常要用到好几个其他的相关文件,不久你将会忘记你原来在干什么。所以没有一个好的工具是不行的。由于大部分爱好者对于Window平台比较熟悉,并且还是常用Window系列平台,所以在此我介绍一个Window下的一个工具软件:Source Insight。这是一个有30天免费期的软件,可以从www.sourcedyn.com下载。安装非常简单,和别的安装一样,双击安装文件名,然后按提示进行就可以了。安装完成后,就可启动该程序。这个软件使用起来非常简单,是一个阅读源代码的好工具。它的使用简单介绍如下:先选择Project菜单下的new,新建一个工程,输入工程名,接着要求你把欲读的源代码加入(可以整个目录加)后,该软件就分析你所加的源代码。分析完后,就可以进行阅读了。对于打开的阅读文件,如果想看某一变量的定义,先把光标定位于该变量,然后点击工具条上的相应选项,该变量的定义就显示出来。对于函数的定义与实现也可以同样操作。别的功能在这里就不说了,有兴趣的朋友可以装一个Source Insight,那样你阅读源代码的效率会有很大提高的。怎么样,试试吧!
④ 如何查看Linux(suse和RedHat)操作系统与内核版本
rtpserver01:/proc/scsi/qla2xxx # more /etc/SuSE-release SUSE Linux Enterprise Server 10 (x86_64) VERSION = 10 PATCHLEVEL = 2###对应的RedHat可以查看etc/redhat-release文件### rtpserver01:/proc/scsi/qla2xxx # lsb_release -a LSB Version: core-2.0-noarch:core-3.0-noarch:core-2.0-x86_64:core-3.0-x86_64:desktop-3.1-amd64:desktop-3.1-noarch:graphics-2.0-amd64:graphics-2.0-noarch:graphics-3.1-amd64:graphics-3.1-noarch Distributor ID: SUSE LINUX Description: SUSE Linux Enterprise Server 10 (x86_64) Release: 10 Codename: n/a
⑤ 如何查看linux内核源码int vfs
用Linux的人越来越多了,阅读Liux的人也越来越多了。但是,很多人下了很打的功夫,收益不是很大,下面给大家介绍一下,学Linux阅读Linux内核源代码的捷径。 把内核源码解压后,你会发下,那么多文件夹,早期版本的Linux文件夹还比较少,后来越来越多,这也造成了阅读的困难,下面给大家简单的介绍一下,希望对大家的学习,起作用,能做到事半功倍。
⑥ 请问一下下面的suse linux系统的信息怎么看
2.6.16.60内核版本。
0.21-smp表示对称多处理机,是CPU的问题。
⑦ 如何查看SUSE Linux内核源码
公司的东西不要带回家,即使有小便宜,也别参与,在你成为领导前,也别指责,这是你管不到的。
⑧ 如何查看linux命令源代码和函数源代码
1. 以搜索ls命令源码为例,先搜索命令所在包,命令如下:
lpj@lpj-linux:~$ which ls
/bin/ls
2. 用命令搜索该软件所在包,代码如下:
lpj@lpj-linux:~$ dpkg -S /bin/ls
coreutils: /bin/ls
3. 从上一步中可以知道ls命令的实现在包coreutils中,用apt安装(说安装有些歧义,主要是区分apt-get -d)该包的源代码然后解压,代码如下:
sudo apt-get source coreutils
cd /usr/src/coreutils-XXX #XXX表示版本号
sudo tar zxvf coreutils-XXX.tar.gz
或者只下载源码,然后手动打补丁再解压,代码如下:
sudo apt-get -d source coreutils
cd /usr/src
tar zxvf coreutils-XXX.tar.gz
gzip -d coreutils-XXX.diff.gz #这一步会生成coreutils-XXX.diff文件
patch -p0 < coreutils-XXX.diff
cd coreutils-XXX
tar zxvf coreutils-XXX.tar.gz
OK,这几步执行完后,就可以进入/usr/src/coreutils-XXX/coreutils-XXX/src中查看各命令对应的源代码了
⑨ 如何查看linux系统源码
一般在Linux系统中的/usr/src/linux*.*.*(*.*.*代表的是内核版本,如2.4.23)目录下就是内核源代码(如果没有类似目录,是因为还没安装内核代码)。另外还可从互连网上免费下载。注意,不要总到http://www.kernel.org/去下载,最好使用它的镜像站点下载。请在http://www.kernel.org/mirrors/里找一个合适的下载点,再到pub/linux/kernel/v2.6/目录下去下载2.4.23内核。
代码目录结构
在阅读源码之前,还应知道Linux内核源码的整体分布情况。现代的操作系统一般由进程管理、内存管理、文件系统、驱动程序和网络等组成。Linux内核源码的各个目录大致与此相对应,其组成如下(假设相对于Linux-2.4.23目录):
1.arch目录包括了所有和体系结构相关的核心代码。它下面的每一个子目录都代表一种Linux支持的体系结构,例如i386就是Intel CPU及与之相兼容体系结构的子目录。PC机一般都基于此目录。
2.include目录包括编译核心所需要的大部分头文件,例如与平台无关的头文件在include/linux子目录下。
3.init目录包含核心的初始化代码(不是系统的引导代码),有main.c和Version.c两个文件。这是研究核心如何工作的好起点。
4.mm目录包含了所有的内存管理代码。与具体硬件体系结构相关的内存管理代码位于arch/*/mm目录下。
5.drivers目录中是系统中所有的设备驱动程序。它又进一步划分成几类设备驱动,每一种有对应的子目录,如声卡的驱动对应于drivers/sound。
6.ipc目录包含了核心进程间的通信代码。
7.moles目录存放了已建好的、可动态加载的模块。
8.fs目录存放Linux支持的文件系统代码。不同的文件系统有不同的子目录对应,如ext3文件系统对应的就是ext3子目录。
Kernel内核管理的核心代码放在这里。同时与处理器结构相关代码都放在arch/*/kernel目录下。
9.net目录里是核心的网络部分代码,其每个子目录对应于网络的一个方面。
10.lib目录包含了核心的库代码,不过与处理器结构相关的库代码被放在arch/*/lib/目录下。
11.scripts目录包含用于配置核心的脚本文件。
12.documentation目录下是一些文档,是对每个目录作用的具体说明。
一般在每个目录下都有一个.depend文件和一个Makefile文件。这两个文件都是编译时使用的辅助文件。仔细阅读这两个文件对弄清各个文件之间的联系和依托关系很有帮助。另外有的目录下还有Readme文件,它是对该目录下文件的一些说明,同样有利于对内核源码的理解。
在阅读方法或顺序上,有纵向与横向之分。所谓纵向就是顺着程序的执行顺序逐步进行;所谓横向,就是按模块进行。它们经常结合在一起进行。对于Linux启动的代码可顺着Linux的启动顺序一步步来阅读;对于像内存管理部分,可以单独拿出来进行阅读分析。实际上这是一个反复的过程,不可能读一遍就理解。
⑩ suse linux怎么查看ssh服务
suse linux查看ssh服务的方法
查询安装SSH服务
1.登陆linux系统,打开终端命令。输入 rpm -qa |grep ssh 查找当前系统是否已经安装
2.如果没有安装SSH软件包,可以通过yum 或rpm安装包进行安装(具体就不截图了)
启动SSH服务2
安装好了之后,就开启ssh服务。Ssh服务一般叫做 SSHD
命令行输入 service sshd start 可以启动
或者使用 /etc/init.d/sshd start
配置查看SSHD端口3
查看或编辑SSH服务配置文件,如 vi /etc/ssh/sshd.config
如果要修改端口,把 port 后面默认的22端口改成别的端口即可(注意前面的#号要去掉)
远程连接SSH4
如果需要远程连接SSH,需要把22端口在防火墙上开放。
.关闭防火墙,或者设置22端口例外