第一个版本1.00在1993年7月16日,由创立者和开发领导者Patrick Volerding发布,它是现存最古老的Liunx发行版本。 设计理念: KISS:keep it simple, stupid
SUSE于1992年末创办,源自德国,综合了SlackWare的一些特性。后被Novell收购。
2005年8月4日,Novell公共关系科的领导及代言的—— Bruce Lowry表示,SUSE Linux Professional系统的开发将变得更开放,新的开发计划名为openSUSE,目的是为了吸引更多的用户及开发人员。
Debian计划最初由伊恩·默多克发布,Debian 0.01版在1993年9月15日发布,第一个稳定版本在1996年发布。
该计划的具体工作在互联网上协调完成,由Debian计划领导人带领一个志愿者团队开展工作,并以三份奠基性质的文档作为工作指导:Debian社区契约、Debian宪章和Debian自由软件指导方针。
Debian以其坚守Unix和自由软件的精神,以及给予用户众多的选择而闻名。众多知名的Linux发行版,如Ubuntu、Knoppix和Deepin,都基于Debian GNU/linux。
Ubuntu由马克·舍特尔沃斯创立,其首个版本—4.10发布于2004年10月20日,它以Debian为开发蓝本。它主要使用自由、开源的软件。
与Debian稳健的升级策略不同,Ubuntu每6个月便会发布一个新版,以便人们即时地获取得使用新软件。
Ubuntu版本支持周期较短,然而它有七个长期支持的版本(Long Term Support,LTS):Ubuntu 6.06、8.04、10.04、12.04、14.04、16.04、18.04与20.04。自Ubuntu 12.04起,桌面版与服务器版都有5年支持周期。而之前的长期支持版本为桌面版3年,服务器版5年。
分支众多,有RedHat Linux, Redhat Enterprise Linux(RHEL),CentOS, Fedora几种分支。
第一个版本自1994年11月3日起,至2004年,9.0发布后停止开发,后续RedHat公司将研发力量投入到了RHEL。
软件开源,服务收费。更新周期较长,通常不少于18个月。
RHEL的社区开源版,兼容RHEL,在国内广泛被使用。
RHEL的上游开发,是一个社区项目。该项目是为了让RHEL及其贡献者能够快速响应新技术带来的变革,通常6个月发布一个新版本。 RHEL的血脉关系如下:
Red Hat Linux 6.2/7 → Red Hat Linux Enterprise Edition 6.2ERed Hat Linux 7.2 → Red Hat Enterprise Linux 2.1Red Hat Linux 10 beta 1 → Red Hat Enterprise Linux 3Fedora Core 3 → Red Hat Enterprise Linux 4Fedora Core 6 → Red Hat Enterprise Linux 5Fedora 12, 13 → Red Hat Enterprise Linux 6Fedora 19, 20 → Red Hat Enterprise Linux 7Fedora 28 → Red Hat Enterprise Linux 8LFS是Gerard Beekmans编写的一本Linux安装手册,目前主要由Bruce Dubbs维护。 这本手册主要指导读者如何从源码编译Linux。该手册在Linux From Scratch网站上免费提供。
风靡全球的手机操作系统,基于Linux内核,busybox工具集和java虚拟机。
主要参考了维基百科
补充一张阵营九宫格,转自https://zh.moegirl.org.cn/阵营九宫格#/media/File:Linux九宫格.png
三台虚拟机,分别安装CentOS6.10,CentOS7.6,Ubuntu1804
取消预先分配磁盘空间可以节省大量空间。 取消文件拆分可以更方便管理,拷贝迁移。
初学建议使用NAT模式
配置完毕后点左上角红色圆点可以完成虚拟机硬件配置
三个环境的虚拟机硬件配置类似,这里省略,下面开始对比三个发行版本的图形化安装。
选择语言,默认英语。
选择区域。
选择安装语言
选择键盘
选择区域语言,取消网络时间同步
选择安装工具语言
选择区域,没有China,只能选择other。
选择大洲,只能选Asia
选择China
选择locale
用户的创建在安装过程当中。
配置root密码。 创建一个普通用户。
CentOS6.10创建用户在安装完毕第一次重启时。
选择磁盘; 选择手动分区
配置分区表,选择标准分区。
接受更改。
清除磁盘数据 选择自定义分区
分区表确认。
配置手动分区
选择需要分区的磁盘
确认在该磁盘上创建分区表。 挂载点需手动修改。 分区表配置完成。
配置网卡自动连接
选择Gnome Desktop
关闭kdump。
开始安装。安装完后选择重启。
软件包自定义
新增KDE桌面选项。点NEXT,安装开始。安装完后选择重启。
Server版Ubuntu自动最小化安装,无需配置软件包,分区表配置完成后直接开始安装。 安装完毕后选择不要自动更新。 安装SSH,不然没办法远程登陆。 安装 Grub boot loader,不然无法启动。
这里使用FinalShell验证
vi /etc/selinux/config 修改SELINUX=disabled,关闭后创建快照。
vi /etc/selinux/config 修改SELINUX=disabled,关闭后创建快照。
最小化安装不包含SeLinux。直接创建快照。
拷贝文件到其它存储,防止重复造轮。
HISTTIMEFORMAT变量,可以控制history命令的时间格式。 为使该配置永久生效,将该变量写入/etc/profile文件。
经过第二周的学习,对一些命令进行总结。
history是bash的内置命令,用于记录在bash中执行过的命令。这个命令主要帮我解决两个问题。
HISTTIMEFORMAT变量,可以控制history命令的时间格式。 为使该配置永久生效,将该变量写入/etc/profile文件。
希望删除历史命令中的敏感信息,如26,27,28
可以完全删除。
一次只能删除一行 history -d 26 history -d 27 history -d 28
该变量默认值为 ignoredups,忽略重复命令
配置为ignorespace时,忽略所有空白开头的命令
配置为ignoreboth时,相当于ignoredups,ignorespace的组合
配置该变量,敏感信息使用空格打头,即可不被记录。可以看到图中空格命令未被记录下来。
echo的英文含义是回音,顾名思义,它的基本功能是输出你向它输入的信息。它不止可以解析文本,还能解析变量,解析特殊含义的文本。
最基本功能,输入普通文本,输出普通文本。
当字符串内带有变量时,三种引号显示不同的结果
’ '单引号,不对变量进行解析,原样输出。
" "双引号,对变量进行解析后输出
` ` 反引号,可以对命令的结果进行输出
echo 共有3个选项-E,-n,-e,默认为-e模式,压缩掉特殊含义,手动指定-e时,可以得到特殊效果。如echo -e “\a”,可以输出系统提示音。
当执行一个时间较长的任务时,如果连接终端的工具挂掉,则会前功尽弃。为了让在服务器上的任务不受远程终端死活的影响,我们可以使用screen工具,它还可以用于远程协助。 操作系统可能不自带screen,需要进行安装。
执行screen命令,进入终端,该终端可以在远程连接工具退出后继续执行。 ctrl + a + d :临时退出,后台执行。 如果键盘不好,可以先按 ctrl + a 再按 ctrl + d ,防止错误中断。 临时退出后可看到后台有一个终端仍在执行。使用screen -r命令可回到指定终端。若有多个终端,可使用screen -r 终端号指定终端。
screen还可以用于远程协助,同一主机,同一用户下,工程师A终端1可以创建一个screen终端,让工程师B从终端2访问到该screen终端。
工程师kel创建终端起名kel,执行命令screen -S kel 工程师zhou尝试进入kel的终端,执行命令screen -x kel 两个终端已完全同步 screen终端同样可以执行exi永久关闭。
date是基本命令,可以查看时间,修改时间,支持各种自定义格式输出时间。
使用date -s +字符串修改时间
可以使用ntpdate从服务器同步时间来修改;或是通过clock命令,使用硬件时间修改。
查看本机网络接口的命令 使用ifconfig 网卡名称 查看网络基本信息。
bash设置的变量只在当前shell有效,使用export命令可使该变量成为该shell的全局变量。
普通变量只在当前shell有效,子shell无效。
定义变量
user=kel创建子shell,发现变量不生效
bash echo $user使用export命令,使变量成为环境变量,可对其所有子shell生效。子shell的更改会让孙shell继承,但不会影响父shell。
user=kel #在父shell中定义变量 bash export user=zhou #在子shell中定义环境变量 echo $user #查看子shell中变量 bash echo $user #在孙shell中查看环境变量 exit exit echo $user #在父shell中查看环境变量