一、Linux简介
1、什么是操作系统
计算机资源由两部分组成。
(1)硬件资源:看得见摸得着的东西,计算机赖以工作的实体,包括显示器、键盘、鼠标、硬盘、CPU、主板等
(2)软件资源:系统软件、应用软件
系统软件:运行在计算机硬件之上的软件,比如 Windows、Linux、Mac OS、Android 等操作系统
应用软件:例如:Office、QQ、迅雷、微信等应用程序
操作系统(operation system,简称:os),是管理和控制计算机硬件和计算机软件的程序,是直接运行在裸机上的最基本的系统软件,其他应用必须依靠系统软件运行。
常见的操作系统:
1)Windows
它是微软公司开发的一款桌面操作系统(闭源系统)。版本有dos、win98、win NT、win XP、win7、win vista、win8、win10。服务器操作系统:win server2003、win server2008、win server2012。
2)Mac
MacOS Sierra的首个开发者预览于2016年苹果全球开发者大会6月13日的主题演讲后发布。MacOS Sierra的首个公开测试版本在2016年7月发布。MacOS Sierra将于2016年9月20日通过Mac App Store以免费更新的形式向最终用户发布。此版本之后OS X正式更名为Mac OS。
3)Linux
Linux是一个开源的操作系统,目前是市场上占有率极高的服务器操作系统。
4)unix
Unix操作系统,是一个强大的多用户/多任务操作系统 ,支持多种处理器架构。按照操作系统的分类,属于分时操作系统,最早由KenThompson、Dennis Ritchie和Douglas McIlroy于1969年在AT&T的贝尔实验室开发。
2、Linux介绍
Linux最初是由芬兰赫尔辛基大学学生Linus Torvalds由于自己不满意教学中使用的Minix操作系统,所以在1990年底由于个人爱好设计出了Linux系统核心。
Linux是一个自由的、免费的,源码开放的操作系统,也是开源软件中最著名的例子。其最主要的目的就是为了建立不受任何商品化软件版权的制约,全世界都能使用的类Unix兼容产品。而我们将服务器部署在Linux将会更加的稳定、安全、高效,以及其出色的性能都是Windows无法比的。
3、Linux发行版本
1)RedHat Linux:更多的应用于服务器
Red Hat 公司的产品主要包括 RHEL(Red Hat Enterprise Linux,收费版本)和 CentOS(RHEL 的社区克隆版本,免费版本)、Fedora Core(由 Red Hat 桌面版发展而来,免费版本)。
2)Ubuntu Linux:更多的应用于个人桌面
Ubuntu 基于知名的 Debian Linux 发展而来,界面友好,容易上手,对硬件的支持非常全面,是目前最适合做桌面系统的 Linux 发行版本,而且 Ubuntu 的所有发行版本都免费提供。
3)SuSE Linux:目前由Novell公司运作,还有一个是open SuSE两种,由Linux社区维护
4)Gentoo Linux:高度的自定制性,适合有经验的老手使用
4、Linux和Windows对比的优缺点
(1)Windows是桌面系统, Linux一般是命令行系统, 也有桌面版本,如Ubuntu、Redhat;
(2)Windows适用于普通用户;Linux主要用于做服务器,由专业人员使用和维护,一般使用的人都是开发者或专家,学习者一般使用linux桌面版本;
(3)Windows的安全性能不如Linux,Linux上不会像Windows一样要装一堆杀毒软件;
(4)Linux的发行版本非常多, 性能各有各的特点;
(5)Linux完全开源,只有一些公司如Redhat会收取一些服务费;Windows则是微软版权;
(6)Windows上的游戏比较多, 而Linux不适合娱乐,没有酷狗、LOL这些方便的娱乐软件, 当然也有替代的 , 不过不太好用;
(7)Linux上的QQ功能很差,可以使用webqq,不过功能也很弱,而Windows上则很方便使用这些聊天软件。
二、Linux安装
2.1 Linux安装方式
1)光盘安装,最常使用最便捷的;缺点是需要在机器边上,比如机房,不能远程控制,需要有光驱,对于没有光驱的机器比较困难
2)ISO镜像文件安装(常用),不需要光驱,不能重新分区和格式化
3)网络远程安装,缺点:需要事先配置好网络连接,对技术要求较高
4)硬盘克隆,直接从装好的一台机器上通过硬盘克隆直接克隆一个系统过来
2.2 VMware虚拟机
所谓虚拟机(virtual machine),就是通过软件技术虚拟出来的一台计算机,它在使用层面和真实的计算机并没有什么区别。
VMware 有两个版本,分别是 VMware Workstation Pro 和 VMware Workstation Player。 Player 是免费版本,只能用于非商业用途,适合个人学习。 Pro 是商业版本,功能最强大,付费以后才能使用。
2.3 虚拟机安装Linux及配置
安装过程 略
2.4 Linux系统启动过程
1)内核的引导;2)运行init;3)系统初始化;4)建立终端;5)用户登录系统

三、Linux目录介绍
在Linux操作系统中,所有的文件和目录都被组织成以一个根节点“/”开始的倒置的树状结构。其中,目录就相当于 Windows 中的文件夹,目录中存放的既可以是文件,也可以是其他的子目录,而文件中存储的是真正的信息。

3.1 Linux子目录结构
(1) /bin:bin是Binary的缩写, 这个目录存放着最经常使用的命令。系统的所有用户使用的命令都设在这里,例如:ps、ls、ping、grep...
(2) /sbin:s就是Super User的意思,这里存放的是系统管理员使用的系统管理程序。例如:iptables、reboot、fdisk、ifconfig、swapon命令
(3) /boot:这里存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件。
(4) /dev:dev是Device(设备)的缩写,该目录下存放的是Linux的外部设备,在Linux中访问设备的方式和访问文件的方式是相同的
(5) /etc:这个目录用来存放所有的系统管理所需要的配置文件和子目录。也包含了用于启动/停止单个程序的启动和关闭shell脚本
(6)/home:用户的主目录,在Linux中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的
(7) /lib:这个目录里存放着系统最基本的动态连接共享库,其作用类似于Windows里的DLL文件。几乎所有的应用程序都需要用到这些共享库
(8) /lost+found:这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件
(9) /media : linux系统会自动识别一些设备,例如U盘、光驱等等,当识别后,linux会把识别的设备挂载到这个目录下
(10) /mnt:系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将光驱挂载在/mnt/上,然后进入该目录就可以查看光驱里的内容了
(11) /opt: 这是给主机额外安装软件所摆放的目录。比如你安装一个ORACLE数据库则就可以放到这个目录下。默认是空的。
(12) /proc:这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。/root:该目录为系统管理员,也称作超级权限者的用户主目录。
(13) /selinux: 这个目录是Redhat/CentOS所特有的目录,Selinux是一个安全机制,类似于windows的防火墙,但是这套机制比较复杂,这个目录就是存放selinux相关的文件的。
(14) /srv: 该目录存放一些服务启动之后需要提取的数据。
(15) /sys: 这是linux2.6内核的一个很大的变化。该目录下安装了2.6内核中新出现的一个文件系统 sysfs 。sysfs文件系统集成了下面3种文件系统的信息:针对进程信息的proc文件系统、针对设备的devfs文件系统以及针对伪终端的devpts文件系统。
(16) /tmp:这个目录是用来存放一些临时文件的。
(17) /usr: 这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似与windows下的program files目录。
(18) /usr/bin:系统用户使用的应用程序。
(19) /usr/sbin:超级用户使用的比较高级的管理程序和系统守护程序。
(20) /usr/src:内核源代码默认的放置目录。
(21) /var:这个目录中存放着在不断扩充着的东西,系统上跑了很多程序,那么每个程序都会有相应的日志产生,而这些日志就被记录到这个目录下,具体在/var/log目录下,另外mail的预设放置也是在这里。
在linux系统中,有几个目录是比较重要的。/etc: 这个是系统中的配置文件,如果你更改了该目录下的某个文件可能会导致系统不能启动。/bin, /sbin, /usr/bin, /usr/sbin: 这是系统预设的执行文件的放置目录,比如ls就是在/bin/ls 目录下的。值得提出的是,/bin, /usr/bin是给系统用户使用的指令(除root外的通用户),而/sbin, /usr/sbin 则是给root使用的指令。/var: 这是一个非常重要的目录,系统上跑了很多程序,那么每个程序都会有相应的日志产生。
四、Linux命令基础
4.1 Linux语法格式
命令提示符 命令 选项 参数

命令提示符有两种:#号代表超级管理员root用户,$号代表普通用户。
命令:操作目录,文件,用户等相关命令,比如,pwd,ifconfig,su等。选项、参数,不是必须的。
执行linux命令是应注意以下几点:
1)Linux中无论是目录名,文件名,命令都是区分大小写的。
2)命令,选项,参数至少有一个空格分割。
3)选项一般都有一个引导符号‘-’或者两个引导符号‘--’,多个短格式选项可以合在一起写。
4.2 路径问题
绝对路径:是由根目录 / 开始写起。例如,/usr/bin
相对路径:是从当前所在的工作目录开始写起。使用相对路径表明某文件的存储位置时,经常会用到2 个特殊目录,即当前目录(用 . 表示)和父目录(用 .. 表示)。例如,./Desktop,表示当前目录下的Desktop文件。