第一周初入Linux世界 —马哥教育网络班N22_第一周课程练习

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

   

   计算机体系结构以图灵机理论为基础,属于冯·诺依曼体系结构。

   计算机由运算器、控制器、寄存器、输入输出设备组成

           运算器:是计算机中执行各种算术和逻辑运算操作的部件。运算器的基本操作包括加、减、乘、除四则运算,与、或、非、异或等逻辑操作,以及移位、比较和传送等操作.

           寄存器:是中央处理器内的组成部分。寄存器是有限存贮容量的高速存贮部件,它们可用来暂存指令、数据和地址。

           控制器:主要负责对指令译码,并且发出为完成每条指令所要执行的各个操作的控制信号。

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

   Debian, Slackware, RedHat,Gentoo,LFS

   Debian:

      Ubuntu

      Knopix

   Slackware:

      S.u.S.E

      OpenSUSE

   RedHat:

      Fedora

      CentOS

    Fedora是基于RHEL,CentOS,Scientific Linux, 和Oracle Linux的社区版本。相比RHEL,Fedora打包了显著的更多的软件包。其中一个原因是,多样化的社区参与Fedora的建设;它不只是一家公司。在这个过程中,CentOS用于活动,演示和实验,因为它是对最终用户免费提供的,并具有比Fedora的一个更长的发布周期(通常每隔半年左右发布一个新版本)。

    SUSE, SUSE Linux Enterprise Server (SLES), 和openSUSE 之间的关系类似于 Fedora, Red Hat Enterprise Linux, 和CentOS的关系。

    Debian是包括Ubuntu在内许多发行版的上游,而Ubuntu又是Linux Mint及其他发行版的上游。Debian在服务器和桌面电脑领域都有着广泛的应用。Debian是一个纯开源计划并着重在一个关键点上,稳定性。它同时也提供了最大的和完整的软件仓库给用户。

   

    gentoo是一个发行版,gentoo所有软件都是编译的,但不是手动编译,也像ubuntu一样,只要敲个命令emerg -e firefox就把软件装上了。系统会自动下源码(他的软件源里都是源码包),然后自动编译,然后安装。有依赖就自动解决依赖关系。麻烦的是要做一些配置,像arch一样,配置好了以后就省心了。只是安装软件的时间要比ubuntu长很多(因为要下载还要编译)。

       Ubuntu 严格来说不能算一个独立的发行版本, Ubuntu 是基于 Debian 的 unstable 版本加强而来,可以这么说 Ubuntu 就是一个拥有 Debian 所有的优点,以及自己所加强的优点的近乎完美的 Linux 桌面系统

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

    Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

    Linux的哲学思想:

    1、一切皆文件:

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

    2、由众多功能单一的程序组成:

            一个程序只做一件事,组合小程序完成复杂任务;

    3、尽量避免跟用户交互,易于以编程的方式实现自动化任务;

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

    5、只提供机制而非策略:

           提供什么样的功能,但又不要求怎么去实现功能;

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

<1> 命令的使用格式

1 、命令分为内部命令和外部命令:

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

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

2 、查看内部或外部命令是内部或外部如下:

#type COMMAND

 3 、运行命令格式如下:

COMMAND [OPTIONS…] [ARGUMENTS…]

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

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

多个短选项命令使用,例如 -l,-h 可写作 -lh;

长选项: –word, 例如 –long,–human-readable

参数:命令的作用对象

向命令提供数据

注意: 1. 多选项,以及多参数和命令之间都应该使用空白字符分隔

       2. 取消命令执行: Ctrl+c

<2>命令介绍

ifconfig

描述:ifconfig (ifconfig – configure a network interface) 配置网络接口

使用格式

ifconfig [interface]

ifconfig interface [aftype] options | address .

   (1) 不带[OPTION]情况

表示显示网卡的所有信息   例:

[root@zabbix ~]# ifconfig  
eth0      Link encap:Ethernet  HWaddr 00:0C:29:CF:A4:40  
          inet addr:192.168.2.99  Bcast:192.168.2.255  Mask:255.255.255.0
          inet6 addr: fe80::20c:29ff:fecf:a440/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:29636 errors:0 dropped:0 overruns:0 frame:0
          TX packets:21946 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:2922833 (2.7 MiB)  TX bytes:3375482 (3.2 MiB)
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:144 errors:0 dropped:0 overruns:0 frame:0
          TX packets:144 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:10584 (10.3 KiB)  TX bytes:10584 (10.3 KiB)

(2)带[OPTION]情况

interface 网卡接口的名称。这通常是一个驱动程序名称后跟一个单元号,例如eth0是第一个以太网接口

[root@zabbix ~]# ifconfig eth0
eth0      Link encap:Ethernet  HWaddr 00:0C:29:CF:A4:40  
          inet addr:192.168.2.99  Bcast:192.168.2.255  Mask:255.255.255.0
          inet6 addr: fe80::20c:29ff:fecf:a440/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:29772 errors:0 dropped:0 overruns:0 frame:0
          TX packets:22065 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:2935473 (2.7 MiB)  TX bytes:3387360 (3.2 MiB)

up 跟在被指定接口后面表示启用该接口,如果一个地址被分配给该接口则它是默认指定开启状态。

down 指定网络口被禁用。

-arp 启用或禁用网络接口上使用ARP协议

echo

描述:显示一行文字

使用格式

echo [SHORT-OPTION]… [STRING]…

 (1)  不带[OPTION]情况

直接显示一行文字结果,例:

[root@zabbix ~]# echo "hello"
hello

(2)  带[OPTION]情况

-n 显示文件后不换行

[root@zabbix ~]# echo -n "hello world"
hello world[root@zabbix ~]#

-e 使用反斜杠转义

\\ 反斜杠 转义使之成为一个字符 

[root@zabbix ~]# echo -e "hello \\ world"
hello \ world

\n 换一行

[root@zabbix ~]# echo -e "hello\nworld"
hello
world

其它转义用法使用man echo查询

-E 禁用反斜杠转义(默认)

tty

描述:显示控制终端的文件名称

使用格式

tty [OPTION]…

(1) 不 带[OPTION]情况

显示当前终端文件名

[root@mylab3 ~]# tty
/dev/pts/1

(2)  带[OPTION]情况

-s, –silent, –quiet 不显示任何信息,只返回一个退出状态

[root@mylab3 ~]# tty -s
[root@mylab3 ~]# echo $?
0

startx

描述:用来启动X Windwos 桌面命令

可用Ctrl+ALT+F1~F7来切换

export

描述:设置和显示环境变量

使用格式 :

export 变量名="值"

[root@mylab3 ~]# export UserName="li"
[root@mylab3 ~]# echo $UserName
li

pwd

描述:显示当前目录

[centos@zabbix home]$ pwd
/home

history

描述:管理命令历史

登录shell时,会读取命令历史文件中记录下的命令:~/.bash_history

登录进shell后新执行的命令只会记录在缓存中;这些命令会在用户退出时“追加”至命令历史文件中;

使用格式

不带参数

[root@zabbix ~]# history
    6  ll    
    7  history

带参数

-a:追加本次会话新执行的命令历史列表至历史文件中;

[root@zabbix ~]# history -a[root@zabbix ~]# history
    6  ll    
    7  history    
    8  history -a    
    9  history

-d:删除历史中指定的命令;

  111  tty -s
  112  echo $?
  113  man startx
  114  help startx
  115  startx --help
  116  which startx
  117  man export
  118  export UserName="li"
  119  echo $UserName
  120  history
[root@mylab3 ~]# history -d 118
  112  echo $?
  113  man startx
  114  help startx
  115  startx --help
  116  which startx
  117  man export
  118  echo $UserName
  119  history
  120  history -d 118
  121  history

-c:清空命令历史

[root@mylab3 ~]# history -c
[root@mylab3 ~]# history
    1  history
[root@mylab3 ~]#

不带参数

[root@zabbix ~]# history
    6  ll    
    7  history

poweroff、reboot

描述:关机命令和重启

使用格式

poweroff [OPTIONS…]

reboot [OPTIONS]

关机命令:

    CentOS 7:

    ~]# systemctl poweroff

    ~]# systemctl reboot

    *:

    ~]# poweroff

    ~]# halt

    ~]# reboot

shutdown

描述:参数中包含了关机、重启

使用格式

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

参数 

-r 重启 

-p 关机(默认) 

-h 关机 

-c 取消关机命令

hwclock

描述:显示硬件时钟

使用格式

hwclock [function] [option…]

参数      

-s  –hctosys 把系统时间设成跟硬件一样

-w  –systohc 把硬件时钟设成跟系统一样

date

描述:显示或设置系统时间

使用格式

date [OPTION]… [+FORMAT]

FORMAT:格式符号

%D

[root@zabbix ~]# date +%D
06/24/16

%F

[root@zabbix ~]# date +%F
2016-06-24

%T

[root@zabbix ~]# date +%T
22:46:36

其它格式可以使用man date查询

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

   获取命令的使用帮助:

   内部命令:

       help COMMAND

   外部命令:

       (1) 命令自带简要格式的使用帮助

        # COMMAND –help

       (2) 使用手册:manual

        位置:/usr/share/man

        # man COMMAND

    man文档的章节是如何划分的

        man1, man2, …

        1:用户命令;

        2:系统调用;

        3:C库调用;

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

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

        6:游戏使用帮助;

        7:杂项;

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

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

根据LSB,FHS:(fileSystem Heirache Standard)来命名,基础目录名称如下:

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

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

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

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

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

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

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

/root:管理员的家目录;

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

/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 date files

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

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

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

     locak:锁文件

     log:日志目录及文件;

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

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

     spool:应用程序数据池;

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

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

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

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

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

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

相关推荐

  • FHS文档系统各目录功能

         /bin 所有用户可用的基本命令程序文件     /sbin   供系统管理使用的工具程序     /boot 引导加载器必须用到的各静态文件 kernel,initramfs,grub  &nbsp…

    Linux干货 2016-10-18
  • 文件查找与解压缩

    文件查找: which 查找可以执行文件,只搜索$PATH里的目录 $ which ls /bin/ls which只搜索$PATH里的目录,如果搜索当前目录的文件是没有任何结果的 $ ls -l 总用量 0 -rw-rw-r– 1 huanghao huanghao 0 3月 1 12:24 a.txt $ which a.txt wherei…

    Linux干货 2017-08-04
  • 第十一周作业

    第十一周作业 1、详细描述一次加密通讯的过程,结合图示最佳 第一阶段:ClientHello: 支持的协议版本,比如tls 1.2; 客户端生成一个随机数,稍后用户生成“会话密钥” 支持的加密算法,比如AES、3DES、RSA; 支持的压缩算法; 第二阶段:ServerHello 确认使用的加密通信协议版本,比如tls 1.2; 服务器端生成一个随机数,稍后…

    2017-10-29
  • 马哥教育网络班21期+第9周课程练习

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; #!/bin/bash     #     nolog=`awk -F: '$…

    Linux干货 2016-09-19
  • rpm程序包管理器

    linux程序包管理器: 协作用户管理应用程序:安装、升级、查询、校验、卸载等 软件程序包生成过程:     源代码——》目标二进制格式–》组织成为一个或有限几个包文件     源代码:程序员写好的纯文本文档格式的代码     …

    Linux干货 2016-08-19

评论列表(1条)

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

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