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

按照冯·诺依曼体系结构可分为:运算器、存储器、控制器、输入设备、输出设备。

  • 存储器

    存放各种数据、指令
  • 运算器

    主要运行算数运算和逻辑运算,并将中间结果暂存到运算器中
  • 控制器

    主要用来控制和指挥程序和数据的输入运行,以及处理运算结果
  • 输入设备

    用来将人们熟悉的信息形式转换为机器能够识别的信息形式,常见的有键盘,鼠标等
  • 输出设备

    将机器运算结果转换为人们熟悉的信息形式,如打印机输出,显示器输出等

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

Linux发行版主要有三个分支:Debian、Slackware、RedHat。

  • Debian

Ubuntu: 基于Debian开发的开源Linux操作系统,主要针对桌面和服务器; Linux Mint: 基于Debian和Ubuntu的Linux发行版, 致力于使桌面系统对个人用户每天的工作更易用,更高效, 其目标是提供一种更完整的即刻可用体验。

  • Slackware

suse: 基于Slackware二次开发的一款Linux,主要用于商业桌面、服务器。 SLES: 企业服务器操作系统,是唯一能与微软操作系统兼容的Linux操作系统。 OpenSUSE: 由suse发展而来,旨在推进 Linux 的广泛使用,主要用于桌面环境,用户界面非常华丽,而且性能良好。

  • Redhat

rhel: Red Hat公司发布的面向企业用户的Linux操作系统。早起版本主要用于桌面环境,免费;自2004年4月30日,Red Hat公司正式停止对Red Hat 9.0版本的支持,标志着Red Hat Linux的免费时代正式结束。从此Red Hat公司不再开发桌面版的Linux发行包,而将全部力量集中在服务器版的开发上,也就是Red Hat Enterprise Linux。每十八个月发行一个新版本,内核相对较低,力求稳定,不求最新。 Fedora: 基于Red Hat Linux,在Red Hat Linux终止发行后,红帽公司计划以Fedora来取代Red Hat Linux在个人领域的应用,而另外发行的Red Hat Enterprise Linux取代Red Hat Linux在商业应用的领域。Fedora的功能对于用户而言,它是一套功能完备、更新快速的免费操作系统,而对赞助者Red Hat公司而言,它是许多新技术的测试平台,被认为可用的技术最终会加入到Red Hat Enterprise Linux中。Fedora大约每六个月发布新版本。 CentOS: 基于Red Hat Linux 提供的可自由使用源代码的企业级Linux发行版本。另外由于其是RHEL源代码再编译的产物,而且在RHEL的基础上修正了不少已知的 Bug ,相对于其他 Linux 发行版,其稳定性值得信赖。

  • 其它发行版本

Gentoo: 基于Linux的自由操作系统,它能为几乎任何应用程序或需求自动地作出优化和定制。Gentoo能成为理想的安全服务器、开发工作站、专业桌面、游戏系统、嵌入式解决方案或者别的东西--你想让它成为什么,它就可以成为什么。 Arch Linux: 以轻量简洁为设计理念的Linux发行版。

不同发行版之间的联系与区别

  • 联系

所有的发行版都使用linux内核;都需要遵循GNU的GPL协定;所有的发行版都有自己的版本号,版本格式约定基本一样(主版本号.次版本号.发行号或修正号)。

  • 区别

发行版的本质区别,在于集成了不同版本的内核、库、程序的组合。不同发行版几乎采用了不同的包管理器(SLES、Fedora、openSUSE、centos、RHEL使用rmp包管理系统,包文件以rpm为扩展名;Ubuntu系列,Debian系列使用基于DPKG包管理系统,包文件以deb为扩展名。)

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

  • 一切皆文件,把几乎所有资源统统抽象为文件形式,包括硬件资源。

  • 大多都是小型、单一用途的程序,当处理复杂任务时,把小程序组合起来

  • 避免跟用户界面交互

  • 数据配置保存在文本中,相对于Windows系统的注册表概念,这点从某种程度上保证了Linux系统的稳定性。

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

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

  • COMMAND

命令的主体

  • OPTIONS

选项,用于启用或者关闭命令的某个或某些功能。分为长选项和短选项。

  • ARGUMENTS

命令的作用对象,如文件名,用户名等

ifconfig命令用法

用于配置和显示Linux内核中网络接口的网络参数,常见用法示例如下: ifconfig #查看激活状态下的网络设备信息 ifconfig eth0 up/down #打开/关闭接口 ifconfig eth0 192.168.1.100 netmask 255.255.255.0 #为网卡配置地址 ifconfig eth0 mtu 1500 #设置eth0能通过的数据包大小为1500

echo命令用法

用于在shell中打印shell变量的值,或者直接输出指定的字符串,常见用法示例如下:

选项:
  • -E 不启用转义字符\ 解释功能(默认为此选项)
  • -e 启用 \ 字符的解释功能
  • -n 不自动换行

启用命令选项-e,若字符串中出现以下字符,则特别加以处理,而不会将它当成一般文字输出 \a 发出警告声 \b 退格键 \c 最后不加上换行符号 \n 换行且光标移至行首 \r 回车,即光标移至行首,但不换行 \t 插入tab \ 插入\字符 \0nnn 插入nnn(八进制)所代表的ASCⅡ字符 \xHH 插入HH(十六进制)所代表ASCⅡ字符

显示变量

  • ' ' 强引用 ,无法识别命令,变量
  • " "弱引用 ,无法识别命令,可识别变量
  • ``弱引用 ,可识别命令,变量,和$( )等价

image.png

括号扩展

image.png

tty

显示当前终端

startx

用来启动X Window

export

可新增,修改或删除环境变量,供后续执行的程序使用。操作后仅该次登陆操作有效。

pwd

查看当前所在目录

history

  • 用法:

history [-c] [-d offset] [n] history -anrw [filename] history -ps arg [arg...] -c: 清空命令历史 -d offset: 删除历史中指定的第offset个命令 n: 显示最近的n条历史 -a: 追加本次会话新执行的命令历史列表至历史文件 -r: 读历史文件附加到历史列表 -w: 保存历史列表到指定的历史文件 -n: 读历史文件中未读过的行到历史列表 -p: 展开历史参数成多行,但不存在历史列表中 -s: 展开历史参数成一行,附加在历史列表后

  • 相关环境变量

HISTSIZE:命令历史记录的条数 HISTFILE:指定历史文件,默认为~/.bash_history HISTFILESIZE:命令历史文件记录历史的条数 HISTTIMEFORMAT=“%F %T “ 显示时间 HISTIGNORE=“str1:str2*:… “ 忽略str1命令,str2开头的历史

  • 控制命令历史的记录方式:

环境变量:HISTCONTROL ignoredups 默认,忽略重复的命令,连续且相同为“重复” ignorespace 忽略所有以空白开头的命令 ignoreboth 相当于ignoredups, ignorespace的组合 erasedups 删除重复命令 export 变量名="值“ 存放在 /etc/profile 或 ~/.bash_profile

poweroff

关闭电源

reboot

重启

shutdown

关机,加-h等于halt,加-r等于reboot

hwclock

硬件时钟 -s, --hctosys 以硬件时钟为准,校正系统时钟 -w, --systohc 以系统时钟为准,校正硬件时钟

date

系统时钟 image.png

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

  • help COMMAND:适用于内部命令

  • COMMAND –help:适用于外部命令

  • man COMMAND:/usr/share/man

man手册是压缩格式的文件,有章节之分; man # COMMAND (#表示章节号) (1):用户命令; (2):系统调用; (3):C库调用; (4):设备文件及特殊文件; (5):文件格式;(配置文件格式) (6):游戏使用帮助; (7):杂项; (8):管理工具及守护进行;

  • info COMMAND: 获取命令的在线文档;

  • 很多应用程序会自带帮助文档:/usr/share/doc/APP-VERSION

README:程序的相关的信息; INSTALL: 安装帮助; CHANGES:版本迭代时的改动信息;

  • 主流发行版官方文档:http://www.redhat.com/doc

  • 程序官方的文档中: 官方站点上的“Document”

  • 搜索引擎:Google

六:请罗列Linux发行版的基础目录名称命名法则及共用规定

  • /boot:

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

  • /bin:

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

  • /sbin:

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

  • ###/lib: 启动时程序依赖的基本共享库文件以及内核模块文件 (/lib/modules)
  • /lib64:

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

  • /etc:

配置文件目录

  • /home/USERNAME:

普通用户家目录

  • /root:

管理员的家目录

  • /media:

便携式移动设备挂载点

  • /mnt:

临时文件系统挂载点

  • /dev:

设备文件及特殊文件存储位置 b: block device,随机访问 c: character device,线性访问

  • /opt:

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

  • /srv:

系统上运行的服务用到的数据

  • /tmp:

临时文件存储位置

  • /usr: universal shared, read-only data

bin: 保证系统拥有完整功能而提供的应用程序 sbin: lib:32位使用 lib64:只存在64位系统 include: C程序的头文件(header files) share:结构化独立的数据,例如doc, man等 local:第三方应用程序的安装位置

  • /var:

variable data files cache: 应用程序缓存数据目录 lib: 应用程序状态信息数据; local:专用于为/usr/local下的应用程序存储可变数据; lock: 锁文件 log: 日志目录及文件 ; opt: 专用于为/opt下的应用程序存储可变数据; run: 运行中的进程相关数据,通常用于存储进程pid文件 ; spool: 应用程序数据池 tmp: 保存系统两次重启之间产生的临时数据;

  • /proc:

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

  • /sys:

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

  • /selinux:

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