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

 

一、计算机的组成及其功能

1.1计算机的组成

     1946年美籍匈牙利科学家冯·诺依曼提出存储程序原理,把程序本身当作数据来对待,程序和该程序处理的数据用同样的方式存储,并确定了存储程序计算机的五大组成部分,分别为运算器、控制器、存储器、输入设备和输出设备。

1.2计算机的组成

  1. 控制器(Control):是整个计算机的中枢神经,其功能是对程序规定的控制信息进行解释,根据其要求进行控制,调度程序、数据、地址,协调计算机各部分工作及内存与外设的访问等。

  2. 运算器(Datapath):运算器的功能是对数据进行各种算术运算和逻辑运算,即对数据进行加工处理。

  3. 存储器(Memory):存储器的功能是存储程序、数据和各种信号、命令等信息,并在需要时提供这些信息。

  4.  输入(Input system):输入设备是计算机的重要组成部分,输入设备与输出设备合称为外部设备,简称外设,输入设备的作用是将程序、原始数据、文字、字符、控制命令或现场采集的数据等信息输入到计算机。常见的输入设备有键盘、鼠标器、光电输入机、磁带机、磁盘机、光盘机等。

  5.  输出(Output system):输出设备与输入设备同样是计算机的重要组成部分,它把外算机的中间结果或最后结果、机内的各种数据符号及文字或各种控制信号等信息输出出来。微机常用的输出设备有显示终端CRT、打印机、激光印字机、绘图仪及磁带、光盘机等。

二、Linux操作系统不同发行版的区别和联系

Linux,最早由Linus Benedict Torvalds在1991年开始编写。在这之前,Richard Stallman创建了Free Software Foundation(FSF)组织以及GNU项目,并不断的编写创建GNU程序(此类程序的许可方式均为GPL: General Public License)。在不断的有杰出的程序员和开发者加入到GNU组织中后,便造就了今天我们所看到的Linux,或称GNU/Linux。

linux.png

  1. Debian,或者称Debian系列,包括Debian和Ubuntu等。Debian分为三个版本分支(branch): stable, testing 和 unstable。其中,unstable为最新的测试版本,其中包括最新的软件包,适合桌面用户。testing的版本都经 过unstable中的测试,相对较为稳定,也支持了不少新技术(比如SMP等)。而stable一般只用于服务器,Debian最具特色的是apt-get / dpkg包管理方式,其实Redhat的YUM也是在模仿Debian的APT方式,但在二进制文件发行方式中,APT应该是最好的了。

  2. Redhat,应该称为Redhat系列,包括RHEL(Redhat Enterprise Linux,也就是所谓的Redhat Advance Server,收费版本)、Fedora Core(由原来的Redhat桌面版本发展而来,免费版本)、CentOS(RHEL的社区克隆版本,免费),Redhat系列的包管理方式采用的是基于RPM包的YUM包管理方式,包分发方式是编译好的二进制文件。稳定性方面RHEL和CentOS的稳定性非常好,适合于服务器使用,但是Fedora Core的稳定性较差,最好只用于桌面应用。

  3. Ubuntu严格来说不能算一个独立的发行版本,Ubuntu是基于Debian的unstable版本加强而来,可以这么说,Ubuntu就是 一个拥有Debian所有的优点,以及自己所加强的优点的近乎完美的 Linux桌面系统。根据选择的桌面系统不同,有三个版本可供选择,基于Gnome的Ubuntu,基于KDE的Kubuntu以及基于Xfc的 Xubuntu。特点是界面非常友好,容易上手,对硬件的支持非常全面,是最适合做桌面系统的Linux发行版本。

  4. Slackware,是由Patrick Volkerding开发的GNU/Linux发行版,与很多其他的发行版不同,它坚持KISS(Keep It Simple Stupid)的原则,就是说没有任何配置系统的图形界面工具。Slackware Linux的另一个突出的特性也符合KISS原则,Slackware没有如RPM之类的成熟的软件包管理器。Slackware的软件包都是通常的tgz(tar/gzip)格式文件再加上安装脚本。Slackware与其他的发行版本(Red Hat、Debian、Gentoo、SuSE、 Mandriva、Ubuntu等)不同的道路,它力图成为“UNIX风格”的Linux发行版本。只吸收稳定版本的应用程序,并且缺少其他linux版本中那些为发行版本定制的配置工具。

  5. Mandriva,是目前全球最优秀的Linux发行版之一,稳居于linux排行榜第一梯队,是众多国际级linux发行版中唯一一个默认即支持中文环境的linux。它是法国的Mandriva公司(前身为Mandrake公司)开发的Linux发行版。

  6. Slackware,是由Patrick Volkerding开发的GNU/Linux发行版。与很多其他的发行版不同,它坚持KISS(Keep It Simple Stupid)的原则,就是说没有任何配置系统的图形界面工具, Slackware Linux的另一个突出的特性也符合KISS原则:Slackware没有如RPM之类的成熟的软件包管理器。Slackware的软件包都是通常的tgz(tar/gzip)格式文件再加上安装脚本。Tgz对于有经验的用户来说,比RPM更为强大,并避免了RPM之类管理器的依赖性问题。Slackware与其他的发行版本(Red Hat、Debian、Gentoo、SuSE、 Mandriva、Ubuntu等)不同的道路,它力图成为“UNIX风格”的Linux发行版本。只吸收稳定版本的应用程序,并且缺少其他linux版本中那些为发行版本定制的配置工具。

三、Linux的哲学思想

  1. 一切皆文件,把几乎所有资源,包括硬件设备都组织为文件格式。

  2. 由众多单一目的小程序组成;一个程序只实现一个功能,组合小程序完成复杂任务。

  3. 尽量避免和用户交互,实现脚本编程,以自动完成某些功能;为脚本编程提供保证。

  4. 使用纯文本文件保存配置信息,一款使用的文本编程器即能完成系统配置工作。

四、Linux系统命令介绍

  1. ifconfig

    • 命令功能:

            命令用来查看和配置网络设备,当网络环境发生改变时可通过此命令对网络进行相应的配置。

    • 重要参数: 

    up 启动指定网络设备网卡

    down 关闭指定网络设备/网卡

    -a 显示全部接口信息

    • 配置实例

[root@localhost ~]# ifconfig
eno16777736: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 172.25.40.136  netmask 255.255.255.0  broadcast 172.25.40.255
        inet6 fe80::20c:29ff:fe35:e618  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:35:e6:18  txqueuelen 1000  (Ethernet)
        RX packets 3  bytes 746 (746.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 151  bytes 11830 (11.5 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

[root@localhost ~]#

 

[root@localhost ~]# ifconfig -a
eno16777736: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 172.25.40.136  netmask 255.255.255.0  broadcast 172.25.40.255
        inet6 fe80::20c:29ff:fe35:e618  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:35:e6:18  txqueuelen 1000  (Ethernet)
        RX packets 5  bytes 1148 (1.1 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 411  bytes 27712 (27.0 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=8<LOOPBACK>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        loop  txqueuelen 0  (Local Loopback)
        RX packets 53  bytes 5400 (5.2 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 53  bytes 5400 (5.2 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

[root@localhost ~]#

 

[root@localhost ~]# ifconfig lo up
[root@localhost ~]# ifconfig
eno16777736: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 172.25.40.136  netmask 255.255.255.0  broadcast 172.25.40.255
        inet6 fe80::20c:29ff:fe35:e618  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:35:e6:18  txqueuelen 1000  (Ethernet)
        RX packets 5  bytes 1148 (1.1 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 411  bytes 27712 (27.0 KiB)
        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 53  bytes 5400 (5.2 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 53  bytes 5400 (5.2 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

[root@localhost ~]#

2.echo

  •  命令功能:

        用来打印信息,是一个最常用的命令。在命令行中常用来打印环境变量的值,已确定当前环境中是否设置了指定的环境变量。

  • 重要参数: 

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

 -e: 允许使用转义符

   \n: 换行
          \t: 制表符   

   echo "$VAR_NAME": 变量会替换,双引号表弱引用。
          echo '$VAR_NAME': 变量不会替换,强引用。

  •  配置实例

    [root@localhost ~]# echo "test"
    test
    [root@localhost ~]# echo -n "test"
    test[root@localhost ~]#

     

    [root@localhost ~]# echo "how are you?"
    how are you?
    [root@localhost ~]# echo -e "how are you?"
    how are you?
    [root@localhost ~]# echo -e "how \tare you?"
    how  are you?
    [root@localhost ~]#

    [root@localhost ~]# echo "$SHELL"
    /bin/bash
    [root@localhost ~]# echo '$SHELL'
    $SHELL
    [root@localhost ~]#

3.tty

  •  命令功能

           查看当前的终端设备命令

  • 重要参数

    物理终端:直接接入本机的显示器和键盘设备;/dev/console。

    虚拟终端:附加在物理终端之上的以软件方式虚拟实现的终端。

    图形终端:附加在物理终端之上的以软件方式虚拟实现的终端。

    模拟终端:图形界面下打开的命令行接口,基于ssh协议或telnet协议等远程打开的界面都是所谓的模拟终端。

4.startx

  •  命令功能

           打开图形界面命令

5.export

  •  命令功能

           设置或显示环境变量

6.pwd

  •  命令功能

          查看”当前工作目录“的完整路径

  • 环境变量

       PWD:保存了当前目录路径
          OLDPWD:上一次所在目录路径
          pwd: 显示当前目录

  •  配置实例

    [root@localhost etc]# pwd
    /etc
    [root@localhost etc]# echo $PWD
    /etc
    [root@localhost etc]# echo $OLDPWD
    /root
    [root@localhost etc]#

7.history

  •   命令功能

          管理命令历史

  •   重要参数

  •    -a: 追加本次会话新执行的命令历史列表至历史文件中。

  •    -d: 删除历史中指定的命令。

  •    -c: 清空命令历史。

  •  快捷操作

       !#: 调用历史中第#条命令。
       !string:调用历史中最近一个以string开头的命令。
       !!: 上一条命令。

8.shutdown

  • 命令功能

          关机和重启命令。

  • 重要参数

    -f:强行关闭应用程序。
    -m \\计算机名:控制远程计算机。
    -i:显示图形用户界面,但必须是Shutdown的第一个选项。
    -l:注销当前用户。
    -r:关机并重启。
    -t:设置关机倒计时。
    -c "消息内容":输入关机对话框中的消息内容(不能超127个字符)。
    -a: 表示取消关机操作。
    -s :就表示关闭本地计算机。

9.poweroff

  •  命令功能

      关闭计算机操作系统并且切断系统电源。

10.reboot

  • 命令功能

      重新开机,即重启。

  • 重要参数 

    -d:重新开机时不把数据写入记录文件/var/tmp/wtmp,本参数具有-n参数的效果。

    -f:强制重新开机,不调用shutdown指令的功能。

    -i:在重开机之前,先关闭所有网络界面。

    -n:重开机之前不检查是否有未结束的程序。

    -w:仅做测试,并不真的将系统重新开机,只会把重开机的数据写入/var/log目录下的wtmp记录文件。

11.hwclock

  • 命令功能

          显示硬件时钟

  • 重要参数

        -s, –hctosys  把系统时间设定和硬件时间一样      
       -w, –systohc  把硬件时间设置和系统时间一样

12.date

  • 命令功能

      显示或设定系统的日期与时间

  • 重要参数

      date [OPTION]… [+FORMAT]:显示
      FORMAT: 格式符号
       %D
       %F
       %T 
       %a
      

         date [MMDDhhmm[[CC]YY][.ss]]:设置系统时间

                       MM: 月分

                       DD:几号 日期

                       hh: 小时

                       mm: 分钟

                       YY: 两位年份

                       CCYY: 四位年份

                       .ss: 秒钟

  •   配置实例

[root@localhost ~]# date
Mon Jul 11 00:52:32 EDT 2016
[root@localhost ~]# date "+%F %D"
2016-07-11 07/11/16
[root@localhost ~]# date -s 2016-07-11
Mon Jul 11 00:00:00 EDT 2016
[root@localhost ~]# date "+%F"
2016-07-11
[root@localhost ~]# date "+%D"
07/11/16
[root@localhost ~]# date "+%A"
Monday
[root@localhost ~]# date "+%a"
Mon
[root@localhost ~]#


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

  •  内部命令

              # help COMMAND

  •  外部命令
    # COMMAND –help
     # COMMAND -h
     如 ls –help 
    使用手册(manual)
     # man COMMAND
     如 man ls
    信息页
     # info COMMAND
    程序自身的帮助文档
     README
     INSTALL
     ChangeLog
    程序官方文档
     官方站点:Documentation
    发行版的官方文档
    Google

  • man手册页:/usr/share/man

  • 不同类别的命令进行分类管理

        man1: 用户命令

        man2: 系统调用

        man3: C库调用

       man4: 设备文件及特殊文件

      man5: 配置文件格式

      man6: 游戏

         man7: 杂项

         man8: 管理类的命令

  • man帮助手册中的段落说明:

    • NAME

    • SYNOPSIS

    • DESCRIPTION

    • OPTIONS

    • EXAMPLES

    • AUTHOR

    • REPORTING BUGS

    • SEE ALSO

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

/dev/      设备目录。

/etc/      系统配置及服务配置文件、启动命令的目录。

/proc/      显示内核及进程信息的虚拟文件系统,这个目录的内容不在硬盘上而是在内存里。

/tmp       一般用于临时挂载存储设备的挂载目录(客厅)。

/root      普通用户家目录。

/root      超级管理员家目录。

/mnt       一般用于临时挂载存储设备的挂载目录。

/lost+found  意外关机或崩溃文件碎片所在的目录。fsck自检。

/opt       有些软件包会被安装在这里,视习惯而定(基本已弃用)。

/var       变化的目录,系统日志、安全日志的目录。

/usr       包括与系统用户直接有关的文件和目录,例如应用程序及支持它们的库文件。

/bin       用户二进制命令的目录。

/sbin      超级用户二进制命令的目录。

/boot      系统引导程序的目录。

原创文章,作者:N21_我心飞翔,如若转载,请注明出处:http://www.178linux.com/23672

(0)
N21_我心飞翔N21_我心飞翔
上一篇 2016-07-12
下一篇 2016-07-12

相关推荐

  • 马哥教育网络21期+第十二周练习博客上

    1、请描述一次完整的http请求处理过程; (1)建立或处理连接:接受请求或拒绝请求 (2)如果接受请求:     并发访问响应模型:         单进程I/O结构:启动一个进程处理用户请求,而且一次只处理一个,多个请求被串行响应; &…

    Linux干货 2016-10-17
  • 马哥教育网络班21期+第4周作业

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 [root@localhost ~]# cp -r /etc/skel /home/ && mv /home/skel&nbsp…

    Linux干货 2016-08-02
  • Linux系统的终端类型

    一、什么是Linux终端     终端–用户用户与主机交互,必然要用到的设备。     早期的大型机,想使用的用户很多,但是主机只有一个,也不可能人手一台,但是可以做到在主机上接一个分屏器,分屏器的每一个端子上可以接上一套鼠标键盘显示器,就可以直接在主机上进行一些操作了,这就相当于每个人在独立的操作一台计算…

    Linux干货 2016-10-18
  • Nginx作为web服务器的使用配置

    概述     Nginx是一款免费开源的web服务器,同时也可以作为http、imap/pop3协议进行反代服务器,本篇介绍一些nginx作为web服务器方面的相关配置,具体包含:     1、nginx基础概念介绍     2、nginx…

    Linux干货 2016-10-27
  • Linux下/proc目录详解

    Linux下/proc目录详解 proc目录总的概述 proc下有关进程的目录概述 proc下针对Linux系统相关的参数目录概述 /proc目录总的概述 1.首先,我们可以使用ll命令查看下/proc目录,如下 [root@centos6 ~]# ls -l /proc total 0 dr-xr-xr-x. 8 root root 0 May 19 04…

    Linux干货 2017-05-20

评论列表(1条)

  • 马哥教育
    马哥教育 2016-07-12 13:31

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