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

计算机的组成及其功能

  • 控制器(Control Unit)

  计算机的控制中心,分析、控制计算机各部件发出的指令,保证各部件协调运行。

  • 运算器(Arithmetical and Logical Unit)

  主要负责数据的算数运算(加减乘除)和逻辑运算(与或非)等操作。

  • 存储器(Memory Unit)

    主要用来存取程序和数据。

    按功能区分:

    • 主存储器(主存)

      相对存取速度快而容量小;也称为内存储器(简称内存),内存直接与CPU相连接,是计算机中主要的工作存储器,当前运行的程序与数据存放在内存中。

      易失性存储器:断电后,其内数据会丢失。

    • 辅存储器(辅存)

      相对存取速度慢而容量很大;也称为外存储器(简称外存),计算机执行程序和加工处理数据时,外存中的信息按信息块或信息组先送入内存后才能使用,即计算机通过外存与内存不断交换数据的方式使用外存中的信息。

      非易失性存储器:断电后,其内数据不会丢失。

        如硬盘、软盘、磁带、CD等

    按工作方式区分: 

    • 随机存储器(RAM)

      内存

    • 只读存储器(ROM)

      如硬盘、软盘、磁带、CD等

  • 输入设备(Input Device)

    主要用作程序和数据输入:键盘、鼠标等

  • 输出设备(Output Device)

    将计算机各类数据输出的设备:显示器、打印机等

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

linux三大主流发行版:RedHat、S.u.S.E、Debian

  • RedHat

    RHEL(Red Hat Enterprise Linux)为redhat的企业版,以稳定性著称,每18个月发行一次新版本;fedora:原redhat桌面版/个人版,6个月发行一次新版本,在fedora上测试稳定的新程序才会用于RHEL;CentOS是RHEL源码再编译后的产物,并在RHEL的基础上修复一直bug,现已被redhat收购,可以看作是免费的RHEL。

  • S.u.S.E

    基于Slackware的二次发行版,流行于欧美,openS'USE则是一个基于社区,开源的新版本。

  • Debian

    三大发行版中目前唯一不是由商业组织维护的发行版,最接近于原生linux的发行版。Debian是目前最遵循GUN规范的Linux系统。Ubuntu则是基于debian的二次发行版。

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

  • 一切皆文件

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

  • 由众多单一目的的小程序组成

  • 组合小程序完成复杂任务。

  • 尽量避免跟用户的交互

       便于实现脚本编程,做到功能自动化实现。

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

       目标:仅用文本编辑器即能完成系统配置工作。

Linux命令使用格式及相关示例

命令格式:

    COMMAND [OPTIONS…] [ARGUMENTS…]

    命令 [选项…] [参数…]

  • 选项

        用于启动或关闭命令的某个/某些功能;

        短选项:-char,如-l,-h

            多个短选项可合并使用,如:-la, -lrt

        长选项:–world,如–help 

  • 参数

        命令的作用对象

        作用:向命令提供数据

            示例: cd /var

  • Tips

        多选项与多参数间使用空白字符分隔

        Ctrl+C可中止命令执行


ifconfig 网络接口配置

ifconfig [interface]
ifconfig interface [aftype] options | address ...

不加任何参数,ifconfig显示当前活跃的网络接口信息:

[root@zj-5-2 ~]# ifconfig 
eth0      Link encap:Ethernet  HWaddr 00:0C:29:BC:E6:22  
          inet addr:192.168.101.202  Bcast:192.168.101.255  Mask:255.255.255.0
          inet6 addr: fe80::20c:29ff:febc:e622/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:144445 errors:0 dropped:0 overruns:0 frame:0
          TX packets:166481 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:22788392 (21.7 MiB)  TX bytes:83802356 (79.9 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:288220 errors:0 dropped:0 overruns:0 frame:0
          TX packets:288220 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:58042079 (55.3 MiB)  TX bytes:58042079 (55.3 MiB)

-a选项:显示所有网络接口信息,包含不活跃的网络接口;

ifconfig [interface]:显示指定的网络接口信息

[root@zj-5-2 ~]# ifconfig eth0
eth0      Link encap:Ethernet  HWaddr 00:0C:29:BC:E6:22  
          inet addr:192.168.101.202  Bcast:192.168.101.255  Mask:255.255.255.0
          inet6 addr: fe80::20c:29ff:febc:e622/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:144525 errors:0 dropped:0 overruns:0 frame:0
          TX packets:166552 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:22794642 (21.7 MiB)  TX bytes:83809018 (79.9 MiB)

激活/关闭指定网卡:

[root@zj-5-2 ~]# ifconfig eth0 up
[root@zj-5-2 ~]# ifconfig eth0 down

为指定网卡配置临时IP,立即生效:

如需永久生效,需修改文件:

/etc/sysconfig/network-scripts/ifcfg-xxx

[root@zj-5-2 ~]# ifconfig eth0 192.168.101.98
[root@zj-5-2 ~]# ifconfig eth0 192.168.101.98 netmask 255.255.255.128

echo 显示文本行

SYNOPSIS
       echo [OPTION]... [STRING]...

-n: 禁止自动换行

[root@zj-5-2 ~]# echo "12345"
12345
[root@zj-5-2 ~]# echo -n "12345"
12345[root@zj-5-2 ~]#

-e: 使转义字符生效

    \a: 蜂鸣

    \b: 退格,光标向前移一格

    \c: 禁止换行,并抑制\c后面的输出

    \n: 换行且光标移至行首

    \t: 插入Tab字符

    \\: 打印斜线

[root@zj-5-2 ~]# echo -e "123\n456"
123
456
[root@zj-5-2 ~]# echo -e "123\b456"
12456
[root@zj-5-2 ~]# echo -e "123\c456"
123[root@zj-5-2 ~]# echo -e "123\t456"
123	456
[root@zj-5-2 ~]# echo -e "123\\456"
123\456

\b\c可以配合用于某些提示信息,优化显示格式:

[root@zj-5-2 ~]# echo -e "Pls input a num:_\b\c";read INPUT
Pls input a num:_

tty 显示当前终端设备类型

  • 物理终端:

    直接接入本机的显示器键盘设备:console

    设备文件路径:/dev/console

  • 虚拟终端

    附加在物理终端之上的以软件方式虚拟实现的终端,CentsOS 6 默认启动6个虚拟终端;

  Ctrl+Alt+F[1-6]

    • 图形终端:附加在物理终端之上的以软件方式虚拟实现的终端,但额外会提供桌面环境;

    Ctrl+Alt+F7

  设备文件路径:/dev/tty#

  • 模拟终端

    图形界面下打开的终端窗口

  基于ssh协议或telnet协议等远程打开的界面;

  设备文件路径:/dev/pts/#  [0,∞]  

startx 启动X winddow

export 设置或显示环境变量

export: export [-nf] [name[=value] ...] or export -p

[root@zj-5-2 ~]# export
declare -x CVS_RSH="ssh"
declare -x DISPLAY="localhost:12.0"
declare -x G_BROKEN_FILENAMES="1"
declare -x HISTSIZE="1000"

设置环境变量:

若需永久设置环境变量,需要将其写入环境变量配置文件中;

[root@zj-5-2 ~]# export NAME=12345
[root@zj-5-2 ~]# NAME=12345;export NAME

pwd – print name of current/working directory

[root@zj-5-2 ~]# pwd
/root
[root@zj-5-2 ~]# cd /usr/appsoft/
[root@zj-5-2 appsoft]# pwd
/usr/appsoft

history -管理命令历史

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

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

环境变量:

HISTSIZE:命令历史纪录的条数;

HISTFILE:~/.bash_history

HISTFILESIZE:命令历史文件记录历史命令的条数;

history :

-a: 追加当前会话缓冲区的命令历史至历史文件中;

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

-c: 清空命令历史;(为了安全,可以把命令历史远程记录到其他设备)

快捷操作:

!#: 重复执行历史中第#条命令;

!string: 调用历史中最近一个以string开头的命令;

!!: 执行上一条历史命令

!$: 调用上一条历史命令的最后一个参数

         ESC, .  先按ESC,松开后按.号

shutdown – bring the system down

/sbin/shutdown [-t sec] [-arkhncfFHP] time [warning-message]

-k     发送提示信息但不真正关机

-r     重启

-h     关机后断电

-f     重启时跳过磁盘检查

-F     重启时强制进行磁盘检查

-c     取消关机或重启操作
warning-message
      Message to send to all users.

立即关机:

shutdown -h now
shutdown -h 0

立即重启:

shutdown -r now
shutdown -r 0

10分钟后关机、重启

shutdown -h +10
shutdown -r +10

发出提示,但并不真正关机:

[root@zj-5-2 ~]# shutdown -k "+10"

Broadcast message from root (pts/1) (Sat Jul  9 15:37:07 2016):

The system is going DOWN to maintenance mode in 10 minutes!
[root@zj-5-2 ~]# shutdown -k "now"

Broadcast message from root (pts/1) (Sat Jul  9 15:38:25 2016):

The system is going down to maintenance mode NOW!
[root@zj-5-2 ~]# shutdown -k now 'This system will reboot'  

Broadcast message from root (pts/1) (Sat Jul  9 15:48:04 2016):

This system will reboot 
The system is going down to maintenance mode NOW!

设置定时操作:

[root@zj-5-2 ~]# shutdown -h 23:14
[root@zj-5-2 ~]# shutdown -r 23:14

poweroff – 关机并切断系统电源

halt -p 关机后切断系统电源

reboot 重启系统

    -f: 强制重启系统,不调用shutdown指令的功能

hwclock – 查看硬件时间

当Linux启动时,系统时钟会去读取硬件时钟的设定,之后系统时钟即独立运作。

 hwclock -w or hwclock --systohc  系统时间同步到硬件时间
 hwclock -s or hwclock --hctosys  硬件时间同步到系统时间

设置硬件时间

 hwclock --set --date="9/22/96 16:45:05" “月/日/年 时:分:秒”

date – 显示和设置系统时间

SYNOPSIS
       date [OPTION]... [+FORMAT]
       date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]
       MM:月份
       DD:几号
       hh: 小时
       mm: 分钟
       CCYY:四位年份
       .ss: 秒

时间显示:

[root@zj-6-2 ~]# date +%D
07/09/16
[root@zj-6-2 ~]# date +%F
2016-07-09
[root@zj-6-2 ~]# date +%T
16:41:16

时间设置:

设置好时间后,将系统时间同步到硬件时间:hwclock -w

[root@zj-6-2 ~]# date 022318421989.30
1989年 02月 23日 星期四 18:42:30 CST
[root@zj-6-2 ~]# date
1989年 02月 23日 星期四 18:42:35 CST

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

type :可以区分内建命令和外部命令;

内建命令:

  help COMMAND

外部命令:

  • COMMAND –help,-h

  • 使用手册

   man COMMAND

  • info COMMAND

  • 程序自身帮助文档

   README

   INSTALL

  • 官方文档

man文档章节划分:

man1: 用户命令(User Commands)

man2: 系统调用

man3: C库调用

man4: 设备及特殊文件

man5: 配置文件格式

man6: 游戏

man7: 杂项

man8: 管理类的命令,如磁盘分区、格式化的命令

注意:有些关键命令在不止一个章节中存在帮助手册,可使用whatis查看

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

[root@zj-6-2 ~]# whatis read
read                 (1p)  - read a line from standard input
read                 (2)  - read from a file descriptor
read                 (3p)  - read from a file
read [builtins]      (1)  - bash built-in commands, see bash(1)
read                 (n)  - Read from a channel
[root@zj-6-2 ~]# man 2 read

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

Linux文件系统

 根文件系统(rootfs)

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

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

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

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

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

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

        /etc/opt:/opt目录中应用程序的配置文件(了解);

        /etc/X11: X协议的配置文件(了解);

        /etc/sgml:SGML配置文件(了解);

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

    /root: 管理员家目录;

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

        cdrom,usb

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

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

        b: block device

        可随机访问(比如硬盘)

        c: character device

        线性访问设备(必须按照一定顺序访问,比如键盘)

    /opt: 第三方命令程序安装目录;

    /srv: 系统上运行的服务用到的数据;(srv可记忆为service的简写)

    /tmp:临时文件存放目录

    /usr: universal shared,read-only data;全局共享只读资源存储;

        (通常会被关联到独立分区的目录,通常是最大的分区)

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

        ./sbin: 保证系统拥有完整功能而提供的应用程序;通常只有管理员可用

        ./lib:

        ./lib64: 库文件

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

        ./share: 结构化独立的数据,如doc,man等

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

            ./bin

            ./sbin

            ./lib64,./lib

            ./etc

            ./share

        ./X11R6:

        ./games:游戏存放目录

        ./src:源码存放目录

    /var: variable data files,通常关联至独立分区;

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

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

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

        ./log: 日志目录文件;

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

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

        ./spool:应用程序数据池;

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

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

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

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


原创文章,作者:N21_未来人,如若转载,请注明出处:http://www.178linux.com/23242

(0)
N21_未来人N21_未来人
上一篇 2016-07-09
下一篇 2016-07-09

相关推荐

  • Linux发展及简单命令

    一 计算机的组成及其功能 冯·诺依曼提出的计算机体系结构:计算机由控制器、运算器、存储器、输入设备、输出设备五部分组成。 二 Linux的发行版 Linux发行版主要有三个分支:Debian、Slackware、Redhat。 (1)Debian:(以社区的方式运作) Ubuntu:基于Debian开发的开源Linux操作系统,主要针对桌面和服务器; Lin…

    2018-03-02
  • SSH协议详解

    OpenSSH 一、 前言 使用SSH可以在本地主机和远程服务器之间进行加密地传输数据,实现数据的安全。而OpenSSH是SSH协议的免费开源实现,它采用安全、加密的网络连接工具代替了telnet、ftp等古老明文传输工具。 SSH(Secure Shell)是建立在应用层和传输层基础上的安全协议。SSH是目前较可靠,专为远程登陆会话和其他网络服务提供安全性…

    Linux干货 2016-12-16
  • 第八周作业

    shell脚本简用

    Linux干货 2017-11-27
  • TCP三次握手与四次挥手

                                                      &nbsp…

    2017-09-04
  • vim练习题

    #复制/etc/profile至/tmp/目录,用查找替换命令删除/tmp/profile文件中的行首的空白字符vim /tmp/profile%s@^[[:space:]]+@@g#复制/etc/rc.d/init.d/functions文件至/tmp目录,用查找替换命令为/tmp/functions的每行开头为空白字符的行的行首添加一个#号vim…

    Linux干货 2017-06-03
  • Linux基础解析;echo;man;centos;runlevel;PS1;screen;shell 倒三角;date -d等命令—-fazion blog at22.July

    Linux基础解析 fazionlan blog in 178Linux.July 20nd. 内核、版本信息 # uname -a                 &n…

    Linux干货 2016-07-29

评论列表(1条)

  • 马哥教育
    马哥教育 2016-07-12 14:46

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