目前主流的Linux发行版:
Ubuntu、RedHat 、Centos、Fedora 、suse 、红旗 、debian
不同发行版之间的联系
前言:虽然Linux发行版众多,但内核都是基于同一个内核,所谓不同其实都是根据内核的基础来进行软件等功能进行二次开发
Ubuntu:中文名称“乌班图”,是一个以桌面应用为主的linux操作系统,每两年发布一次XX.04 LTS 版本,名称会以小动物的名称来命名,同时也是目前最主流的个人和企业中常用的Linux发行版之一。
Red Hat:中文名称“红帽”,它是一款主要以营利为目的的Linux发行版,为客户提供持续支持的服务,同时收取费用。
Centos:CentOS在2014初,宣布加入Red Hat,但与红帽不同的是,CentOS是免费的、开源的、可以重新分发的开源操作系统,由于加入红帽的原因,使得Centos中的软件结构体系和Red hat非常接近。
红旗Linux:红旗Linux是由北京中科红旗软件技术有限公司开发的一系列Linux发行版,包括桌面版、工作站版、数据中心服务器版、HA集群版和红旗嵌入式Linux等产品。红旗Linux是中国较大、较成熟的Linux发行版之一。红旗Linux为我国自研的操作系统,发行时间为1999年8月,乃我中华之骄傲,虽然底层是基于Linux,但是相信我国的科研人员,以及广大IT工作者的共同努力,未来一定会研制出纯国产的操作系统!
因为开源免费的原因,同时也是为了节省项目成本,目前世界上绝大多数企业主流使用的还是Centos和Ubuntu系列的Linux,同时也间接的响应了阿里巴巴公司提出的去IOE计划##
此链接为去IOE计划的百度百科
首先先做好实验前的准备:
iso光盘文件可以在各大云厂商的开源网站上下载
下面以阿里云开源站点为例:
阿里云ISO镜像文件下载链接
以下是每种文件类型的详细说明:
CentOS ISO:DVD是标准安装盘,一般下载这个就可以了,里面包含大量的常用软件,大部分情况下安装时无需再在线下载,体积为4G;
Minimal ISO:精简版本,包含核心组件,体积才900多MB;
Everything ISO:顾名思义,包含了所有软件组件,当然体积也庞大,高达10G。对完整版安装盘的软件进行补充,集成所有软件;
NetInstall ISO:网络安装镜像;
LiveGNOME ISO:GNOME桌面版;
LiveKDE ISO:KDE桌面版;
LiveCD ISO:光盘上运行的系统,类拟于winpe;
好了,实验工具我们已经准备好了,现在就开始进行安装吧!
点击进入VMware虚拟机,然后点击左上角的文件,选择新建虚拟机,点击第二项自定义,下一步,下一步,选择稍后安装系统
接下来然后按照图中的选项选择即可
下面直接按照系统默认点击下一步即可,但是磁盘空间这里最好选择“将虚拟磁盘存储为单个文件”(磁盘大小可以选择需要的大小,大一点没关系,因为是虚拟出来的所以并不会真正的占用很大的磁盘空间)
以上都设置完毕后,我们还要指定iso光盘的所在路径,选择完毕后,点击确定
这时我们虚拟机的一些前期配置就做好了,然后点击启动几个,红色箭头处点哪个都行
有的时候,开启后,系统不会自动加载光盘,这时就需要我们手动加载,点击右下角的光盘图标后,选择连接,重新开启虚拟机即可
开启后,我们会看到如下界面
目前我们只需关心第一项和第二项,分别是直接安装和检查并安装
如果对文件的完整性不确定的话可以选择第二项
选择完毕后,我们会看到选择语言界面,为了更好的兼容性,还是选择英文比较好,然后点击continue继续
下一步我们来选择时间和时区,亚洲-shanghai上海-24小时制
这里键盘我们就选择默认的英文键盘了,同时安装方式为了节省空间选择最小化安装minimal install,下一步就开始设置分区策略(点击红色箭头处)
然后选择我要配置分区后点击done
选择标准分区后点击加号
下面我们就可以根据需要选择分区大小了(因为是演示,所以硬盘空间一开始规划的就比较小,在生产中还是要根据需求来)
#通常boot分区装的是系统启动相关的内核文件,文件本身较小,所以1G就足够
#SWAP交换分区则按照硬件配置来设置就行,通常内存较小时则设置内存的两倍,如(1G内存,2G SWAP),但如果内存较大的话为了节省磁盘空间设置少一点也是可以的,如(8G内存,4G SWAP)
然后点击done后会出现如下界面,点击接受并修改即可
然后点击开始安装,后会出现如下安装界面,同时在这里我们就可以设置root登录密码,以及创建一个属于自己的登录账号
最后点击reboot重启
好嘞!大功告成~!
#默认此变量为空
[root@centos8 ~]$echo $HISTTIMEFORMAT
#默认行首只显示命令的执行数量
[root@centos8 ~]$history
425 echo $HISTTIMEFORMAT
426 hi's
427 history
#将变量设置成这个格式来达到显示执行日期和时间的效果
[root@centos8 ~]$HISTTIMEFORMAT="%F %T `whoami` "
[root@centos8 ~]$history
1 2021-02-07 03:01:00 root cd /data/
2 2021-02-07 03:01:00 roo tls
3 2021-02-07 03:01:00 root vim while.sh
#如果我们想此设置永久生效则需要写入到文件中
echo 'export HISTTIMEFORMAT="%F %T `whoami` "' >> ~/.bash_profile
一:一切皆文件
二:小型,单一用途的程序(但是在Centos8后,个别的命令如ip命令,可以用tab键补出很多个子命令,更像是以前多个命令的集合,当然这也可能是未来linux命令的发展趋势)
三:使用文本文件保存配置信息。文本文件易于阅读和编辑。
四:避免令人困惑的用户界面,Linux通常使用字符界面,相对比较单一,资源消耗小,出现的问题都可以通过命令来排错,修改系统的配置,一切简单明了。
五:避免交互性,以脚本编程的方式实现功能管控的自动化。同时也避免了在繁琐而重复的工作中出错
默认打印换行符
-e:激活转义字符
\c 最后不加上换行符号
\n 换行且光标移至行首
\r 光标移至行首,但不换行
#范例
[root@centos8 ~]$echo "hello world"
hello world
%H 小时,24小时制(00~23)
%M 分钟(00~59)
%S 显示秒(00~59)
%T 显示时间,24小时制(hh:mm:ss,相当于%H,M,S的集合)
%F 年月日格式输出
#范例
[root@centos8 ~]$$date +%F-%T
2021-02-07-18:39:26
常用选项实例:
1.启动nfs服务
systemctl start nfs-server.service
2.设置开机自启动
systemctl enable nfs-server.service
3.停止开机自启动
systemctl disable nfs-server.service
4.查看服务当前状态
systemctl status nfs-server.service
5.重新启动某服务
systemctl restart nfs-server.service
6.查看所有已启动的服务
systemctl list -units --type=service
#范例
[root@centos8 ~]$systemctl status sshd
● sshd.service - OpenSSH server daemon
Loaded: loaded (/usr/lib/systemd/system/sshd.service; enabled; vendor preset: enabled)
Active: active (running) since Sun 2021-02-07 07:45:42 CST; 10h ago
Docs: man:sshd(8)
man:sshd_config(5)
Main PID: 721 (sshd)
Tasks: 1 (limit: 5791)
Memory: 8.5M
CGroup: /system.slice/sshd.service
└─721 /usr/sbin/sshd -D -oCiphers=[email protected],[email protected],aes25>
Feb 07 07:45:42 centos8 sshd[721]: Server listening on :: port 22.
Feb 07 07:45:42 centos8 systemd[1]: Started OpenSSH server daemon.
Feb 07 07:46:35 centos8 sshd[974]: Accepted password for root from 10.0.0.1 port 63796 ssh2