第一周-N28

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

我们现在常用的计算机,包括手机及智能设备,通常由五大部件组成(冯若依曼提出),如下图所示:

11

五大部件:

  • 运算器:做算数运算(加减乘除取余)和逻辑运算(移位)
  • 控制器:控制各部分协调的功能。
    • CPU包括以下四个部分:运算器、控制器、寄存器、缓存
  • I/O设备:即输入输出设备,用于跟外部交互。通常为磁盘、键盘、鼠标、显示器、打印机等。I/O设备是交互起来最慢的设备。
    • INPUT:下指令,提供数据等
    • OutPut:输出数据加工的结果
  • 存储器:存储数据的设备。包括ROM(只读内存)和RAM(挥发性内存),通常我们所说的内存主要为RAM;而磁盘是属于I/O设备,而不属于存储器。
    • ROM(read-only memory):只读内存。一旦存储资料就无法再将之改变或删除,资料不会因为电源关闭而消失。
    • RAM(RamdomAccess Memory):易挥发性随机存取存储器。可对其中的任一存储单元进行读或写操作,计算机关闭电源后其内的信息将不再保存,再次开机需要重新装入。
      • CPU只能从内存中读取数据

 

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

Linux是由互联网上各种各样的项目维护者提供的源码实现的,但是我们作为终端用户来讲,很少有人有这种能力把源码拼凑出一个完整的系统来,因此就有人帮我们把中间的过程完成了,这些组织就称为发行商,它们所提供的版本就叫做发行版。

应用程序都是源码提供、开源的,任何组织和个人都可以任意获取,所以A组织、B组织、C组织都可以制作发行版。发行版制作的界面和内部某些文件的路径组织不一样,内核也会有些不同,而且有些组织发行的软件版本不一样。

市面上流行Centos/Ubuntu/red hat三大主流发行版。

Linux发行版:

  • Slackware:由于SLS没有存活多久,我们也可以认为Slackware就是一个从头建立的
  • Suse:基于slackware的二次发行版,欧洲最流行的发行版
  • Opensuse:基于suse的二次发行版
  • Debian:唯一一个不是由商业组织维护的,是通过互联网自发来维护,不收钱。是三大发行版中最接近原汁原味linux,也是三大发行版中技能要求最高的linux。
  • Ubuntu:基于debian的二次发行版
    • Mint:基于ubuntu的二次发行版
  • Knopix:基于debian的二次发行版
  • Redhat:Redhat早期1994年成立时就是发行个人桌面版,后来等它的发行版本足够稳定以后,开始逐渐转向企业版。个人桌面版不再做了,但是不能任由它废弃,所以就在Redhat 9.0以后分成两个分支RHEL(企业版)和Fedora(个人桌面版)
  • RHEL:redhat enterprise linux,redhat的企业版。每18个月发行一个新版本,一定是广泛经过验证,足够稳定的版本。目前版本是RHEL 7。
    • CentOS:Community Enterprise Operating System,基于RHEL企业版的二次发行版,以Red Hat所发布的源代码重建符合GPL许可协议的Linux系统,即将Red Hat Linux源代码的商标(LOGO)及非自由软件部分去除后再编译而形成的版本。
      • CentOS和RHEL是完全兼容的
    • Fedora:redhat的个人版捐给了fedora社区,由社区组织维护。社区组织维护的主要目的在于:测试新软件程序、测试新硬件驱动程序等。所以fedora发行周期很快,一般而言是每6个月发行一个新版本。
    • Gentoo:发行版虽然是最近几年出现的,但到现在为止供很多人喜欢
    • ArchLinux:发行版虽然是最近几年出现的,但到现在为止供很多人喜欢

 

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

Linux哲学思想:

  • 一切皆文件:把几乎所有资源通通抽象为文件形式,从而访问任何资源可以使用统一的接口来实现;包括硬件设备,甚至通信接口等
    • 访问文件函数:open(),read(),write(),close(),delete(),create()
  • 由众多单一目的小程序组成;一个程序只实现一个功能,而且要做好;要想实现一些复杂的功能,需要组合小程序完成复杂任务。
  • 尽量避免跟用户交互。目标:易于以编程的方式实现自动化任务
  • 使用纯文本文件保存配置信息。目标:一款使用的文本编辑器即能完成系统配置工作。所以在linux里面灵活使用文本编辑器至关重要。

 

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

4.1 ifconfig命令

ifconfig:configure a network interface,网络信息属性显示和配置

SYNOPSIS:

  • ifconfig [interface]
    • [root@Mauro ~]# ifconfig:显示本机上所有处于活动状态接口的地址
    • [root@Mauro ~]# ifconfig -a:显示本机上所有处于活动状态接口和非活动状态接口的地址
    • [root@Mauro ~]# ifconfig IFACE:显示指定接口的信息
      • IFACE:表示接口名
    • [root@Mauro ~]# ifconfig IFACE [up|down]:启用或者禁用某个接口
  • ifconfig interface [aftype] options | address …
    • [root@Mauro ~]#ifconfig IFACE IP/mask [up]:临时修改接口地址
      • 指明这种格式时必须要使用掩码长度
      • [root@Mauro ~]#ifconfig IFACE [up] IP/mask
    • [root@Mauro ~]#ifconfig IFACE IP netmask MASK:临时修改接口地址
      • 指明这种格式时必须要使用掩码地址
      • 临时修改ip地址并且启用
        • up:It is implicitly specified if an address is assigned to the interface.
      • [root@Mauro ~]# ifconfig eth0:0 192.168.84.152/24
        • 新增一个网卡别名
      • options:
        • [-]promisc:启用/禁用混杂模式
          • [root@Mauro ~]# ifconfig eth0 -promisc
            • 默认是启用混杂模式,-表示禁用混杂模式
            • 混杂模式是我们将来实现网络监控时必要的一步。每一个主机在接收报文时,如果目标地址不是自己就不会接收。启用混杂模式指的是目标地址即便不是自己,只要报文来了,它也会接收一份。这便于我们在本机上面抓包从而分析网络通信。
          • [root@Mauro ~]# ifconfig eth0:0down
            • 删除一个网卡别名

4.2 echo命令

echo:回显命令。write arguments to the standard output。

//回显:你给它什么,它就给你显示什么。

OPTION:

  • -n:禁止自动添加换行符号
  • -e:enable interpretation of backslash escapes,允许使用转义符
    • 某些符号不是你所看到的样子,而是为实现某种控制功能
    • \n:换行
    • \t:制表符

[root@Mauro ~]# echo “$SHELL”

这也是种回显,只不过能取得变量中存储的值并显示出来。单引号叫强引用;双引号叫弱引用。

  • echo “$VAR_NAME”:变量会替换,弱引用
  • echo ‘$VAR_NAME’:变量不会替换,强引用

4.3 tty命令

查看当前的终端设备:[root@Mauro ~]# tty

4.4  startx命令

启动图形界面:[root@Mauro ~]#  startx &

4.5 export命令

环境变量声明、赋值:

[root@Mauro ~]# export name=VALUE

或者

[root@Mauro ~]# name=VALUE

[root@Mauro ~]# export name

4.6 pwd命令

pwd – print name of current/working directory,显示当前路径

显示当前路径:[root@Mauro ~]# pwd

4.7 history命令

history工作原理:

  • 登陆shell时,会读取命令历史文件中记录下的命令:~/.bash_history
  • 登陆进shell后新执行的命令只会记录在内存的缓存中,且都有编号;这些命令会在用户退出时“追加”至命令历史文件中

history选项及使用:

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

[root@Mauro ~]# history -a

[root@Mauro ~]# cat ~/.bash_history

  • -d:删除命令历史中指定的命令
  • history -d OFFSET:OFFSET表示偏移量,即删除第几条记录

[root@Mauro ~]# history -d 574

[root@Mauro ~]# history

  • -c:清空命令历史
  • history -c:清空历史记录
  • history #:显示历史中最近的#条指令
    • 其中包括自己刚刚执行的命令

[root@Mauro ~]# history 3

566  ls /dev/console

567  cat /dev/console

568  history 3

4.7 shutdown、poweroff、reboot命令

系统管理类命令:

  • 关机:halt,poweroff,shutdown,init 0
    • CentOS 7:
      • [root@mauro ~]# systemctl poweroff
    • 除CentOS 7以外:
      • [root@mauro ~]# poweroff
    • 重启:reboot,shutdown,init 6
      • CentOS 7:
        • [root@mauro ~]# systemctl reboot
      • 除CentOS 7以外:
        • [root@mauro ~]# reboot

4.8 hwclock和date命令

Linux的两种时钟:

  • 系统时钟:由Linux内核通过CPU的工作频率进行的计时。
  • 硬件时钟:硬件时钟是存储在CMOS里的时钟,关机后该时钟依然运行,主板的电池为它供电。

date命令显示的是系统时钟;而clock命令显示的是硬件时钟。系统时钟和硬件时钟很有可能是不一样的。

hwclock:显示硬件时钟

  • -s,–hctosys:set the system time tothe hardware clock
    • 把系统时间设定成和硬件时间一样
  • -w,–systohc: set the hardware clock to the current system time
    • 把硬件时间设定成和系统时间一样

 

date:显示系统时钟

date [OPTION]…[+FORMAT]

FORMAT:格式符号

  • %D:按月计的日期,等于%m/%d/%y(月日年)
  • %F:完整日期格式,等价于 %Y-%m-%d(年月日)
  • %T:获取当前系统时间,等于%H:%M:%S(时分秒)

指定格式显示时间:把时间以特定的格式进行输出

  • [root@Mauro ~]# date +”%Y/%m/%d %H:%M:%S”

2017/07/07 06:45:43

  • [root@Mauro ~]$ date +%Y/%m/%d\ %H:%M:%S

2017/07/09 04:57:07

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/89483

(0)
MauroMauro
上一篇 2017-12-04
下一篇 2017-12-04

相关推荐

  • Linux终端类型

    适用对象:本文适用于初学Linux以及有志于学习Linux的朋友们。   一、         什么是终端 计算机体系中,终端主要是指与计算机连接,并可以与用户(人类)进行交互的设备。 二、      &nbs…

    Linux干货 2016-10-14
  • 系统基础之shell脚本编程详解及练习题

    shell脚本编程: 编程基础  程序:指令+数据 编程语言的分类:根据运行方式    编译运行:源代码–>编译器(编译)–>程序文件    解释运行:源代码–>运行时启动解释器,由解释器边解释边运行; 根据其编程过程中功能的实现是调用库还是调用外部的程序…

    Linux干货 2016-08-15
  • 第二周作业

    由于图片粘贴复杂,请看链接。 http://note.youdao.com/noteshare?id=a78c3236bbf77232fcc3e2624a38ae12

    Linux干货 2016-09-19
  • linux运维

    linux运维大纲,学习路线图

    Linux干货 2017-10-21
  • 文本查看、处理工具的应用及组、用户的相关操作

            一、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可      查看已经登录的用户用“who”命令,为了试验我用root多登录了几次。    &nb…

    2017-07-16
  • 第六周作业

    请详细总结vim编辑器的使用并完成以下练习题 1、复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的行的行首加#; %s@^[[:space:]]\+@#&@g 2、复制/boot/grub/grub.conf至/tmp目录中,删除/tmp/grub.conf文件中的行首的…

    Linux干货 2017-03-03

评论列表(1条)

  • 马哥教育
    马哥教育 2017-12-16 12:17

    继续努力~