N22-妙手-第一周博客作业

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

1946年冯诺依曼提出冯 诺依曼结构,也称普林斯顿结构,即一种将程序指令存储器和数据存储器合并在一起的存储器结构。根据他的结构,计算机组成是:

(1)运算器:负责数据的算术运算和逻辑运算


(2)控制器:  负责对程序信息和数据进行分析,控制并协调其输入,输出操作或内存访问。


(3)存储器:  用来存放计算程序以及参与运算的各种数据


(4)输入设备: 下指令,提供数据


(5)输出设备: 输出数据运算加工的结果


如下图所示


计算机组成.PNG

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

    (1)Linux的各发行版都是居于GNU/Linux内核开发完成,这里以发行版的三大家族做介绍

Linux发行版.PNG

    (2)各发行版之间的联系:他们都是用GNU/Linux作为操作系统内核

    (3)各发行版之间的区别:

            a. 第一种区别:一类是商业公司维护的发型版本,另一类是社区组织的发型版本

            b. 各发行版使用的shell不同,GUI不同,系统软件以及应用软件不同

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

    (1)在Linux中,一切皆文件,甚至包括硬件设备,通信接口等

    (2)所有的配置信息都保存为文本文件

    (3)由众多目的单一的程序小程序组成,由小程序组合起来完成复杂任务。一个程序制作一件事情,并且做到最好

    (4)尽量避免和系统用户有交互操作。

    (5)提供机制,而非策略

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

    (1)Linux系统上命令的使用格式:

            COMMAND [OPTIONS…] [ARGUMENTS…]

                COMMAND:请求内核将某个可执行二进制程序运行为一个进行

                OPTIONS:命令选项

                    长选项:例如:–human-readable, –skip-alias, –interactive等

                        注意:长选项不能合并

                

                    短选项:例如 -c, -l 等

                        如果同一命令内,同时有多个命令选项。多数可合并。例如: cd -a -l /tmp 可以写为 cd -al /tmp

                ARGUMENTS:命令的作用对象:命令对arugments生效

                        注意:不同的命令参数,有些命令可以同时带多个参数,多个参数之间要用空白字符分隔。

    (2)命令介绍及其示例:ifconfig、echo、tty、startx、export、pwd、history、shutdown、poweroff、reboot、hwclock、date

            ifconfig:

                配置网络接口(ifconfig – configure a network interface)

                使用格式:ifconfig [-v] [-a] [-s] [interface]

            没有选项示例:获取网卡的信息

eno16777736: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.104  netmask 255.255.255.0  broadcast 192.168.1.255
        inet6 fe80::20c:29ff:fee1:cfa0  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:e1:cf:a0  txqueuelen 1000  (Ethernet)
        RX packets 12195  bytes 940936 (918.8 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 7952  bytes 15406354 (14.6 MiB)
        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 8  bytes 688 (688.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 8  bytes 688 (688.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

virbr0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        inet 192.168.122.1  netmask 255.255.255.0  broadcast 192.168.122.255
        ether 52:54:00:1f:d9:ca  txqueuelen 0  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

            有选项:

                ifconfig -a:显示所有可用的网络接口信息

[Meng@localhost ~]$ ifconfig -a
eno16777736: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.104  netmask 255.255.255.0  broadcast 192.168.1.255
        inet6 fe80::20c:29ff:fee1:cfa0  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:e1:cf:a0  txqueuelen 1000  (Ethernet)
        RX packets 12412  bytes 960306 (937.7 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 8084  bytes 15439540 (14.7 MiB)
        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 8  bytes 688 (688.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 8  bytes 688 (688.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

virbr0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        inet 192.168.122.1  netmask 255.255.255.0  broadcast 192.168.122.255
        ether 52:54:00:1f:d9:ca  txqueuelen 0  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

virbr0-nic: flags=4098<BROADCAST,MULTICAST>  mtu 1500
        ether 52:54:00:1f:d9:ca  txqueuelen 500  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

        echo:回显命令,在输出设备显示参数

            echo [-neE] [arg …]

            不带OPTIONS

[Meng@localhost ~]$ echo $PATH
/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/Meng/.local/bin:/home/Meng/bin
[Meng@localhost ~]$ echo $HISTCONTROL
ignoredups
[Meng@localhost ~]$ echo $SHELL
/bin/bash

        带OPTIONS

            -n:不换行显示输出信息

            -e:支持转义字符生效

            \n:换行

[Meng@localhost ~]$ echo "Hello World"
Hello World
[Meng@localhost ~]$ echo -n "Hello World"
Hello World[Meng@localhost ~]$ echo -e "Hello \nWorld"
Hello 
World

    tty:显示终端文件名

        tty [OPTION]…

        不带OPTIONS

[Meng@localhost ~]$ tty
/dev/pts/3

        带OPTIONS

            -s:不返回任何终端件名

[Meng@localhost ~]$ tty -s
[Meng@localhost ~]$

        注意:物理终端:/dev/console,虚拟终端:/dev/tty#,伪终端:/dev/pts/#,串行终端:/dev/ttys#

    pwd:列出当前工作目录

        pwd [OPTION]…

        不带OPTIONS

[Meng@localhost ~]$ pwd
/home/Meng

    startx:启动图形界面

        startx [ [ client ] options … ] [ — [ server ] [ display ] options … ]

    export:设置和显示ell环境变量

        export [-fn] [name[=value] …]

[Meng@localhost ~]$ export USERNAME="MENG"
[Meng@localhost ~]$ echo $USERNAME
MENG

            

    history:显示历史命令,历史命令保存在 ~/.bash_history文件中

        history [-c] [-d offset] [n]

   

         不带OPTIONS

[Meng@localhost ~]$ history
    1  history -r
    2  tty
    3  ip addr list
    4  ifconfig

        带OPTIONS:

         

        -c:清空命令

-d offset:删除指定命令历史

-n:删除多少个命令

-r:从文件读取命令历史至历史列表中

-w:把历史列表中的命令追加到历史文件中

history #:显示最近#条的命令

[Meng@localhost ~]$ history 10
  364  clear
  365  export USERNAME="MENG"
  366  echo $USERNAME
  367  tty
  368  type history
  369  help history
  370  clear
  371  history
  372  clear
  373  history 10
[Meng@localhost ~]$ history -c
[Meng@localhost ~]$ history
    1  history

    shutdown

        shutdown [OPTIONS…] [TIME] [WALL…]

带OPTIONS

[Meng@localhost ~]$ su root
Password: 
[root@localhost Meng]# shutdown -r +10 "Save all your work"
Shutdown scheduled for Mon 2016-08-15 09:24:41 CST, use 'shutdown -c' to cancel.
[root@localhost Meng]# 
Broadcast message from root@localhost.localdomain (Mon 2016-08-15 09:14:42 CST):

Save all your work
The system is going down for reboot at Mon 2016-08-15 09:24:41 CST!


[root@localhost Meng]# shutdown -c

Broadcast message from root@localhost.localdomain (Mon 2016-08-15 09:14:47 CST):

The system shutdown has been cancelled at Mon 2016-08-15 09:15:47 CST!

[root@localhost Meng]# shutdown -P +10 "Save your work"
Shutdown scheduled for Mon 2016-08-15 09:25:24 CST, use 'shutdown -c' to cancel.
[root@localhost Meng]# 
Broadcast message from root@localhost.localdomain (Mon 2016-08-15 09:15:24 CST):

Save your work
The system is going down for power-off at Mon 2016-08-15 09:25:24 CST!


[root@localhost Meng]# shutdown -c

Broadcast message from root@localhost.localdomain (Mon 2016-08-15 09:15:33 CST):

The system shutdown has been cancelled at Mon 2016-08-15 09:16:33 CST!

[root@localhost Meng]#

    poweroff:关机命令

    reboot:重启命令

    hwclock:显示或者设置硬件时钟

        

        hwclock [function] [option…]

            -s  –hctosys 把系统时间设成跟硬件一样

            -w  –systohc 把硬件时钟设成跟系统一样

[root@localhost Meng]# hwclock -s
[root@localhost Meng]# hwclock
Mon 15 Aug 2016 06:19:35 PM CST  -0.864332 seconds
[root@localhost Meng]# hwclock -w
[root@localhost Meng]# hwclock
Mon 15 Aug 2016 06:19:55 PM CST  -0.614682 seconds

    date:显示或设置系统时间

        date [OPTION]… [+FORMAT]

[root@localhost Meng]# date
Mon Aug 15 18:22:04 CST 2016
[root@localhost Meng]# date +%D 
08/15/16
[root@localhost Meng]# date +%F
2016-08-15
[root@localhost Meng]# date +%T
18:22:35
[root@localhost Meng]# date +%H
18
[root@localhost Meng]#

        

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

    (1)命令分为内建命令和外建命令,首先需要确定类型。

    (2)如果是内建命令,结果如下所示

[Meng@localhost ~]$ type cd
cd is a shell builtin

              那么使用:~]$ help COMMAND来获取帮助

    (3)如果是外建命令,结果如下所示

[Meng@localhost ~]$ type cat
cat is /usr/bin/cat

            那么分为如下几种方法

                <1> man命令:manual手册

                            ~]$ man cat

                <2> 命令自带帮助命令获取,简要描述命令的作用

                        COMMAND –help

                <3> 获取命令的在线文档

                        info COMMAND

                <4> 主流发行版官方文档,去程序的官方网站获取

                <5> 程序自带帮助文档

                        README

                        INSTALL

                        CHANGES

                <6> 搜索引擎

                <7> 书籍

    (4)man章节的详细划分:

            man使用手册是压缩格式的文件,每个章节分别:

                <1> 用户命令:普通用户和管理员都能使用的命令

                <2> 系统调用

                <3> C库调用

                <4> 设备文件和特殊文件

                <5> 文件格式解释

                <6> 游戏使用帮助

                <7> 杂项

                <8> 管理工具及守护进程

            查看制定章节命令使用手册:man # COMMAND

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

    Linux的所有发行版的目录命令法则及公用规定都遵循FHS(File Hierarchy Standard)标准

        /bin:所有用户的二进制可执行文件

        /boot:系统启动过程的必须静态文件

        /dev, 设备文件

        /etc:程序,系统配置文件

        /lib:动态链接共享文件,供二进制文件调用,不能单独运行

        /lib64:特别存放64位动态链接共享库文件

    

        /media:可移动设备文件存储目录

        /mnt:提供其他文件系统临时的挂载点

        /opt:附加程序安装位置

    /sbin:系统管理类二进制可执行文件,root 用户使用

    /srv:当前主机为服务提供数据的文件的存放的目录

    

        /tmp:用于可执行程序临时产生的文件,可提供写权限给所有用户

    

        /usr:全局只读共享数据的存放目录,第二个文件层级系统

    /usr/bin:二进制可执行程序文件

    /usr/lib:动态链接共享库文件

    /usr/lib64:特有的64位动态链接库文件

    /usr/local:第三方程序的安装目录

    /usr/share:只读的独立架构数据文件

    /usr/include:C语言的库文件

    /usr/tmp:临时文件存放目录

        /var:存储经常发生变化的文件

        /root:root用户的主目录

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

(0)
mxb93mxb93
上一篇 2016-08-15
下一篇 2016-08-15

相关推荐

  • Shell编程之select循环&函数详解

    一、select循环        功能:主要用于创建菜单,菜单按数字顺序排列。并将PS3变量的值用作用户输入提示。用户的选择被保存在内置变量REPLY中。也可以和case语句结合,在select循环中对用户的输入作出判断并处理。      &nbs…

    Linux干货 2016-08-21
  • 软链接和硬链接详解

    软连接和硬链接图解 硬链接 符号链接 软链接和硬链接详解 软链接和硬链接详解 Linux下的链接文件有点类似于Windows的快捷方式,但又不完全一样。链接文件有两种:一种是硬链接,另一种是符号链接(又称软链接)。 UNIX文件系统提供了一种将不同文件链接至同一个文件的机制,我们称这种机制为链接。它可以使得单个程序对同一文件使用不同的名字。这样的好处是文件系…

    Linux干货 2016-09-06
  • 马哥教育网络班21期-第九周课程练习

    "1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; #!/bin/bash # declare -i login_user=0 declare -i nologin_user=0 whil…

    Linux干货 2016-09-15
  • Linux 系统启动流程及bash 脚本编程练习

    马哥教育网络班23期 第10周课堂练习 Linux 系统启动流程及bash 脚本编程练习1、请详细描述CentOS系统的启动流程(详细到每个过程系统做了哪些事情) 2、为运行于虚拟机上的CentOS 6添加一块新硬件,提供两个主分区; (1)为硬盘新建两个主分区;并为其安装grub; (2)为硬盘的第一个主分区提供内核和ramdisk文件;为第二个分区提供r…

    Linux干货 2017-01-23
  • Linux用户和组管理类命令以及文本处理工具的各种实例

    列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 取出最后登录到当前系统的用户的相关信息。 取出当前系统上被用户当作其默认shell的最多的那个shell。 将/etc/passwd中的第三个字段数值最大的后10个用户的信息全部改为大写后保存至/tmp/maxusers.txt文件中。 取出当前主机的IP地址,提示:对i…

    2018-03-13
  • LVM应用

    1、创建一个2G的文件系统,块大小为2048byte,预留1%可用空间,文件系统ext4,卷标为TEST,要求此分区开机后自动挂载至/test目录,且默认有acl挂载选项 ·首先在虚拟机当中添加指定大小的硬盘,添加完成后,系统不会自动扫描添加的硬盘设备,键入命令重新扫描SCSI总线来添加设备   echo "- – -&quo…

    Linux干货 2016-08-30

评论列表(1条)

  • 马哥教育
    马哥教育 2016-08-17 16:12

    写的很好,排版还可以在漂亮一点,加油,图画的很漂亮,继续坚持