Linux基础知识文档_第1页
Linux基础知识文档_第2页
Linux基础知识文档_第3页
Linux基础知识文档_第4页
Linux基础知识文档_第5页
已阅读5页,还剩3页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Linux基础知识目录1.前言.12.安装与配置.12.1L的安装与配置 .1INUX2.2安装.12.3配置.13.知识纲要 .23.1概念.23.2常用 SHELL命令和工具 .23.2.1tar .33.2.2grep .33.2.3find .33.2.4挂载 .33.2.5Ifconfig .43.2.6vi .43.2.7gcc 与 Makefile .53.2.8rpm .54.习题.61. 前言使用 Linux系统与使用WIN系统比较,有着较大的区别,并且在开发过程中,将会更多地使用文本界面,甚至从来不用GUI(当然,source insight除外)。在Linux下开发、调试

2、程序与WIN32的环境有一些区别,需要掌一些常用的命令和工具的用法,这些命令和工具只有CLI 。希望通过学习下面的Linux基础知识,大家能够尽快熟悉Linux的开发环境,为以后的工作奠定扎实的基础。当大家觉得CLI比GUI 要来得方便时(事实也的确如此),也就应该有不错的Linux功底了。所以建议在用Linux的时候,不要使用GUI。2. 安装与配置2.1 Linux 的安装与配置这部分指导大家在虚拟机中安装Linux系统,建立基本的开发环境。用虚拟机而不用真实安装在硬盘上的Linux系统的原因是,为了方便。前面提到过,我们需要用source insight编辑代码,而在 Linux 系统中

3、编译代码,经常需要在两个系统下切换。2.2 安装通过我们三部的服务器上的RHEL4 WS的安装镜像来安装Linux 。建议参数:在Vmware中,分配10G 以上的虚拟硬盘,分配384M以上的内存空间,网络选择桥接或者 NAT。提示:可以不用将4 个 ISO 都下到本地,在XP 中可以映射网络驱动器,在vmware中可以直接将ISO 指定为光驱。安装的时候,建议选择“完整安装”,有兴趣的话可以在以后的时间里选择安装自己所需要的包。安装的细节,如分区等,希望大家自己研究。完整安装的时间视机器速度,1 小时左右。2.3 配置安装好后,需要配置以下几项,方便使用。开启一些服务:在终端中输入ntsys

4、v ,选中 smb 和 sshd 。配置 samba 文件共享,让虚拟机作为文件服务器,使我们的主、客系统能够互相传送文件。添加 smb 帐户: smbpasswd a root修改 smb 配置文件: vi /etc/samba/smb.conf,在末尾添加如下内容:rootpath = /valid users = rootcreate mask = 0600directorymask=0700writeable = yes修改防火墙配置文件(/etc/sysconfig/iptables),开启 smb服务端口,在 -A RH-Firewall-1-INPUT -p 51 -j ACCE

5、PT之后加上-A RH-Firewall-1-INPUT -p tcp -mtcp -dport 445 -j ACCEPT如果没有“-A RH-Firewall-1-INPUT -p 51 -j ACCEPT”一行的话,在“-A RH-Firewall-1-INPUT -j REJECT -reject-with icmp-host-prohibited”之前加上也可以。重启服务: service iptables restart; service smb restart; service sshd restart提示:现在可以将VMWARE最小化了,我们可以用Windows 下的 SSH软

6、件登录Linux ,推荐使用putty 。还可以修改/etc/inittab,让我们的Linux 启动时自动进入text mode 。另外,可以在Windows 中映射网络驱动器,把Linux 下的 / 文件系统作为一个网络磁盘。3. 知识纲要3.1 概念Linux 内核、文件系统、根文件系统、挂载Linux 的文件 / 文件夹权限、一般文件与特殊文件Linux 的 shell bash环境变量、管道、重定向提示: 以上的概念在UNIX.Shells.by.Example书中有非常详细的介绍,是学习shell的一本极好的教材,也是一本极好的手册。Linux 文件系统中的各目录存储的文件及作用L

7、inux 的软件安装,分为源码和二进制包Linux 内核编译(选)Linux 下开发工程的组织makefile提示: Makefile的编写指导是非常好的一个有关于makefile的文档Linux 下的编译器gcc gnu compiler collection,编译、链接的概念3.2 常用 shell命令和工具命令: lsmkdirrmcpmvchmodchownchgrpfindgrepkillpslncatcutechoaliasmore/lessexport wcwhereisroutemountumountfreedudatedfmknodsortman工具: tarviifconf

8、iggccmakezipunziprpmpatch选学内容: sedawk正则表达式提示:多用管道(| ),可以方便地完成很多复杂的事情。3.2.1tarLinux 下的重要打包工具,制作/ 解开文件包。Linux 下主要有两种包,xxx.tar.gz、 xxx.tar.bz2,分别是用gzip和 bz2 制作的 tar包。解压:tar zxf xxx.tar.gz/tar jxf xxx.tar.gz2压缩,将XXX目录打包:tar czf xxx.tar.gz xxx目录/tarcjf xxx.tar.bz2 xxx目录查看文件包内容:tar tzvf xxx.tar.gz/tar tjv

9、f xxx.tar.bz23.2.2grepgrep ( Global Regular Expression Print)是Linux下强大的正则表达式匹配工具,最常见的应用场合是在一堆字符串中找出我们所指定的内容,打印出匹配的行。找出源码目录中所有的FORWARD字符串出现:grep r FORWARD *找出源码目录中所有以FORWARD字符串开始的行:grepr FORWARD *找出文件main.c 中所有以int字符串开始的行,允许缩进:grep -r t* main.c提示:关于正则表达式,掌握到这个层次就应该可以应付我们的开发工作了。3.2.3find按照需求查找文件,一般用在查

10、找当前目录下的某些文件。find .不给任何参数,将会递归显示当前目录下的所有文件和文件夹find . name “ main.c ”,把所有的main.c 都找出来find . name “ data ” type d ,把所有的名为data 的文件夹都找出来find跟 grep 配合,利用grep 去做匹配,也是常见的用法。find . | grep main.c把所有的main.c都找出来。3.2.4挂载请先熟悉挂载的概念,要求深刻理解。mount/dev/sda5/mnt/sda5,将设备sda5挂载到/mnt/sda5上。umount /dev/sda5或者 umount /mnt/

11、sda5,均可卸 。提示: Linux 下使用 ISO 像很 ,不需要用虚 光 或者解包:mount xxx.iso /mnt/iso t iso9660o loop ,一般不用指定-t 。3.2.5Ifconfig最常 的 用,打开、关 网 接, 置IP 、 MACifconfig eth0 downifconfig eth0 192.168.1.100ifconfig eth0 hw ether 00:22:33:44:55:66ifconfig eth0 up3.2.6viLinux 下的文件 器分 两大 ,vi 和 emacs,个人不会emacs,如果有人熟悉emacs,希望能一起学

12、一下。注意, vi 不像 Windows 下的 notepad 那么“弱智”,是一个功能极 大的文件 器,涵盖了如下功能(未 完整):文本的 、 找、高 替 、支持正 表达式、支持 法高亮、自 等。它的亮点在于它的两个模式:底行模式和命令模式,加上正 表达式,可以 大到 以想像的文本 理功能。Vi 的模式介 :基本上vi可以分 三种状 ,分 是命令模式(command mode)、插入模式(Insert mode)和底行模式( last line mode),各模式的功能区分如下:1) 命令模式 command mode)控制屏幕光 的移 ,字符、字或行的 除,移 复制某区段及 入Insert

13、 mode下,或者到last line mode。2)插入模式( Insert mode)只有在 Insert mode下,才可以做文字 入,按ESC 可回到命令模式。3)底行模式( last line mode)以 入“ : ”开始,将文件保存或退出vi ,也可以 置 境,如 找字符串、列出行号等。不 一般我 在使用 把vi 化成两个模式,就是将底行模式(last line mode)也算入命令行模式 command mode)。Vi 的基本 置与操作:语法高亮:底行模式:syntax on显示行号: :set nu设置缩进: :set ts=4详细的 vi 操作请查阅相关资料。3.2.7g

14、cc 与 Makefilegcc是一个编译器的集合,我们主要用它来编译C 语言程序。gcc最为简单的用法是:gcc o exefile exefile.c,将exefile.c编译,输出可执行文件为exefile再来看一个简单的Makefile,工程中有main.cmd5.cmd5.h这个工程的Makefile:obj=main.o md5.oall: $(obj)gcc -o md5 $(obj)main.o: md5.hmd5.o: md5.h.PHONY: distclean cleanclean:rm -rf $(obj)distclean:rm -rf $(obj) md5gcc 和

15、 makefile的具体使用,请参考相关的详细文档。3.2.8rpmRH下,包是用rpm 来管理的,我们主要是用来安装软件/ 删除软件。查看所有的软件包:rpm aq,提示:加上管道,就可以查看匹配我们需要的包:rpm aq |grep xxx安装软件包: rpm Uvh xxx.rpm ,提示:使用 -U 参数比 -i 高,那么软件会被升级,如果未安装,那么将会被安装(此时等同于参数要好,如果当前软件包版本号更rpm -i)。查看系统中装了多少二进制RPM包: rpm aq | wc,第一个数字,即行数,就是软件包个数了。提示: Linux系统中各个工具/ 命令其实都有详细的文档,当然,文档多数都是英文的,遇到新的命令或者是旧的命令有不明白的参数和用法的时候,多尝试cmd h / cmd help / cmd help /man

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论