第一周作业

本周作业

1、描述计算机的组成及其功能。

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

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

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

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

6、请罗列Linux发行版的基础目录名称命名法则及功用规定。

1、描述计算机的组成及其功能。

  •     CPU(Central Processing Unit,中央处理器):所有PC都拥有这样的一颗芯,负责进行运算和管理,分为运算逻辑单元和管理单元。CPU里面含有微指令集,如果你要想要CPU实现什么功能,就需要参考微指令集。微指令集又分为:精简指令集(RISC)与复杂指令集(CISC),精简指令集主要用于嵌入式设备上,如交换机、路由器、手机、导航设备,主流架构是ARM架构;复杂指令集主要用于我们的PC,我们熟悉的x_86架构就是用的复杂指令集。
  •     内存(RAM):CPU所使用的所有数据都来自于内存,所有硬软件都必须不数据放入内存之后,CPU才能取出处理。这样的设计主要是因为底层设备运行速度比CPU慢很多,我们不能让CPU这样等着,所以中间就加了内存,先将底层设备的数据或者CPU计算完成的数据缓存至内存中,这样CPU不用停下来等,更好的发挥性能。
  •     显示卡:对于图像影像显示有很重要的作用,透过北桥芯片与CPU、内存沟通。
  •     磁盘:数据储存,操作系统、我们的各种文件影像都放在磁盘里面。
  •     主板:像一个神经网络,把上面的各种组件都连接起来,所有组件都需要安装在主板上。

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

基于Dpkg(Debian系)

  •     商业发行版:Ubuntu,流行的桌面发行版,由Canonical维护;
  •     社区发行版:Debian,Kubuntu,Linux Mint,Knoppix,OpenGEU,Elementary OS,gOS等等;

基于RPM(Red Hat系)

  •     商业发行版:Red Hat Enterprise Linux , Mandriva , openSUSE;
  •     社区发行版:Fedora , PCLinuxOS , CentOS;

基于其他格式:ArchLinux , Chakra , Gentoo , Slackware;

详细参考:https://zh.wikipedia.org/wiki/Linux%E5%8F%91%E8%A1%8C%E7%89%88

 

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

  •     一切皆文件:基本上所有的东西都被当做文件对待,磁盘在操作系统上的展现就是以文件形式,还有各种系统调用;
  •     由众多的小程序组成:最直接的一个感觉就是一个命令实现一个功能,比如打印文本cat FILE 之类的;
  •     组合小程序完成复杂任务:比如创建一个用户用useradd,创建用户并设置密码用useradd USER;echo PASSWORD | passwd –stdin
  •     避免与用户交互:在linux运行的程序一旦运行就不要用户做什么设置了;
  •     文本文件保存配置信息:显而易见,所有的配置都是以文本文件的形式展现;

 

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

  •   (1)  ifconfig:configure a network interface,用来配置网络接口,但通常我们会用-a 选项来查看网络状态。
  •     ifconfig Usage:
    ifconfig [-a] [-v] [-s] <interface> [[<AF>] <address>]
    [add <address>[/<prefixlen>]]
    [del <address>[/<prefixlen>]]
    [[-]broadcast [<address>]] [[-]pointopoint [<address>]]
    [netmask <address>] [dstaddr <address>] [tunnel <address>]
    [outfill <NN>] [keepalive <NN>]
    [hw <HW> <address>] [mtu <NN>]
    [[-]trailers] [[-]arp] [[-]allmulti]
    [multicast] [[-]promisc]
    [mem_start <NN>] [io_addr <NN>] [irq <NN>] [media <type>]
    [txqueuelen <NN>]
    [[-]dynamic]
    [up|down] …

 

  •    (2) echo:Echo the STRING(s) to standard output.,讲字符串重定向到标准输出。
  •     例:echo “123”,则输出:123

 

  •   (3)  tty:Print the file name of the terminal connected to standard input.,打印与标准输入连接的终端的文件名。
  •     例:[root@tiangyblog ~]# tty
    /dev/pts/0
  •    (4) startx:startx命令用来启动X Window,实际上启动X Window的程序为xinit

 

  •    (5) export:在shell中执行程序时,shell会提供一组环境变量。export可新增,修改或删除环境变量,供后续执行的程序使用。export的效力仅及于该此登陆操作。
  •     export: usage: export [-fn] [name[=value] …] or export -p
  •     参  数:
    -f  代表[变量名称]中为函数名称。
    -n  删除指定的变量。变量实际上并未删除,只是不会输出到后续指令的执行环境中。
    -p  列出所有的shell赋予程序的环境变量

 

  •    (6) pwd:Print the full filename of the current working directory,打印当前目录的路径。
  •     例:[root@localhost httpd]# pwd
    /etc/httpd

 

  •    (7) history:history(选项)(参数)

      history命令用于显示指定数目的指令命令,读取历史命令文件中的目录到历史命令缓冲区和将历史命令缓冲区中的目录写入命令文件。

该命令单独使用时,仅显示历史命令,在命令行中,可以使用符号!执行指定序号的历史命令。例如,要执行第2个历史命令,则输入!2

历史命令是被保存在内存中的,当退出或者登录shell时,会自动保存或读取。在内存中,历史命令仅能够存储1000条历史命令,该数量是由环境变量HISTSIZE进行控制。

    -c:清空当前历史命令;
    -a:将历史命令缓冲区中命令写入历史命令文件中;
    -r:将历史命令文件中的命令读入当前历史命令缓冲区;
    -w:将当前历史命令缓冲区命令写入历史命令文件中。
  •    (8) shutdown:shutdown arranges for the system to be brought down in a safe way.
  •     shutdown(选项)(参数)
  •     -c:当执行“shutdown -h 11:50”指令时,只要按+键就可以中断关机的指令;
       -f:重新启动时不执行fsck;
       -F:重新启动时执行fsck;
       -h:将系统关机;
       -k:只是送出信息给所有用户,但不会实际关机;
       -n:不调用init程序进行关机,而由shutdown自己进行;
       -r:shutdown之后重新启动;
       -t<秒数>:送出警告信息和删除信息之间要延迟多少秒。

例:一般用shutdown -h now来关闭系统,但是服务器一般很少关闭。

 

  •    (9) poweroff : Power off the system.关闭系统电源,也就是关闭操作系统。
  •     Usage: poweroff [OPTION]…
  •    -n:关闭操作系统时不执行sync操作;
       -w:不真正关闭操作系统,仅在日志文件“/var/log/wtmp”中;
       -f:强制关闭操作系统;
       -i:关闭操作系统之前关闭所有的网络接口;

 

  • (10) reboot:重启操作系统;

 

  • (11) hwclock : query and set the hardware clock (RTC),查询和设置硬件时钟.一个硬件时钟访问工具,它可以显示当前时间、设置硬件时钟的时间和设置硬件时钟为系统时间,也可设置系统时间为硬件时钟的时间。在Linux中有硬件时钟与系统时钟等两种时钟。硬件时钟是指主机板上的时钟设备,也就是通常可在BIOS画面设定的时钟。系统时钟则是指kernel中的时钟。当Linux启动时,系统时钟会去读取硬件时钟的设定,之后系统时钟即独立运作。所有Linux相关指令与函数都是读取系统时钟的设定。Usage: hwclock [function] [options…]-s | –hctosys set the system time from the hardware clock,将系统时间同步至硬件时间;
    -w | –systohc set the hardware clock to the current system time,将硬件时间同步至系统时间;例:hwclock -w

 

  • (12) date:以给定的格式显示当前时间,或是设置系统日期。
  •     用法:date [选项]… [+格式]
    或:date [-u|–utc|–universal] [MMDDhhmm[[CC]YY][.ss]]
  •     -d,–date=字符串 显示指定字符串所描述的时间,而非当前时间
    -f,–file=日期文件 类似–date,从日期文件中按行读入时间描述
    -r, –reference=文件 显示文件指定文件的最后修改时间
    -R, –rfc-2822 以RFC 2822格式输出日期和时间
    例如:2006年8月7日,星期一 12:34:56 -0600
    –rfc-3339=TIMESPEC 以RFC 3339 格式输出日期和时间。
    TIMESPEC=`date’,`seconds’,或 `ns’
    表示日期和时间的显示精度。
    日期和时间单元由单个的空格分开:
    2006-08-07 12:34:56-06:00
    -s, –set=字符串 设置指定字符串来分开时间
    -u, –utc, –universal 输出或者设置协调的通用时间
    –help 显示此帮助信息并退出
    –version 显示版本信息并退出给定的格式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)
    %j 按年计的日期(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 年份最后两位数位 (00-99)
    %Y 年份
    %z +hhmm 数字时区(例如,-0400)
    %:z +hh:mm 数字时区(例如,-04:00)
    %::z +hh:mm:ss 数字时区(例如,-04:00:00)
    %:::z 数字时区带有必要的精度 (例如,-04,+05:30)
    %Z 按字母表排序的时区缩写 (例如,EDT)

例:显示当前时间:

[root@localhost ~]# date
2018年 05月 07日 星期一 08:19:40 CST

以自定义格式显示:

[root@localhost ~]# date +”%Y-%m-%d-%H”
2018-05-07-08

 

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

用法:man (选项) (参数) COMMAND

man COMMAND,左上角括号里面的数字就是章节;

    -a:在所有的man帮助手册中搜索;
    -f:等价于whatis指令,显示给定关键字的简短描述信息;
    -P:指定内容时使用分页程序;
    -M:指定man手册搜索的路径。

    章节意义:(1)用户命令;(2)系统调用;(3)库调用;(4)特殊文件;(5)文件格式;(6)游戏;(7)杂项、Miscellaneons;(8)管理命令、/sbin,/usr/sbin,/usr/local,/sbin;


6、请罗列Linux发行版的基础目录名称命名法则及功用规定。

  • /boot:系统启动相关的文件,如内核,initrd,以及grub (boot loader);
  • /dev:设备文件;
  • /etc:配置文件;
  • /home:用户的家目录;
  • /root:管理员的家目录;
  • /lib:库文件;
  • /media:挂载点目录,移动设备;
  • /mnt:挂载点目录额外的临时文件系统;
  • /opt:可选目录,第三方程序的安装目录;
  • /proc:伪文件系统,内核映射文件;
  • /sys:伪文件系统,跟硬件设备相关的属性映射文件;
  • /tmp:临时文件;
  • /var:时常变化的文件;
  • /bin:可执行文件,用户命令;
  • /sbin:管理命令;
  • /usr:里面一般放置软件程序;
  • /usr/loacl:第三方软件程序;

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/98235

发表评论

登录后才能评论

评论列表(1条)

  • 马哥教育
    马哥教育 2018-05-14 17:20

    内容没有问题,希望可以多注重一些排版的问题

联系我们

400-080-6560

在线咨询:点击这里给我发消息

邮件:1823388528@qq.com

工作时间:周一至周五,9:30-18:30,节假日同时也值班