马哥教育络班22期-第1周博客作业

第一周博客作业

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

计算机由硬件和软件两大部分组成:

1.1 计算机硬件组成与功能

计算机硬件由运算器、控制器、存储器、输入设备、输出设备五大部分组成。

1.1.1 运算器

算术逻辑部件ALU,执行算术运算和逻辑运算。例如:加减乘除,移位,取模。运算器的核心是加法器。

1.1.2 控制器

控制器是计算机的指挥中心,它的主要作用是按照人们预先确定的操作步骤,控制着整个计算机部件之间协调运行。比如做计算,运算器先从存储器取数,运算器作运算,再回存存储器,这整个过程都由控制器协调完成。运算器和控制器统称为中央处理器(CPU)。

1.1.3 存储器

存储器是计算机用来存储信息的重要功能部件,主要功能是存放程序和数据。从存储器中取出信息称为读出;将信息存入存储器称为写入。存储器读出信息后,原内容保持不变;向存储器写入信息后,则原内容被新内容所代替。

存储器分为三种:

(1)内存储器(主存储器)

   ●只读存储器(ROM):只能读出,不能写入,用于存放内容不变的信息,断电后信息不会丢失。

   ●随机存储器(RAM):可随机存取,用于存放现场的程序和,断电后信息一会立即消失。

(2)外存储器(辅助存储器)

(3)高速缓冲存储器cache

内存和外存的区别:

内存用于存放计算机当前正在运行的程序和数据,速度较快、容量较小,可直接与央处理器CPU信息。

外存用于存放暂时不用的程序数据,速度相对较慢,容量较大,价格较低,不能直接与中央器CPU交换信息,但它可以与内存交换信息。因此,外存储器中的程序和数据必须调入内存方可被CPU访问。

1.1.4 输入设备

用来接收用户输入的原始数据和程序,并它们转换为计算机能识别的二进制数存入到内存中。常用的输入设备有键盘、鼠标、扫描仪等。

1.1.5 输出设备

用于将存放在内存中同计算机处理的结果转换为人们所能接受的形式。常用的输出设备有显示器、打印机、绘图仪。

1.2 计算机软件

计算机软件可分为:系统软件(system software)和应用软件(Appliation software)

1.2.1 系统软件

参与构成计算机系统、供用户直接使用,以扩展计算机硬件功能,使其管理协调整个系统,弥补用户操作习惯与计算机硬件、计算机设备的操作方法之间的鸿沟软件。系统软件一般是由计算机厂家或专业软件开发商提供。它主要包括操作系统(DOS、UNIX、Linux、OS、Windows等)、各种程序设计语言。

计算机语言:

1)低级语言

低语语言分为机器语言和汇编语言,它们都是“面向机器”。

●机器语言:是由二进制0和1组成,是计算机唯一能直接识别并执行的语言。特征:“面向机器”的语言,可以被计算机直接接收执行,由它编写的程序不易阅读,而且指令代码不易记忆。

●汇编语言:是用字母和符号等助记符表示指令和操作数地址的计算机语言,又称为符号语言。特征:便于阅读,编程速度、检查调式有进步,但仍然是“面向机器”的语言,计算机不能直接识别和直接执行汇编程序。

2)高级语言

更接近于人类“自然语言”的程序设计语言。特征:各种计算机都通用,源程序必须编译成二进制代码方可执行,面向过程的语言,不依赖于机器。不依赖于计算机的硬件,各类计算机都通用,易于人们理解和掌握。如C,C++,Java、Python、ruby

操作系统的功能:

     1)将硬件规格抽象为系统调用(System call);

    2)进程管理;

    3)安全管理;

    4)网络协议栈;

    5)内存管理;

6)文件系统;

7)硬件驱动;

1.2.2 应用软件

它是为计算机在特定领域中的应用而开发的专用软件,是用户为解决各类实例应用问题而编制的专用软件的总称。它主包括文字处理软件(Word、WPS)、表格处理软件Excel、辅助设计软件AutoCAD、实时控制软件。

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

linux发行版本思维导图.jpg

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

Linux的哲学思想:

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

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

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

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

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

ifconfig命令

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

【SYNOPSIS】

    ifconfig [OPTION]

参数
说明
up 启动指定网络设备/网卡;
down 关闭指定网络设备/网卡;
-arp 设置指定网卡是否支持ARP协议;
-promisc 设置是否支持网卡的promiscuous模式,如果选择此参数,网卡将接收网络中发给它所有的数据包;
-allmulti 设置是否支持多播模式,如果选择此参数,网卡将接收网络中所有的多播数据包;
-a 显示全部接口信息;
-s 显示摘要信息(类似于 netstat -i);
add 给指定网卡配置IPv6地址;
del 删除指定网卡的IPv6地址;
mtu<字节数> 设置网卡的最大传输单元 (bytes);
netmask<子网掩码> 设置网卡的子网掩码;
tunnel<地址> 建立IPv4与IPv6之间的隧道通信地址;
hw<网络设备类型><硬件地址> 设置网络设备的类型与硬件地址;
io_addr<I/O地址> 设置网络设备的IRQ;
media<网络媒介类型> 设置网络设备的媒介类型;
mem_start<内存地址> 设置网络设备在主内存所占用的起始地址;
metric<数目> 指定在计算数据包的转送次数时,所要加上的数目;
-broadcast<地址> 将要送往指定地址的数据包当成广播数据包来处理;
-pointopoint<地址> 与指定地址的网络设备建立直接连线,此模式具有保密功能;

【EXAMPLES】

[root@localhost ~]# ifconfig   #处于激活状态的网络接口
[root@localhost ~]# ifconfig -a  #所有配置的网络接口,不论其是否激活
[root@localhost ~]# ifconfig eth0  #显示eth0的网卡信息
[root@localhost ~]# ifconfig eth0 down  #关闭eth0网卡
[root@localhost ~]# ifconfig eth0 up    #开启eth0网卡
[root@localhost ~]# ifconfig eth0 add 33ffe:3240:800:1005::2/ 64  #为网卡添加IPv6地址
[root@localhost ~]# ifconfig eth0 del 33ffe:3240:800:1005::2/ 64 #为网卡删除IPv6地址
[root@localhost ~]# ifconfig eth0 hw ether 00:AA:BB:CC:DD:EE  #修改MAC地址
[root@localhost ~]# ifconfig eth0 192.168.1.56  #给eth0网卡配置IP地址
[root@localhost ~]# ifconfig eth0 192.168.1.56 netmask 255.255.255.0  
#给eth0网卡配置IP地址,并加上子掩码
[root@localhost ~]# ifconfig eth0 192.168.1.56 netmask 255.255.255.0 broadcast 192.168.1.255   
#给eth0网卡配置IP地址,加上子掩码,加上个广播地址
[root@localhost ~]# ifconfig eth0 mtu 1500  #设置能通过的最大数据包大小为 1500 bytes
[root@localhost ~]# ifconfig eth0 arp   #开启arp功能
[root@localhost ~]# ifconfig eth0 -arp  #关闭arp功能

echo命令

echo – display a line of text回显文字

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

【SYNOPSIS】

  echo [SHORT_OPTION]…[STRING]…

【OPTIONS】

参数 说明
-n 不进行换行;
-e

让转义符生效;使用-e选项若字符串中出现以下字符,则特别加以处理而不会将它当成一般文字输出:

\a 发出警告声;

\b 删除前一个字符;

\c 最后不加上换行符号;

\f 换行但光标仍旧停留在原来的位置;

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

\r 光标移至行首,但不换行;

\t 插入tab;

\v 与\f相同;

\\ 插入\字符;

\nnn 插入nnn(八进制)所代表的ASCII字符;

-E 关闭反斜线控制字符的转换(默认是关闭的)

实例1:运用\t来区隔abc还有def,以及用\n将def换至下一行。

[root@zck ~]# echo -e "a\tb\tc\nd\te\tf"
a   b   c
d   e   f

实例2:

[root@zck ~]# echo -e "\x61\x09\x62\x09\x63\x0a\x64\x09\x65\x09\x66"
a	b	c
d	e	f
#与实例1差不多,只是换用了十六进制编码。

实例3:

[root@zck ~]# echo -ne "a\tb\tc\nd\te\bf\a"
a   b   c
d   f[root@zck ~]#
#因为 e字母后面是删除键(\b),因此输入结果就没有e了
在结束时听到一声铃响,那是\a的杰作!由于同时使用了-n选项,因此 shell prompt紧接在第二行之后。
若不用-n的话,那在\a后再加个\c,也是同样的效果。

实例4:用echo来检查变量值:

[root@zck ~]# A=B
[root@zck ~]# echo $A
B
[root@zck ~]# echo $?
0

实例5:直接显示为hscripts Hiox India

[root@zck ~]# echo "hscripts Hiox India"
hscripts Hiox India

实例6:将删除空格,带-e参数

[root@zck ~]# echo -e "hscripts \bHiox \bIndia"
hscriptsHioxIndia

实例7:使用echo命令输出tab空格标签

[root@zck ~]# echo -e "hscripts\tHiox\tIndia"
hscripts   Hiox   India

实例8:单引号和双引号的区别

[root@localhost ~]# echo '$SHELL'
$SHELL
#单引号;强引用,变量引用不执行替换;
[root@localhost ~]# echo "$SHELL"
/bin/bash
#双引号:弱引用,变量引用会被替换;
[root@zck ~]# echo ${SHELL}  #变量引用的正规符号
/bin/bash

tty命令

tty – print the file name of the terminal connected to standard input

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

【SYNOPSIS】

  echo [OPTION]…

【OPTIONS】

参数 说明
-s –silent, –quiet 什么也不显示,只返回退出状态值

【EXAMPLES】

[root@zck ~]# tty
/dev/pts/0
#显示当前终端

startx命令

startx – initialize an X session

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

【SYNOPSIS】

  startx [ [ client ] options … ] [ [ server ] [ display ] options … ]

【OPTIONS】

参数 说明
-x 强制启动X会话

【EXAMPLES】

[root@zck ~]# startx   #启动图形界面
[root@zck ~]# startx -w    #强制启动X会话
[root@zck ~]# startx &    #启动图形界面在后台运行

export命令:

export – set the export attribute for variables

用于将shell变量输出为环境变量,或者将shell函数输出为环境变量。

【SYNOPSIS】

  export [options]

【OPTIONS】

参数
说明
-f 代表[变量名称]中为函数名称;
-n 删除指定的变量。变量实际上并未删除,只是不会输出到后续指令的执行环境中;
-p 列出所有的shell赋予程序的环境变量;

【EXAMPLES】

[root@zck ~]# export    #查看当前系统环境变量
[root@zck ~]# zzz=kkk    #设置一个变量
[root@zck ~]# export zzz    #加入环境变量
[root@zck ~]# env|grep zzz    #查看环境变量
zzz=kkk
[root@zck ~]# export -n zzz    #删除环境变量
[root@zck ~]# env | grep zzz   #查看删除结果
[root@zck ~]# export PATH=$PATH:/usr/local/bin
#将/usr/local/bin加入环境变量

pwd命令:

pwd – print name of current/working directory

显示当前用户的工作目录。

【SYNOPSIS】

  pwd [options] …

【OPTIONS】

参数
说明
-L –logical,显示当前目录
-P –physical,显示当前目录的实际物理地址,而非使用连结 (link) 路径

【EXAMPLES】

[root@centos6 ~]# cd /var/mail/  #注意,/var/mail是一个连结档
[root@centos6 mail]# pwd
/var/mail   #列出目前的工作目录
[root@centos6 mail]# pwd -P   #带-P参数,结果差很多
/var/spool/mail
[root@centos6 mail]# ls -ld /var/mail
lrwxrwxrwx. 1 root root 10 May 31 18:59 /var/mail -> spool/mail
#因为/var/mail是连结档,连结到/var/spool/mail

history命令

显示shell进程其会话中保存此前用户曾执行过的命令;

【SYNOPSIS】

history: history [-c] [-d offset] [n]

or history -anrw [filename]

or history -ps arg [arg…]

【OPTIONS】

参数
说明
-c 清空所有命令历史
-d offset(偏移量) 删除指定命令历史
-r 从文件读取命令历史至历史列表中
-w 把历史列表中的命令追加至历史文件中
history n 显示最近的n条命令

【EXAMPLES】

[root@zck ~]# history    #查看所有执行过的命令
    1  history 
    2  ls
    3  pwd
    4  fc -l
    5  history 
    6  history
[root@zck ~]# history 2   #显示2条执行过的命令
    6  history
    7  history 2
[root@zck ~]# !3   #执行编号是3的历史命令
pwd
/root
[root@zck ~]# history -c  #清空历史记录

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

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

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

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

注意:命令的重复执行有时候需要依赖于幂等性;

调用上一条命令的最后一个参数:

快捷键:ESC+.

字符串:!$

控制命令历史记录的方式:

环境变量:HISTOCONTROL

    ignoredups:忽略重复的命令;

    ignorespace:忽略以空白字符开头的命令;

    ignoreboth:以上两者同时生效;

shutdown命令

shutdown – Halt, power-off or reboot the machine

关机或重启命令。

【SYNOPSIS】

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

【OPTIONS】

参数
说明
-h 将系统的服务停掉后,立即关机;(常用)
-r 将系统的服务停掉后就重新启动;(常用)
-c 取消已经在进行的shutdown命令内容,当执行“shutdown -h 11:50”指令时,只要按+键就可以中断关机的指令;
-k 并非真正关机,只向所有人显示警告信息。
TIME 指定系统关闭时间。首先,可以是 hh:mm 格式的绝对时间,其中 hh 指的是小时(一到二位数),mm 指的是分钟(二位数)。第二种是 +m 格式,其中 m 指的是等待的分钟数。 now 是 +0 的别名,立即。
-f 重启时跳过磁盘检测;
-F 重启时强制磁盘检测;
-t 延迟关机时间;-t后面加秒数,亦即『过几秒后关机』的意思
-n 不经过init程序,直接以shutdwon的功能来关机;

【EXAMPLES】

[root@zck ~]# shutdown -h now    #立即关机
[root@zck ~]# shutdown -h 22:30  #晚上11点关机
Shutdown scheduled for Fri 2016-08-12 22:30:00 CST, use 'shutdown -c' to cancel.
[root@zck ~]# shutdown -c  #在另外一个窗口执行shutdown -c取消
Broadcast message from root@zck.com (Fri 2016-08-12 14:30:11 CST):
The system shutdown has been cancelled at Fri 2016-08-12 14:31:11 CST!
 
[root@zck ~]# shutdown -r now    #立即重启
[root@zck ~]# shutdown -r +30 'reboot now'   
#30分钟后重启,并且提示'reboot now'
[root@zck ~]# shutdown -k now "The Server will shutdown now"
#向所有登录的用户发出信息

halt、poweroff、reboot命令

halt, poweroff, reboot – Halt, power-off or reboot the machine

停止、关闭电源、重启机器命令。

【SYNOPSIS】

halt [OPTIONS…]

poweroff [OPTIONS…]

reboot [OPTIONS…]

【OPTIONS】

参数
说明
-n 关闭操作系统时不执行sync操作;
-w 不真正关闭操作系统,仅在日志文件“ /var/log/wtmp
-d 关闭操作系统时,不将操作写入日志文件“/var/log/wtmp”中添加相应的记录;
-f 强制关闭操作系统,reboot加此选项,则是强制重新启动,不调用shutdown指令的功能。
-i 关闭操作系统之前关闭所有的网络接口;
-h 关闭操作系统之前将系统中所有的硬件设置为备用模式。
-p 当关闭系统时执行关闭电源操作。当以 poweroff 方式调用halt 时,此为缺省参数

【EXAMPLES】

[root@zck ~]# reboot -f   #强制重新开机,不调用shutdown指令的功能
[root@zck ~]# reboot -i   #关闭网络设置后再重新启动系统
[root@zck ~]# reboot -n   #保存数据后再重新启动系统
[root@zck ~]# reboot -d   #重新启动时不把数据写入记录文件/var/tmp/wtmp
[root@zck ~]# poweroff   #关闭系统电源

hwclock命令

hwclock – query or set the hardware clock (RTC)

显示和设置硬件时钟命令

【SYNOPSIS】

hwclock [function] [option…]

【OPTIONS】

参数
说明
-r –show,读取并打印硬件时钟
-s –hctosys,将硬件时钟同步到系统时钟
-w –systohc,将系统时钟同步到硬件时钟
–adjust hwclock每次更改硬件时钟时,都会记录在/etc/adjtime文件中。使用–adjust参数,可使hwclock根据先前的记录来估算硬件时钟的偏差,并用来校正目前的硬件时钟。
–debug 显示hwclock执行时详细的信息。
–directisa hwclock预设从/dev/rtc设备来存取硬件时钟。若无法存取时,可用此参数直接以I/O指令来存取硬件时钟。
–hctosys 将系统时钟调整为与目前的硬件时钟一致。
–set –date=<日期与时间> 设定硬件时钟。
–show 显示硬件时钟的时间与日期。
–systohc 将硬件时钟调整为与目前的系统时钟一致。
–test 仅测试程序,而不会实际更改硬件时钟。
–utc 若要使用格林威治时间,请加入此参数,hwclock会执行转换的工作。

【EXAMPLES】

实例1:clock和wclock是一个命令

[root@zck ~]# type hwclock
hwclock is /usr/sbin/hwclock
[root@zck ~]# ls -l /usr/sbin/hwclock
-rwxr-xr-x. 1 root root 45304 Nov 20  2015 /usr/sbin/hwclock
[root@zck ~]# type -a hwclock
hwclock is /usr/sbin/hwclock
[root@zck ~]# type -a clock
clock is /usr/sbin/clock
[root@zck ~]# ls /usr/sbin/clock
/usr/sbin/clock
[root@zck ~]# ls -l /usr/sbin/clock
lrwxrwxrwx. 1 root root 7 Jul 27 17:31 /usr/sbin/clock -> hwclock

实例2:显示硬件时钟

[root@zck ~]# hwclock
Fri 12 Aug 2016 04:04:34 PM CST  -0.628246 seconds
[root@zck ~]# hwclock -r
Fri 12 Aug 2016 04:04:43 PM CST  -0.163134 seconds
[root@zck ~]# hwclock --show
Fri 12 Aug 2016 04:04:57 PM CST  -0.803466 seconds

实例3:设置硬件时钟

[root@zck ~]# hwclock --set --date="09/08/2015 15:33:33"
[root@zck ~]# hwclock
Tue 08 Sep 2015 03:33:38 PM CST  -0.928727 seconds

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

(0)
zhuckeezhuckee
上一篇 2016-08-14
下一篇 2016-08-14

相关推荐

  • Zabbix-3.2.3实现微信(WeChat)告警

    Zabbix-3.2.3实现微信(WeChat)告警 zabbix Zabbix可以通过多种方式把告警信息发送到指定人,常用的有邮件,短信报警方式,但是越来越多的企业开始使用zabbix结合微信作为主要的告警方式,这样可以及时有效的把告警信息推送到接收人,方便告警的及时处理。 关于邮件报警可以参考:Zabbix Web 邮件报警 一、微信企业号申请 地址: …

    2017-04-21
  • Linux发行版、发行版联系与区别

    参考这篇文章<2016年最佳Linux发行版排行榜> http://mt.sohu.com/20160128/n436204298.shtml #1 最好的回归发行版:OpenSUSE OpenSUSE背后的SUSE公司是最古老的Linux企业,成立于Linus Torvalds放出Linux的一年之后。它其实早于Red Hat诞生,同时也是社区…

    Linux干货 2016-08-15
  • 马哥教育网络班21期+第7周课程练习

    1、创建一个10G分区,并格式为ext4文件系统; (1) 要求其block大小为2048, 预留空间百分比为2, 卷标为MYDATA, 默认挂载属性包含acl; [root@CentOS7 ~]# fdisk /dev/sdb Command (m for help): n Select…

    Linux干货 2016-08-22
  • 02葵花宝典之bash特性及文件入门

    文件管理 目录 命令替换 命令执行状态 元数据 时间戳

    2018-03-11
  • 第五周着重练习扩展正则元字符及find命令

    1、显示当前系统上root、fedora或user1用户的默认shell; grep -E "^(root|hadoop|user1)\>" /etc/passwd |cut -d":" -f1,7 2、找出/etc/rc.d/init.d/functi…

    Linux干货 2016-12-13
  • 创建CA证书

    创建CA证书 CA证书         CA 也拥有一个证书(内含公钥和私钥)。网上的公众用户通过验证 CA 的签字从而信任 CA ,任何人都可以得到 CA 的证书(含公钥),用以验证它所签发的证书。       &nb…

    Linux干货 2017-07-23

评论列表(1条)

  • 马哥教育
    马哥教育 2016-09-14 07:58

    总结的非常详细,继续保持。