1、描述计算机的组成及其功能。
从基本结构上来讲,计算机可以分为五大部分: 运算器、存储器、控制器、输入设备、输出设备。
- 运算器的功能
- 实现算术运算和逻辑运算(与控制器组成CPU)。
- 存储器的功能
- 将输入设备接收到的信息以二进制的数据形式存到存储器中。
- 控制器的功能
- 将指令逐条从存储器中取出,经译码分析后向全机发出相应的操作控 制信号作用于其他部件,使各部件有条不紊地协调工作(与运算器组成CPU)。
- 输入设备的功能
- 将数据、程序、文字符号、图象、声音等信息输送到计算机中。
- 输出设备的功能
- 将计算机的运算结果或者中间结果打印或显示出来。
参考文献:http://blog.csdn.net/py_shell/article/details/52538859
2、按系列罗列Linux的发行版,并描述不同发行版之间的联系与区别。
1、Debian:三大主流发行版之一,以社区方式运作,没有商业公司支持
knopix是基于Debian的二次发行
ubuntu是基于Debian的二次发行
knUbuntu是基于ubuntu的二次发行
nUbuntu是基于ubuntu的二次发行
Mint是基于ubuntu的二次发行
2、slackware:三大主流发行版之一,
slackware是SLS的一个分支
slackware中有一个著名的子分支-S.U.S.E。
S.U.S.E企业版分支-SLES。
S.U.S.E个人版分支-openSUSE。
3、redhat:三大主流发行版之一,
redhat个人版分支-Fedora Core
redhat企业版分支-Red Hat Enterprise
CentOS是基于Red Hat Enterprise版的二次发行
Oracle Enterprise是基于Red Hat Enterprise版的二次发行
4、Gentoo:Gentoo是基于enoch二次发行版
5、ArchLinux:是Linux新贵
Linux发行版,就是在内核的基础上,加入用户界面,各种软件的支持 所以发现版很多,因为各个公司可以配置使用不同的用户界面,和软件,就出现了不同的发行版。总而言之,不同的发行版之间的联系在于它们所使用的内核是相同的。而区别在于不同的厂商制作出的发行版里的命令和软件都有细微的不同。
作者:hh111 链接:https://www.jianshu.com/p/40036e6c8db3 來源:
3、描述Linux的哲学思想,并按照自己的理解对其进行解释性描述。
一切皆文件;由众多单一目的的小程序,一个程序只实现一个功能,多个程序组合完成复杂任务;组合小程序完成复杂任务;文本文件保存配置信息;尽量避免与用户交互;提供机制,而非策略。
一切皆文件:是 Linux 的基本哲学之一。普通的文件,目录、字符设备、块设备、Linux 中都是以文件被对待;虽然本身的类型不同,但是Linux提供的都是一样的。
单一小程序:一个单一的程序或者可执行的文件,不会太过于复杂和过大,这样才会保证Linux的高速运转。过于复杂的程序。linux也会通过连接很多是简单程序来实现复杂程序的运转,保证了简单功能的高效性的同时,复杂的程序也必然是高效性的
避免与用户交互:Linux上支持的脚本语言种类十分丰富、易学简单,易于使用者已脚本的方式自动完成众多功能。
提供机制,而非策略:Linux是一款开源的系统,所有的系统配置都写在配置文件之中,无论修改什么只要在在配置文件中修改即可,修改配置文件只需要任意一款文本编辑器就可以,不用像Windows只可以在注册表中修改,工具单一,过于复杂。
链接:https://www.jianshu.com/p/3d755685aa96 來源:
4、说明Linux系统上命令的使用格式;详细介绍ifconfig、echo、tty、startx、export、pwd、history、shutdown、poweroff、reboot、hwclock、date命令的使用,并配合相应的示例来阐述。
ifconfig命令
ifconfig命令被用于配置和显示Linux内核中网络接口的网络参数。用ifconfig命令配置的网卡信息,在网卡重启后机器重启后,配置就不存在。想要将配置信息永远的存在电脑里,那就要修改网卡的配置文件了。
语法
ifconfig(参数)
参数
add<地址>:设置网络设备IPV6的ip地址 del<地址>:删除网络设备IPV6的ip地址 down:关闭指定的网络设备
io_addr:设置网络设备的I/O地址;
irq
media<网络媒介类型>:设置网络设备的媒介类型;
mem_start<内存地址>:设置网络设备在主内存所占用的起始地址;
metric<数目>:指定在计算数据包的转送次数时,所要加上的数目;
mtu<字节>:设置网络设备的MTU
netmask<子网掩码>:设置网络设备的子网掩码;
tunnel<地址>:建立IPV4与IPV6之间的隧道通信地址;
up:启动指定的网路设备;
-broadcast<地址>:将要送往指定的地址的数据包当成广播数据包来处理;
-pointopoint<地址>:与指定地址的网络设备建立直接连线,此模式具有保密功能;
-promisc:关闭或启动指定的网络设备的promiscuous模式;
IP地址:指定网络设备的IP地址
网络设备:指定网络设备的名称。
实例
显示网络设备信息(激活状态的):
eth0表示第一块网卡,其中HWaddr表示网卡的物理地址,可以看到目前这个网卡的物理地址(MAC地址)是00:0C:29:C2:ED:E8
inter addr用来表示网卡的IP地址192.168.0.17,此网卡的IP地址是,广播地址 Bcast:192.168.0.255,掩码地址是:Mask:255.255.255.0
lo是表示主机的回环地址,这个一般是用来测试一个网络程序,但又不想让局域网或外网的用户能够查看,只能在此台主机上运行和查看所用的网络接口。比如把 httpd服务器的指定到回环地址,在浏览器输入127.0.0.1就能看到你所架WEB网站了。但只是您能看得到,局域网的其它主机或用户无从知道。
第一行:连接类型:Ethernet(以太网)HWaddr(硬件mac地址)。
第二行:网卡的IP地址、子网、掩码。
第三行:UP(代表网卡开启状态)RUNNING(代表网卡的网线被接上)MULTICAST(支持组播)MTU:1500(最大传输单元):1500字节。
第四、五行:接收、发送数据包情况统计。
第七行:接收、发送数据字节数统计信息。
启动关闭指定网卡
ifconfig etn0 up
ifconfig eth0 down
ifconfig eth0 up
为启动网卡eth0,ifconfig eth0 down
为关闭网卡eth0。ssh登陆linux服务器操作要小心,关闭了就不能开启了,除非你有多网卡。
为网卡配置和删除IPV6地址:
ifconfig eth0 add 33ffe:3240:800:1005::2/64 #为网卡eth0配置IPv6地址
ifconfig eth0 del 33ffe:3240:800:1005::2/64 # 为网卡eth0删除IPv6地址
用ifconfig修改MAC地址:
ifconfig eth0 hw ether 00:AA:BB:CC:DD:EE
配置IP地址
ifconfig eth0 192.168.2.10
ifconfig eth0 192.168.2.10 netmask 255.255.255.0
ifconfig eth0 192.168.2.10 netmask 255.255.255.0 broadcast 192.168.2.255
启用和关闭arp协议:
ifconfig eth0 arp #开启网卡eth0 的arp协议
ifconfig eth0 -arp #关闭网卡eth0 的arp协议
设置最大传输单元:
ifconfig eth0 mtu 1500 #设置能通过的最大数据包大小为 1500 bytes
echo命令
echo 是一种最常用的与广泛使用的内置于Linux的bash和C shell的命令,通常用在脚本语言和批处理文件中来,在标准输出或者文件中显示一行文本或字符串。
echo命令的语法是:
echo[选项][字符串]
echo 选项列表
选项 描述
-n 不输出末尾的换行符。
-e 启用反斜线转义。
\b 退格
\ 反斜线
\n 新行
\r 回车
\t 水平制表符
\v 垂直制表符
- 输出一行文本并显示在标准输出上
$ echo Tecmintis a community of LinuxNerds
Tecmintis a community of LinuxNerds
- 输出一个声明的变量
$x=10
echo The value of variable x=$x
The value of variable x =10
- 使用‘\n‘选项
‘-e‘后面的带上‘\n’行会在遇到的地方作为新的一行
$ echo -e "Tecmint \nis \na \ncommunity \nof \nLinux \nNerds"
Tecmint
is
a
community
of
Linux
Nerds
具体用法参考链接:https://www.linuxidc.com/Linux/2014-10/107550.htm
tty命令
Linux tty 命令用于显示终端机连接标准输入设备的文件名称。
在Linux操作系统中,所有外围设备都有其名称与代号,这些名称代号以特殊文件的类型存放于/dev目录下。你可以执行tty(teletypewriter)指令查询目前使用的终端机的文件名称。
语法
tty [-s][--help][--version]
参数说明
- -s或--silent或--quiet 不显示任何信息,只回传状态代码。
- --help 在线帮助
- --version 显示版本信息。
实例
显示当前终端
& tty
/dev/pts/4
startx
Linux系统命令startx的功能很简单,就是启动X Window的服务这一项,没有其他的了。其实startx命令启动的是xinit,然后再由xinit来启动X Window。
功能说明:启动X Window。
语法:startx [程序][--服务器设置]
补充说明:startx为启动X Window的script文件,实际上启动X Window的程序为xinit。
参数:
[程序] 此处所指定的[程序]为X Window所要执行程序的配置文件。
[--服务器设置] startx预设会去读取.xerverrc中的配置,决定启动X Window的方式。
以上就是Linux系统startx命令的功能和使用方法了,用startx命令启动X Window后就可以在一个窗口中运行多个程序了。
export
功能说明:设置或显示环境变量。
语法:export [-fnp][变量名称]=[变量设置值]
补充说明:在shell中执行程序时,shell会提供一组环境变量。export可新增,修改或删除环境变量,供后续执行的程序使用。export的效力仅及于该此登陆操作。
参数:
-f 代表[变量名称]中为函数名称。
-n 删除指定的变量。变量实际上并未删除,只是不会输出到后续指令的执行环境中。
-p 列出所有的shell赋予程序的环境变量。
pwd命令
pwd
是Print Working Directory
的缩写,其功能是显示当前所在工作目录的全路径。主要用在当不确定当前所在位置时,通过pwd来查看当前目录的绝对路径。
语法
pwd [选项]
参数:
-L
:--logical
,显示当前的路径,有连接文件时,直接显示连接文件的路径,(不加参数时默认此方式),
参考示例1。
-p
:--physical
,显示当前的路径,有连接文件时,不使用连接路径,直接显示连接文件所指向的文件,
参考示例2。 当包含多层连接文件时,显示连接文件最终指向的文件,
参考示例3。
--help
:显示帮助信息。
--version
:显示版本信息。
实例
-
查看当前所在路径
查看当前所在路径,不使用连接路径
[root@localhost ~]# cd /var/ #进入/var目录,该目录下有个mail连接文件,方便对比查看
[root@localhost var]# ll
total 164
...
drwxr-xr-x 12 root root 4096 Apr 22 19:56 log
lrwxrwxrwx 1 root root 10 Oct 17 2015 mail -> spool/mail
drwxr-xr-x 2 root root 4096 May 11 2011 nis
...
[root@localhost var]# cd mail/ #进入mail目录,mail为连接文件。
[root@localhost mail]# pwd #默认,使用连接文件,直接显示连接文件全路径。
/var/mail
[root@localhost mail]# pwd -P #不使用逻辑路径,连接文件最终指向的文件
/var/spool/mail
- 多层连接文件时,显示所有连接文件最终指向的文件全路径
[root@localhost ~]# ll # /root目录下面有个dir1目录,test连接文件指向dir1目录
total 12
drwxr-xr-x 2 root root 4096 Apr 24 05:51 dir1
lrwxrwxrwx 1 root root 5 Apr 24 05:54 test -> dir1/
[root@localhost ~]# ll /home/ #/home目录下面有一个test连接文件,指向/root/test连接文件
total 20
drwx------ 16 sgl sgl 4096 Oct 17 2015 sgl
lrwxrwxrwx 1 root root 10 Apr 24 05:55 test -> /root/test
[root@localhost ~]# cd /home/test/ #通过cd命令进入/home/test
[root@localhost test]# pwd #默认,只显示连接文件的全路径
/home/test
[root@localhost test]# pwd -P # 显示连接文件最终指向的文件的全路径。注意这里不是/root/test。
/root/dir1
history命令
history命令用于显示指定数目的指令命令,读取历史命令文件中的目录到历史命令缓冲区和将历史命令缓冲区中的目录写入命令文件。
历史命令是被保存在内存中的,当退出或者登录shell时,会自动保存或读取。在内存中,历史命令仅能够存储1000条历史命令,该数量是由环境变量HISTSIZE进行控制。
语法
history(选项)(参数)
选项
c:清空当前历史命令;
-a:将历史命令缓冲区中命令写入历史命令文件中;
-r:将历史命令文件中的命令读入当前历史命令缓冲区;
-w:将当前历史命令缓冲区命令写入历史命令文件中。
参数
n:打印最近的n条历史命令。
实例
该命令单独使用时,仅显示历史命令,在命令行中,可以使用符号!
执行指定序号的历史命令。例如,要执行第2个历史命令,则输入!2
。
shutdown命令
Linux shutdown命令可以用来进行关机程序,并且在关机以前传送讯息给所有使用者正在执行的程序,shutdown 也可以用来重开机。
使用权限:系统管理者。
语法
shutdown [-t seconds] [-rkhncfF] time [message]
参数
- -t seconds : 设定在几秒钟之后进行关机程序
- -k : 并不会真的关机,只是将警告讯息传送给所有只用者
- -r : 关机后重新开机
- -h : 关机后停机
- -n : 不采用正常程序来关机,用强迫的方式杀掉所有执行中的程序后自行关机
- -c : 取消目前已经进行中的关机动作
- -f : 关机时,不做 fcsk 动作(检查 Linux 档系统)
- -F : 关机时,强迫进行 fsck 动作
- time : 设定关机的时间
- message : 传送给所有使用者的警告讯息
实例
立即关机
shutdown -h now
指定5分钟后关机
shutdown +5 “System will shutdown after 5 minutes” //5分钟够关机并显示警告信息
poweroff命令
poweroff命令用来关闭计算机操作系统并且切断系统电源。
语法
poweroff(选项)
选项
- -n:关闭操作系统时不执行sync操作;
- -w:不真正关闭操作系统,仅在日志文件“/var/log/wtmp”中;
- -d:关闭操作系统时,不将操作写入日志文件“/var/log/wtmp”中添加相应的记录;
- -f:强制关闭操作系统;
- -i:关闭操作系统之前关闭所有的网络接口;
- -h:关闭操作系统之前将系统中所有的硬件设置为备用模式。
实例
如果确认系统中已经没有用户存在且所有数据都已保存,需要立即关闭系统,可以使用poweroff命令。
使用poweroff立即关闭系统:
poweroff
reboot命令
reboot命令用来重新启动正在运行的Linux操作系统。
语法
reboot(选项)
选项
-d:重新开机时不把数据写入记录文件/var/tmp/wtmp。本参数具有“-n”参数效果;
-f:强制重新开机,不调用shutdown指令的功能;
-i:在重开机之前,先关闭所有网络界面;
-n:重开机之前不检查是否有未结束的程序;
-w:仅做测试,并不真正将系统重新开机,只会把重开机的数据写入/var/log目录下的wtmp记录文件。
实例
reboot //重开机。
reboot -w //做个重开机的模拟(只有纪录并不会真的重开机)。
hwclock命令
hwclock命令用于显示与设定硬件时钟。
在Linux中有硬件时钟与系统时钟等两种时钟。硬件时钟是指主机板上的时钟设备,也就是通常可在BIOS画面设定的时钟。系统时钟则是指kernel中的时钟。当Linux启动时,系统时钟会去读取硬件时钟的设定,之后系统时钟即独立运作。所有Linux相关指令与函数都是读取系统时钟的设定。
语法
hwclock [--adjust][--debug][--directisa][--hctosys][--show][--systohc][--test]
[--utc][--version][--set --date=<日期与时间>]
参数
- -adjust hwclock每次更改硬件时钟时,都会记录在/etc/adjtime文件中。使用--adjust参数,可使hwclock根据先前的记录来估算硬件时钟的偏差,并用来校正目前的硬件时钟。
- -debug 显示hwclock执行时详细的信息。
- -directisa hwclock预设从/dev/rtc设备来存取硬件时钟。若无法存取时,可用此参数直接以I/O指令来存取硬件时钟。
- -hctosys 将系统时钟调整为与目前的硬件时钟一致。
- -set --date=<日期与时间> 设定硬件时钟。
- -show 显示硬件时钟的时间与日期。
- -systohc 将硬件时钟调整为与目前的系统时钟一致。
- -test 仅测试程序,而不会实际更改硬件时钟。
- -utc 若要使用格林威治时间,请加入此参数,hwclock会执行转换的工作。
- -version 显示版本信息。
实例
显示当前时间
hwclock
2010年05月27日 星期四 18时04分31秒 -0.704214 seconds
查看版本信息
hwclock -v
hwclock from util-linux-2.12a
date命令
date命令可以用来显示或设定系统的日期与时间,在显示方面,使用者可以设定欲显示的格式,格式设定为一个加号后接数个标记,其中可用的标记列表如下:
时间方面:
% : 印出 %
%n : 下一行
%t : 跳格
%H : 小时(00..23)
%I : 小时(01..12)
%k : 小时(0..23)
%l : 小时(1..12)
%M : 分钟(00..59)
%p : 显示本地 AM 或 PM
%r : 直接显示时间 (12 小时制,格式为 hh:mm:ss [AP]M)
%s : 从 1970 年 1 月 1 日 00:00:00 UTC 到目前为止的秒数
%S : 秒(00..61)
%T : 直接显示时间 (24 小时制)
%X : 相当于 %H:%M:%S
%Z : 显示时区
日期方面:
%a : 星期几 (Sun..Sat)
%A : 星期几 (Sunday..Saturday)
%b : 月份 (Jan..Dec)
%B : 月份 (January..December)
%c : 直接显示日期与时间
%d : 日 (01..31)
%D : 直接显示日期 (mm/dd/yy)
%h : 同 %b
%j : 一年中的第几天 (001..366)
%m : 月份 (01..12)
%U : 一年中的第几周 (00..53) (以 Sunday 为一周的第一天的情形)
%w : 一周中的第几天 (0..6)
%W : 一年中的第几周 (00..53) (以 Monday 为一周的第一天的情形)
%x : 直接显示日期 (mm/dd/yy)
%y : 年份的最后两位数字 (00.99)
%Y : 完整年份 (0000..9999)
语法
date [-u] [-d datestr] [-s datestr] [--utc] [--universal] [--date=datestr] [--set=datestr] [--help] [--version] [+FORMAT] [MMDDhhmm[[CC]YY][.ss]]
参数
- -d datestr : 显示 datestr 中所设定的时间 (非系统时间)
- -help : 显示辅助讯息
- -s datestr : 将系统时间设为 datestr 中所设定的时间
- -u : 显示目前的格林威治时间
- -version : 显示版本编号
实例
显示当前时间
按自己的格式输出
显示时间后跳行,再显示目前日期
显示月份与日数
显示日期与设定时间(12:34:56)
5、如何在Linux系统上获取命令的帮助信息,请详细列出,并描述man文档的章节是如何划分的
Linux命令分为内部命令和外部命令。
内置命令:#help COMMAND
外部命令:
(1)命令自带简要格式的使用帮助
COMMAND --help
(2)使用帮助手册(manual)
man CHAPTER COMMAND
(3)info COMMAND
获取命令的在线文档
(4)很多应用程序会自带帮助文档:/usr/share/doc/APP-VERSION
README:程序的相关的信息
INSTALL:安装帮助
CHANGES:版本迭代时的改动信息;
(5)主流发行版官方文档
http://www.redhat.com/doc
(6)程序官方的文档
官方站点上的“Document”
(7)搜索引擎
参考网址:http://blog.csdn.net/he1064267001/article/details/52563074
6、请罗列Linux发行版的基础目录名称命名法则及功用规定
/bin
存放的系统命令
/boot
存放着系统的启动文件和内核
/dev
设备文件主目录(设备不在这里,具体设备信息/proc目录中)
/proc
系统进程和系统硬件信息
/etc
系统主配置文件主目录
windows下安装QQ,安装目录在E:盘,C盘也会写入相应的QQ软件的信息
c:盘的QQ文件称之为主配置文件(系统文件)—/etc
E盘的QQ安装目录里的文件称之为配置文件(功能型文件)—/var
/var
系统配置文件主目录
/home
普通用户的家目录
/lib&/lib64
系统库文件存放的目录
.dll
/usr
系统帮助文档以及源码包安装位置
源码包不属于RedHat,属于广大的爱好开发者
usr目录是最庞大的目录,要用的应用程序和文件几乎都在这个目录
/sbin
超级用户使用的命令存放的目录
/mnt
用户挂载目录
/run
存放当前运行程序库的目录,当前运行目录
/root
超级用户root家目录
/tmp
临时文件存放目录
系统启动过程中会产生一些临时文件,这些临时文件就存放在tmp目录下。如果说tmp目录没有存储空间,系统一定启动不起来
/media
可移动介质挂载点
/opt
第三方应用程序文件存放目录
/srv
常用语各种非RedHat版本的网络服务器
Linux版本号的命名规则
3部分组成:主版本号、次版本号、末版本号
次版本号,可以确定Linux内核版本的类型
—开发版,次版本号数字为奇数
–稳定版,次版本号数字为偶数
参考网址: https://blog.csdn.net/q635894052/article/details/52555380