; 第一周-N28 | Linux运维部落

第一周-N28

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

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

11

五大部件:

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

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

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

4.7history命令

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.7shutdown、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.8hwclock和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运维部落立场,如若转载,请注明出处:/89483

发表评论

电子邮件地址不会被公开。 必填项已用*标注

评论列表(1条)

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

    继续努力~

联系我们

400-080-6560

在线咨询:点击这里给我发消息

邮件:1660809109@qq.com

工作时间:周一至周五,9:30-18:30,节假日同时也值班

友情链接:万达娱乐直属  万达开户  万达娱乐注册  guoqibee.com  万达登录  万达主管QQ  万达直属  万达娱乐主管QQ  万达招商