1、描述计算机的组成及其功能。
计算机核心主要可分为三大类:中央处理器cpu,存储器,输入输出设备。其中中央处理器cpu(Central Processing Unit)包括算术逻辑单元和控制单元,
算术逻辑单元主要负责程序运算与逻辑判断,控制单元主要协调各组件之间的工作。存储设备包括内存,硬盘设备,光盘和U盘。输入输出设备包括键盘,
鼠标,显示器等。由上,我们知道了计算机的组成部分,那么他们是如何工作的,又实现了怎样的功能呢,下面我来一一到来。
下面我来做一个不恰当的比喻,假如把咱们的计算机比作是一个严密的蚂蚁王国,那么cpu中的控制单元作为蚁后控制着整个王国,蚁后将粮食库(内存)中的
美食(数据)通过高速公路(总线)传输到工蚁(算术逻辑单元)处。工蚁不愧是女王的护卫,忠心耿耿的执行者女王的每一项任务。美食通过工蚁的加工处理,
又通过高速公路运回了粮食库,最后粮食就被分发到各处小兵(所有的输入输出设备)手中。小兵们开始享用自己的美食,待准备完毕后,就要开始一项伟大的工作了。
哈哈,小蚂蚁的故事先讲到这里,下面我再来介绍一下计算机其他部件,除了上面介绍的cpu,内存,硬盘,键盘,鼠标,显示器外,咱们的计算机还包括主板,显卡和电源。
那么我先来说说主板吧,主板就像是一个伟大的蚂蚁王国,由藏兵洞(pcl,usb插槽),高速公路(总线,南北桥),蚁后皇宫(cpu插槽)粮食库(内存插槽,硬盘接口),
供电室(电源接口)组成,正因为有了这样一个平台,能使蚁后的命令到达王国各处,从此一个伟大的王国诞生了。那么一个王国老是闭关锁国是不成的,历史证明,闭关锁国终究是
坐井观天,王国虽小,却也需要通过外交将王国的土特产展示出去,于是独立显卡诞生了,世界也因此了解到在东方有一个强大的王国,在这个王国,召唤计算机七大部件可出现神龙,
帮助大家完成非常多的愿望。哈哈,说到这,大家可以发现,我们已经了解了七颗龙珠的六颗在哪了,最后一颗你出来吧!没错,就是他,他是整个王国的关键,没有它,王国将陷入瘫痪
他就是电(电源)。电源虽小,却发挥着巨大的作用,龙珠七颗,缺一不可。七颗集齐,召唤神龙!
2、按系列罗列Linux的发行版,并描述不同发行版之间的联系与区别。
linux的发行版:
slackware系列:
suse
二次发行:opensuse
debian系列:
ubuntu
mintLinux
redhat:
rhel:redhat enterprise linux
每18个月发行
CentOS:兼容rhel的格式,是rhel的社区版本
fedora:每六个月发行一个新版本,也是社区版,是新开发软件的测试地
ArchLinux:独立的版本
Gentoo:独立的版本
LFS:Linux From scratch
根据书本自行发行版本
Android:kernel+busybox+Java虚拟机
以上是马哥的笔记记载,同时我cp了一张详细图,见链接
http://futurist.se/gldt/wp-content/uploads/12.10/gldt1210.png
3、描述Linux的哲学思想,并按照自己的理解对其进行解释性描述。
1.一切皆文件,所有的设备,资源,程序都是以文件形式存在
2.Linux主要由短小,且目的单一的程序组成(所以一个命令一般只干一件事)
3.将多个短小的程序串联起来可以完成复杂的任务
4.尽量避免捕获用户接口(尽量避免跟用户进行接触,从发起-->回车,全自动,不需要用户再操作)
5.通过文件保存软件的配置信息(只需要一个简单的文本编辑器就可以操作整个系统)
以上是马哥的笔记学习,我自己的想法是linux社区开源的精神是知识无国界,知识是全世界人民的宝贵财富。同时开源精神鼓舞我们热心的教导新手,大家一起进步。
4、说明Linux系统上命令的使用格式;详细介绍ifconfig、echo、tty、startx、export、pwd、history、shutdown、poweroff、reboot、hwclock、date命令的使用,并配合相应的示例来阐述。
ifconfig - 配置网络接口
ifconfig [接口]
ifconfig 接口 [aftype] options | address ...
常用的选项及参数
ifconfig :
显示所有的网卡配置信息
ifconfig -a:
显示所有的配置网络网卡
ifconfig eth#:
显示#网卡的配置信息
网卡eth#配置文件:
目录:/etc/sysconfig/network-scripts/ifcfg-eth#
DEVICE=: 设备名称,一般为eth#
BOOTPROTO={static|none|dhcp|bootp}: 使用静态地址:static或none;dhcp表示使用DHCP服务器获取地址;
IPADDR=: IPv4地址
NETMASK=:子网掩码
GATEWAY=:设定网关;
ONBOOT=:是否开机自启
HWADDR=: 硬件地址,要与硬件中的地址保持一致;可省;
USERCTL={yes|no}: 是否允许普通用户控制此接口;
PEERDNS={yes|no}: 是否在BOOTPROTO为dhcp时接受由DHCP服务器指定
DNS配置文件:
目录:/etc/resolv.conf
domain DHCP
search DHCP HOST
nameserver 第一个DNS地址
nameserver 第二个DNS地址
setup管理器:可以通过setup查看或修改网卡配置信息
ifup/ifdown eth#:启动或停止网卡
echo:回显命令
-n:禁止自动添加换行符号
-e:允许使用转义符
\n:换行
\t:制表符
echo "$VAR_NAME":变量会替换,双引号表弱引用
echo ‘$VAR_NAME‘:变量不会替换,强引用
tty:显示当前登录的终端
startx:在终端上启动x会话
export:
设置或显示环境变量
export [-fnp][变量名称]=[变量设置值]
-f:代表变量名称为函数名称
-n:不输出此变量到后续环境中
-p:列出所有的shell赋予程序的环境变量
pwd:显示当前文件路径
路径:
绝对路径:从根目录起始的路径;
相对路径:从当前位置起始的路径;
当前位置的表示方式:
1. ./:
2.省略上述符号
3. ..表示当前目录的上一级目录
history:管理命令历史:
登录shell时,会读取命令历史文件中记录下的命令:~/.bash_history
登录进shell后新执行的命令只会记录在缓存中:这些新执行的命令会在用户退出时“追加”至命令文件中
-a 手动追加本次会话新执行的命令历史列表到内存中
-d 删除命令 历史中指定的命令:使用编号指定
-c 清空命令历史
快捷操作:
!#:调用历史中第#条命令:
!string:调用历史中最近一个以string开头的命令
!!:重复上一条命令
环境变量:
HISTSIZE:命令历史记录的条数
HISTFILE:~/.bash_history:
HISTFILESIZE:命令历史文件记录历史的条数
调用上一条命令的最后一个参数
!$:
esc,.:
alt+.:
控制命令历史的记录方式:
环境变量:HISTCONTROL
ignoredups:忽略重复的命令:连续且相同的命令
ignorespace:忽略所有以空白开头的命令
ignoreboth:ignoredups ignorespace:
修改环境变量值的方式:export 变量名=" 值 "
变量赋值:把赋值符号后面的数据存储于变量名指向的内存空间
shutdown:
1.可以自由选择关机模式
2.可以设置关机时间
3.可以自定义推送关机消息
4.可以发出警告消息
5.可以选择是否检查文件系统
shutdown [OPTION]... TIME [MESSAGE]
-r:重启
-h:关机
-c:取消关机或重启操作
TIME:
now:立刻
+m:相对时间表示,从命令提交开始多久之后:
hh:mm:绝对时间表示,指明具体时间
poweroff:关闭电源
poweroff -f
reboot:重启
-f:强制,不调用shutdown
-p:切断电源
hwclock:显示硬件时钟
-s --hctosys 跟随系统时间
-w --systohc 跟随硬件时钟
date:
date [OPTION]... [+FORMAT] 显示
date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]] 设置
MM 月份
DD 几号
hh 小时
mm 分钟
YY 两位年份
CCYY 四位年份
.ss 秒钟
5、如何在Linux系统上获取命令的帮助信息,请详细列出,并描述man文档的章节是如何划分的。
内部命令:
# help COMMAND
外部命令:都有一个可执行程序,位于文件系统内 使用which,whereis
shell程序搜寻可执行程序文件的路径定义在PATH环境变量中
echo $PATH
内部帮助:hash:shell搜寻到的外部命令的路径结果会缓存至KV(key-value)存储中
hash:hits为命中值
-d 删除单条缓存
-r 删除全部缓存
外部帮助:
(1)# COMMAND --help
# COMMAND -h
(2)使用手册(manual)
# man COMMAND
(3)信息页 支持超链接
# info COMMAND
(4)程序自身的帮助文档
README
INSTALL
ChangeLog
(5)程序官方文档
官方站点:Documentation
(6)发行版的官方文档
(7)Google
man:手册页存放:
/usr/share/man man1-8
man1 :用户命令
man2 :系统调用
man3 :c库调用
man4 :设备文件及特殊文件
man5 :配置文件格式
man6 :游戏
man7 :杂项
man8 :管理类的命令
注意:有些关键在不止一个章节中存在帮助手册:
要查看指定章节中的手册:man # COMMAND
man命令的配置文件: /etc/man.config
MANPATH /PATH/TO/SOMEWHERE:指明新的手册文件搜索位置
man -M /PATH/TO/SOMEWHERE COMMAND :到指定位置下搜索COMMAND命令的手册页并显示之;
帮助手册中的段落说明:
NAME 名字
SYNOPSIS 使用简要帮助
DESCRIPTION 详细功能
OPTIONS 专用选项
EXAMPLES 使用事例
AUTHOR 作者
REPORTING BUGS 提交bug的联系人
SEE ALSO 参考方式
SYNOPSIS:
[]:可选内容
<>:必选内容
a|b:二选一
...:同一内容出现多次
{}:辅助符号
man命令的操作方法:
Space,carl+V 或+f 或+F 向下翻页
b carl+B 向文件首部翻屏
d carl+D 向文件尾部翻半屏
u carl+U 向文件首部翻半屏
Enter 或carl+N 或e 或carl+E 或j 或carl+]:向文件尾部翻一行
y或carl+Y 或carl+P 或k 或carl+K :向文件首部翻一行
q 退出
#;跳转至第#行
1G:回到文件首部
G:回到文件尾部
文本搜索:
/KEYWORD
以KEYWORD指定的字符串为关键字,从当前位置向文件尾部搜索;默认不区分大小写
n:下一个
N:上一个
?KEYWORD
以KEYWORD指定的字符串为关键字,从当前位置向文件首部搜索;默认不区分大小写
n:跟搜索命令同方向下一个
N:跟搜索命令反方向上一个
其他帮助文档:
info
info command
程序自身的帮助文档
/usr/share/doc/COMMAND-VERSION
程序官方文档
发行版的官方文档
http://www.redhat.com/docs
www.slideshare.net
6、请罗列Linux发行版的基础目录名称命名法则及功用规定
根文件系统:(rootfs):
root filesystem
LSB FHS:(filesystem Heirache Standard)
/etc /usr /var /root /home /dev
/boot:引导文件存放目录,内核文件(vmlinuz),引导加载器(bootloader,grub)都存放于此目录
/bin:供所有用户使用的基本命令:不能关联至独立分区。0S启动即会用到的程序:
/sbin:管理类的基本命令:不能关联至独立分区。0S启动即会用到的程序:
/lib:基本共享库文件,以及内核模块文件(/lib/modules)
/lib64:专用于x86_64系统上的辅助共享库文件存放位置:
/etc:配置文件目录(纯文本文件):
/home/USERNAME:普通用户的家目录:
/root:管理员用户的家目录:
/media:挂载便携式移动设备(光盘,U盘)
cdrom
usb
/mnt:挂载临时设备
/dev:设备文件特殊文件目录
b:block device 随机访问
c:character device 线性访问
/opt:第三方应用程序存放目录
/srv:系统上运行的服务用到的中间数据
/tmp:临时文件存放目录
非系统开机要使用的目录
/usr:universal shared readable:read-only data:
bin:保证系统拥有完整功能:
sbin:保证系统拥有完整功能:
lib:
lib64:专用于x86_64系统上的辅助共享库文件存放位置:
incloud:c语言开发调用的头文件(header fils):
share:结构化的独立的数据, doc man
local:本地层级结构,第三方应用程序的安装位置
bin,sbin,lib,etc,share
/var:variable data files 可变数据文件存放
cache:应用程序缓存数据目录:
lib:应用程序状态信息存放目录:
local:专用于为/usr/local下的应用程序存储可变数据
lock:锁文件
log:日志目录及文件
opt:专用于为/usr/local下的应用程序存储第三方
run:与运行中程序相关的数据:通常用于存储进程的pid文件
spool:应用程序数据池
tmp:系统重启临时文件存放目录
mail:邮箱
/proc:用于输出内核与进程相关的虚拟文件信息:
/sys:输出当前系统上硬件设备相关信息的虚拟文件信息:
/misc:备用杂项文件
/lost+found:ext文件系统产生的文件碎片
/selinux:security enhanced Linux:安全增强机制