linux 基础命令(一)

   刚编译升级内核,总结一下基础的命令。

1.归档,压缩和解压

在linux下有很多的压缩格式,找到一份比较全的。

.tar
解包: tar xvf FileName.tar
打包:tar cvf FileName.tar DirName
(注:tar是打包,不是压缩!)
---------------------------------------------
.gz
解压1:gunzip FileName.gz
解压2:gzip -d FileName.gz
压缩:gzip FileName
.tar.gz
解压:tar zxvf FileName.tar.gz
压缩:tar zcvf FileName.tar.gz DirName
---------------------------------------------
.bz2
解压1:bzip2 -d FileName.bz2
解压2:bunzip2 FileName.bz2
压缩: bzip2 -z FileName
.tar.bz2
解压:tar jxvf FileName.tar.bz2
压缩:tar jcvf FileName.tar.bz2 DirName
---------------------------------------------
.bz
解压1:bzip2 -d FileName.bz
解压2:bunzip2 FileName.bz
压缩:未知
.tar.bz
解压:tar jxvf FileName.tar.bz
压缩:未知
---------------------------------------------
.Z
解压:uncompress FileName.Z
压缩:compress FileName
.tar.Z
解压:tar Zxvf FileName.tar.Z
压缩:tar Zcvf FileName.tar.Z DirName
---------------------------------------------
.tgz
解压:tar zxvf FileName.tgz
压缩:未知
.tar.tgz
解压:tar zxvf FileName.tar.tgz
压缩:tar zcvf FileName.tar.tgz FileName
---------------------------------------------
.zip
解压:unzip FileName.zip
压缩:zip FileName.zip DirName
---------------------------------------------
.rar
解压:rar a FileName.rar
压缩:r ar e FileName.rar


rar请到:http://www.rarsoft.com/download.htm 下载!
解压后请将rar_static拷贝到/usr/bin目录
.lha
解压:lha -e FileName.lha
压缩:lha -a FileName.lha FileName

lha请到:http://www.infor.kanazawa-it.ac.jp/.../lhaunix/下载!
>解压后请将lha拷贝到/usr/bin目录
---------------------------------------------
.rpm
解包:rpm2cpio FileName.rpm | cpio -div
---------------------------------------------
.tar .tgz .tar.gz .tar.Z .tar.bz .tar.bz2 .zip .cpio .rpm .deb .slp .arj .rar .ace .lha .lzh
.lzx .lzs .arc .sda .sfx .lnx .zoo .cab .kar .cpt .pit .sit .sea
解压:sEx x FileName.*
压缩:sEx a FileName.* FileName

sEx只是调用相关程序,本身并无压缩、解压功能,请注意!
sEx请到: http://sourceforge.net/projects/sex下载!
解压后请将sEx拷贝到/usr/bin目录。

 

很多吧~~~~

 

2.应用软件的安装和升级。

(1)最简单的就是rpm方式的安装了。

    简单形式就是prm  -ivh  **.rpm   还有很多细节如软件包之间的冲突,软件包之间的依赖,MD5检验,什么时候遇到什么查查就行了~~~~

(2)安装需要编译的tar.gz  包。

          先用上面的一堆命令解压。解压后在文件夹里面有README 看看就行了,真不幸拿着词霸,呵呵。

      一般的命令如下 : ./configure  进行安装前的配置和检查。有时还要加上--prefix = / 等等的形式。

      make  根据makefile文件设置的源代码的位置进行编译。

      make install  安装 OK

     最好现看看INSTALL 和README里面的说明,防止出错。

3.内核管理和模块管理。

      linux 内核的5大部分: 进程调度,内存管理,虚拟文件系统,网络接口,进程间通信。

     主要的命令就是升级内核时候,上篇已经写了,这就不写了。

      注意df   命令查看分区,挂载点。

      linux下内核模块化的解决方案:将内核包含/排除的模块的方式编译,使内核和模块分离,内核做最基本的事情,把一些扩展功能交给模块实现。

     

       加载内核有两种:一种用insmod命令手工把它插入内核。一个是按需加载,当内核发现需要模块的时候加载,用内核守护进程实现(kerneld)试图加载合适的模块。

      与模块加载有关的命令:

       lsmod :列出已经被内核调入的模块。

       insmode:将某个module插入内核中。(没modprobe好用,它可以自己加载用到的所有模块,而insmode不行。)

       rmmode :卸载模块。

       depmod: 生成依赖关系。 告诉insmode将来要从哪儿调入模块。

4.进程查看命令 ;

       who :查看当前系统的用户情况。

       w : 跟上面的相似,但功能更强大。

       ps: 查看进程。

       top :跟上面的相似,但是可以动态显示。

       kill : 结束一个进程。

 

现到这~!

 

后记 :

       上面的手动插入模块的时候,需要依赖,用到了离散数学中的传递依赖。里面有功能很强大的算法,很长时间了,忘的差不多了,有空应该拿出来在看看,当时真拿它当数学学起来了,哎.......

       请问 c 语言头文件 #include 的顺序能不能交换?有的不能,因为里面有依赖关系。

        先看一定义:关系R的闭包就是满足一定性质(如,自反,传递等)的包含R的最小关系R。 在学习语言的时候,我们没发现某某语言的它爹(发明者),是多么聪明吗?用最少的语法,可以几乎表示所有的东西。包括数据抽象和过程抽象。语言的表达没有终点,有终点的只是程序员的想象力,抽象能力。这跟闭包差不多,无论怎么运算,组合,抽象,都属于该语言的表达范畴。在构建一个系统,一个应用的时候,你如果做底层的,就应提供最最基本的功能(闭包),然后让二次开发,利用你的函数,基本功能,充分发挥他们的想象力,解决实际应用问题。 上帝是魔法师,魔法师是无神论者,从某种意义上说一名优秀的程序员就是一位魔法师,用“咒语”创造着千奇百怪的事物,他们是活在计算机里面的神灵。 OH,MY GOD~~!

      OK,that's all。

  

 

             

你可能感兴趣的:(Linux,linux,语言,makefile,module,kill,算法)