Linux学习(第一周)

第一周学习内容:Linux概述、Linux的系统组成和简单命令。

第一周作业:

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

       根据冯诺依曼体系架构,计算机由五大部分组成,分别为运算器、控制器、存储器、输入设备和输出设备。运算器和控制器就是CPU,而存储器就是内存,至于输入输出设备就很多了,有硬盘、键盘、显示器等。CPU接收到程序发出的指令,从内存中按顺序提取数据通过运算器进行运算,运算完成后再存回内存,同时由控制器操控输入输出设备进行显示结果,接受输入等操作。

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

        Linux内核是源码,并不能直接在计算机上运行,需要通过编译器转换成机器能够识别的二进制格式才能跑起来,对很多普通用户而言这并不是一件容易的事,所以有各种组织机构和厂商来完成这件事,他们将源码打包按自己的理解编译好给用户,而用户只需安装就可以使用了,这就是Linux的发行版。

        从Linux诞生至今已有许许多多的发行版,现在比较主流的发行版有三家公司的产品:RedHat;Slackware;Debian。旗下又有不少分支,比如红帽的企业版RHEL、个人版Fedore Core、Slackware的S.U.S.E和open suse、Debian的ubuntu等,而其他的发行版还有Gentoo和ArchLinux等。其中红帽的企业版RHEL由于服务收费,有不少开源爱好者们在社区上自行提供服务,形成了我们现在用的最多的CentOS,现在CentOS已被红帽收购并且继续保持着免费的状态。各公司对Linux的理解不同,发行版之间也存在各种区别,其中最大的区别当属程序包管理器了,RedHat的rpm和yum;S.U.S.E的rpm和zypper;ubuntu的dpkg和apt-get;ArchLinux的packman等,程序包管理器是Linux系统的重要组成部分,这个的不同会导致程序的安装、卸载、查询等方式都不相同。

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

      (1)一切皆文件,从硬件到软件,从终端接口到各种程序,全都能可以以文件的形式展出出来,并在Linux系统中找得到对应的文件。

      (2)有众多功能单一的程序组成,一个程序只做一件事,并且要做好。一个程序可以完成一个简单功能,有众多程序衔接、配合起来就能完成复杂的操作。

      (3)尽量避免跟用户交互,易于以编程的方式实现自动化。在写脚本时发现,尽量减少让用户去输入某些指令或者文字,否则程序会变得复杂且冗余。

      (4)使用文本文件,保存配置信息。所有的配置,定义的变量都只在当前SHELL进程中有效,重启以后就没了,想让其永久保存就要去修改配置文件里的信息。

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

        一般命令格式为:COMMAND+[OPTION]...+[ARGUMENTS] 即命令+选项+操作对象的格式,其中打"[]"的表示可选。当发起一个命令,即请求内核将一个二进制程序运行起来成为一个进程,这是一个从静态转为动态的过程。

ifconfig:显示网络信息,主要包括ip地址、掩码、mtu等。一般情况下不加什么选项。

        image.png

echo:echo+[option]+“string”显示一行短语,非常有用经常会用到。

        image.png

比较重要的选项如下:-n:不换行;-e:让转义符生效。

        image.png

 特别注意:''表示强引用,引用内容不会被替代;""表示弱引用,引用内容会被替代。

        image.png

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

        image.png

startx:进入图形界面,在安装有图形界面的前提下。

export:显示所有环境变量,关于环境变量,在后续bash脚本学习中会学习到。

history:显示历史命令。按上键可以调出历史命令,而使用history命令可以一下子显示好多好多条历史命令。有各种环境变量可以调整,比如:HISTSIZE:保存历史条数,默认1000条;HISTLIFE:保存历史文件,默认.bash_history,只有在系统等出后本次键入的命令才会保存到这个文件中;HISTFILESIZE:.bash_history文件所保存历史条数,默认也是1000条。

        image.png

比较重要的选项如下:-c:清空历史列表;-d:从指定位置删除历史;-w:立即把历史条数保存到.bash_history中;-r:从.bash_history中读取历史命令列表。

shutdown:shutdown+[option]+[time]+[wall] 以一种安全的方式关闭系统,什么选项都不加这命令就没用了,大多数情况下会在shutdown后面加上now,表示立即关机。

        image.png

比较重要的选项如下:-r:重启;-c:取消,只有在用到计时器的情况下才能取消。[time]:时间参数的格式可以有很多种。首先,可以是 hh:mm 格式的绝对时间,其中 hh 指的是小时(一到二位数),mm 指的是分钟(二位数)。第二种是 +m 格式,其中 m 指的是等待的分钟数;[wall] :发送给所有用户的警告消息。

        image.png

poweroff:关电源的关机。poweroff在关闭计算机操作系统之后,最后还会发送ACPI指令,通知电源,最后切断电源供应。

reboot:重启。-f:强制重新开机,不调用shutdown指令的功能;-i:在重开机之前,先关闭所有网络界面;-n:重开机之前不检查是否有未结束的程序;-w:仅做测试,并不真正将系统重新开机。

hwclock:显示硬件时间;date:显示软件时间。两者要区分开,硬件时间指的是即使关机,依靠着主板上的电池也依然再走的时间,而开机后,设备软件时间先会同步硬件时间再自己开始走。

        image.png

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

       先通过type+命令查看这条命令是内嵌的还是外部的,内嵌命令可以通过help+命令的格式显示该命令的帮助,外部命令可以通过man+命令的格式显示。

       image.png

       image.png

有些命令的man手册很长,要分许多个章节,可以通过man+数字+命令的格式直接查看其它章节的帮助信息。标准的man手册主要分为8个章节,分别为:(1)用户命令;(2)系统调用;(3)C函数库调用;(4)设备文件和特殊文件;(5)配置文件及格式;(6)游戏;(7)杂项;(8)管理类命令。

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

      FHS所规定的必要目录如下:/bin:供所有用户使用的基本命令程序文件;/sbin:为了完成系统管理的工具程序文件;/boot:引导加载器的静态文件,启动时加载内核用;/dev:设备文件,当前主机所识别的硬件设备文件或特殊设备文件;/etc:主机特有的配置文件,其中目录下的opt、x11、sgml、xml等也是FHS所规定的必要文件;/home:用户的家目录文件;/lib和/lib64:存放库文件的目录,为/bin和/sbin内的程序服务;/media和/mnt:用来作为移动存世工具的临时挂载点;/opt:第三方附加应用软件的安装位置,有点类似Windows的programe files;/root:管理员的家目录文件;/srv:存放数据(服务数据),现已很少使用;/tmp:存放临时文件;/usr:不同操作系统可共享此目录,其中目录下的bin、sbin、share、lib等也是FHS所规定的必要文件。


猜你喜欢

转载自blog.51cto.com/13762416/2299475