美文网首页
第一周技术作业

第一周技术作业

作者: 神牧 | 来源:发表于2020-06-14 16:46 被阅读0次


    一、按系列罗列Linux的发行版,并描述不同发行版之间的联系与区别。

    1.Linux发行系列

    Debian

        Ubuntu:基于Debian开发的开源Linux操作系统,主要针对桌面和服务器

    Linux Mint:基于Debian和Ubuntu的Linux发行版,致力于桌面系统对个人用户每天的工作更易用,更高效,且目标是提供一种更完整的即刻可用体验。

    Slackware

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

      OpenSUSE:由suse发展而来,旨在推进linux的广泛使用,主要用于桌面环境,用户界面非常华丽,而且性能良好

    RedHat

      RHEL(red hat enterprise Linux):Red Hat公司发布的面向企业用户的Linux操作系统。早起版本主要用于桌面环境,免费:

      Fedora:基于Red Hat Linux终止发行后,红帽公司计划以Fedora来取代Red Hat Linux在个人领域的应用,而另外发行的Red Hat Enterprise Linux取代Red Hat Linux在商业应用的领域。Fedora的功能对于用户而言,它是一套功能完备、更新快速的免费操作系统,而对赞助者Red Hat公司而言,它是许多新技术的测试平台,被认为可用的技术最终会加入到Red Hat Enterprise Linux中。Fedora大约每六个月发布新版本

      CentOS:基于Red hat Linux提供的可自由使用源代码的企业级Linux发行版本。每个版本的Centos都会获得十年的支持(通过安全更新的方式)。新版本的Centos大约每两年发行一次,而每个版本的Centos会定期(大概6个月)更新一次,以支持新的硬件。这样,建立一个安全、低维护、稳定、高预测性、高重复性的Linux环境。

    其他发行版本

      Gentoo:基于linux的自由操作系统,基于Linux的自由操作系统,它能为几乎任何应用程序或需求自动地作出优化和定制。追求极限的配置、性能,以及顶尖的用户和开发者社区,都是Gentoo体验的标志特点, Gentoo的哲学是自由和选择。得益于一种称为Portage的技术,Gentoo能成为理想的安全服务器、开发工作站、专业桌面、游戏系统、嵌入式解决方案或者别的东西--你想让它成为什么,它就可以成为什么。由于它近乎无限的适应性,可把Gentoo称作元发行版

      ArchLinux:以轻量简洁为设计理念的Linux发行版。其开发团队秉承简洁、优雅和代码最小化的设计宗旨

    2.不同发行版之间的联系:

    所有发行版都是使用Linux内核;都需要遵循GNU的GPL(General Public License)协定

    3.不同发行版之间的区别:

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

    程序包管理器:

    把程序的组成文件打包成一个或有限个文件,可以安装、卸载、查询。

    Debian程序管理命令:deb, apt-get

    RedHat程序管理命令:rpm, yum --> dnf

    S.u.S.E程序管理命令: rpm, zypper

    ArchLinux:port

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

    1.选择 Install Centos 7

    2.默认选择 English(US)

    3.设置时间

    4.选择你需要的安装模式

    5.选择自己配置分区

    6.创建挂载目录并分配空间

    7.在安装过程中创建用户

    8.设置root密码

    9.等待安装完成后重启reboot

    10.使用创建的用户登录Linux系统,centos7安装成功

    三、配置环境变量,实现执行history的时候可以看到执行命令的时间。

    [root@centos7 ~]# HISTTIMEFORMAT="%F %T"

    四、总结Linux哲学思想。

    一切都是一个文件(包括硬件)

    小型,单一用途的程序

    链接程序,共同完成复杂的任务

    避免令人困惑的用户界面

    配置数据存储在文本中

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

    1.echo命令

    功能:显示字符

    语法:echo [-neE][字符串]

    说明:echo会将输入的字符串送往标准输出。输出的字符串间以空白字符隔开, 并在最后加上换行号

    选项:

    -E (默认)不支持 \ 解释功能

    -n 不自动换行

    -e 启用 \ 字符的解释功能

    显示变量

    echo "$VAR_NAME” 变量会替换,弱引用

    echo '$VAR_NAME’ 变量不会替换,强引用启用

    命令选项

    -e,若字符串中出现以下字符,则特别加以处理,而不会将它当成 一般文字输出\

    a 发出警告声

    \b 退格键

    \c 最后不加上换行符号

    \e escape,相当于\033 (加颜色) echo -e '\033[43;31;5mmagedu\e[0m'

    \n 换行且光标移至行首

    \r 回车,即光标移至行首,但不换行

    \t 插入tab

    \\ 插入\字符

    \0nnn 插入nnn(八进制)所代表的ASCII字符

    \xHH插入HH(十六进制)所代表的ASCII数字(man 7 ascii)

    实例:

    echo -n 123

    echo 弱引用、强引用区别

    echo -e "123\b456" 退格功能

    echo -e "123123\c"  和 echo -e "123123\n"

    echo -e "\0100" 和 echo -e "\x40"  打印出ASCII字符集中八进制和十六进制对应的字符

    echo -e "\e[1;33m\x40\e[0m" 打字符赋予颜色

    2.时间命令

    Linux的两种时钟

        系统时钟:由Linux内核通过CPU的工作频率进行的

        硬件时钟:主板

    相关命令

      date 显示和设置系统时间

                date +%s

                date -d @1509536033

      clock, hwclock: 显示硬件时钟

                -s, --hctosys 以硬件时钟为准,校正系统时钟

                -w, --systohc 以系统时钟为准,校正硬件时钟

    时区:/etc/localtime

    显示日历:cal –y

    date命令详细用法:

    命令参数 :

    -d<字符串>:显示字符串所指的日期与时间。字符串前后必须加上双引号;

    -s<字符串>:根据字符串来设置日期与时间。字符串前后必须加上双引号;

    -u:显示GMT;

    --help:在线帮助;

    --version:显示版本信息。

    日期格式字符串列表 :

    %H 小时,24小时制(00~23)

    %I 小时,12小时制(01~12)

    %k 小时,24小时制(0~23)

    %l 小时,12小时制(1~12)

    %M 分钟(00~59)

    %p 显示出AM或PM

    %r 显示时间,12小时制(hh:mm:ss %p)

    %s 从1970年1月1日00:00:00到目前经历的秒数

    %S 显示秒(00~59)

    %T 显示时间,24小时制(hh:mm:ss)

    %X 显示时间的格式(%H:%M:%S)

    %Z 显示时区,日期域(CST)

    %a 星期的简称(Sun~Sat)

    %A 星期的全称(Sunday~Saturday)

    %h,%b 月的简称(Jan~Dec)

    %B 月的全称(January~December)

    %c 日期和时间(Tue Nov 20 14:12:58 2012)

    %d 一个月的第几天(01~31)

    %x,%D 日期(mm/dd/yy)

    %j 一年的第几天(001~366)

    %m 月份(01~12)

    %w 一个星期的第几天(0代表星期天)

    %W 一年的第几个星期(00~53,星期一为第一天)

    %y 年的最后两个数字(1999则是99)

    实例:

    格式化输出

    [root@centos7 ~]# date +"%Y-%m-%d"

    2020-06-14

    输出昨天的时间

    [root@centos7 ~]# date -d "1 day ago" +"%Y-%m-%d"

    2020-06-13

    普通转格式

    [root@centos7 ~]# date -d "2020-12-12" +"%Y/%m/%d %H:%M.%S"

    2020/12/12 00:00.00

    加减显示时间

    [root@centos7 ~]# date -d "+1 day" +%Y%m%d

    20200615

    [root@centos7 ~]# date -d "-1 month" +%Y%m%d

    20200514

    [root@centos7 ~]# date -d "+1 year" +%Y%m%d

    20210614

    设定时间

    [root@centos7 ~]# date -s 20200615

    Mon Jun 15 00:00:00 CST 2020

    [root@centos7 ~]# date -s 15:53:30

    Mon Jun 15 15:53:30 CST 2020

    [root@centos7 ~]# date -s "20200614 15:54:12"

    Sun Jun 14 15:54:12 CST 2020

    3.screen命令

        screen命令:ssh连接断开也可保持screen会话不断

    创建新screen会话

          screen –S [SESSION]

      加入screen会话

          screen –x [SESSION]

      退出并关闭screen会话

          exit

      剥离当前screen会话

          Ctrl+a,d

      显示所有已经打开的screen会话

          screen -ls

      恢复某screen会话

          screen -r [SESSION]

    实例:

    创建并命名screen会话

    显示所有已经打开的screen会话

    加入screen会话

    4.ifconfig命令

        ifconfig 是一个用来查看、配置、启用或禁用网络接口的工具,这个工具极为常用的。可以用这个工具来临时性的配置网卡的IP地址、掩码、广播地址、网关等。

    参数:

    add<地址>:设置网络设备IPv6的ip地址;

    del<地址>:删除网络设备IPv6的IP地址;

    down:关闭指定的网络设备;

    <hw<网络设备类型 ><硬件地址>:设置网络设备的类型与硬件地址;

    io_addr:设置网络设备的I/O地址;

    irq:设置网络设备的IRQ;

    media<网络媒介类型>:设置网络设备的媒介类型;

    mem_start<内存地址>:设置网络设备在主内存所占用的起始地址;

    metric<数目>:指定在计算数据包的转送次数时,所要加上的数目;

    mtu<字节>:设置网络设备的MTU;

    netmask<子网掩码>:设置网络设备的子网掩码;

    tunnel<地址>:建立IPv4与IPv6之间的隧道通信地址;

    up:启动指定的网络设备;

    -broadcast<地址>:将要送往指定地址的数据包当成广播数据包来处理;

    -pointopoint<地址>:与指定地址的网络设备建立直接连线,此模式具有保密功能;

    -promisc:关闭或启动指定网络设备的promiscuous模式;

    IP地址:指定网络设备的IP地址; 网络设备:指定网络设备的名称。

    实例:

    显示网络设备信息

    启动关闭指定网卡

    [root@centos7 ~]# ifconfig ens33 down

    [root@centos7 ~]# ifconfig ens33 up

    5.export命令

      export 命令用于设置或显示环境变量。

      export 可新增,修改或删除环境变量,供后续执行的程序使用,对当前shell及其子shell生效。

    参数:

    -f  代表[变量名称]中为函数名称。

    -n  删除指定的变量。变量实际上并未删除,只是不会输出到后续指令的执行环境中。

    -p  列出所有的shell赋予程序的环境变量。

    实例:

    列出当前所有的环境变量

    设定环境变量,且子shell中仍可使用当前环境变量

    相关文章

      网友评论

          本文标题:第一周技术作业

          本文链接:https://www.haomeiwen.com/subject/qftstktx.html