1. 按系列罗列Linux的发行版,并描述不同发行版之间的联系与区别。
真正意义上的Linux其实是指的是Linux内核,是需要编译,链接等许多复杂的过程的;这样的过程是很复杂的。所以Linux发行版应运而生,它不仅仅可以是个人,商业组织,群体的都可以加入自己对软件的理解,把Linux内核,许许多多的gnu软件,甚至可以加入自己的软件包,打包编译,并提供易于用户安装的安装程序。
一个典型的Linux发行版包括:Linux内核+GNU程序库和工具+令行shell+桌面+各种各样的应用软件等; Linux常见的三大发行版系列,分别是:
RHEL系:
RedHatEnterprise linux: Fedora entOS
红帽企业版是注重稳定,Fedora是其小白鼠版,CentOS可以看成是同样的源码的RHEL,只不过换了个商标而已;RHEL系的程序包管理器是:rpm ,yum--->dnf
Slackware系: SuSE OpenSUSE
在欧洲比较流行,suse基于Slackware二次开发的Linux发行版,主要用于商业桌面,服务器。OpenSUSE,由suse发展而来,主要用于桌面环境,用户界面非常华丽,性能好。
Debian系: Ubuntu Mint
Ubuntu基于Debian,主要针对桌面和服务器。Linux Mint致力于桌面系统。其程序包管理器是deb,apt-get
其它的发行版:Gentoo
与大多数GNU/Linux发行版本不同,Gentoo
Linux为用户提供了大量的应用程序源代码。Gentoo Linux的每一部分都可以在最终用户的系统上重新编译建造,甚至包括最基本的系统库和编译器自身。
ArchLinux
是一款基于 x86-64 架构的 Linux 发行版。系统主要由自由和开源软件组成,支持社区参与。系统设计以KISS原则(保持简单和愚蠢)为总体指导原则,注重代码正确、优雅和极简主义,期待用户能够愿意去理解系统的操作。 Arch Linux 系统安装、删除和更新软件的软件包管理器叫做 pacman 。
LFS
可以把它看成一个说明书,如何把Linux内核+以及众多的Linux软件组装在一起,形成自己的Linux发行版。
2.安装Centos7.6操作系统,创建一个自己名字的用户名,并可以正常登录,将主要步骤截图。
1.安装CentOS7.5
后面默认下一步下一步就出现以下效果
使用方向键上下键选中,然后回车
3. 配置环境变量,实现执行history的时候可以看到执行命令的时间。
4. 总结Linux哲学思想。
1.一切皆文件:把几乎所有资源统统抽象为文件形式;包括硬件设备,甚至通信接口等;
2.由众多功能单一的程序组成;一个程序只做一件事,并且做好;组合小程序完成复杂任务;
3.尽量避免跟用户交互:易于以编程的方式实现自动化任务;
4.使用文本文件保存配置信息;
5.总结Linux常用命令使用格式并用实例说明。
5.1 echo
echo命令的功能是在显示器上显示一段文字,一般起到一个提示的作用。
该命令的一般格式为: echo [ -n ] 字符串
其中选项n表示输出文字后不换行;字符串能加引号,也能不加引号。用echo命令输出加引号的字符串时,将字符串原样输出;用echo命令输出不加引号的字符串时,将字符串中的各个单词作为字符串输出,各字符串之间用一个空格分割。
功能说明:显示文字。
语 法:echo [-ne][字符串]或 echo [--help][--version]
补充说明:echo会将输入的字符串送往标准输出。输出的字符串间以空白字符隔开, 并在最后加上换行号
参数
-n 不要在最后自动换行
-e 若字符串中出现以下字符,则特别加以处理,而不会将它当成一般
文字输出:
\a 发出警告声;
\b 删除前一个字符;
\c 最后不加上换行符号;
\f 换行但光标仍旧停留在原来的位置;
\n 换行且光标移至行首;
\r 光标移至行首,但不换行;
\t 插入tab;
\v 与\f相同;
\\ 插入\字符;
\nnn 插入nnn(八进制)所代表的ASCII字符;
–help 显示帮助
–version 显示版本信息
5.2 screen
创建新screen会话 screen –S [SESSION]
加入screen会话 screen –x [SESSION]
退出并关闭screen会话 exit Ctrl+d
剥离当前screen会话 Ctrl+a,d
显示所有已经打开的screen会话 screen -ls
恢复某screen会话 screen
5.3 date
1.在显示方面,使用者可以设定欲显示的格式,格式设定为一个加号后接数个标记,其中可用的标记列表如下: % : 打印出 %
%n : 下一行
%t : 跳格
%H : 小时(00..23)
%I : 小时(01..12)
%k : 小时(0..23)
%l : 小时(1..12)
%M : 分钟(00..59)
%p : 显示本地 AM 或 PM
%r : 直接显示时间 (12 小时制,格式为 hh:mm:ss [AP]M)
%s : 从 1970 年 1 月 1 日 00:00:00 UTC 到目前为止的秒数
%S : 秒(00..61)
%T : 直接显示时间 (24 小时制)
%X : 相当于 %H:%M:%S
%Z : 显示时区 %a : 星期几 (Sun..Sat)
%A : 星期几 (Sunday..Saturday)
%b : 月份 (Jan..Dec)
%B : 月份 (January..December)
%c : 直接显示日期与时间
%d : 日 (01..31)
%D : 直接显示日期 (mm/dd/yy)
%h : 同 %b
%j : 一年中的第几天 (001..366)
%m : 月份 (01..12)
%U : 一年中的第几周 (00..53) (以 Sunday 为一周的第一天的情形)
%w : 一周中的第几天 (0..6)
%W : 一年中的第几周 (00..53) (以 Monday 为一周的第一天的情形)
%x : 直接显示日期 (mm/dd/yy)
%y : 年份的最后两位数字 (00.99)
%Y : 完整年份 (0000..9999)
2.在设定时间方面
date -s //设置当前时间,只有root权限才能设置,其他只能查看。
date -s 20080523 //设置成20080523,这样会把具体时间设置成空00:00:00
date -s 01:01:01 //设置具体时间,不会对日期做更改
date -s “01:01:01 2008-05-23″ //这样可以设置全部时间
date -s “01:01:01 20080523″ //这样可以设置全部时间
date -s “2008-05-23 01:01:01″ //这样可以设置全部时间
date -s “20080523 01:01:01″ //这样可以设置全部时间
3.加减
date +%Y%m%d //显示现在天年月日
date +%Y%m%d --date="+1 day" //显示后一天的日期
date +%Y%m%d --date="-1 day" //显示前一天的日期
date +%Y%m%d --date="-1 month" //显示上一月的日期
date +%Y%m%d --date="+1 month" //显示下一月的日期
date +%Y%m%d --date="-1 year" //显示前一年的日期
date +%Y%m%d --date="+1 year" //显示下一年的日期
或者更简单点的 date=`date -d -${t}day '+%Y%m%d'` //为t为前几天
5.4 ifconfig
命令:ifconfig
作用:用来配置网络或显示当前网络接口的状态
上图信息大概说明:
第一行:up-->网卡开启状态
RUNNING-->网线处理连接状态
MULTICAST-->支持组播
mtu 1500-->(Maximum Transmission Unit)最大传输单元大小为1500字节
第二行:该网卡的IP地址,子网掩码,广播地址
第三行:IPV6的配置信息
第四行:网卡的MAC地址
ether表示连接类型为以太网
txqueuelen 1000 --》传输队列的长度
第五六行:网卡接收数据包的统计信息和接收错误的统计信息
第七八行:网卡发送数据包的统计信息和发送错误的统计信息
5.5 export
配置环境变量: 不加export命令设置的环境变量只在本shell生效,加上export命令设置的环境变量不仅对本shell生效,对其子shell也生效。