1、按系列罗列Linux的发行版,并描述不同发行版之间的联系与区别。
所谓发行版本就是讲内核、源代码及相关的应用程序组织构成一个完整的操作系统,让一般的用户可以简便地安装和使用Linux。
Linux的发行版本大体分为两类:
1)商业公司维护的版本,以著名的Redhat为代表;
2)社区组织维护的发行版本,以Debian为代表
目前比较著名的三大主流发行版分别为Debian、Redhat、SUSE
Debian
最早由Ian Murdock于1993年创建,是社区类Linux的典范,也是迄今为止最遵循GNU规范的Linux的系统。Debian是包括Ubuntu在内许多发行版的上游,在服务器和桌面电脑领域都有着广泛的应用。
分为三个版本分支:
1)stable:stable版本一般只用于服务器,稳定性和安全性都非常高
2)testing:testing版本都经过unstable版本的测试,相对稳定
3)unstable:unstable为最新的测试版本
Debian最具特色的是apt-get /dpkg包管理方式。
Ubuntu
Ubuntu是基于Debian的unstable版本加强而来,是一个拥有Debian所有优点,以及自己所加强的优点的近乎完美的Linux桌面操作系统。
根据选择的桌面系统不同,有三个版本可以选择:
1)基于Gnome的Ubuntu
2)基于KDE的Ubuntu
3)基于Xfc的Xubuntu
特点:界面非常友好,容易上手,对硬件的支持非常全面,是最适合做桌面系统的Linux发行版本
Redhat Linux
Redhat Linux系列是红帽公司研发的Linux发行版本,包括Fedora、RHEL、CentOS和Oracle Linux多种版本。
- 红帽用户桌面版(Fedora):最初由红帽公司发起的桌面版系统套件(目前已经不限于桌面版),用户可免费体验到最新的技术或工具,而功能成熟后加入到RHEL中。
- 红帽企业系统(RedHat Enterprise Linux, RHEL):全球最大的开源技术厂商,全世界内使用最广泛的Linux发布套件,提供性能与稳定性极强的Linux套件系统并拥有完善的全球技术支持。
- 社区企业操作系统(CentOS):最初是将红帽企业系统“重新编译/发布”给用户免费使用而广泛使用,当前已正式加入红帽公司并继续保持免费(随RHEL更新而更新,通常每隔半年发布一个新版本)。使用CentOS,可以获得和RHEL相同的性能和感受。
- Oracle Linux:Oracle Linux是Linux发行版本之一,全称为Oracle Enterprise Linux,简称OEL,是Oracle公司在2006年初发布第一个版本,以对Oracle软件和硬件支持较好见长。Oracle以Red Hat Linux做为起始,移除了Red Hat的商标,然后加入了Linux的错误修正。专门针对Oracle软件与硬件进行优化,最重要的是Oracle数据库跑在OEL上性能可以提升超过75%。
SUSE
SUSE Linux 以 Slackware Linux 为基础,原来是德国的 SUSE Linux AG 公司发布的 Linux 版本,1994 年发行了第一版,早期只有商业版本,2004 年被 Novell 公司收购后,成立了 OpenSUSE 社区,推出了自己的社区版本 OpenSUSE。SUSE Linux 在欧洲较为流行,在我国国内也有较多应用。值得一提的是,它吸取了 Red Hat Linux 的很多特质。SUSE Linux 可以非常方便地实现与 Windows 的交互,硬件检测非常优秀,拥有界面友好的安装过程、图形管理工具,对于终端用户和管理员来说使用非常方便。
不同发行版之间的关系:
都是基于linux内核,都是基于GPL协议发布的
不同发行版之间的区别:
发行版的本质区别,在于继承不同版本的内核,库、程序的组成。不同发行版几乎采用了不同包管理器(Fedora、SUSE、centos、RHEL使用rmp包管理系统,包文件以RPM为扩展名;Ubuntu系列,Debian系列使用基于DPKG包管理系统,包文件以deb为扩展名。)
2、装Centos7.6操作系统,创建一个自己名字的用户名,并可以正常登录,将主要步骤截图。
预计分配硬盘200G,分区如下:
- /dev/sda 200G
- /dev/sda1 mount /boot 1G
- /dev/sda2 mount / 100G
- /dev/sda3 mount /swap 4G
- /dev/sda4 /data 剩余空间
安装过程:
至此,CentOS7安装完成。
3、配置环境变量,实现执行history的时候可以看到执行命令的时间。
1)修改配置文件.bash_profile2)修改全局配置文件/etc/profile,添加HISTTIMEFORMAT= " %F %T "并导出
重新连接终端即可生效,所有用户均生效
4、总结Linux哲学思想。
- 一切皆文件
不仅普通的文件,目录、字符设备、块设备等都是以文件被对待,虽然类型不同,但是对其提供的却是同一套操作接口,对所有资源的访问都统一表现为对文件的访问 - 提供很多小型的单一用途的程序
linux中提供的程序和可执行文件一般不太复杂,从而保证了linux高效运行 - 连接程序,共同完成复杂功能
由于每个linux命令功能简单,如果想实现复杂的任务时,可以通过连接多个简单的程序实现复杂的功能。在保证简单功能高效运行的同时,复杂的程序也必然高效。 - 避免令人困惑的用户界面
linux通常使用字符界面,相对比较单一,资源消耗小,最重要的是开源,出现的问题都可以通过简洁的命令实现排错,修改系统的配置,一切都是简洁明了为基础。 - 配置数据存储在文本中
linux系统及各种应用程序的配置文件都存放在文本配置文件中,无论什么配置修改都只需修改其配置文件即可。
5、总结Linux常用命令使用格式,并用实例说明。例如echo、screen、date、ifconfig、export等命令
在Linux中,一般命令的通用语法格式为:
command [options...] [args...]
中括号表示可以省略,每个部分之间至少有一个空格
command:即命令,表示可以执行的命令,常见的命令有二进制格式文件,或者脚本程序文件
options:即选项,可以用来调整命令的运行特性,[]中的内容表示可以省略,一般命令都支持一个或多个选项
选项分为三种风格:
1、UNIX风格选项:用一个短横线(-)开始,后面跟一个字母,又称短选项,支持多个选项组合,如-a,-ah
2、GNU风格选项:用两个短横线(--)开始,后面跟一个单词,一般不支持多个选项组合,又称长选项,如--all,--help
3、BSD风格:一个字母,但前面不加横线,支持多个选项组合,支持此风格的命令相对不太多,如a,aux
args:参数,表示命令的作用对象,比如文件名,用户名,网卡名等,有的命令支持多个参数,参数间使用空白字符分割
例如:
- echo [选项] [参数]
功能:显示字符,echo会将输入的字符串送往标准输出,
另外,echo命令在使用双引号时,会输出变量的值,为弱引用;而在使用单引号时,会直接将变量作为文本输出,为强引用
选项:
-E (默认参数)不支持\解释功能
-n:不自动换行
-e:启用\字符的解释功能
- date命令:显示和设置系统时间
date [OPTION]... [+FORMAT]
FORMAT格式说明:
%F:日期,显示为数字,格式为:2020-04-17
%D:显示英制格式,月日年,显示格式为:03/17/20
%T:时间,显示为数字,格式为20:00:00
%Y:年份,只显示完整年份数字(4位数字),显示格式为2020
%y:显示年份的后两位
%m:月份,只显示数字,格式为04
%d:日期,只显示数字,格式为17
%H:小时,只显示数字,格式为(00..23)
%k:小时,只显示数字,格式为(0-23)
%I:小时:只显示数字,格式为(01-12)
%i:小时,只显示数字,格式为(1-12)
%h:显示月份,格式为:4月/Apr
%M:分钟,只显示数字,格式为52
%S:秒钟,只显示数字,格式为52
%a:缩写星期,如Sat
%A:完整星期,如Saturday
%b:缩写月份,如Apr
%B:完整月份,如April
%r:显示格式为:08:41:00 PM
%R:同%H%M,格式为:20:41
%s:从1970年1月1日至此刻的秒数
-
ifconfig
用于配置和显示Linux内核中网络接口的网络参数。用ifconfig命令配置的网卡信息,在网卡重启后机器重启后,配置就不存在。要想将上述的配置信息永远的存的电脑里,那就要修改网卡的配置文件了。
语法格式:ifconfig [参数]
常用参数:
add<地址> 设置网络设备IPv6的IP地址
del<地址> 删除网络设备IPv6的IP地址
down 关闭指定的网络设备
up 启动指定的网络设备
IP地址 指定网络设备的IP地址
- export
export命令用于将shell变量输出为环境变量,或者将shell函数输出为环境变量。一个变量创建时,它不会自动地为在它之后创建的shell进程所知。而命令export可以向后面的shell传递变量的值。当一个shell脚本调用并执行时,它不会自动得到原为脚本(调用者)里定义的变量的访问权,除非这些变量已经被显式地设置为可用。export命令可以用于传递一个或多个变量的值到任何后继脚本。
语法格式: export [参数]
常用参数:
-f 代表[变量名称]中为函数名称
-n 删除指定的变量。变量实际上并未删除,只是不会输出到后续指令的执行环境中
-p 列出所有的shell赋予程序的环境变量