Liunx介绍
Linux系统是一款免费的,开源的,多任务,多用户的(Linux支持多用户,各个用户对于自己的文件设备有自己特殊的权利,保证了各个用户之间互不影响。多任务则是可使多个程序同时并独立地运行)它是一款类Unix的系统。"Linux操作系统,其实并不是操作系统,linux是一个内核,linux系统构成包括:Linux 内核 GNU项目及其他的软件"
Liunx的发展
Linux操作系统的诞生、发展和成长过程始终依赖着五个重要支柱:UNIX 操作系统、MINIX 操作系统、GNU计划、POSIX 标准和Internet 网络。。
1981 年IBM公司推出微型计算机IBM PC。
1991年,GNU计划已经开发出了许多工具软件,最受期盼的GNU C编译器已经出现,GNU的操作系统核心HURD一直处于实验阶段,没有任何可用性,实质上也没能开发出完整的GNU操作系统,但是GNU奠定了Linux用户基础和开发环境。
1991年初,林纳斯·托瓦兹开始在一台386sx兼容微机上学习minix操作系统。1991年4月,林纳斯·托瓦兹开始酝酿并着手编制自己的操作系统。
1991 年4 月13 日在comp.os.minix 上发布说自己已经成功地将bash 移植到了minix 上,而且已经爱不释手、不能离开这个shell软件了。
1991年7月3日,第一个与Linux有关的消息是在comp.os.minix上发布的(当然此时还不存在Linux这个名称,当时林纳斯·托瓦兹的脑子里想的可能是FREAX,FREAX的英文含义是怪诞的、怪物、异想天开等)。
1991年的10月5日,林纳斯·托瓦兹在comp.os.minix新闻组上发布消息,正式向外宣布Linux内核的诞生(Freeminix-like kernel sources for 386-AT)。
1993年,大约有100余名程序员参与了Linux内核代码编写/修改工作,其中核心组由5人组成,此时Linux 0.99的代码大约有十万行,用户大约有10万左右。
1994年3月,Linux1.0发布,代码量17万行,当时是按照完全自由免费的协议发布,随后正式采用GPL协议。
1995年1月,Bob Young创办了RedHat(小红帽),以GNU/Linux为核心,集成了400多个源代码开放的程序模块,搞出了一种冠以品牌的Linux,即RedHat Linux,称为Linux"发行版",在市场上出售。这在经营模式上是一种创举。
1996年6月,Linux 2.0内核发布,此内核有大约40万行代码,并可以支持多个处理器。此时的Linux 已经进入了实用阶段,全球大约有350万人使用。
1998年2月,以Eric Raymond为首的一批年轻的"老牛羚骨干分子"终于认识到GNU/Linux体系的产业化道路的本质,并非是什么自由哲学,而是市场竞争的驱动,创办了"Open Source Intiative"(开放源代码促进会)"复兴"的大旗,在互联网世界里展开了一场历史性的Linux产业化运动。
2001年1月,Linux 2.4发布,它进一步地提升了SMP系统的扩展性,同时它也集成了很多用于支持桌面系统的特性:USB,PC卡(PCMCIA)的支持,内置的即插即用,等等功能。
2003年12月,Linux 2.6版内核发布,相对于2.4版内核2.6在对系统的支持都有很大的变化。
2004年的第1月,SuSE嫁到了Novell,SCO继续顶着骂名四处强行“化缘”, Asianux, MandrakeSoft也在五年中首次宣布季度赢利。3月,SGI宣布成功实现了Linux操作系统支持256个Itanium 2处理器
文件系统
文件系统就是分区或磁盘上的所有文件的逻辑集合。不仅包含着文件中的数据而且还有文件系统的结构,所有Linux用户和程序看到的文件、目录、软连接及文件保护信息等都存储在其中(管理文件,包含了文件的组织结构,数据等等)
文件系统位于磁盘分区中,一个硬盘可以有多个分区,也可以只有一个分区,一个分区只能包含一个文件系统
Linux系统的文件组织结构是树状图
目录树
根目录: /,是树状结构的顶端,它对应一个分区,操作系统在开机的时候,需要挂载的一个分区,因为内核文件引导程序,系统修复工具都在这个分区,类似于Windows的C盘一样,因此/etc,/bin,/sbin,/lib,/dev这样的目录应该和根目录在同一个分区。根目录下都是目录(文件夹),不能包含文件。
/bin:二进制文件目录,用于存储系统管理员和普通用户使用的命令(存放可执行文件,很多命令对应/bin下的某个程序,例如 ls,cp,mkdir.等)。
/boot:操作系统启动时所需要的引导程序所在处,最好单独一个分区,分区大小为100M即可。(系统启动文件,例如Linux内核、引导程序等)
/dev 设备文件存储位置。比如一些设备(光驱,磁盘,打印机,声卡等)都会以目录的形式挂载到dev目录下
/etc:系统的配置文件及其子目录的所在处。
/home:用户的主目录所在处,当系统管理员载创建用户时,回在此处自动创建用户的主目录( ~ 表示用户的主目录,单独一个分区,越大越好)。[home分区就像一个小区,而每一个用户就是小区的住户一样。]
/lib:使用系统使用的函数库所在处(里面存放所需要的函数)
/media /mnt 都是用于挂载其他设备对应的目录的。
/opt:主要用来给用户存储安装程序的地方
/root:系统管理员root的主目录
/sbin:系统管理员使用的命令所在处
/usr:用户安装程序时的存储路径
/tmp:用于存储临时文件
/var:用于存储可变文件,比如log日志文件
/swap:内存交互区,建议单独分区
绝对路径和相对路径
绝对路径:以根目录”/“为起点,以想要到达的目录为终点
相对路径:是以你当前的路径为起点,以想要到达的目录为终点。
" . ": 是指当前目录(当前位置)
” … “:指的是上一级目录(父目录)
常用命令
cd:是切换目录的作用,相当于鼠标
ls:显示目录内的文件和目录
pwd:显示工作路径的绝对路径
文件类型: " file “:查看文件类型
” stat “:可以使显示的数据更加详细
格式:stat 文件名/目录名
-:普通文件
d:目录
p:管道文件,在做IO操作,由于错误产生的文件
s:套接字文件
b:块文件
c:字符文件
文件属性:
查看方式: ls -l
如图 其中共有七列属性信息
第一列:又10个字符组成 第1个字符表示文件类型
2-10:每三个一组
第一组:表示文件所有者的权限
第二组:表示用户组的权限
第三组:表示其他人的权限
第二列:表示硬连接的数量
第三列:所有者的名称
第四列:用户组名
第五列:文件或目录大小
第六列:文件或目录最后一次属性被修改的时间
第七列:文件或目录名称
文件的命名规则:
(1):命名时,尽量不要使用/,@,$,#
(2)命名时,也不要使用” . ",因为” . “有特殊意义,通常用于隐藏文件或目录
(3):大小写敏感