Homework Week-1 Linux基本

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

计算机由硬件和软件组成;硬件主要分为五部分:控制器,运算器、存储器、输入和输出设备。软件分为系统软件和应用软件。

  • 控制器(Control):是整个计算机的中枢神经,其功能是对程序规定的控制信息进行解释,根据其要求进行控制,调度程序、数据、地址,协调计算机各部分工作及内存与外设的访问等。

  • 运算器(Datapath):运算器的功能是对数据进行各种算术运算和逻辑运算,即对数据进行加工处理。

  • 存储器(Memory):存储器的功能是存储程序、数据和各种信号、命令等信息,并在需要时提供这些信息。

  •  输入(Input system):输入设备是计算机的重要组成部分,输入设备与输出设备合称为外部设备,简称外设,输入设备的作用是将程序、原始数据、文字、字符、控制命令或现场采集的数据等信息输入到计算机。常见的输入设备有键盘、鼠标器、光电输入机、磁带机、磁盘机、光盘机等。

  •  输出(Output system):输出设备与输入设备同样是计算机的重要组成部分,它把外算机的中间结果或最后结果、机内的各种数据符号及文字或各种控制信号等信息输出出来。微机常用的输出设备有显示终端CRT、打印机、激光印字机、绘图仪及磁带、光盘机等。

  • 系统软件是指控制和协调计算机及外部设备,支持应用软件开发和运行的系统,是无需用户干预的各种程序的集合,主要功能是调度,监控和维护计算机系统;负责管理计算机系统中各种独立的硬件,使得它们可以协调工作。系统软件使得计算机使用者和其他软件将计算机当作一个整体而不需要顾及到底层每个硬件是如何工作的。(如Windows、Linux、Dos、Unix等操作系统都属于系统软件。)

  •  应用软件 (application software)是用户可以使用的各种程序设计语言,以及用各种程序设计语言编制的应用程序的集合,分为应用软件包和用户程序。应用软件包是利用计算机解决某类问题而设计的程序的集合,供多用户使用。应用软件是为满足用户不同领域、不同问题的应用需求而提供的那部分软件。 它可以拓宽计算机系统的应用领域,放大硬件的功能。(如Word、Excel、QQ等都属于应用软件)


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

GNU/Linux(1991)-MCC Interim(1992)-SLS(1992)-Slackware(1993)-S.u.S.E(1994)-SuSE(1998)-SUSE(2004)-openSUSE(2006)

GNU/Linux(1991)-CRUX(2001)-Arch(2002)

GNU/Linux(1991)-Debian(1993)-Unbuntu(2004)

GNU/Linux(1991)-RedHat(1994)-Fedora-CentOS(2004)

GNU/Linux(1991)-Gentoo(2002)

  • Linux的发行版本可以大体分为两类,一类是商业公司维护的发行版本,一类是社区组织维护的发行版本。前者以著名的Redhat(RHEL)为代表,后者以Debian为代表。

  • Redhat系列,包括RHEL(Redhat Enterprise Linux,也就是所谓的Redhat Advance Server,收费版本)、Fedora Core(由原来的Redhat桌面版本发展而来,免费版本)、CentOS(RHEL的社区克隆版本,免费)。Redhat系列的包管理方式采用的是基于RPM包的YUM包管理方式,包分发方式是编译好的二进制文件。稳定性方面RHEL和CentOS的稳定性非常好,适合于服务器使用,但是Fedora Core的稳定性较差,最好只用于桌面应用。

  • Debian系列,包括Debian和Ubuntu等。Debian是社区类Linux的典范,是迄今为止最遵循GNU规范的Linux系统。Debian最早由Ian Murdock于1993年创建,分为三个版本分支(branch): stable, testing 和 unstable。其中,unstable为最新的测试版本,其中包括最新的软件包,但是也有相对较多的bug,适合桌面用户。testing的版本都经 过unstable中的测试,相对较为稳定,也支持了不少新技术(比如SMP等)。而stable一般只用于服务器,上面的软件包大部分都比较过时,但是 稳定和安全性都非常的高。Debian最具特色的是apt-get / dpkg包管理方式,其实Redhat的YUM也是在模仿Debian的APT方式,但在二进制文件发行方式中,APT应该是最好的了。

  • Ubuntu是基于Debian的unstable版本加强而来,Ubuntu就是 一个拥有Debian所有的优点,以及自己所加强的优点的近乎完美的 Linux桌面系统。根据选择的桌面系统不同,有三个版本可供选择,基于Gnome的Ubuntu,基于KDE的Kubuntu以及基于Xfc的 Xubuntu。特点是界面非常友好,容易上手,对硬件的支持非常全面,是最适合做桌面系统的Linux发行版本。

  • Gentoo是Linux世界最年轻的发行版本,正因为年轻,所以能吸取在她之前的所有发行版本的优点,这也是Gentoo 被称为最完美的Linux发行版本的原因之一。Gentoo最初由Daniel Robbins(FreeBSD的开发者之一)创建,首个稳定版本发布于2002年。由于开发者对FreeBSD的熟识,所以Gentoo拥有媲美 FreeBSD的广受美誉的ports系统 ——Portage包管理系统。不同于APT和YUM等二进制文件分发的包管理系统,Portage是基于源代码分发的,必须编译后才能运行,对于大型软 件而言比较慢,不过正因为所有软件都是在本地机器编译的,在经过各种定制的编译参数优化后,能将机器的硬件性能发挥到极致。Gentoo是所有Linux 发行版本里安装最复杂的,但是又是安装完成后最便于管理的版本,也是在相同硬件环境下运行最快的版本。

  • 广义上SUSE Linux是一系列Linux发行版,第一个版本出现在1994年初,SUSE现存的最古老的商业发行版之一,起源于德国,而SUSE Linux 针对个人用户。SUSE Linux原是以Slackware Linux为基础,并提供完整德文使用界面的产品。1992年 Peter McDonald成立了Softlanding Linux System(SLS)这个发行版。这套发行版包含的软件非常多,更首次收录了X Window及TCP/IP等套件。Slackware就是一个基于SLS的发行版。


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

  • 一切皆文件,把几乎所有资源统统抽象为文件形式,包括硬件设备,甚至通信接口;

  • 由众多功能单一的程序组成,一个程序只做一件事,并且做好,组合小程序完成复杂任务;

  • 尽量避免与用户交互,目标:易于以编程方式实现自动化任务;

  • 使用文本文件保存配置信息。


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

  • Linux命令使用格式

#COMMAND OPTIONS ARGUMENTS

COMMAND,命令名称,如ls,cd,pwd等;

OPTIONS,用于指定命令的运行特性,有短选项和长选项两种表现形式,短选项可以合并,长选项不能合并;有些选项可以带参数,称为选项参数。

ARGUMENTS,命令的作用对象,即命令对什么生效。不同命令的参数不同,有些命令可同时带多个参数,之间用空白符分隔。

  • ifconfig:查看活动接口的ip地址

  • echo:回显

                echo  [SHORT-OPTION]…  [STRING]…   

                    -n: 不进行换行;

                    -e:让转义符生效;

                        \n:换行

                        \t:制表符

                STRING可以使用引号,单引号和双引号均可用;

                        单引号:强引用,变量引用不执行替换;

                            ~]# echo '$SHELL'

                        双引号:弱引用,变量引用会被替换;

                            ~]# echo "$SHELL"  

  • tty:显示终端连接标准输入设备的文件名称

  • startx:启动图形化桌面

  • export :设置或显示环境变量

#export HISTFILESIZE=750

#echo $HISTFILESIZE

  • pwd:显示工作目录

  • history

history [-c] [-d 偏移量] [n]

                    或 history -anrw [文件名]

                    或 history -ps 参数 [参数…]

                -c: 清空命令历史;

                -d offset:删除指定命令历史

                -r: 从文件读取命令历史至历史列表中;

                -w:把历史列表中的命令追加至历史文件中;

                history #:显示最近的#条命令;

调用命令历史列表中的命令:

                !#:再一次执行历史列表中的第#条命令;

                !!:再一次执行上一条命令;

                !STRING:再一次执行命令历史列表中最近一个以STRING开头的命令;

  • shutdown:系统关机

shutdown [OPTIONS…] [TIME] [WALL…]

                    OPTIONS:

                        -h: halt 将系统关机

                        -r:reboot 将系统关机之后重新启动

                        -c:cancel 取消执行中的shutdown命令

TIME(定时关机):

                        now 

                        hh:mm

                        +m

                         +0

WALL

  • poweroff:

  • reboot:重新开机

  • hwclock:显示或设定硬件时钟

    -s, –hctosys:以硬件为准,把系统调整为与硬件时间相同;

                        -w, –systohc:以系统为准,把硬件时间调整为与系统时钟相同;

  • date:显示日期时间

date [OPTION]… [+FORMAT]

                        FORMAT:格式符

                            %F

                            %T

                            %Y

                            %m

                            %d

                            %H

                            %M

                            %S

                            %s: 从1970年1月1号(unix元年)0点0分0秒到命令执行那一刻经过的秒数;

设定日期时间:date [MMDDhhmm[[CC]YY][.ss]]


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

内部命令:help COMMAND

外部命令:(1)命令自带简要格式帮助COMMAND –help (2)使用手册man COMMAND

man章节的划分:

    1:用户命令;

                        2:系统调用;

                        3:C库调用;

                        4:设备文件及特殊文件;

                        5:文件格式;(配置文件格式)

                        6:游戏使用帮助;

                        7:杂项;

                        8:管理工具及守护进行;


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

  /bin:所有用户可用的基本命令程序文件;

            /sbin:供系统管理使用的工具程序;

            /boot:引导加载器必须用到的各静态文件:kernel, initramfs(initrd), grub等;

            /dev:存储特殊文件或设备文件;

                设备有两种类型:字符设备(线性设备)、块设备(随机设备);

            /etc:系统程序的配置文件,只能为静态;

            /home:普通的家目录的集中位置;一般每个普通用户的家目录默认为此目录下与用户名同名的子目录,/home/USERNAME;

            /root:管理员的家目录;可选;

            /lib:为系统启动或根文件系统上的应用程序(/bin, /sbin等)提供共享库,以及为内核提供内核模块

                libc.so.*:动态链接的C库;

                ld*:运行时链接器/加载器;

                modules:用于存储内核模块的目录;

            /lib64:64位系统特有的存放64位共享库的路径;

            /media:便携式设备挂载点,cdrom, floppy等;

            /mnt:其它文件系统的临时挂载点;

            /opt:附加应用程序的安装位置;可选路径;

            /srv:当前主机为服务提供的数据;

            /tmp:为那些会产生临时文件的程序提供的用于存储临时文件的目录;可供所用户执行写入操作;有特殊权限;

            /usr:usr Hierarchy,全局共享的只读数据路径;

                bin, sbin

                lib, lib64

                include:C程序头文件;

                share:命令手册页和自带文档等架构特有的文件的存储位置

                local:另一个层级目录;

                X11R6:X-Window程序的安装位置

                src:程序源码文件的存储位置

            /usr/local:Local hierarchy,让系统管理员安装本地应用程序;也通常用于安装第三方程序;

            /var:/var Hierarchy,存储常发生变化的数据的目录;

                cache    Application cache data

                lib        Variable state information

                local    Variable data for /usr/local

                lock    Lock files

                log        Log files and directories

                opt        Variable data for /opt

                run        Data relevant to running processes

                spool    Application spool data

                tmp        Temporary files preserved between system reboots

  /proc:基于内存的虚拟文件系统,用于为内核及进程存储其相关信息;它们多为内核参数,例如net.ipv4.ip_forward, 虚拟为net/ipv4/ip_forward, 存储于/proc/sys/, 因此其完整路径为/proc/sys/net/ipv4/ip_forward;

  /sys:sysfs虚拟文件系统提供了一种比proc更为理想的访问内核数据的途径;其主要作用在于为管理Linux设备提供一种统一模型的的接口;

原创文章,作者:N22_Elephant,如若转载,请注明出处:http://www.178linux.com/33853

(0)
N22_ElephantN22_Elephant
上一篇 2016-08-15
下一篇 2016-08-15

相关推荐

  • 马哥教育网络班21期+第3周课程练习

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 #思路:使用who命令列出列出当明显登录的所有用户,使用cut命令取出用户名,使用uniq命令去重 [root@Centos6 ~]# who | cut -d" " -f1&n…

    Linux干货 2016-07-07
  • mysql or条件可以使用索引而避免全表

    在某些情况下,or条件可以避免全表扫描的。 1 .where 语句里面如果带有or条件, myisam表能用到索引, innodb不行。 1)myisam表:  CREATE TABLE IF NOT EXISTS `a` (   `id` int(1)&nb…

    Linux干货 2015-04-13
  • 行编辑器sed的应用

    sed sed:Stream EDitor,行编辑器 sed是一种流编辑器,它一次处理一行内容,处理时,把当前处理的行存储在临时缓冲区中, 称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后, 把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没 有改变,除非你使用重定向存储输出。 se…

    Linux干货 2016-08-10
  • Linux的文本处理工具及grep正则表达式的使用

    文本处理工具及grep正则表达式的使用 本章节学习的内容: 1、各种文本工具来查看、分析、统计文本文件 2、grep正则表达式 3、扩展正则表达式 一、抽取文本的工具: 1、按文件内容:less和cat 2、按文件截取:head和tail 3、按列抽取:cut 4、按关键字抽取:grep 二、文件查看命令:cat, tac,rev 1、命令cat: (1)文…

    Linux干货 2016-08-05
  • 关于 建立私有CA和申请证书

                               建立私有CA和申请证书            …

    系统运维 2016-09-23
  • Centos6启动流程详解

    一、名词解释 POST: Power-On-Self-Test,加电自检,是BIOS功能的一个主要部分。负责完成对CPU、主板、内存、硬盘子系统、显示子系统、串并行接口、键盘、CD-ROM光驱等硬件情况的检测。 BIOS:Basic Input andOutput System,保存着有关计算机系统最重要的基本输入输出程序,系统信息设置、开机加电自检程序和系…

    2017-03-28

评论列表(2条)

  • 马哥教育
    马哥教育 2016-08-17 15:41

    写的很好,排版还可以在漂亮一点,加油,举几个例子是不是更好那?

    • N22_Elephant
      N22_Elephant 2016-08-17 17:21

      @马哥教育先在笔记里写的再复制过来的 格式有点跑
      前面几天笔记没做好例子没写进去,后面会改进哒,O(∩_∩)O~