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

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

1.运算器对数据进行各种算数运算和逻辑运算,即对数据进行加工处理。 

2.控制器 

对程序规定的控制信息进行解释,依据其要求进行控制,调度程序、数据、地址,协调计算机各部分工作及内存与外设的访问等。

3.存储器    

存储程序、数据和各种信号、命令等信息,并在需要时提供这些信息,分为ROM和RAM。

ROM:read only memory,比如主板上的bios就是用的这货,断电了数据也还在。

RAM:随机存储器,不知道英语怎么写,例子就是用的内存,断电了就啥都没了。

 

4.

I/O设备  即input/output

这个举例说明吧。

输入设备;鼠标键盘这些都是输入设备

输出设备:显示器,打印机。

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


Linux的发行版:

slackware:

    suse

        opensuse

debian:不是一个盈利组织搞得,一群人自发人搞得

        ubantu

            mint

rehat:

        rhel:redhat enterprise linux 企业版

         centOS:一个三方组织,把rhel发布出来的各种源码版本,用完全兼容rhel的格式,重新编译一次,在网上免费提供下载。现在rehat已经把centos给收购了。

        他们又把个人版捐给fedora了- -,这是一个community来着,就可以在个人版上实验的功能是上线到enterprise上,所以enterprise上发行就很保守。

    LFS:linux from scratch

    Android:kernel+busybbox+jave虚拟机

APACHE

bsd

以上两个都是 你用了我代码没关系~别说是自己写的就好

GPL这个东西有点意思啊,本来是为了促进开源的。结果用了一点点gpl的东西就要全部开源,反而影响了整个开发。

        REDHAT 遵循GPL协定!!


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


linux的 哲♂学 思想:

    1、一切皆文件:

        把几乎所有资源,包括硬件设备都组织为文件格式

    2、由众多单一目的小程序组成:一个程序只实现一个功能,而且要做好

          组合小程序完成复杂任务

    3、尽量避免跟用户交互:

          目标:实现脚本 编程,以自动完成某些功能

    4、使用纯文本文件保存配置信息

          目标:一个文本编辑器技能完成系统配置工作

以下是自己理解:

1、一切皆文件:这个的感觉是linux下把文件的概念抽象得很广,比如目录、硬件设备,在linux下都是文件。 我的理解是linux的理解很倾向于底层架构,或者说很贴近底层。

2、由众多单一目的小程序组成:这个好理解,其实就是将功能碎块化了,更易组合和拼接。由其是和windows相比起来,系统会轻量化许多。

3、尽量避免跟用户交互。这个让我理解的话,其实就是将底部各功能集合成一个抽象的罗逻辑的概念。

4、使用纯文本文件保存配置信息。这个没什么感觉- –

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

 使用格式:

命令:

        输入命令,回车;

            提请shell程序找到键入命令所对应的课执行程序或代码

               并由其分析后提交给内核分配资源将其运行起来

在shell中可执行的命令有两类:

    内建命令:由shell自带的,而且通过某命令形式提供;  

            cd

    外部命令:在当前系统的某文件系统路径下有对应的可执行程序文件

            which  whereis

    区别内部或外部命令:

        #type COMMAND

运行命令:

【】可用可不用

    命令格式

        command 【OPTIONS选项】 【ARGUMENTS参数】

        选项:用于启用或关闭这个命令的某些命令功能

           短选项: -c, 例如 :-l -h 

            多个短选项可一起使用,如-L-H 可 -LH

           长选项:–word 例如:–long ,–human  一般不能合并

        参数:命令的作用对象  向命令提供数据

注意:多选项,以及多参数和命令直接都应该使用空白字符分割     ctrl+c 可以取消命令执行

ifconfig、echo、tty、startx、export、pwd、history、shutdown、poweroff、reboot、hwclock、date

(1)ifconfig:用来查看和配置网络设备。

常见参数有:

-a 显示详细信息:

eth0      Link encap:Ethernet  HWaddr 00:0C:29:94:5F:AD  
          inet addr:192.168.1.112  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::20c:29ff:fe94:5fad/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:22572 errors:0 dropped:0 overruns:0 frame:0
          TX packets:17628 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:8086511 (7.7 MiB)  TX bytes:5504786 (5.2 MiB)
          Interrupt:19 Base address:0x2000 

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)


(2)echo:用于在shell中打印shell变量的值,或者直接输出指定的字符串。

常用的参数有:

-n: 禁止自动添加换行符号;

没加参数的情况:

 echo 'test'
test

加了参数后:

[root@localhost ~]# echo -n 'test'
test[root@localhost ~]#

-e: 允许使用转义符;

\n: 换行

\t: 制表符

[root@localhost ~]# echo -e "te\t\tst\n\n"
test

(3)tty:显示出连接到当前标准输入的终端设备文件名

[root@localhost ~]# tty
/dev/pts/0

-s 什么也不显示,只返回退出状态值

[root@localhost ~]# tty -s
[root@localhost ~]#

-version显示版本信息并退出

[root@localhost ~]# tty --ver
tty (GNU coreutils) 8.4
Copyright (C) 2010 Free Software Foundation, Inc.
许可证:GPLv3+:GNU 通用公共许可证第3 版或更新版本<http://gnu.org/licenses/gpl.html>。
本软件是自由软件:您可以自由修改和重新发布它。
在法律范围内没有其他保证

(4)startx:进入图形界面

(5)export:设置或显示环境变量。

[root@localhost ~]# export HISTSIZE=1100
[root@localhost ~]# echo $HISTSIZE
1100
[root@localhost ~]# export HISTSIZE=1000
[root@localhost ~]# echo $HISTSIZE
1000

(6)pwd:显示当前目录

[root@localhost ~]# pwd
/root
[root@localhost ~]# cd /etc/terminfo/
[root@localhost terminfo]# pwd
/etc/terminfo

(7)histroy:显示历史命令

直接输入history是显示全部

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

[root@localhost ~]# history 6
  179  history --hel
  180  history 
  181  history 10
  182  history -d 20
  183  history 
  184  history 6

(8)shutdown:安全地关闭或重启Linux系统。

-r:重新启动系统

-h:关闭系统

-c:取消运行shutdown

(9)poweroff:关闭Linux系统

(10)reboot:重启Linux系统

(11)hwclock:查看和设置硬件时钟。

[root@localhost ~]# hwclock 
2016年07月12日 星期二 08时12分47秒  -1.016647 seconds

(12)date:显示和设置系统日期时间

[root@localhost ~]# date
2016年 11月 11日 星期五 20:16:27 CST
[root@localhost ~]# date 121206062016.23
2016年 12月 12日 星期一 06:06:23 CST

时间设定

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

Linux命令帮助的获取

内部命令:

# help COMMAND

比如cd之类的名字就可以这样

[root@localhost ~]# help cd
cd: cd [-L|-P] [dir]
    Change the shell working directory.
    
    Change the current directory to DIR.  The default DIR is the value of the
    HOME shell variable.
    
    The variable CDPATH defines the search path for the directory containing
    DIR.  Alternative directory names in CDPATH are separated by a colon (:).
    A null directory name is the same as the current directory.  If DIR begins
    with a slash (/), then CDPATH is not used.
    
    If the directory is not found, and the shell option `cdable_vars' is set,
    the word is assumed to be  a variable name.  If that variable has a value,
    its value is used for DIR.
    
    Options:
        -Lforce symbolic links to be followed
        -Puse the physical directory structure without following symbolic
    links
    
    The default is to follow symbolic links, as if `-L' were specified.
    
    Exit Status:
    Returns 0 if the directory is changed; non-zero otherwise.

外部命令:

(1) # COMMAND –help

# COMMAND -h

比如help命令本身

[root@localhost ~]# help --help
-bash: help: --: invalid option
help: usage: help [-dms] [pattern ...]

(2) 使用手册(manual)

# man COMMAND

手册页:/usr/share/man

 man1 … man8

 man1: 用户命令

 man2: 系统调用

 man3: C库调用

 man4: 设备文件及特殊文件

 man5: 配置文件格式

 man6: 游戏

 man7: 杂项

 man8: 管理类的命令

手册页:/usr/share/man

要查看指定章节中的手册:man # COMMAND

man命令的配置文件:/etc/man.config

MANPATH /PATH/TO/SOMEWHERE: 指明新的手册文件搜索位置

# man -M /PATH/TO/SOMEWHERE COMMAND: 到指定位置下搜索COMMAND命令的手册页并显示之;

man命令的操作方法:

Space, ^V, ^f, ^F: 向文件尾翻屏;

b, ^B: 向文件首部翻屏;

d, ^D: 向文件尾部翻半屏;

u, ^U: 向文件首部翻半屏;

RETURN, ^N, e, ^E or j or ^J: 向文件尾部翻一行;

y or ^Y or ^P or k or ^K:向文件首部翻一行;

q: 退出;

#:跳转至第#行;

1G: 回到文件首部

G:翻至文件尾部

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

基础目录:

[root@localhost ~]# ls
anaconda-ks.cfg  install.log  install.log.syslog
[root@localhost ~]# ls -a
.   anaconda-ks.cfg  .bash_logout   .bashrc  install.log         .tcshrc
..  .bash_history    .bash_profile  .cshrc   install.log.syslog  .Xauthority

Linux的文件系统:

 根文件系统(rootfs):

 root filesystem

 LSB, FHS: (FileSystem Heirache Standard)

 /etc, /usr, /var, /root, /home, /dev

 /boot:引导文件存放目录,内核文件(vmlinuz)、引导加载器(bootloader, grub)都存放于此目录;

 /bin:供所有用户使用的基本命令;不能关联至独立分区,OS启动即会用到的程序;

 /sbin:管理类的基本命令;不能关联至独立分区,OS启动即会用到的程序;

 /lib:基本共享库文件,以及内核模块文件(/lib/modules);

 /lib64:专用于x86_64系统上的辅助共享库文件存放位置;

 /etc:配置文件目录(纯文本文件);

 /home/USERNAME:普通用户家目录;

 /root:管理员的家目录;

 /media:便携式移动设备挂载点;

   cdrom

   usb

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

 /dev:设备文件及特殊文件存储位置;

   b: block device,随机访问

   c: character device,线性访问

 /opt:第三方应用程序的安装位置;

 /srv:系统上运行的服务用到的数据;

 /tmp:临时文件存储位置;

 /usr: universal shared, read-only data;

   bin: 保证系统拥有完整功能而提供的应用程序;

   sbin:

   lib:

   lib64:

   include: C程序的头文件(header files);

   share:结构化独立的数据,例如doc, man等;

   local:第三方应用程序的安装位置;

   bin, sbin, lib, lib64, etc, share

 /var: variable data files

   cache: 应用程序缓存数据目录;

   lib: 应用程序状态信息数据;

   local:专用于为/usr/local下的应用程序存储可变数据;

   lock: 锁文件

   log: 日志目录及文件;

   opt: 专用于为/opt下的应用程序存储可变数据;

   run: 运行中的进程相关的数据;通常用于存储进程的pid文件;

   spool: 应用程序数据池;

   tmp: 保存系统两次重启之间产生的临时数据;

 /proc: 用于输出内核与进程信息相关的虚拟文件系统;

 /sys:用于输出当前系统上硬件设备相关信息的虚拟文件系统;

 /selinux: security enhanced Linux,selinux相关的安全策略等信息的存储位置;

 Linux上的应用程序的组成部分:

   二进制程序:/bin, /sbin, /usr/bin, /usr/sbin, /usr/local/bin, /usr/local/sbin

   库文件:/lib, /lib64, /usr/lib, /usr/lib64, /usr/local/lib, /usr/local/lib64

   配置文件:/etc, /etc/DIRECTORY, /usr/local/etc

   帮助文件:/usr/share/man, /usr/share/doc, /usr/local/share/man, /usr/local/share/doc

 Linux下的文件类型:

   – (f):普通文件;

   d: 目录文件;

   b: 块设备;

   c: 字符设备;

   l: 符号链接文件;

   p: 管道文件;

   s: 套接字文件;socket; 

原创文章,作者:Net21_一的平方,如若转载,请注明出处:http://www.178linux.com/23895

(0)
Net21_一的平方Net21_一的平方
上一篇 2016-07-12
下一篇 2016-07-12

相关推荐

  • 2016.08.04学习笔记

    文本管理工具     1.cat:查看文件,读取键盘输入         -A:查看文件所有信息         -n:显示行数   &nb…

    Linux干货 2016-08-08
  • Nginx负载均衡

    基于Nginx的负载均衡以及高可用简单应用 一、负载均衡配置 1、Nginx负载均衡配置 前面配置好的Nginx,可以访问之后,克隆4台,统一配置为512M,因为我的电脑内存是4G的。一台用来访问,一台用来做调度器(Director),两台web服务器(real server),Nginx前面已经介绍过了,故在此简单介绍一下那台Director的配置。 2、…

    Linux干货 2016-12-29
  • 网卡名称更改

    网卡是计算机进行网络通信的必须的设备。在CentOS6及其更早的系统中,网卡设备在系统中的名称命名为eth#(#为0,1,2…之类的数字)。在内核版本为3.0.0及其以后的Linux发行版中,网卡设备在系统中名称变得很长,变得不好识别以及不利于管理。为了更好的管理,我们将新的网络设备命名改为传统的命名。 网卡名称更改 在CentOS系统中操作 在RHEL7系…

    Linux干货 2016-11-23
  • N25-第四周

    一、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。     [root@localhost ~]# cp -r /etc/skel /home/tuser1      [root@localhost ~]# chmo…

    Linux干货 2017-01-09
  • 自动化运维工具Puppet

        开发puppet模块,nginx负载均衡并反代动态请求至httpd,httpd用ajp连接器将反代请求至tomcat,并部署tomcat-session-memcached 架构图为 在master主机上开发的模块为: 1、chrony模块; ├── chrony│   ├── files│…

    2017-07-28
  • Linux初认识

    1、计算机的五大部件 CUP: CUP中包含了两大部件分别是运算器、控制器。其中运算器主要是进行数学运算、逻辑运算等各种运算的。除了两大部件以外CUP内部还有寄存器、缓存,它们是提升CUP性能的辅助性工具。 存储器: 内存RAM(Random Access Memory)。 输入设备Input: 输入设备用来下指令,提供数据等。输入设备有键盘,鼠标,麦克风等…

    Linux干货 2017-07-09

评论列表(1条)

  • 马哥教育
    马哥教育 2016-07-12 11:28

    写的很好,排版还可以在漂亮一点,加油