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

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

  计算机主要由运算器,控制器,存储器,输入设备,输出设备组成

  运算器用来做计算,用来做二进制运算(加法运算)和逻辑运算

  控制器用来控制计算机各部件之间的协调,例如运算器想做运算从哪里读入加数和被加数,寄存在哪里

  存储器分为内存储器和外存储器,用来存放数据 内存储器用于存放计算机当前工作中正在运行的程序,数据等,分为随机存取存储器RAM(Random   Access Memory)和只读存储器ROM(Read-Only Memory)。外存储器外存储器用来存储大量暂时不参见运算或处理的数据和程序,例如光盘,硬   盘,U盘等

  输入设备:把原始数据和处理这些数据的程序通过输入接口输入到计算机的存储器中,例如键盘,鼠标,扫描仪等

  输出设备:输出计算机的处理结果,例如:显示器,打印机,音响等

各个组成部分需要总线连接才能正常工作,总线分为:控制总线,数据总线,地址总线(寻址)

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

  Linux的发行版  

  1)slackware–suse–opensuse,slackware,suse为二次发行版本,opensuse为再次发行版本

  2)debian–ubuntu–mint,debian,Ubuntu为二次发行版本,mint为再次发行版本

  3)redhat–rhel redhat enterprise linux,redhat,rhel为redhat的企业版本,fedora为redhat的普通发行版

       –fedora

  4)ArchLinux,轻量简洁的linux发行版本

  5)Gentoo,定制版linux操作系统

  6)LFS:Linux From scratch,从零搭建linux

  7)Android:kernel+busybox+java虚拟机,安卓基于linux的内核,使用Java虚拟机

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

   Linux的哲学思想主要包括:

   1.一切皆文件

       把几乎所有的资源,包括硬件设备都组织为文件格式

   2.由众多单一目的的小程序组成,一个程序只实现一个功能,而且要做好

       组合小程序完成复杂任务

   3.尽量避免跟用户交互

      目标:实现脚本编程,以自动完成某些功能

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

      目标:一款使用的文本编辑器即能完成系统配置工作

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

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

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

         取消命令执行:Ctrl+c

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

          短选项:-c,例如:-l,-h  多个短选项可合并使用,例如:-l -h可写成-lh

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

          参数:命令的作用对象,向命令提供数据

    

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

[root@localhost /]# ifconfig
eno16777736: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.200.206  netmask 255.255.255.0  broadcast 192.168.200.255
        inet6 fe80::20c:29ff:fe89:56df  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:89:56:df  txqueuelen 1000  (Ethernet)
        RX packets 6  bytes 552 (552.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 28  bytes 4029 (3.9 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

        up 启动指定网络设备/网卡。

        down 关闭指定网络设备/网卡。该参数可以有效地阻止通过指定接口的IP信息流,如果想永久地关闭一个接口,我们还需要从核心路由表中将该接口的路由信息全部删除。

        arp 设置指定网卡是否支持ARP协议。

        -promisc 设置是否支持网卡的promiscuous模式,如果选择此参数,网卡将接收网络中发给它所有的数据包

        -allmulti 设置是否支持多播模式,如果选择此参数,网卡将接收网络中所有的多播数据包

        -a 显示全部接口信息

        -s 显示摘要信息(类似于 netstat -i)

        add 给指定网卡配置IPv6地址

        del 删除指定网卡的IPv6地址

        <硬件地址> 配置网卡最大的传输单元

        mtu<字节数> 设置网卡的最大传输单元 (bytes)

       netmask<子网掩码> 设置网卡的子网掩码。掩码可以是有前缀0x的32位十六进制数,也可以是用点分开的4个十进制数。如果不打算将网络分成子网,可以不管这一选项;如果要使用子网,那么请记住,网络中每一个系统必须有相同子网掩码。

       tunel 建立隧道

       dstaddr 设定一个远端地址,建立点对点通信

       -broadcast<地址> 为指定网卡设置广播协议

       -pointtopoint<地址> 为网卡设置点对点通讯协议

       multicast 为网卡设置组播标志

       address 为网卡设置IPv4地址

       txqueuelen<长度> 为网卡设置传输列队的长度

    2)echo 用来在显示器上显示一段文字,一般起到一个提示的作用。   

[root@localhost /]# echo wangsining
wangsining

           -n 不要在最后自动换行

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

             \a 发出警告声;

             \b 删除前一个字符;

             \c 最后不加上换行符号;

             \f 换行但光标仍旧停留在原来的位置;

             \n 换行且光标移至行首;

             \r 光标移至行首,但不换行;

             \t 插入tab;

             \v 与\f相同;

             \\ 插入\字符;

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

             –help 显示帮助

             –version 显示版本信息

    3)tty 用于显示终端机连接标准输入设备的文件名称。

[root@localhost /]# tty
/dev/pts/0

         -s或–silent或–quiet 不显示任何信息,只回传状态代码。

          –help 在线帮助。

          –version 显示版本信息。

    4)startx 用于在命令行界面进入图形界面。

[root@localhost /]# startx

    5)export 用来设置和显示环境变量。

[root@localhost /]# export -p
declare -x DBUS_SESSION_BUS_ADDRESS="unix:abstract=/tmp/dbus-wxEcCjVap8,guid=10e76194d67ae90c00ea70335781f873"
declare -x DESKTOP_SESSION="gnome-classic"
declare -x DISPLAY=":0"

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

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

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

     6)pwd 用来查看”当前工作目录“的完整路径

[root@localhost /]# pwd
/

     7)history 主要用于显示历史指令记录内容, 下达历史纪录中的指令。

[root@localhost /]# history 
    1  ls /root/rh442/
    2  kill -a realtime
    3  init 6

                    n  :数字,要列出最近的 n 笔命令列表

               -c :将目前的shell中的所有 history 内容全部消除

               -a :将目前新增的history 指令新增入 histfiles 中,若没有加 histfiles,则预设写入 ~/.bash_history

               -r :将 histfiles 的内容读到目前这个 shell 的 history 记忆中

               -w :将目前的 history 记忆内容写入 histfiles。

     8)shutdown 用来安全关闭或者重新启动系统。

[root@localhost /]# shutdown -h

                -c  当执行"shutdown -h 11:50"指令时,只要按+键就可以中断关机的指令。

               -f  重新启动时不执行fsck。

               -F  重新启动时执行fsck。

               -h  将系统关机。

               -k  只是送出信息给所有用户,但不会实际关机。

               -n  不调用init程序进行关机,而由shutdown自己进行。

               -r  shutdown之后重新启动。

               -t<秒数>  送出警告信息和删除信息之间要延迟多少秒。

               [时间]  设置多久时间后执行shutdown指令。

               [警告信息]  要传送给所有登入用户的信息。

     9)poweroff 用来关闭计算机操作系统并且切断系统电源。 

[root@localhost /]# poweroff

                 -n:关闭操作系统时不执行sync操作; 

               -w:不真正关闭操作系统,仅在日志文件“/var/log/wtmp”中; 

               -d:关闭操作系统时,不将操作写入日志文件“/var/log/wtmp”中添加相应的记录; 

               -f:强制关闭操作系统; 

               -i:关闭操作系统之前关闭所有的网络接口;

               -h:关闭操作系统之前将系统中所有的硬件设置为备用模式。

    10)reboot 用来重新启动计算机。

[root@localhost /]# reboot

            -n : 在重开机前不做将记忆体资料写回硬盘的动作

            -w : 并不会真的重开机,只是把记录写到 /var/log/wtmp 档案里

            -d : 不把记录写到 /var/log/wtmp 档案里(-n 这个参数包含了 -d)

            -f : 强迫重开机,不呼叫 shutdown 这个指令

            -i : 在重开机之前先把所有网络相关的装置先停止

    11)hwclock 用于显示与设定硬件时钟。

[root@localhost /]# hwclock
Sun 10 Jul 2016 12:32:03 PM EDT  -0.267696 seconds

            –adjust  hwclock每次更改硬件时钟时,都会记录在/etc/adjtime文件中。使用–adjust参数,可使hwclock根据先前的记录来估算硬件时钟的偏差,并用来校正目前的硬件时钟。

            –debug  显示hwclock执行时详细的信息。

            –directisa  hwclock预设从/dev/rtc设备来存取硬件时钟。若无法存取时,可用此参数直接以I/O指令来存取硬件时钟。

            –hctosys  将系统时钟调整为与目前的硬件时钟一致。

            –set –date=<日期与时间>  设定硬件时钟。

            –show  显示硬件时钟的时间与日期。

            –systohc  将硬件时钟调整为与目前的系统时钟一致。

            –test  仅测试程序,而不会实际更改硬件时钟。

            –utc  若要使用格林威治时间,请加入此参数,hwclock会执行转换的工作。

            –version  显示版本信息。

    12)date 显示或设置系统时间与日期。

[root@localhost /]# date
Sun Jul 10 03:32:36 EDT 2016

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

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

             -u:显示GMT; –help:在线帮助; 

              –version:显示版本信息。

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

    #type COMMAND 查看是内建命令还是外部命令

    1)内建命令   help   COMMAND

    2)外部命令 

        (1)#COMMAND  –help

              #COMMAND  -h

        (2)使用手册(manual)

              #man COMMAND

        (3)信息页

              #info  COMMAN D

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

            /usr/share/doc/COMMAND-VERSION                      

            README    INSTALL    ChangeLog

        (5)程序官方文档

            官方站点:Documentation

                   http://www.redhat.com/docs

         (6)发行版的官方文档

       (7)Google

          (8) slideshare

                   http://www.slideshare.net/

man COMMAND

手册页:/usr/share/man中

         man1:用户命令

         man2:系统调用

                   注意:有些关键字在不止一个章节中存在帮助手册

                              查看指定章节中的手册:man #  COMMAND

         man3:C库调用

         man4:设备文件及特殊文件

         man5:配置文件格式

         man6:游戏相关

         man7:杂项

         man8:管理类的命令

man命令的配置文件:/etc/man.config

MANPATH /PATH/TO/SOMEWHERE:指名新的手册文件搜索位置

#man -M /PATH/TO/SOMEWHERE COMMAND:到指定位置下搜索COMMAND命令的手册页并显示

帮助手册中的段落说明:

 

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

[root@localhost /]# ls
bin   dev  home  lib   lost+found  mnt  proc  run   srv  tmp  var
boot  etc  iso   lib64  media   opt  root  sbin  sys  usr

 根据FHS(fileSystem Heirache Standard)来命名,基础目录名称:

     /bin:供所有用户使用的基本命令;不能关联至独立分区,OS启动即会用到的程序;

     /dev:设备文件及特殊文件存储位置;

     /home/USERNAME:普通用户家目录;

     /lib:基本共享库文件,以及内核模块文件(lib/modules);

     /lost+found:防数据丢失的;

    /mnt:临时文件系统挂载点;

     /proc:用于输出内核与进程信息相关的虚拟文件系统

    /run:运行中的进程相关的数据,通常用于存储进程中的PID文件;

     /srv:系统上运行的服务用到的数据;

     /tmp:临时文件存储位置;

     /var:variable date files,可变化的数据文件;

     /boot:引导文件存放目录;内核文件(vmlinuz)、引导加载器(bootloader,grub)都存放于此目录;

     /etc:配置文件目录;

     /lib64:专用于X86_64系统上的辅助共享库文件存放位置;

     /media:便携式移动设备挂载点;

    /opt:第三方应用程序的安装位置;

    /root:管理员的家目录;

    /sbin:管理类的基本命令;不能关联至独立分区,OS启动即会用到的程序;

     /sys:用于输出当前系统上硬件设备相关信息的虚拟文件系统;

    /usr:universal shared,read-only data;

    /selinux:security enhanced Linux,selinux相关的安全策略等信息存储位置;

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

(0)
上一篇 2016-07-12 11:18
下一篇 2016-07-12 11:18

相关推荐

  • 破解root口令

    这里主要介绍一下centos6和7root密码的破解方法 这里先说一下centos7的口令破解方法 破解CentOS7的root口令方法一 启动时任意键暂停启动  按e键进入编辑模式  将光标移动linux16开始的行,添加内核参数rd.break 按ctrl-x启动 这是进来之后的界面 然后查看用户的登录信息 echo $UID 显示结…

    2017-07-14
  • Linux系统下的翻译神器——Goldendict

    Linux系统下的翻译神器——Goldendict 学习Linux时明显感受到学习英文的重要性。绝大多数Linux的发行版英文版的功能要远强于中文。因此一款好的翻译软件是了解熟悉Linux系统的必需品。在Windows系统下有各种好用的词典程序,包括有道词典、bing词典、金山词霸等等,而这些软件都不能在linux下使用,即使能够使用也只是测试版,功能太少。…

    Linux干货 2017-04-24
  • 运维学习笔记-Puppet之Hiera初探

    为什么使用Hiera? Puppet中的manifest同时包含静态的代码(判断/循环逻辑,依赖关系,类定义,资源类型定义等等)和动态的数据(类声明时的参数值和资源声明时的属性值)。说代码是静态的是因为如果在设计阶段考虑比较全面,代码写成之后是很少变化的。但是数据要根据具体情况赋予不同的值。如果manifest设计的不是很灵活,比如某些数据被固化(hardc…

    Linux干货 2016-07-07
  • 计算机的组成以及OS的发展历程

        根据冯诺依曼提出的体系架构,计算机基本上可以分为五大部件。这五大部件分别为运算器,控制器,内存,输入设备与输出设备,其中运算器与控制器是CPU的重要组成部分。下面分别介绍这5大部件:     CPU:运算器、控制器、寄存器、缓存      &…

    Linux干货 2016-10-30
  • 系统基础之用户,组及权限管理

    用户及组详解 概论:   现今,大多数操作系统都是多用户(Multi-tasks)多任务(Mulit-Users)的系统.在多年前,计算机资源远没有现在这么丰富,都是多人使用同一台计算机,为了保障使用计算机的用户权益不受到损害,完成资源使用隔离,人们采取了用户机制标识使用者的方法.  每个使用者都是用户,用户是由UID进行标识,通过密码进…

    Linux干货 2016-08-04
  • Linux文件查找的使用方法

    文件查找的方法 locate命令       非实时查找(数据库查找): locate查询系统上预建的文件索引数据库 /var/lib/mlocate/mlocate.db    依赖于事先构建的索引;索引的构建是在系统较为空闲时自动进行(周期性任务);管理员手动更新数据库(updated…

    Linux干货 2016-08-15

评论列表(1条)

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

    写的很好,排版还可以在漂亮一点,如果来一些例子的话会更好,加油