《Linu基础知识文档》由会员分享,可在线阅读,更多相关《Linu基础知识文档(6页珍藏版)》请在金锄头文库上搜索。
1、Linux基础知识录目录1.、,、-前言112.安装与配置112.1 LINUX的安装与配置12.2 安装12.3 配置13.知识纲要223.1 概念23.2 常用SHELL命令和工具23.2.1tar33.2.2 grep33.2.3 find33.2.4 挂载33.2.5 Ifconfig43.2.6 vi4327gcc与Makefile53.2.8rpm5习题662.安装与配置2.1xLinux的安装与配置这部分指导大家在虚拟机中安装Linux系统,建立基本的开发环境。用虚拟机而不用真实安装在硬盘上的Linux系统的原因是,为了方便。前面提到过,我们需要用sourceinsight编辑代
2、码,而在Linux系统中编译代码,经常需要在两个系统下切换。2.2 安装通过我们三部的服务器上的RHEL4WS的安装镜像来安装Linux。建议参数:在Vmware中,分配10G以上的虚拟硬盘,分配384M以上的内存空间,网络选择桥接或者NAT。安装的细节,如分区等,希望大家自己研究。完整安装的时间视机器速度,1小时左右。2.3 配置安装好后,需要配置以下几项,方便使用。开启一些服务:在终端中输入ntsysv,选中smb和sshd。配置samba文件共享,让虚拟机作为文件服务器,使我们的主、客系统能够互相传送文件。添力卩smb帐户:smbpasswdroot修改smb配置文件:vi/etc/sa
3、mba/smb.conf,在末尾添加如下内容:rootpath=/validusers=rootcreatemask=0600directorymask=0700writeable=yes修改防火墙配置文件(/etc/sysconfig/iptables),开启smb服务端口,如果没有-ARH-Firewall-1-INPUT-p51-jACCEPT行的话,在-ARH-Firewall-1-INPUT-jREJECT-reject-withicmp-host-prohibited之”前加上也可以。重启服务:serviceiptablesrestart;servicesmbrestart;ser
4、vicesshdrestart提示:现在可以将VMWARE最小化了,我们可以用Windows下的SSH软件登录Linux,推荐使用putty。还可以修改/etc/inittab,让我们的Linux启动时自动进入textmode。另外,可以在Windows中映射网络驱动器,把Linux下的/文件系统作为一个网络磁盘。3.知识纲要3.1概念Linux内核、文件系统、根文件系统、挂载Linux的文件/文件夹权限、一般文件与特殊文件Linux的shellbash环境变量、管道、重定向Linux文件系统中的各目录存储的文件及作用Linux的软件安装,分为源码和二进制包Linux内核编译(选)Linux下
5、开发工程的组织makefile提示:Makefile的编写指导是非常好的一个有关于makefile的文档3.2常用lshell命令和工具命令:lsmkdirrmcpmvchmodchownchgrpfindgrepkillpslncatcutechoaliasmore/lessexportwcwhereisroutemountumountfreedudatedfmknodsortman工具:tarviifconfiggccmakezipunziprpmpatch选学内容:sedawk正则表达式提示:多用管道(|),可以方便地完成很多复杂的事情。Linux下的重要打包工具,制作/解开文件包。Li
6、nux下主要有两种包,xxx.tar.gz、xxx.tar.bz2,分别是用gzip和bz2制作的tar包。解压:tarxfxxx.tar.gz/tar-xfxxx.tar.gz2压缩,将XXX目录打包:tarzfxxx.tar.gzxxx目录/tarjfxxx.tar.bz2xxx目录查看文件包内容:tar-zvfxxx.tar.gz/tarvfxxx.tar.bz23.2.2 grepgrep(GlobalRegularExpressionPrint)是Linux下强大的正则表达式匹配工具,最常见的应用场合是在一堆字符串中找出我们所指定的内容,打印出匹配的行。找出源码目录中所有的FORWA
7、RD字符串出现:grep-FORWARD*找出源码目录中所有以FORWARD字符串开始的行:grep-FORWARD*找出文件main.c中所有以int字符串开始的行,允许缩进:提示:关于正则表达式,掌握到这个层次就应该可以应付我们的开发工作了。3.2.3 find按照需求查找文件,一般用在查找当前目录下的某些文件。find.不给任何参数,将会递归显示当前目录下的所有文件和文件夹find.-name“main.,扌把所有的main.c都找出来find.-name“datatype-d,把所有的名为data的文件夹都找出来find跟grep配合,利用grep去做匹配,也是常见的用法。find.|
8、grepmain.c把所有的main.c都找出来。324挂载请先熟悉挂载的概念,要求深刻理解。mount/dev/sda5/mnt/sda5,将设备sda5挂载到/mnt/sda5上。umount/dev/sda5或者umount/mnt/sda5,均可卸载设备。提示:Linux下使用ISO镜像很简单,不需要用虚拟光驱或者解包:mountxxx.iso/mnt/iso-iso9660loop,一般不用指定-t。最常见的应用,打开、关闭网络连接,设置IP、MACifconfigeth0downifconfigeth0192.168.1.100ifconfigeth0hwether00:22:33
9、:44:55:66ifconfigeth0up3.2.6 viLinux下的文件编辑器分为两大阵营,vi和emacs,个人不会emacs,如果有人熟悉emacs,希望能一起学习一下。注意,vi不像Windows下的notepad那么弱智”是一个功能极为强大的文件编辑器,涵盖了如下功能(未总结完整):文本的编辑、查找、高级替换、支持正则表达式、支持语法高亮、自动缩进等。它的亮点在于它的两个模式:底行模式和命令模式,加上正则表达式,可以实现强大到难以想像的文本处理功能。Vi的模式介绍:2) 插入模式(Insertmode)只有在Insertmode下,才可以做文字输入,按ESC键可回到命令模式。3
10、)底行模式(lastlinemode)以输入“开始,将文件保存或退出vi,也可以设置编辑环境,如寻找字符串、列出行号等。Vi的基本设置与操作:语法高亮:底行模式:syntaxon显示行号:setnu设置缩进::setts=4327cgcc与与Makefilegcc是一个编译器的集合,我们主要用它来编译C语言程序。gcc最为简单的用法是:gccexe.c,将exefile.c编译,输出可执行文件为exefile这个工程的Makefile:obj=main.omd5.oall:$(obj)main.o:md5.hmd5.o:md5.h.PHONY:distcleancleanclean:distc
11、lean:gcc和makefile的具体使用,请参考相关的详细文档。3.2.8rpmRH下,包是用rpm来管理的,我们主要是用来安装软件/删除软件。查看所有的软件包:rpmq,提示:加上管道,就可以查看匹配我们需要的包:rpm-aq|grepxxx安装软件包:rpm-Uvhxxx.rpm,提示:使用-U参数比-i参数要好,如果当前软件包版本号更高,那么软件会被升级,如果未安装,那么将会被安装(此时等同于rpm-i)。提示:Linux系统中各个工具/命令其实都有详细的文档,当然,文档多数都是英文的,遇到新的命令或者是旧的命令有不明白的参数和用法的时候,多尝试cmd-h/cmd-help/cmdhelp/mancmd。遇到一些库函数或者系统API不会使用的时候,也尝试一下,如manprintf/man-aprintf。养成记录的习惯,将发现的新命令、新用法记下来,便于以后查阅。习题见相关文档