linux服务器源码
方法/步骤1
用git --version命令检查是否已经安装
2
在CentOS5的版本,由于yum源中没有git,所以需要预先安装一系列的依赖包。在CentOS6的yum源中已经有git的版本了,可以直接使用yum源进行安装。
3
yum -y install git
但是yum源中安装的git版本是1.7.1,Github等需要的Git版本最低都不能低于1.7.2 。所以我们一般不用上面的方法,而是下载git源码编译安装。
END
编译安装git
1
首先更新系统
yum -y update
更新完成之后有6.5变成6.7了
② 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源码包的源代码在哪个文件
如果是别人发布的二进制包,可执行文件通常都安装到Linux系统 /usr/bin 下面;如果是自己从源代码安装的,可执行文件通常都在 /usr/local/bin 下面,除非配置时指定了安装位置。
例如:
rpm -ivh xxx1.rpm
可执行文件通常都安装到 /usr/bin 下面
./configure (或者 ./configure --prefix=/usr/local)
make
make install
可执行文件通常都在 /usr/local/bin 下面,因为默认参数就是 --prefix=/usr/local
./configure --prefix=/usr (或者 ./configure --prefix=/opt 也可以指定其他位置,如你的家目录 --prefix=~,~就是 /home/xxx<即你的家目录>的缩写)
make
make install
可执行文件通常都在 /usr/bin 下面(或者相应地位于 /opt/bin 下面,或者 /home/xxx/bin 下面,xxx 是你的家目录)
无论那种方法,在 bash 控制台下只要输入可执行文件头几个字母,然后连续按两次 Tab 键,就可以列出可能的所有命令,如果只有一种可能,则自动显示该文件全名,这称为命令补全。想执行当前目录下的可执行文件,则必须使用 ./ 作为命令前导,例如:
./myprogram
除此之外,一般的可执行文件都处在系统的搜索路径里,只要在控制台直接输入命令名就可执行。例如你编译安装了一个叫 synaptic 的软件,只需要在 KDE 的 konsole 虚拟控制台下输入 synaptic 即可。
如果不幸,你的可执行文件不在系统的搜索路径里,就会报告没有这个命令。那么你需要把那个可执行文件的位置加入环境变量 PATH 里,用冒号作分割符,例如:
在你的家目录的 .profile 文件或 .bashrc 文件里添加如下命令
PATH="~/bin:$PATH" 就可以把你的家目录的 bin 目录追加到搜索路径里。
无论任何时候想知道系统里某个“命令文件”的位置,都可以使用 which 命令,例如:
$which pwd
/usr/bin/pwd
说明 pwd 命令位于 /usr/bin 下面。
需要解决更多linux问题,详情请看 http://www.linuxprobe.com/chapter-00.html
④ 如何查看linux系统源码
例如:想在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