第一周博客作业
一、计算机的组成及其功能
计算机的组成可分为硬件、软件两部分。
硬件部分:
按冯.诺伊曼提出的计算机体系,计算机可分为五个部分,分别是:控制器、运算器、存储器、输入设备、输出设备。
CPU:由运算器及控制器组成。
控制器:发出决策指令,协调和指挥计算机各部件的工作。
运算器:对数据进行加工,主要进行算数运行、逻辑运算。
存储器:分为内存储器和外部存储器。主要用来存储程序和数据。
输入设备:向计算机输入指令或程序。
输出设备:用于数据的输出。
软件部分:软件部分分为Kernel和Application两部分。
Kernel:管理计算机中的各硬件,为用户提供接口。
Application:为特定用途而开发的特定程序或一系列紧密结合的程序的结合。主要为完成特定功能。
二、按系列罗列Linux的发行版,并描述不同发行版之间的联系及区别。
1、Debian 是为数极少的纯社区驱动的Linux发行版,而不是由商业公司或者政府机构所掌控。Debian采用了Linux Kernel,大部分基础的操作系统工具都来自于GNU。包管理系统为dpkg。
Ubuntu 基于Debian发行版和unity桌面环境。与Debian软件不一定完全兼容。和Debian采用相同的deb软件包格式。
Knoppix 以DEBIAN为主干的可光盘启动的Linux系统。X-window界面非常完善且实用,而且界面美化方面不办理给Windows系统。
2、Slackware 由Patrick Volkerding开发的GNU/Linux发行版。与其他发行版不同的是,它坚持KISS(Keep It Simple Stupid)的原则。最大特点就是安装灵活,目录结构严谨,版本力求稳定而非追新。Slackware的软件包都是通常的tgz(tar/gzip) 或者txz(xz) 格式文件再加上安装脚本。
S.u.S.E 简称SuSE,Slackware为基础.SuSE的Yast是以RPM为基础的操作系统安装与设置工具,也是SuSE Linux发行版的主要特性之一。
openSUSE openSUSE是一个一般用途的基于Linux内核的GNU/Linux操作系统,由openSUSE项目社区开发维护,由Novell公司资助的全球性社区计划,旨在推进 Linux 的广泛使用。它采用的KDE4.3作为默认桌面环境,同时也提供GNOME桌面版本。它的软件包管理系统采用自主开发的YaST,颇受好评。他的用户界面非常华丽,而且性能良好,但它是唯一一个没有官方打包的 ffmpeg,mplayer的发行版。
3、Redhat RedHat Linux是最成熟的一种Linux发行版,软件包管理使用的Red Hat软件库,Red Hat提供了软件包的安装源。
Fedora 基于Red Hat Linux,由Fedora Project社区开发、红帽公司赞助,目标是创建一套新颖、多功能并且自由和开源的操作系统。对赞助者Red Hat公司而言,它是许多新技术的测试平台,被认为可用的技术最终会加入到Red Hat Enterprise Linux中。
Red Hat Enterprise Linux Red Hat公司发布的面向企业用户的Linux操作系统。
Centos 来自于Red Hat Enterprise Linux依照开放源代码规定释出的源代码所编译而成,而且在RHEL的基础上修正了不少已知的 Bug。
三、描述Linux的哲学思想,并按照自己的理解对其进行解释性描述。
1、一切皆文件:方便操作人员通过通用的方法对计算机软硬件进行访问和操作。
2、由众多功能单一的小程序组成:小程序各司其职,做好分内的事,其他一概不管。
3、尽量避免与用户交互:方便实现自动化、通过直白的方式显示内容,而不是用可令人困惑的图形界面。
4、使用文本文件保存配置信息:方便读写配置信息
四、说明Linux系统上命令的使用格式;详细介绍ifconfig、echo、tty、startx、export、pwd、history、shutdown、poweroff、reboot、hwclock、date命令的使用,并配合相应的示例来阐述。
Linux系统上命令的使用格式
Command options arguments
COMMAND 发起命令
OPTIONS 命令运行特性
AGRUMENTS 命令作用对象
Ifconfig :configure a network interface 配置网络接口
SYNOPSIS:
ifconfig [-v] [-a] [-s] [interface]
ifconfig [-v] interface [aftype] options | address …
~]# ifconfig %获取当前网络配置信息%
~]# ifconfig eno16777736 %获取指定网卡网络配置信息%
~]#ifconfig eno16777736 192.168.0.188 netmask 255.255.255.0 %更改指定网卡配置信息%
~]#ifconfig eno16777736 hw ether xx:xx:xx:xx:xx:xx %配置网卡物理地址%
~]#ifconfig eno16777736 down %禁用网卡%
~]#ifconfig eno16777736 up %启用网卡%
echo display a line of text 回显命令
SYNOPSIS
echo [SHORT-OPTION]… [STRING]…
echoLONG-OPTION
-n do not output the trailing newline 输出信息后不换行。
-e enable interpretation of backslash escapes 使转义符生效
echo string可加引号
单引号:强引用,直接引用变量不替换。
双引号:弱引用,引用变量并解析。
echo 用于在shell中打印shell变量的值
tty print the file name of the terminal connected to standard input
输出终端名称
startx 启动X-window图形化界面
export set the export attribute for variables 设置或显示环境变量
pwd print name of current/working directory 显示当前工作路径
history display or manipulate the history list 显示或操作命令列表
历史文件夹位置:~/.bash_history
history可通过环境变量定制。
HISTSIZE: shell可保存的命令历史文件
HISTFILESIZE:持久保存命令历史的文件
SYNOPSIS
~]# history [n]
~]# history [-c]
~]# history [-raw] histfiles
Options:
n :数字,列出最近的 n 条命令列表
-c :clear the history list by deleting all of the entries 将目前的shell中的所有 history 内容全部消除
-d offset delete the history entry at offset OFFSET 删除指定条数的命令指令
-a append history lines from this session to the history file 把历史命令从内存中添加到文件中
-r :read the history file and append the contents to the history list 从文件读取命令历史到内存中的历史列表中 从文件到内存
-w :write the current history to the history file 把历史列表中的命令写入到历史文件中 从内存到文件
调用命令历史中的命令:
!# 再一次执行命令历史中的第#条命令。
~]#!20
!! 再一次执行上一次命令。
~]#!!
!STRING 再一次执行命令历史列表中最近一个以STRING开头的命令。
ESC, . Alt+. !$ 调用上一条命令的最后一个参数
通过环境变量HISTCONTROL控制命令历史记录的方式
~]#export HISTCONTROL=ignoredups %忽略重复的命令%
~]#export HISTCONTROL=ignorespace %忽略以空格开头的命令%
~]#export HISTCONTROL=ignorboth %忽略以上两者%
shutdown Halt , power-off or reboot the machine 关机或重启电脑
用法 shutdown [options….] [time] [wall…]
选项 -P poweroff Power-off the machion (the default)
调用init 0 ,init 0 会cleanup一些工作然后调用halt或poweroff。
-r reboot Reboot the machine 重启电脑
-h halt 相当于直接关电源
-c cacel 取消关机 也可用Ctrl+C代替
-k do not halt , power-off , reboot , just write wall message 不执行关机重启操作,只发出关机重启的信息
–no-wall Do not send wall message before halt , power-off ,reboot 执行关机或重启命令但是不发出信息
TIME: now
~]#shutdown now %马上关机%
Hh:mm
~]#shutdown 12:15 %12:15关机%
+m
~]#shutdown +1 %1分钟后关机%
poweroff 命令用来关闭计算机操作系统并且切断系统电源
-P –poweroff power-off the machine,regardless of which one of the three commands is invoked. 直接关机,不理会别人的请求。
–reboot reboot the machine , regardless of which one of the three commands is invoked . 直接重启,不理会别人的请求。
-f –force Force immediate halt ,power-off , reboot .Do not contact the init system 不初始化系统,直接强制关闭或者重启系统。
-w –wtmp-only only write wtmp shutdown entry , do not actually halt power-off , reboot. 在日志中写入记录,但是不执行关机重启操作。
-d –no-wtmp Do not write wtmp shutdown entry 关机但是不写入日志中
– -no-wall Dont send wall message before halt , power-off ,reboot. 不向其它终端发送信息,直接关机或重启
reboot 关机或重启命令 命令使用方法及格式同poweroff
hwclock query or set the hard ware clock (RTC) 查询或修改硬件时钟
SYNOPSIS hwclock [function] [option….]
OPTIONS
-s –hctosys
Set the System Time from the Hardware Clock
把系统时间设置成和硬件时钟时间一样。
-w –systohc
Set the Hardware Clock to the current system Time
把硬件时钟时间设置成和系统时间一样。
date print or set the system date and time 输出或设置时间
SYNOPSIS date [OPTION]… [+FORMAT]
date [-u|–utc|–unviersal] [MMDDhhmm[[CC]YY] [.SS]]
OPTIONS
-d –date=STRING display time described by STRING,not “now”
显示字符串描述的时间
-u 显示或设定为Coordinated Universal Time时间格式
-R 以RFC-2822兼容日期格式显示时间
-r –reference=FILE display the last modification time of FILE
显示文件的最后修改时间
-s –set=SIRING set time described by STRING 设置时间
FORMAT格式
%% 一个文字的 %
%a 当前locale 的星期名缩写(例如: 日,代表星期日)
%A 当前locale 的星期名全称 (如:星期日)
%b 当前locale 的月名缩写 (如:一,代表一月)
%B 当前locale 的月名全称 (如:一月)
%c 当前locale 的日期和时间 (如:2005年3月3日 星期四 23:05:25)
%C 世纪;比如 %Y,通常为省略当前年份的后两位数字(例如:20)
%d 按月计的日期(例如:01)
%D 按月计的日期;等于%m/%d/%y
%e 按月计的日期,添加空格,等于%_d
%F 完整日期格式,等价于 %Y-%m-%d
%g ISO-8601 格式年份的最后两位 (参见%G)
%G ISO-8601 格式年份 (参见%V),一般只和 %V 结合使用
%h 等于%b
%H 小时(00-23)
%I 小时(00-12)
%c 按年计的日期(001-366)
%k 时(0-23)
%l 时(1-12)
%m 月份(01-12)
%M 分(00-59)
%n 换行
%N 纳秒(000000000-999999999)
%p 当前locale 下的“上午“或者“下午“,未知时输出为空
%P 与%p 类似,但是输出小写字母
%r 当前locale 下的 12 小时时钟时间 (如:11:11:04 下午)
%R 24 小时时间的时和分,等价于 %H:%M
%s 自UTC 时间 1970-01-01 00:00:00 以来所经过的秒数
%S 秒(00-60)
%t 输出制表符 Tab
%T 时间,等于%H:%M:%S
%u 星期,1 代表星期一
%U 一年中的第几周,以周日为每星期第一天(00-53)
%V ISO-8601 格式规范下的一年中第几周,以周一为每星期第一天(01-53)
%w 一星期中的第几日(0-6),0 代表周一
%W 一年中的第几周,以周一为每星期第一天(00-53)
%x 当前locale 下的日期描述 (如:12/31/99)
%X 当前locale 下的时间描述 (如:23:13:48)
%Y 年份
五、如何在Linux系统上获取命令的帮助信息,请详细列出,并描述man文档的章节是如何划分的。
首先用type命令查看命令属于内部命令还是外部命令
~]# type COMMAND
内部命令
输出为:type is a shell builtin ,表明是shell内部命令,用help COMMAND查看命令帮助。~]#help COMMAND
外部命令
1.命令自带简要格式使用帮助
~]# COMMAND –help
2.使用手册 mannal
~]# man COMMAND
man文档可分为几个部分:NAME、SYNOPSIS 简要功能说明、DESCPIPTION 描述、OPTIONS选项、EXAMPLES 使用示例、AUTHOR作者、BUGS 报告程序BUG方式、SEE ALSO 参考
语法格式说明:
[] :表示可选、<> :必给内容、a|b:多选一或二选一、…:同类内容可出现多个
使用手册是压缩格式的文件,有章节之分,存储位置为/usr/share/man
man1:用户命令,普通用户和管理员都可以使用。
man2:系统调用
man3:C库调用
man4:设备文件及特殊文件
man5:文件格式(配置文件格式)
man6:游戏使用帮助
man7:杂项
man8:管理工具及守护进程
查看指定章节man文件
~]# man # COMMAND
注意:并非每个COMMAND在所有章节下都有手册,查看命令在哪些章节下有手册用以下命令
~]# whatis COMMAND
whatis执行过程是查询数据库得到,如新装软件查询不到应用手册,需要手动更新数据库
~]# make whatis
3.Info COMMAND
4.应用程序自带的帮助文档
位置:/usr/share/doc/APP-VERSION
Readme : 程序相关信息
Install :安装帮助
Chages :程序迭代时改动信息
5.主流发行版官方文档
6.程序官方文档
7.搜索引擎
六、请罗列Linux发行版的基础目录名称命名法则及其功用规定。
各Linux发行版遵行FHS(Filesystem hierarchy standard)
/bin Essential user command binaries (for use bu all users) 供所有用户使用的基本命令程序文件
/sbin system binaries 供系统管理使用的工具程序
/boot static files of the boot loader 引导加载器必须到的各静态文件,包括kernel、initramfs(initrd)、grub等
/dev Device files 设备(字符设备及块设备)文件、特殊文件
/etc Host-specific system configuration 主机特有的系统程序的静态配置文件(文本文件)
Opt configuration for /opt
Xll configuration for the X Window system (optional)
Sgml configuration for SGML(optional)
Xlm configuration for XML(optional)
/home User home directiories (optional) 普通用户家目录的集中位置
如:/home/USERNAME
/lib Essential shared libraries and kernel modules 基础共享库和内核模块
/lib<qual> 为系统启动或根文件系统上的应用程序(/bin /sbin等)提供共享库以及为内核提供内核模块
Libc.so.* 动态链接的C库
Ld* 运行时链接器/加载器
modules 用于存储内核模块的目录
/lib64 64位系统特有的存放64位共享库的路径
/media Mount point for removeable media 便携式设备挂载点,cdrom、floppy等
/mnt 其它文件系统的临时挂载点
/opt Add-on application software packages(optional) 附加程序的安装位置,可选
/root Home directory for the root user (optional) 管理员的家目录,可选
/SRV Data for services provided by this system 主机特有的当前主机为服务提供的数据
/tmp Temprary files 临时文件目录 为会产临时文件的用户提供的存储临时文件的目录,可为所有用户执行写入操作,有特殊权限。
/usr Hierarchy 全局共享的只读数据路径包含:
bin :保证系统拥有完整功能而提供的应用程序
sbin
lib
lib64
Include :C程序头文件
share :命令手册页,命令文档等架构特有的文件的存储位置,如doc, man 等
local : 第三方应用程序的安装位置,内含:bin , sbin , lib , lib64 , etc , share
Src : 程序源码文件存储位置
/var Hierarchy 存储经常发生变化的数据的目录
cache: Application cache date 应用程序缓存数据目录
lib: Variable state information 应用程序状态信息数据
local: Variable date for /usr/local 专用于为/usr/local 下的应用程序存储可变数据
lock: Lock files 锁文件
log: log files and directories 日志目录及文件
opt: Variable date for /opt 专用于为/opt 下的应用程序存储可变数据
run: Date relevant to runing processes 运行中的进程相关的数据,通常用于存储进程的PID文件
spool: Application spool data 应用程序的数据池
tmp: temporary files preserved between system reboots 保存系统两次生词之间产生的临时文件
/pro kernel and process information virtual filesystem 保存内核和进程信息的虚拟文件系统,基于内存的虚拟文件系统,也叫伪文件系统。例如net.ipv4.ip_forward, 虚拟为net/ipv4/ip_forward, 存储于/proc/sys/, 因此其完整路径为/proc/sys/net/ipv4/ip_forward
/sys 用于输出当前系统上硬件设备相关信息的虚拟文件系统,内核中与硬件设备相关的信息映射。
/selinux selinux相关的安全策略等信息的存储位置
原创文章,作者:lixinkuan,如若转载,请注明出处:http://www.178linux.com/69185
评论列表(1条)
完成的很好,很用心的在做,排版需要注意一下,可以尝试使用表格总结命令选项,加油!