一、按系列罗列Linux的发行版,并描述不同发行版之间的联系与区别。
Debian是三大发行版中唯一以社区形式运作,不以商业公司形式运作。是一个致力于创建自由操作系统的合作组织。而且debian开发者所创建的操作系统中绝大部分基础工具来自于GNU工程。

Fedore是一款基于linux的操作系统,也是一组维持计算机正常运行的软件集合。由红帽公司赞助。

suse是基于Slackware二次开发的一款Linux,主要用于商业桌面、服务器。

不同发行版之间的联系:
所有发行版都是使用Linux内核;都需要遵循GNU的GPL(General Public License)协定

不同发行版之间的区别:
发行版的本质区别,在于继承不同版本的内核,库、程序的组成。不同发行版几乎采用了不同包管理器(SLES、Fedora、openSUSE、centos、RHEL使用rmp包管理系统,包文件以RPM为扩展名;Ubuntu系列,Debian系列使用基于DPKG包管理系统,包文件以deb为扩展名。)

二、安装Centos7.6操作系统,创建一个自己名字的用户名,并可以正常登录,将主要步骤截图。
linux进阶之路-1

三、配置环境变量,实现执行history的时候可以看到执行命令的时间。
1、在~/.bash_profile文件中新增一行,写入:HISTTIMEFORMAT="”%F %T ",保存退出。

[root@centos7 ~]# vim .bash_profile 
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
        . ~/.bashrc
fi
# User specific environment and startup programs
PATH=$PATH:$HOME/bin
HISTTIMEFORMAT="%F %T "
export PATH

2、使更新后的配置文件生效,执行:

[root@centos7 ~]# source .bash_profile 

3、验证效果

[root@centos7 ~]# history 
    1  2020-08-10 17:16:39 cat /etc/issue
    2  2020-08-10 17:16:39 cat /etc/fstab 
    3  2020-08-10 17:16:39 cd /data/
    4  2020-08-10 17:16:39 cd
    5  2020-08-10 17:16:39 cd/
    6  2020-08-10 17:16:39 cd /
    7  2020-08-10 17:16:39 cd
    8  2020-08-10 17:16:39 cp /etc/issue /data/
    9  2020-08-10 17:16:39 cat /etc/issue
   10  2020-08-10 17:16:39 cd
   11  2020-08-10 17:16:39 cd /data/
   12  2020-08-10 17:16:39 ls -l
   13  2020-08-10 17:16:39 cat issue 
   14  2020-08-10 17:16:39 tr ‘a-z’  ‘A-Z’< issue 
   15  2020-08-10 17:16:39 cat issue 
   16  2020-08-10 17:16:39 systemctl status firefalled
   17  2020-08-10 17:16:39 systemctl status firewalld
   18  2020-08-10 17:16:39 cd
   19  2020-08-10 17:16:39 systemctl disable firewalld
   20  2020-08-10 17:16:39 systemctl stop firewalld
   21  2020-08-10 17:16:39 selinux
   22  2020-08-10 17:16:39  firewall-cmd --state
   23  2020-08-10 17:16:39 getenforce 
   24  2020-08-10 17:16:39 setenforce 
   25  2020-08-10 17:16:39 sestatus 
   26  2020-08-10 17:16:39 vim /etc/selinux/config 
   27  2020-08-10 17:16:39 reboot 
   28  2020-08-10 17:16:39 sestatus 
   29  2020-08-10 17:16:39 getenforce 
   30  2020-08-10 17:16:39 sestatus 
   31  2020-08-10 17:16:39 id postfix
   32  2020-08-10 17:16:39 cat /etc/shadow
   33  2020-08-10 17:16:39 tty
   34  2020-08-10 17:16:39 cat /etc/shadow
   35  2020-08-10 17:16:39 tty
   36  2020-08-10 17:16:39 hostname > /dev/pts/0
   37  2020-08-10 17:16:39 hostname > /data/stdout.log
   38  2020-08-10 17:16:39 cat /data/stdout.log 
   39  2020-08-10 17:16:39 who
   40  2020-08-10 17:16:39 who > /data/stdout.log 
   41  2020-08-10 17:16:39 cat /data/stdout.log 
   42  2020-08-10 17:16:39 cat /dev/null 
   43  2020-08-10 17:16:39 ll /dev/null 
   44  2020-08-10 17:16:39 cat /etc/passwd
   45  2020-08-10 17:16:39 cat /etc/shadow
   46  2020-08-10 17:16:39 cat /etc/group
   47  2020-08-10 17:16:39 cat /etc/sgroup
   48  2020-08-10 17:16:39 cat /etc/gshadow
   49  2020-08-10 17:16:39 cd /data/
   50  2020-08-10 17:16:39 ls -l
   51  2020-08-10 17:16:39 vim test.log
   52  2020-08-10 17:16:39 grep TERM
   53  2020-08-10 17:16:39 set | grep TERM
   54  2020-08-10 17:16:39 vim test.log 
   55  2020-08-10 17:16:39 cat test.log
   56  2020-08-10 17:16:39 cd /data/
   57  2020-08-10 17:16:39 cd
   58  2020-08-10 17:16:39 bc
   59  2020-08-10 17:16:39 cd /data/
   60  2020-08-10 17:16:39 ls
   61  2020-08-10 17:16:39 vim test.log 
   62  2020-08-10 17:16:39 bc < test.log 
   63  2020-08-10 17:16:40 cd
   64  2020-08-10 17:16:45 history 
   65  2020-08-10 17:19:15 vim .bash_profile 
   66  2020-08-10 17:32:55 source .bash_profile 
   67  2020-08-10 17:33:35 history 

四、总结Linux哲学思想。
1、一切都是一个文件(包括硬件)
2、小型,单一用途的程序
3、链接程序,共同完成复杂的任务
4、避免令人困惑的用户界面
5、配置数据存储在文本中

五、总结Linux常用命令使用格式,并用实例说明。例如echo、screen、date、ifconfig、export等命令

  • echo:显示字符串
    语法:echo [-neE][字符串]
    选项:
    -E (默认)不支持 \ 解释功能
    -n 不自动换行
    -e 启用 \ 字符的解释功能
    显示变量
    echo "$VAR_NAME” 变量会替换,弱引用
    echo '$VAR_NAME’ 变量不会替换,强引用

  • screen:Screen是一款由GNU计划开发的用于命令行终端切换的自由软件。用户可以通过该软件同时连接多个本地或远程的命令行会话,并在其间自由切换。GNU Screen可以看作是窗口管理器的命令行界面版本。它提供了统一的管理多个会话的界面和相应的功能。
    创建新screen会话
    screen –S [SESSION]
    加入screen会话
    screen –x [SESSION]
    退出并关闭screen会话
    exit
    剥离当前screen会话
    Ctrl+a,d
    显示所有已经打开的screen会话
    screen -ls
    恢复某screen会话
    screen -r [SESSION]

  • date:显示和设置系统时间
    hwclock,clock: 显示硬件时钟
    -s, --hctosys 以硬件时钟为准,校正系统时钟
    -w, --systohc 以系统时钟为准,校正硬件时钟
    时区:/etc/localtime
    显示日历:cal –y

  • ifconfig:用于配置和显示Linux内核中网络接口的网络参数
    参数:

    add<地址>:设置网络设备IPv6的ip地址;
    del<地址>:删除网络设备IPv6的IP地址;
    down:关闭指定的网络设备;
    <硬件地址>:设置网络设备的类型与硬件地址;
    io_addr:设置网络设备的I/O地址;
    irq:设置网络设备的IRQ;
    media<网络媒介类型>:设置网络设备的媒介类型;
    mem_start<内存地址>:设置网络设备在主内存所占用的起始地址;
    metric<数目>:指定在计算数据包的转送次数时,所要加上的数目;
    mtu<字节>:设置网络设备的MTU;
    netmask<子网掩码>:设置网络设备的子网掩码;
    tunnel<地址>:建立IPv4与IPv6之间的隧道通信地址;
    up:启动指定的网络设备;
    -broadcast<地址>:将要送往指定地址的数据包当成广播数据包来处理;
    -pointopoint<地址>:与指定地址的网络设备建立直接连线,此模式具有保密功能;
    -promisc:关闭或启动指定网络设备的promiscuous模式;
    IP地址:指定网络设备的IP地址;
    网络设备:指定网络设备的名称。
  • export:用于将shell变量输出为环境变量,或者将shell函数输出为环境变量
    选项:
    -f:代表[变量名称]中为函数名称;
    -n:删除指定的变量。变量实际上并未删除,只是不会输出到后续指令的执行环境中;
    -p:列出所有的shell赋予程序的环境变量。