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

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

 计算机主要由5部分(冯.诺依曼原理)组成:

    控制器(Control):对程序规定的控制信息进行解释,依据其要求进行控制,调度程序、数据、地址,协调计算机各部分工作及内存与外设的访问等。

    运算器(Datapath):对数据进行各种算数运算和逻辑运算,即对数据进行加工处理。

    存储器(Memory):存储程序、数据和各种信号、命令等信息,并在需要时提供这些信息,分为ROM和RAM。

      ROM:只读存储器,寻址地址空间的组成部分。

      RAM:随机存储器。

    输入(Input system):将程序、原始数据、文字、字符、控制命令或现场采集的数据等信息输入到计算机。

    输出(Output system):将计算机的中间结果或最后结果、机内的各种数据符号及文字或各种控制信号等信息输出出来。

      总线:电子管道,携带信息字节并在各个部件间传输,作用是将电气信号转换为数字信号。分为地址总线,数据总线和控制总线。

      

计算机组成.jpg

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

 slackware:

suse

  opensuse

 debian:

ubuntu

  mint

 redhat:

rhel: redhat enterprise linux

   每18个月发行一个新版本

CentOS:兼容rhel的格式

fedora:每6个月发行一个新版本

 ArchLinux

 Gentoo

 LFS: Linux From scratch

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

 (1)一切皆文件;

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

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

 组合小程序完成复杂任务;

 (3)尽量避免跟用户交互;

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

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

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

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

 命令的基本使用格式

   COMMAND [OPTIONS…] [ARGUMENTS…]

(1)ifconfig:配置和显示Linux内核中网络接口的网络参数。
   ifconfig -a:显示网络设备信息

[root@localhost 桌面]# ifconfig -a
eno16777736: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        ether 00:0c:29:c1:95:44  txqueuelen 1000  (Ethernet)
        
lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        

virbr0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        inet 192.168.122.1  netmask 255.255.255.0  broadcast 192.168.122.255
        

virbr0-nic: flags=4098<BROADCAST,MULTICAST>  mtu 1500
        ether 52:54:00:b7:94:9b  txqueuelen 500  (Ethernet)

  ifconfig IFACE [up|down]:启动关闭指定网卡

[root@localhost   桌面]# ifconfig eno16777736 up
[root@localhost   桌面]# ifconfig eno16777736 down

   

 ifconfig IFACE IP:配置IP地址

[root@localhost 桌面]# ifconfig eno16777736 192.168.122.2

(2)echo:用于在shell中打印shell变量的值,或者直接输出指定的字符串。

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

[root@localhost 桌面]# echo -n "hello world"
hello world[root@localhost 桌面]#

    选项:-e 激活转义字符

[root@localhost 桌面]# echo -e "hello world \n"
hello world 
[root@localhost 桌面]#

(3)tty:显示当前所在终端

   

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

(4)startx:进入图形界面

(5)export:设置或显示环境变量。

 

[root@hadoop ~]# echo $HISTSIZE
1000
[root@hadoop ~]# export HISTSIZE=1001
[root@hadoop ~]# echo $HISTSIZE
1001

(6)pwd:以绝对路径的方式显示用户当前工作目录。

[root@hadoop ~]# pwd
/root

(7)history:显示指定数目的指令命令,读取历史命令文件中的目录到历史命令缓冲区和将历史命令缓冲区中的目录写入命令文件

(8)shutdown:安全地关闭或重启Linux系统。

   语法:shutdown [选项] [时间] [警告信息]

      选项:

         -r:重新启动系统

[root@hadoop /]# shutdown -r +60 'System will reboot in 1 hour!'
Broadcast message from root@hadoop
(/dev/pts/0) at 21:04 ...
The system is going down for reboot in 60 minutes!
System will reboot in 1 hour!

        -h:关闭系统

[root@hadoop /]# shutdown -h +60 'System will halt in 1 hour!'
Broadcast message from root@hadoop
(/dev/pts/0) at 21:07 ...
The system is going down for halt in 60 minutes!
System will halt in 1 hour!

        -c:取消运行shutdown

(9)poweroff:关闭Linux系统

(10)reboot:重启Linux系统

(11)hwclock:查看和设置硬件时钟。

[root@hadoop /]# hwclock
Tue 05 Jul 2016 09:17:20 PM CST  -0.975374 seconds

   选项:

       -w 以系统时间更新硬件时间。

[root@hadoop /]# hwclock -w

       -s 以硬件时间更新系统时间。

[root@hadoop /]# hwclock -s

(12)date:显示和设置系统日期时间

    

语法:date [OPTION]... [+FORMAT]:显示

            FORMAT: 格式符号

%D:日期(mm/dd/yy)

[root@hadoop /]# date +'%D'
07/05/16

                     %F:日期,同%Y-%m-%d

[root@hadoop /]# date +'%F'
2016-07-05

%T:时间(24小时制)(hh/mm/ss)

[root@hadoop /]# date +'%T'
21:34:28

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

        MM: 月分

        DD:几号

        hh: 小时

        mm: 分钟

        YY: 两位年份

        CCYY: 四位年份

        .ss: 秒钟

    

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

 外部命令:都有一个可执行程序,位于文件系统某目录下

   which, whereis:查询显示给定命令的路径以及相关文件的路径。

 

 (1) # COMMAND –help

 # COMMAND -h

 (2) 使用手册(manual)

 # man COMMAND

 (3) 信息页

 # info COMMAND

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

 README

 INSTALL

 ChangeLog

 (5) 程序官方文档

 官方站点:Documentation

 (6) 发行版的官方文档

 (7) Google

 内部命令

  # help COMMAND

 hash命令:

 shell搜寻到的外部命令的路径结果会缓存至kv(key-value)存储中;

 history命令:

 管理命令历史;

 登录shell时,会读取命令历史文件中记录下的命令:~/.bash_history

 登录进shell后新执行的命令只会记录在缓存中;这些命令会用户退出时“追加”至命令历史文件中;

 history:

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

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

 -c: 清空命令历史;

 快捷操作:

 !#: 调用历史中第#条命令;

 !string:调用历史中最近一个以string开头的命令;

 !!: 上一条命令

 外部命令帮助获取:

 (2) man COMMAND

 手册页:/usr/share/man

 man1 … man8

 man1: 用户命令

 man2: 系统调用

 man3: C库调用

 man4: 设备文件及特殊文件

 man5: 配置文件格式

 man6: 游戏

 man7: 杂项

 man8: 管理类的命令

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

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

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

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

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

 帮助手册中的段落说明:

 NAME

 SYNOPSIS

 DESCRIPTION

 OPTIONS

 EXAMPLES

 AUTHOR

 REPORTING BUGS

 SEE ALSO

 SYNOPSIS:

 []:可选内容

 <>: 必选内容

 a|b:二选一

 …: 同一内容可出现多次

 man命令的操作方法:

 Space, ^V, ^f, ^F: 向文件尾翻屏;

 b, ^B: 向文件首部翻屏;

 d, ^D: 向文件尾部翻半屏;

 u, ^U: 向文件首部翻半屏;

 RETURN, ^N, e, ^E or j or ^J: 向文件尾部翻一行;

 y or ^Y or ^P or k or ^K:向文件首部翻一行;

 q: 退出;

 #:跳转至第#行;

 1G: 回到文件首部

 G:翻至文件尾部

 文本搜索:

 /KEYWORD: 

 以KEYWORD指定的字符串为关键字,从当前位置向文件尾部搜索;不区分字符大小写;

 n: 下一个

 N:上一个

 ?KEYWORD:

 以KEYWORD指定的字符串为关键字,从当前位置向文件首部搜索;不区分字符大小写;

 n: 跟搜索命令同方向,下一个

 N:跟搜索命令反方向,上一个

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

 

[root@hadoop ~]# ls /
bin  boot  dev  etc  home  lib  lost+found  media  misc  mnt  net  opt  proc  root  sbin  selinux  srv  sys  tmp  usr  var

 Linux的文件系统:

 根文件系统(rootfs):

 root filesystem

 LSB, FHS: (FileSystem Heirache Standard)

 /etc, /usr, /var, /root, /home, /dev

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

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

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

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

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

 /etc:配置文件目录(纯文本文件);

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

 /root:管理员的家目录;

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

   cdrom

   usb

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

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

   b: block device,随机访问

   c: character device,线性访问

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

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

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

 /usr: universal shared, read-only data;

   bin: 保证系统拥有完整功能而提供的应用程序;

   sbin:

   lib:

   lib64:

   include: C程序的头文件(header files);

   share:结构化独立的数据,例如doc, man等;

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

   bin, sbin, lib, lib64, etc, share

 /var: variable data files

   cache: 应用程序缓存数据目录;

   lib: 应用程序状态信息数据;

   local:专用于为/usr/local下的应用程序存储可变数据;

   lock: 锁文件

   log: 日志目录及文件;

   opt: 专用于为/opt下的应用程序存储可变数据;

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

   spool: 应用程序数据池;

   tmp: 保存系统两次重启之间产生的临时数据;

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

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

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

 Linux上的应用程序的组成部分:

   二进制程序:/bin, /sbin, /usr/bin, /usr/sbin, /usr/local/bin, /usr/local/sbin

   库文件:/lib, /lib64, /usr/lib, /usr/lib64, /usr/local/lib, /usr/local/lib64

   配置文件:/etc, /etc/DIRECTORY, /usr/local/etc

   帮助文件:/usr/share/man, /usr/share/doc, /usr/local/share/man, /usr/local/share/doc

 Linux下的文件类型:

   – (f):普通文件;

   d: 目录文件;

   b: 块设备;

   c: 字符设备;

   l: 符号链接文件;

   p: 管道文件;

   s: 套接字文件;socket; 




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

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

相关推荐

  • 计划任务与启动流程

    一、任务计划 未来的某时间点执行一次任务:    at:在指定的时间执行任务    batch:系统自行选择空闲时间去执行此处指定的任务周期性运行某任务:    cron:在指定的时间执行任务 1、at任务at [option] TIME  常用选项:&nbs…

    Linux干货 2016-09-13
  • 权限管理

     权限管理:  ls -l       rwxrwxrwx:              左三位:定义user(owner)的权限              中三位:定义g…

    Linux干货 2016-12-21
  • DNS简单概念 一

    DNS简单概念 一 DNS简单概念 一 1 §·主机角色 1 §·DNS服务器的类型: 1 §·DNS中简单术语 2 §·DNS中资源记录及其类型 2 §·DNS域与区域 4 §·BIND安全设置 5 §·BIND高级设置BIND VIEW 6   §·主机角色 在网络上不同的主机有不同的角色, 比如: DNS解析角色,邮件角色,网页服务器 §·D…

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

    请详细总结vim编辑器的使用并完成以下练习题 vim编辑器的使用 vim模式:  a,编辑/命令模式;  b,insert/输入模式  c,末行模式 打开文件:  vim    [option]…    file…  +#:打开文件后,直接让光标…

    Linux干货 2016-08-22
  • python基础语法之if,else,for,while,continue,break

    如果你了解语法的使用,内有习题可以稍作练习。

    2017-09-16
  • rsyslog+mariadb+loganalyzer实现日志采集分析

    一、总述   Linux的日志记录了用户在系统上一切操作,这些日志是使用者了解服务器的情况最好的资料。Rsyslog 是系统的一部分,能够实时的写日志,并且还可以将日志选择性的发送到远程日志服务器。   rsyslog日志服务器的优势:     1、日志统一,集中式管理     &nbsp…

    Linux干货 2017-01-10

评论列表(1条)

  • 马哥教育
    马哥教育 2016-07-07 11:12

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