学过和学会是不一样的,学会和会用更是有区别的
Linux是一个自由的,免费的,源码开放的操作系统。开源软件中最著名的例子。最主要的目的就是为了建立不受任何商品化软件版权制约的,全世界都能使用的Unix兼容产品.
Linux最初是由芬兰赫尔辛基大学学生LinusTorvalds由于自己不满意教学中使用的MINIX操作系统,所以在1990年底由于个人爱好并且参考UNIX操作系统设计出了LINUX系统核心
===============================================================================================================
Linux特点;
开放性,多用户,多任务
丰富的网络功能
可靠的系统
良好的可移植性,具有标准兼容性
良好的用户界面(命令界面,图形界面等)
出色的速度性能
基于GPL(通用公共许可证)
解释;在开源过程中,一些人不遵守道德和法律,将别人的开源产品进行二次开发,盗版为自己的产品,这样是违法的,违背了开源、免费、自由的初衷,极端的时候甚至造成了垄断!基于此,开源软件都会为自己的产品设立一个许可证,许可证类型很多,而GPL是比较流行的,相当于一个法律条文,一个协议,进行约束作用。大概意思就是说:如果要修改这个开源软件,那么必须要把修改的作品免费发放,不能违背自由和开源的初衷。否则有权利起诉和追究侵权的!
=================================================================================================================
linux组成;
OS是连通机器硬件和用户的中间件,帮助用户操作这些硬件设备。用户是无法直接操作硬件设备的。OS一方面和用户交流,一方面和硬件打交道。
基于此,操作系统分为了两大基本模块;
1、和硬件直接打交道的—内核(kernel)
2、和用户直接打交道的—外壳(shell)
计算机里除了硬件(hardware)就是软件(software),操作系统本身也是一个软件,操作系统之上的是应用软件(application),比如QQ,迅雷,杀毒软件,PS软件等等。
注意;应用软件不是必须的,我不聊天就不用装QQ,不下载就不用装迅雷,但是操作系统是一定要有的。
再看linux操作系统的组成;
1、kernel是系统的心脏,是运行程序和管理像磁盘和打印机等硬件设备的核心程序。(最早的内核就是几百k而已,发展到现在核心内核是几兆左右,是最精华的部分)
2、Shell
是系统的用户界面,也是一个程序,它本身没什么功能,它主要提供了用户和内核进行交互操作的一种接口。它接收用户输入的命令并把它送入内核去执行,执行完毕,负责展示给用户,它是一个字符命令解释器。但它不仅是命令解释器,而且还是高级编程语言,
shell
编程,一个脚本语言。
3、文件系统:文件系统是文件存放在磁盘等存储设备上的组织方法,
Linux
支持多种文件系统,如
ext3,ext2(相当于windows的FAT32),NFS(网络文件系统net file system),SMB,iso9660(光盘协议)
等。
4、应用程序:标准的
Linux
操作系统都会有一套应用程序例如
X-
Window,Open
Office
等(装的软件也都是开源的)
==============================================================================================================
linux版本小常识
发行版本:
是一些厂商或者个人将原始的Linux系统内核开发捣鼓一下,打上自己的logo等等信息,然后开发定制几个自己特色的应用软件,再和文档包装起来,并提供一些安装界面和系统设定管理工具的一个软件包的集合。仅此而已。但是免费!
例如著名的RedHat Linux,Debian,
Ubuntu, Novell/SuSE Linux等。
Ubuntu版本号;
由该次发布的年份和月份组成,并未反映其实际版本.首次发布是在2004年10月,因此该版本为4.10。如果于2009年4月23日发布,因此版本号为9.04。
比如我装的是ubuntu-12.10-desktop-i386,那就是12年10月的发行的版本。
================================================================================================================
linux的用途
现在有很多公司都在使用Linux操作系统,Linux操作系统从桌面到服务器,从操作系统到嵌入式系统,从零散的应用到整个产业都初见雏形。
Linux服务器操作系统在整个服务器操作系统市场格局中占据了越来越多的市场份额,并且形成了大规模的应用局面.
例如:
常见的android操作系统的底层就是linux的,还有机顶盒,ATM机子,车载电脑,路由器,移动通讯设备,智能家电等等。
=================================================================================================================
linux目录结构
注意;/叫做根目录,不要再叫斜杠了
输入密码登录进入,我们发现和windows的差不多,ctrl+g或者单机虚拟机内部是进入虚拟机系统,crtl+alt是回到宿主系统。
bin binary缩写,用于存放二进制可执行文件(ls,cat,mkdir等),其实就是各种命令。
boot 存放用于系统引导时使用的各种文件,其实就是启动资源的文件。
dev 用于存放设备文件,device的缩写,就是存放和设备相关(驱动相关)的文件。比如硬盘,总线,cpu等
ps:因为linux的设备都会映射为一个文件,管理每个设备等价于管理文件,好处是方便管理设备,方便读写设备信息(因为是文件)。但是在windows里就很麻烦。
etc 存放系统配置文件,经常见的。比如windows的hosts文件就在这里存储。
home 存放所有用户文件的根目录,windows系统里在系统盘的Documents and Settings里,对于刚刚安装好的linux操作系统,home里只有一个文件夹,就是主机名字命名的文件夹。存放的是用户的根目录。
而root是超级用户目录,单独存放为一个文件夹!
-------------------------------------------------------------
root 超级用户目录
sbin super binary,用于存放二进制可执行文件,只有root才能访问
tmp sbin用于存放各种临时文件
-------------------------------------------------------------
var varable用于存放运行时需要改变数据的文件
lib 存放跟文件系统中的程序运行所需要的共享库及内核模块,比如java的jdk里的jar包。
ps:比如我们在windows里装软件,默认安装到系统盘的Program Files,但是我们一般改到其他盘的Program Files文件里。安装的时候呢,就是系统级的文件安装到系统盘里,比如jar包,而我们自己建立的应用程序文件就可以去安装到更改的盘符里,而在linux系统中,给我们提前设置好了这两个路径,可以方便的直接拿来就用:
-------------------------------------------------------------
usr
不是user,注意区分,用于存放系统应用程序,比较重要的目录/usr/local 本地管理员软件安装目录,相当于windows的系统盘的
Program Files
假如现在装一个系统级的软件,应该装到usr里,比如jdk就装到usr里。
opt optional可选的,指的是额外安装的可选应用程序包所放置的位置,相当于windows自己选的其他盘符的
Program Files
比如现在装一个自己的应用软件,如tomact服务器,vs2010编译器等,就装到opt文件夹里
-------------------------------------------------------------
mnt 系统管理员安装临时文件系统的安装点,比如当我们挂载一个windows的目录,挂载完了,就去mnt文件夹里寻找。
proc 虚拟文件系统,存放当前内存的映射
=========================================================================================================
未完待续
在windows里写命令需要去命令行窗口,同样在linux里也是。