马哥教育网络班22期+第1周课程练习

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

CPU:运算器、控制器、寄存器、缓存

存储器:内存,RAM(Random Access Memory)

Input:下指令,提供数据等

Output:输出数据加工的结果

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

Debian系列

        ubuntu

                mint

        knopix

Slackware系列

        S.u.S.E

               SLES

               openSUSE

RedHat系列

        Redhat 9.0

               RedHat Enterprise Linux:RHEL

                      CentOS:Community ENTerprise OS

               Fedora Core:6个月发行一次

Gentoo

ArchLinux

所有的Linux发行版都是基于Linux内核开发的。

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应该是最好的了。Debian的资料也很丰富,有很多支持的社区,有问题求教也有地方可去。

SUSE Linux原是以Slackware Linux为基础,并提供完整德文使用界面的产品。1992年 PeterMcDonald成立了Softlanding Linux System(SLS)这个发行版。这套发行版包含的软件非常多,更首次收录了XWindow及TCP/IP等包。openSUSE 是一个开放社区的计划,由Novell赞助,其前身为 SuSE Linux。就像大部分的发行版,openSUSE包含了默认的图形用户界面及命令行接口的选项,在安装过程中,用户可以从KDE、GNOME和Xfce中挑选作为想要的图形用户界面。

Redhat系列,包括RHEL(Redhat Enterprise Linux,也就是所谓的Redhat Advance Server收费版本),FedoraCore(由原来的Redhat桌面版本发展而来,免费版本)、CentOS(RHEL的社区克隆版本,免费)。Redhat应该说是在国内使用人群最多的Linux版本,甚至有人将Redhat等同于Linux,而有些老鸟更是只用这一个版本的Linux。所以这个版本的特点就是使用人群数量大,资料非常多,言下之意就是如果你有什么不明白的地方,很容易找到人来问,而且网上的一般Linux教程都是以Redhat为例来讲解的。Redhat系列的包管理方式采用的是基于RPM包的YUM包管理方式,包分发方式是编译好的二进制文件。稳定性方面RHEL和CentOS的稳定性非常好,适合于服务器使用,但是Fedora Core的稳定性较差,最好只用于桌面应用。

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

Arch Linux(或称Arch)是一种以轻量简洁为设计理念的Linux发行版。其开发团队秉承简洁、优雅、正确和代码最小化的设计宗旨。Arch Linux 项目受 CRUX 启发,由 Judd Vinet 于2002年启动。Arch Linux是起源于加拿大的一份致力于使用简单、系统轻量、软件更新速度快的GNU/Linux发行版。创始人Judd Vinet出于对Debian以及Red Hat的包管理器不满,以及受CRUX影响而创立。最初针对i686,但是如今对x86_64也支持良好,而且还派生出了针对ARM平台的Arch Linux ARM以及针对HURD内核的Arch Hurd。

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

(1)一切皆文件

          把几乎所有的资源统统抽象为文件形式:包括硬件设备,甚至通信接口等

(2)由众多功能单一的程序组成:一个程序只做一件事,并且做好

          组合小程序完成复杂任务

(3)尽量避免跟用户交互

          目标:易于以编程的方式实现自动化任务

(4)使用文本文件保存配置信息

        便于配置文件的查看与管理

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

命令的使用格式:COMMAND OPTIONS ARGUMENTS

ifconfig 查看ip地址

示例:# ifconfig 获取本机IP等相关信息


echo 回显

示例:# echo [SHORT-OPTION]…[STRING]…

-n:不进行换行

-e:让转义符生效

\n:换行

\t:制表符

STRING可以试用引号,单引号和双引号均可用

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

echo '$SHELL'–>$SHELL

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

echo "$SHELL"–>/bin/bash


tty 查看终端设备

示例:# tty

startx 进入图形界面

示例:# startx

export 设置或显示环境变量

示例:#export [-fnp] [name[=word]]…

-f:代表[name]中为函数名称

-n:删除指定的变量。变量实际上并未删除,只是不会输出到后续指令的执行环境中

-p:列出所有的shell赋予程序的环境变量


pwd 显示当前工作目录

示例:#pwd

history shell进程会在其会话中保存此前用户提交执行过的命令

示例:#history

-c:清空命令历史

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

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

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

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


shutdown 关机或重启命令

示例:#shutdown [OPTIONS…] [TIME] [WALL…]

-h:halt

-r:reboot

-c:cancel

TIME:now 马上执行

hh:mm 几点几分执行

+m 几分钟后执行

WALL:通知任何的连接终端

poweroff 关机

示例:#poweroff

reboot 重启

示例:#reboot


hwclock 显示或设定硬件时间

示例:#hwclock

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

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


date 显示或设定系统时间

示例:#date [OPTION]…[+FORMAT]

FORMAT 格式符

%F 显示当前日期

%T 显示当前时间

%Y 显示当前年份

%m 显示当前月份

%d 显示当前日

%H 显示当前时

%M 显示当前分

%S 显示当前秒

%s 从1970年1月1日(uxin元年)0点0分0秒到命令执行那刻经过的秒数

设定系统时间 date [MMDDhhmm[[CC]YY][.SS]]

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

内部命令:help COMMAND

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

                   (2)使用手册 manual

                              man COMMAND

                              SECTION:NAME:功能性说明

                                           SYNOPSIS:语法格式

                                           DESCRIPTION:描述

                                           OPTIONS:使用示例

                                           AUTHOR:作者

                                           BUGS:报告程序bug的方式

                                           SEE ALSO:参考

                                           …

                                            SYNOPSIS:[]可选内容

                                                                  <>必须提供的内容

                                                                  a|b|c多选一

                                                                  …同类内容可出现多个

                  (3)info COMMAND 获取命令的在线文档

                  (4)很多应用程序会自带帮助文档:/usr/share/doc/APP-VERSION

                            README:程序的相关信息

                            INSTALL:安装帮助

                            CHANGES:版本迭代时的改动信息

                  (5)主动发行版官方文档

                  (6)搜索引擎google

                            keyword filetype:pdf

                            keyword site:domain.tld

                            …

man文档章节划分:(1)用户命令:普通用户和管理员都可用的命令

                                   (2)系统调用

                                   (3)C库调用

                                   (4)设备文件及特殊文件

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

                                   (6)游戏使用帮助

                                   (7)杂项

                                   (8)管理工具及守护进程

                                     man CHAPTER COMMAND

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

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

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

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

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

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

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

/home:普通用户的家目录的集中位置:/home/USERNAME

             一般每个普通用户的家目录默认为此目录下与用户名同名的子目录

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

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

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

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

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

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

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

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

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

/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 应用程序缓存数据

         lib 程序的状态数据

         local /usr/local下程序变更数据

         lock 锁文件

         log 日志文件和目录

         opt /opt下程序变更数据

         run 运行中的进程相关数据

         spool 应用程序spool数据

         tmp 系统重启后依然需要留存的数据

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

           因此其完成路径为/proc/sys/net/ipv4/ip_forward

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

原创文章,作者:N22-上海-葡挞,如若转载,请注明出处:http://www.178linux.com/33508

(0)
N22-上海-葡挞N22-上海-葡挞
上一篇 2016-08-15 12:06
下一篇 2016-08-15 12:07

相关推荐

  • CentOS系统详解(启动流程、kickstart)&bash脚本编程之while/函数用法

    1、请详细描述CentOS系统的启动流程(详细到每个过程系统做了哪些事情) 2、为运行于虚拟机上的CentOS 6添加一块新硬件,提供两个主分区; (1) 为硬盘新建两个主分区;并为其安装grub; (2) 为硬盘的第一个主分区提供内核和ramdisk文件; 为第二个分区提供rootfs; (3) 为rootfs提供bash、ls、cat程序及所依赖的库文件…

    Linux干货 2016-11-28
  • 网卡别名与多网卡绑定

    网卡别名 一块网卡可以配置多个ip地址,叫做网卡别名   对虚拟主机有用 格式形如:eth0:1  eth0:2 …… 实现方法:   在命令行中临时设置: ifconfig 命令: ifconfig eth0:0 192.168.1.100/24 演示:   修改配置文件 在/etc/sysconfig/networ…

    Linux干货 2016-09-05
  • 系统之锹sysdig:Linux服务器监控和排障利器

    当你需要追踪某个进程产生和接收的系统调用时,首先浮现在你脑海中的是什么?你可能会想到strace,那么你是对的。你会使用什么样的命令行工具来监控原始网络通信呢?如果你想到了tcpdump,你又作出了一个极佳的选择。而如果你碰到必须追踪打开的文件(在Unix意义上:一切皆文件)的需求,可能你会使用lsof。 strace、tcpdump以及lsof,确实是些伟…

    Linux干货 2015-02-09
  • memcached简析

    一. memcached简介      memcached is a high-performance, distributed memory object caching system, generic in nature, but intended for use in    &nbs…

    2016-10-29
  • 远程使用sshd连接不上服务器解决方案

    前些天在学习linux的时候CRT怎么也连接不上我的linux服务器了,整了半天,请教了一些高人才把这个问题解决,现在整理一下我的解决方案。 大家可以看到配置都正确但就是连不上。 通过查看得出原来是22端口拒绝~! 那么我就去查看22端口有没有开启 大家可以看到我的22端口也就是sshd服务并没有开启。 我去开启我的sshd服务器,但是又出现了问题~! 随后…

    Linux干货 2016-03-28
  • week3:cut,sort,grep等shell工具的应用及用户,组管理类命令

    1、列出当前系统上所有已经登录的用户的用户名,注意,同一个用户登录多次只显示一次即可    who | cut -d' ' -f1 | sort –u 2、取出最后登录到当前系统的用户相关信息    who | cut -d' ' -f1 | tail -1 | id 3、取出当…

    Linux干货 2016-11-20

评论列表(1条)

  • 马哥教育
    马哥教育 2016-08-17 16:09

    写的很好,排版还可以在漂亮一点,加油,多举例说明