1、描述计算机的组成及其功能。
答:
计算机系统是由五大部分组成:运算器、控制器、存储器、输入设备、输出设备
运算器(Datapath):运算器的功能是对数据进行各种算术去处和逻辑运算,即对数据进行加工处理。
控制器(Control):控制器是整个计算机的中枢神经,其功能是对程序规定的控制信息进行解释,根据其要求进行控制,调度程序、数据、地址,协调计算机各部分工作及内存与外设的访问等。
存储器(Memory):存储器的功能是存储程序、数据和各种信号、命令等信息,并在需要时提供这些信息。
输入设备(Input system):输入设备是计算机的重要组成部分,输入设备与输出设备合你为外部设备,简称外设,输入设备的作用是将程序、原始数据、文字、字符、控制命令或现场采集的数据等信息输入到计算机。常见的输入设备有键盘、鼠标器、光电输入机、磁带机、磁盘机、光盘机等。
输出设备(Output system):输出设备与输入设备同样是计算机的重要组成部分,它把外算机的中间结果或最后结果、机内的各种数据符号及文字或各种控制信号等信息输出出来。微机常用的输出设备有显示终端CRT、打印机、激光印字机、绘图仪及磁带、光盘机等。
附:运算器和控制器合称为:中央处理器CPU(Center Processin Unit)
2、按系列罗列Linux的发行版,并描述不同发行版之间的联系与区别。
答:
Linux的发行版有数百种之多,其中最主流的三大发行版是:Slackware、Debian、RedHat。
Linux的发行版分为两类,一类是商业公司维护发行的版本,如下面介绍的Slackware和RedHat。一类是社区组织维护的发行版,以Debian为代表。
Slackware 存活最久的Linux发行版,以简洁、安全和稳定所著称
SUSE 基于Slackware的二次发行版在欧州最流行的版本
SLES SUSE Linux Enterprise Server,三次发行版suse企业级
openSUSE 基于suse的衍生发行版,界面华丽
Debian 自发维护最接近于原汁原味的Linux,对使用者要求较高
Ubuntu 基于Debian的二次发行版,程序员偏爱
Mint 基于Ubuntu的衍生发行版
RedHat
rhel ReadHat Enterprise Linux 企业版
由于在企业中用,所以稳定性很高。发行时间每18个月一个新版本,所用的软件都是fedora上测试过的,所以很稳定。
CentOS
CentOS是Community Enterprise Operating System的缩写。是RHEL源代码再编译的产品,因此和RHEL一样,比其他发行版,其稳定性更好。企业中用得最多的系统。
Fedora
redhat个人版到9.0之后就不出了,2003年前后送给了fedora社区,同时也用于测试新的软件,所以发行周期很快一般为6个月更新一次。
3、描述Linux的哲学思想,并按照自己的理解对其进行解释。
答:
(1)、一切皆文件:
把几乎所有资源统统抽象为文件形式,包括硬件设备,基础通信接口等,
(2)、由众多功能单一的程序组成:一个程序只做一件事,并且做好
目标:组合小程序完成复杂任务
(3)、尽量避免跟用户交互:
目标:以脚本的方式实现自动化任务:(新视频里:实现脚本编程,以自动完成某些功能)
(4)、使用纯文本文件保存配置信息:
目标:是一款使用文本编程器即能完成系统配置工作
4、说明Linux系统上命令的使用格式详细介绍ifconfig、echo、tty、startx、export、pwd、history、shutdown、poweroff、reboot、hwclock、date命令的使用并配合相应的示例来阐述。
答:
命令格式:
COMMAND [OPTIONS ...] [ARGUMENT...]
选项:用于启用或关闭命令的某个或某些功能;
短选项:-c,例如:-l, -h;
多个短选项命令可合并使用:例如-l -h,可写作-lh;
长选项:--word,例如:--long,--human-readable
多个长选项不能合并使用
参数:命令的作用对象
向命令提供数据;
注意:多选项,以及多参数和命令之间都应该使用空白字符分隔
取消命令执行Ctrl+c
以下示例均在C7.2下进行
(1)ifconfig
功能:用于显示或设置网络设备
格式:ifconfig [-v] interface [aftype] options | address ...
注:此操作使用C7.2,如果系统是最小化安装,无法使用ifconfig命令(在C5或C6上最小安装自带),需要安装net-tools这个工具包。
示例:
查看网络设备信息
1
2
3
|
[zdw@note1 ~]$
ifconfig
eno16777736: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
#eno16777736是网卡名称
inet 10.3.20.71 netmask 255.255.255.0 broadcast 10.3.20.255
|
启动关闭指定网卡
1
2
|
[root@note1 ~]
# ifconfig eno16777736 up #C7网卡是eno开头,C5和C6是eth开头,up是启动
[root@note1 ~]
# ifconfig eno16777736 down #down是关闭
|
临时配置IP地址
1
|
[root@note1 ~]
# ifconfig eno16777736 10.3.20.82 netmask 255.255.255.0 #临时生效,重启网卡后失效
|
启用和关闭ARP协议
1
2
|
[root@note1 ~]
# ifconfig eno16777736 arp
[root@note1 ~]
# ifconfig eno16777736 -arp
|
(2)echo
功能:显示一行文本
格式:echo [SHORT-OPTION]... [STRING]...
参数:-n:不进行换行
-e:让转义符生效
\n:换行且光标移至行首
\t:制表符
示例:
显示内部环境变量
1
2
3
4
|
[root@note1 ~]
# echo $PATH #查找内部命令,自左而右逐个搜索目录下的文件名
/usr/local/sbin
:
/usr/local/bin
:
/usr/sbin
:
/usr/bin
:
/root/bin
[root@note1 ~]
# echo $SHELL #查看使用的shell类型
/bin/bash
|
显示内容
1
2
3
4
5
6
|
[root@note1 ~]
# echo "hello world" #显示hello world
hello world
[root@note1 ~]
# echo -n "hello world" #不换行显示
hello world[root@note1 ~]
# echo -e "hello\n world" #让\n换行转义符生效
hello
world
|
(3)tty
功能:显示终端连接标准输入设备的文件名称
示例:
1
2
|
[root@note1 ~]
# tty #直接输入tty就能显示出当前的终端
/dev/pts/0
|
(4)startxp
功能:启动GUI
示例:
1
|
[root@note1 ~]
# startx & #如果安装了图形界面,会进入。没有则提示未找到
|
(5)exprot
功能:设置或显示环境变量
格式:export [-fn] [名称[=值] ...] 或 export -p
选项:
-f 代表变量为函数名
-n 删除指定的变量。变量实际上并未删除,只是不会输出到后续指令的执行环境中
-p 列出所有的shell赋予程序的环境变量
示例:
1
2
3
|
[root@note1 ~]
# export -p #列出当前的环境变量
[root@note1 ~]
# export zdw=10 #定义环境变量zdw=10
[root@note1 ~]
# export -n zdw #删除环境变量zdw
|
(6)pwd
功能:显示目前所在的工作目录的绝对路径名称
示例:
1
2
|
[root@note1 ~]
# pwd #显示当前绝对路径
/root
|
(7)history
功能:显示或操纵历史列表
格式:history [-c] [-d 偏移量] [n] 或 history -anrw [文件名] 或 history -ps 参数 [参数...]
命令用法:
history [-c] [-d 偏移量] [n]
或history -anrw [文件名]
或history -ps 参数 [参数...]
选项:
-a:追加本次会话新执行的命令历史列表至历史文件中
-c:清空命令历史;
-d:删除指定命令历史
-r:从文件读取命令历史至历史列表中
-w:把历史列表中的命令追加至历史文件中
history #:显示最近的#条命令
调用命令历史列表中的命令:
!#:再一次执行历史列表中的第#条命令
!!:再一次执行上一条命令:
!STRING:再一次执行命令历史列表中最近一个以STRING开头的命令
调用上一条命令的最后一个参数;
快捷键:ESC,.
字符串:!$
控制命令历史记录的方式:
环境变量:HISTCONTROL
~]# echo $HISTCONTROL
ignoredups #忽略重复的命令;
ignorespace: 忽略以空格开头的命令
ignoreboth: 以上两者同时生效
示例:
1
2
3
4
|
[root@note1 ~]
# history
[root@note1 ~]
# history -c #清空历史列表,再次执行history命令,没有了之前的命令记录
[root@note1 ~]
# history -r #读取命令历史至历史列表中,再次执行,命令记录全部显示出来了
[root@note1 ~]
# history -d 60 #删除第60条历史记录
|
(8)shutdown
功能:关闭或重启计算机
格式:shutdown [OPTIONS...] [TIME] [WALL...]
选项
-r,--reboot 重启计算机
-h,--poweroff 关机
-k 只是送出信息给所有用户,但不会实际关机
-c 取消之前的关机
示例:
1
2
3
4
|
[root@note1 ~]
# shutdown -r now #立即重启计算机
[root@note1 ~]
# shutdown -h 21:00 #晚上9点关机
[root@note1 ~]
# shutdown -r +10 wall "hi" #10钟以后重启,同时提示所有连接的用户hi
[root@note1 ~]
# shutdown -c #取消之前的关机或重启操作
|
(9)poweroff
功能:关闭计算机并关闭电源
格式:poweroff [OPTIONS...]
选项:
-w : 并不会真的重启,只是把记录写到/var/log/wtmp文件里
-d : 不把记录写到/var/log/wtmp文件里
-f : 强制重开机,不调用shutdown这个指令
示例
1
|
[root@note1 ~]
# poweroff #关闭计算机
|
(10)reboot
功能:重启计算机
选项:
-w : 并不会真的重启,只是把记录写到/var/log/wtmp文件里
-d : 不把记录写到/var/log/wtmp文件里
-f : 强制重开机,不调用shutdown这个指令
示例:
1
2
|
[root@note1 ~]
# reboot -w #不重启,把记录写到wtmp里
[root@note1 ~]
# reboot #重启
|
(11)hwclock
选项:hwclock [function] [option...]
hwclock,clock:这二个命令一样
功能:显示或设定硬件时钟
选项:
-s, --hctosys:以硬件为准,把系统调整为与硬件时间相同
-w, --systohc:以系统为准,把硬件时间调整为与系统时间相同
示例:
1
2
|
[root@note1 ~]
# hwclock -w #以系统为准,来设置硬件时钟
[root@note1 ~]
# hwclock -s #以硬件为准,来设置系统时钟
|
(12)date
功能:显示或设定系统的日期与时间
格式:date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]
MM:月份
DD:几号
hh:小时
mm:分钟
YY:两位年份
CCYY:四位年份
.ss:秒
常用时间格式:%F 显示日期 完整日期格式,等价于 %Y-%m-%d
%T 显示时间 直接显示时间 (24 小时制)
示例:
1
2
3
4
|
[root@note1 ~]
# date +%F-%T #完整显示年月日和时间
2016-08-07-04:09:51
[root@note1 ~]
# date 0816202616.30 #设定时间(年使用2位年也可使用4位)
2016年 08月 16日 星期二 20:26:30 CST
|
5、如何在Linux系统上获取命令的帮助信息请详细列出并描述man文档的章节是如何划分的。
答:
1、内部命令获取帮助:
# help COMMAND
使用type cd查询是否为内建命令,如需获取cd的帮助信息,使用help cd,就能得到cd大体的使用格式。
2、外部命令获取帮助:
(1)使用命令查看
# COMMAND --help
# COMMAND -h
(2)使用手册
# man COMMAND
(3)信息面
# info COMMAND
(4)程序自身的帮助文档
README
INSTALL
ChangeLog
(5)程序官方文档
官方站点:Documentaton
(6)发行版的官方文档
(7)Google
手册页存放位置:/usr/share/man
man文档的章节划分:man1...man8
man1:用户命令
man2:系统调用
man3:C库调用
man4:设备文件及特殊文件
man5: 配置文件格式
man6:游戏
man7:杂项
man8: 管理类命令
注意:有些命令在不止一个章节中存在帮助手册,使用whatis COMMAND可查询到,在哪些章节有手册,直接使用man COMMAND会查看自上至下第1章节的手册,要查看指定章节中手册使用:man # COMMAND。
6、请罗列Linux发行版的基础目录名称命名法则及功用规定。
答:
/boot:引导文件存放目录,内核文件(vmlinux)、引导加载器(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 date;
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 Liunx,selinux相关的安全策略等信息的存储位置;
本文转自cix123 51CTO博客,原文链接:http://blog.51cto.com/zhaodongwei/1834805,如需转载请自行联系原作者