马哥教育网络班21期+第一周课程练习

1、描述计算机的组成及其功能。

  计算机由五个部分组成:运算器、控制器、存储器、输入设备、输出设备。

  控制器和运算器合称为中央处理单元,即CPU。

  功能:

    运算器:也称为算术逻辑单元,是计算机的核心,在控制器的控制下,对取自内存或内部寄存器的数据进行算术运算和逻辑运算。

    控制器:由指令寄存器、指令译码器、时序电路和控制电路组成,从内存提取指令和执行指令,控制整个计算机各部件有条不紊的工作。

    存储器:用于存放要执行的程序和数据;如:内存、闪存、硬盘、软盘等。

    输入设备:用于向计算机输入数据或指令;如:键盘、鼠标、扫描仪等。

    输出设备:将计算机的计算结果输出展现出来;如:显示器、打印机、音响、投影仪等。

借用 1+1=2 图例来了解计算机的处理过程:

1+1.jpeg

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

  Linux发行版:RedHat、CentOS、Fedora、Debian、Ubuntu、Mint、Slackware、SUSE、openSUSE、Archlinux、Gentoo、红旗Linux

  这些Linux发行版都是发行商通过对Linux内核进行编译以及研发各种外围应用程序,并且包装发行成为一个可安装的便捷的二进制程序。

  不同的发行商在各自的包装发行过程中加入了对于一个操作系统的理解、加入了对于某些参数的调整、加入了公司的LOGO,使得Linux看起来各不相同,事实上可能只有配置文件不一样而已。

3、描述Linux的哲学思想,并按照自己的理解对其进行解释性描述。

  Linux是一款自由和开源、安全、稳定、支持多平台运行的操作系统。广泛应用于如:手机、平板电脑、路由器、视频游戏控制台、台式计算机、服务器、大型机和超级计算机等硬件设备中。

  Linux的哲学思想(出自马哥语录):

    1、一切皆文件;

        几乎所有资源,包括硬件设备都为文件格式;

    2、由众多单一目的的小程序组成;

        一个程序只实现一个功能,通过组合多个小程序完成复杂任务;

    3、尽量避免捕获用户接口;

        为方便实现脚本编程、自动化执行某些功能为目标;

    4、使用纯文本文件保存配置信息;

        使用文本编辑器即能完成系统及服务配置工作;

4、说明Linux系统上命令的使用格式;详细介绍ifconfig、echo、tty、startx、export、pwd、history、shutdown、poweroff、reboot、hwclock、date命令的使用,并配合相应的示例来阐述。

  命令格式:COMMAND [OPTIONS…] [ARGUMENTS…]

    命令类型:

        内建命令:由shell程序自带的命令

            查找方式:shell 内建

        外部命令:本身是一个独立的可执行程序文件,命令名即为程序文件名

            查找方式:通过shell的内置环境变量 PATH 指定的路径进行查找

    选项:用于启用或关闭命令的某个或某些功能;

        短选项:如,-c、-l、-h

            多个短选项可合并使用,如 -l -h 可写作 -lh

        长选项:如,–word、–long、–human-readable

    参数:命令的作用对象

         向命令提供数据;

    注:

        1、多选项,以及多参数和命令之间都应该使用空白字符分隔

        2、取消命令执行:Ctrl+C

  命令介绍:

    #ifconfig:用于查看和配置网络接口

        格式:ifconfig [OPTIONS] [interface]

        OPTIONS:

            -a:显示全部接口信息,包括未启用的接口

            -s:显示接口摘要信息(类似 netstat -i)

            interface:接口名称,如 eth0、eth0:0

            up:启用指定接口

            down:禁用指定接口

            mtu N:设置接口 mtu 值

            add <IP addr>:为指定接口添加IPV6地址或IPV4子地址

            del <IP addr>:删除指定接口的IPV6地址或IPV4子地址

            hw class address:设置接口连接类型与硬件地址

            netmask <子网 addr>:设置接口子网地址

            address:设置接口临时IPV4地址

        示例:

        (1)显示接口信息(激活状态的接口)

        #ifconfig

eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1400

        inet 10.10.10.34  netmask 255.255.255.0  broadcast 10.10.10.255

        inet6 fe80::f816:3eff:fe16:23ae  prefixlen 64  scopeid 0x20<link>

        ether fa:16:3e:16:23:ae  txqueuelen 1000  (Ethernet)

        RX packets 398236  bytes 97884350 (93.3 MiB)

        RX errors 0  dropped 0  overruns 0  frame 0

        TX packets 159388  bytes 5307673908 (4.9 GiB)

        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536

        inet 127.0.0.1  netmask 255.0.0.0

        inet6 ::1  prefixlen 128  scopeid 0x10<host>

        loop  txqueuelen 0  (Local Loopback)

        RX packets 34  bytes 2236 (2.1 KiB)

        RX errors 0  dropped 0  overruns 0  frame 0

        TX packets 34  bytes 2236 (2.1 KiB)

        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

        说明:

            eth0 为第一块网卡名称,其中mtu 值为 1400,连接类型为 Ethernet,硬件地址为 fa:16:3e:16:23:ae

            lo 是主机回环地址,一般用作本机程序测试

            第二行显示网卡接口的IP地址、子网掩码及广播地址

            第三行显示IPV6相关信息

            第四行显示接口连接类型及硬件地址

            第五至八行显示接收、发送数据包统计

        (2)启用禁用指定网卡:

        #ifconfig eth0 up 或 ifup eth0             #启用网卡

        #ifconfig eth0 down 或 ifdown eth0          #禁用网卡

        (3)修改网卡硬件地址:

        #ifconfig eth0 hw ether 00:AA:BB:CC:DD:EE

        (4)配置IP地址:

        #ifconfig eth0 10.10.10.10

        #ifconfig eth0 10.10.10.10 netmask 255.255.255.0

        #ifconfig eth0 10.10.10.10 netmask 255.255.255.0 broadcast 10.10.10.255

        (5)启用和关闭ARP协议:

        #ifconfig eth0 arp                         #启用ARP协议

        #ifconfig eth0 -arp                        #关闭ARP协议

        (6)设置最大传输单元:

        #ifconfig eth0 mtu 65536                     #设置能通过的最大数据包大小为65536字节

    #echo:回显命令,显示一行文本

        格式:echo [OPTIONS]… [STRING]… 

        OPTIONS:

            -n:禁止自动添加换行符

            -e:允许使用转义符,常用如: \n 换行符;\t 制表符;

            -E:禁止使用转义符(默认选项)

        示例:

        #echo -e "This is Magedu school. \Welcome Magedu."

This is Magedu school. 

Welcome Magedu.

    #tty:显示当前终端

        #tty

/dev/pts/3

    #startx:切换图形终端,需安装图形终端插件

    #export:显示所有环境变量,变量声明、赋值

        示例:

        #export name=VALUE                          #声明环境变量

    #pwd:显示当前工作目录

        选项:

            -L:显示当前工作目录连接路径,默认 pwd -L 同 pwd

            -P:显示当前工作目录的物理路径

    #history:显示或操作历史记录列表

        选项:

            -a:将当前会话中的命令历史记录写入历史文件中

            -d:删除历史记录列表中指定的命令

            -c:清空历史记录列表

        用法:

            history N:显示最近的 N 条命令,含当前命令

            !N:执行历史记录列表中第 N 条命令

            !!:执行上一条命令

            !string:执行历史记录列表的中最近一次以 string 开头的命令

    #shutdown:关闭或重启计算机

        选项:

            -h,–halt:关机,默认为 1分钟后自动关机

            -r,–reboot:重启,默认为 1分钟后自动重启

                指定时间格式:now 立即;+m 命令执行后 m 分钟;hh:mm 指定时间

            -c:取消自动关机

            -k:向所有用户发送通知消息

        示例:

        #shutdown -h                 #设定1分钟后关机

        #shutdown -h now               #立即关机

        #shutdown -r 5                 #设定5分钟后重启

        #shutdown -r 18:00               #设定18:00重启

        #shutdown -k 10 "The system will shutdown in 10 minutes"  #通知10分钟后关机

    #poweroff:关闭或重启计算机

        选项:

            –halt:关机

            –reboot:重启

            -f,–force:强制关机

    #reboot:重启计算机

        选项:

            -f,–force:强制重启

    #hwclock:查询或设置硬件时钟

        格式:hwclock [FUNCTION] [OPTION…]

        FUNCTIONS:

            -s,–hctosys:同步硬件时间设置系统时间

            -w,–systohc:同步系统时间设置硬件时间

    #date:管理系统日期和时间

        格式:date [OPTION}… {+FORMAT]:显示

             date [MMDDhhmm[[CC][YY]][.ss]]:设置

        选项:

            -d,–date=STRING:以时间格式显示 STRING 内容

            -f,–file=DATEFILE:以时间格式显示指定 DATEFILE 中每行内容

            -s,–set=STRING:根据 STRING 内容设置时间

            -u,–utc,–universal:显示或设置 UTC 通用时间

            -r,–reference=FILE:显示指定文件的最后修改时间

        FORMAT:

            %d:月的某天(01..31)

            %j:年的某天(001..366)

            %m:月份(01..12)

            %y:年份(00..99)

            %Y:年份(1970..)

            %D:日期,显示格式(%m/%d/%y)

            %F:完整日期,显示格式(%Y-%m-%d)

            %T:时间(%H:%M:%S)

            %a:当前环境星期的简写(Sun..Sat)

            %A:当前环境星期的全称(Sunday..Saturday)

            %b:当前环境月份的简写(Jan..Dec)

            %B:当前环境月份的全称(January..December)

            %c:日期和时间(Thu Mar  3 23:05:25 2005)

            %C:时间所在世纪

            %h:当前环境月份的简写(同 %b)

            %H:24时制小时(00..23)

            %I:12时制小时(01..12)

            %M:分钟(00..59)

            %S:秒(00..60)

            %r:12时制时间(hh:mm:ss)

            %R:24时制时间(hh:mm)

            %x:日期(mm/dd/yyyy)

            %X:时间(hh:mm:ss p)

            %p:AM or PM

            %P:am or pm

            %s:时间戳计时法,从Unix元年(1970-01-01 00:00:00)到此刻所经过的秒数

            %u:星期的某天(1..7,1 表示 Monday)

            %w:星期的某天(0..6,0 表示 Sunday)

            %W:年的某周(00..53,一周第一天从星期一开始)

            %z:数字格式时区(+0800)

            %Z:字母格式时区缩写(CST)

        示例:

        #date +%D                   #显示当前日期

2016-07-06

        #date +"%F%H:%M:%S"            #显示当前日期时间

2016-07-06 20:01:08

        #date -d '19700101'            #显示指定日期

Thu Jan  1 00:00:00 CST 1970

        #date -s "20121212 12:12:12"      #设置日期时间

Wed Dec 12 12:12:12 CST 2012

5、如何在Linux系统上获取命令的帮助信息,请详细列出,并描述man文档的章节是如何划分的。

  命令的帮助信息有以下几种获取方法:

    内建命令:

        # help COMMAND

    外部命令:

        (1) 使用 –help 或 -h 选项

            # COMMAND –help

            # COMMAND -h

        (2) 使用 man 手册(manual)

            # man COMMAND

        (3) info 信息页

            # info COMMAND

        (4) 程序自身的帮助文档

            README

            INSTALL

            ChangeLog

        (5) 程序的官方文档

            官方站点:Documentation

        (6) 主流发行版的官方文档

        (7) 通过搜索引擎查找:Google、百度等

  man手册章节划分:

man手册章节及内容
man 1 用户命令及应用程序
man 2 系统调用和内核出错代码
man 3 库调用
man 4 设备文件及特殊文件
man 5 配置文件格式
man 6 游戏和演示
man 7 其它项文档
man 8 系统管理类命令
man 9 含糊的内核规范和接口

6、请罗列Linux发行版的基础目录名称命名法则及功用规定。

  命名规则:

    1、长度不能超过255个字符;

    2、不能使用 / 做文件名;

    3、严格区分大小写

  目录结构:

文件目录 功能作用
/ 根目录
/boot 存放系统启动引导文件,如内核、initrd及grub(bootloader)
/bin 存放供所有用户使用的基本命令
/sbin 存放管理类的基本命令
/lib 存放基本共享库文件及内核模块文件(/lib/modules)
/lib64 存放x86_64系统上的辅助共享库文件
/etc 存放配置文件(纯文本文件)
/home 普通用户的家目录,默认为 /home/USERNAME
/root 管理员的家目录
/media 便携式移动设备挂载目录,如cdrom、usb
/mnt 临死文件系统挂载目录
/dev 设备文件及特殊文件存储位置
/opt 安装第三方应用程序
/srv 存放系统上服务用到的数据
/tmp 临时文件存储位置
/usr 存放可共享的、只读的程序文件
/usr/bin 几乎所有用户可使用的指令,同 /bin
/usr/sbin 系统管理员命令,同 /sbin
/usr/local 本地安装软件存储位置
/usr/lib{64} 库文件存储
/usr/include 存放 C 程序头文件
/usr/share 系统共享的内容,如 man、doc等
/sys 伪文件系统,记录系统上硬件设备信息
/proc 伪文件系统,记录内核和进程信息

原创文章,作者:N21-garyshan,如若转载,请注明出处:http://www.178linux.com/21951

(0)
上一篇 2016-07-07 10:51
下一篇 2016-07-07 10:52

相关推荐

  • 总考十分的学习宣言

    目标:按照学习线路图完成所有视频的学习,完成每一次的博客作业及云学堂考试,成功转型互联网运维。 宣言:我一定要转型互联网运维工程师,并在这个领域不断坚持耕耘下去,成为行业的专家,拿高薪,挣so much money,可以有钱去看看世界,去台湾环岛,去日本爬天空树,去北欧看极光,去南极看企鹅,去看盐湖和大象,去非洲看动物迁徙。一生的时间是有限的,在有限的时间里…

    Linux干货 2016-10-24
  • 方便实用的文件查找与压缩

    在平时的运维工作当中通常会编辑某些文件,但时间久了,突然一下子记不起文件的名字,遇到的事情又很紧急,需要立马去处理,而自己只知道那个文件部分的特征信息,我们需要在系统中去搜索自己想要的文件,那么有没有办法去实现呢,当然有,在我们的系统中,文件查找的工具有两个,locate和find。那么下面来介绍这两个工具的用法以及两个工具之间的差别。 在我们linux系统…

    Linux干货 2016-08-13
  • shell脚本编程2

    shell脚本编程2   今天继续学习了shell脚本编程,续之前写的脚本编程1。上次主要学了编程的基础,脚本格式,变量类型及变量的使用,条件测试,数字运算并且进行了部分练习,因为这部分逻辑思维能力要求不是很高,因此记忆起来难度不是特别大。   从今天开始便进入了流程控制以及函数、数组、高级字符串操作、高级变量等内容的学习,总体来说难度和…

    Linux干货 2016-08-16
  • Linux中的账号管理(上)

    一背景  Linux  是  一个真实的、完整的多用户多任务操作系统,多用户多任务就是可以在系统上建立多个用户,而多个用户可以在同一时间内登录同一个系统执行各自不同的任务,而互不影响,例如某台linux服务器上有4个用户,分别是root、www、ftp和mysql,在同一时间内,root用户可能在查看系统日志,管理维护系统,ww…

    Linux干货 2016-08-04
  • varnish浅述

    安装varnish,安装包需要到官网下载http://www.varnish-cache.org/releases/index.html varnish的程序环境: /etc/varnish/varnish.params:配置varnish服务进程的工作特性,例如监听的地址、端口及缓存机制等; /etc/varnish/default.vcl:配置各Chil…

    2016-11-15
  • linux下find(文件查找)命令的详解

    文件查找命令locate和find详解 locate 配合数据库缓存,快速查看文件位置,非实时查找( 数据库查找) find 实际搜寻硬盘查询文件名称 ,实时查找 locate简介 locate命令其实是find -name的另一种写法,但是要比后者快得多,原因在于它不搜索具体目录,而是搜索一个数据库/var/lib/locat…

    Linux干货 2016-08-18

评论列表(1条)

  • 马哥教育
    马哥教育 2016-07-07 19:09

    写的很好,排版还可以在漂亮一点,加油