马哥教育网络班21期 第一周课程练习
一、计算机的组成
1、计算机主要由以下几部分组成:运算器 控制器 存储器(编址存储单元)、 输入、输出设备
2、运算器负责运算:只能做二进制的数学、逻辑运算,
控制器:控制由哪得到数据,放到哪去,协调运算器、存储器、输入、输出等设备
运算器、控制器整合到一起就是常说的中央处理器,也就是CPU。
3、存储器负责数据存储,由内存(RAM)、硬盘、U盘、光盘、软盘等组成,其中内存的读写速度最快,最接近CPU的运算速度(不算CPU的缓存),但内存的容量较小造价高,而且断电后数据会丢失。
硬盘:主数据存储,也可以叫数据仓库,它的容量较大,读写速度比内存慢,但比其它的存储要快,硬盘容量可以根据需要扩展。
U盘:便携式存储,容量现在比光盘大,读写速度比光盘要快,主要是使用方便,小巧,易携带。
光盘:在U盘出现之前是容量比较大的便携存储工具,分为两种,一种是只能写一次,可反复读取;一种是可多次擦除,写入,可反复读取,不过每重写一次都会丢失一部分容量。
软盘现在已经基本不用。
4、输入/输出设备:也是人机交互工具,
输入设备:告诉CPU要处理什么,怎么处理,比较常见的有键盘、鼠标、扫描仪等;
输出设备:CPU运算完成后告诉我们处理结果,常见的有显示器、打印机等。
二、Linux的发行版
Linux目前分三个主流发行版
1、slackware
slackware有很多二次发行版,主要有,suse,基于suse三次开发的有 opensuse(开源)、SLES(企业级)
2、debian
debian是最接进原始Linux的发行版,对使用者要求较高。
debian的二次发行版有ubuntu,基于ubuntu的三次发行版有mint
3、redhat
redhat分为企业版 rhel,rhel发行比较保守,大约18个左右发行一个新版本,后续支持可长达10提左右。
个人版:fedora 主要用于测试软件、硬件,发行很快,大约6个月发行一次。
CentOS是rhel的二次编译版本,适用于服务器,稳定,但发行较慢。
三、Linux的哲学思想
Linux的开发,主要是至力于提供一种完全开源、完全免费的平台及应用,通过GPL、LGPL、BSD等协定,Linux应用迅速发展,取之开源,用之开源。
Linux的主要特点:
1、自由:Linux是一个完全自由的软件,它可以自由下载、自由学习、自由改编、自由分发等。
2、文件:Linux是以文件为基本的系统,它的几乎一切资源皆文件,包括硬件资源都是由文件组成。
3、单一:Linux是由功能单一的小程序组成,它的小程序只为实现一个功能,要求功能要准确。
4、交互:Linux尽量避免跟用户交互,它通过编辑脚本自动实现所需功能;
5、文本:Linux所有文件皆是文本格式,可以通过合适的文本编辑器编辑,也就是用一个适合的文本编辑器就可以实现系统配置。
四、Linux 命令 (强行终止命令:ctrl+c;输出分屏显示命令(管道命令):|more)
1、Linux 命令格式
COMMAND [options] [arguments]
命令的选项、参数所使用符号的含义:
[] :可省略之内容
<> : 必须提供
a|b : 二选一,或多选一
1) COMMAND: 表示命令的名称, 如 ifconfig、ls 、help
命令分为内部命令和外部命令
内部命令:当前shell自带的命令,且通过某命令格式提供
外部命令:当前系统下的某一目录中有此命令的可执行文件
查看内、外命令:# type COMMAND (命令名)
如:
注:命令要求在命令提示符(#)后直接写,不能有其它字符在命令前面!
2) options:定义命令的执行特性,打开或关闭某些功能,可以有长短两种选项:
长选项: 用 — 引导,后面跟完整的单词,如 –help
短选项: 用 – 引导,后面跟单个的字符, 如 -a
多个短选项可以组合使用,例如:
-h -l -a -hla
但是长选项不能组合使用,如 –help后面就不能再跟另外一个单词了。
注意,命令与选项,选项与选项之间,选项与参数之间,参数与参数之间必须有空格!
3) arguments:表示命令的作用对象,向命令提供数据
如:ls /etc/shells
/etc/shells 就是ls 命令的作用对象。
注意:取消命令执行、强行中止命令用Ctrl + C 键
2、常用命令
1)ifconfig:查看和配置网络设备
(1)命令格式:ifconfig [网络接口] [参数]
(2)命令选项:
up 启动指定网络设备/网卡。
down 关闭指定网络设备/网卡。该参数可以有效地阻止通过指定接口的IP信息流,如果想永久地关闭一个接口,我们还需要从核心路由表中将该接口的路由信息全部删除。
arp 设置指定网卡是否支持ARP协议。
-promisc 设置是否支持网卡的promiscuous模式,如果选择此参数,网卡将接收网络中发给它所有的数据包
-allmulti 设置是否支持多播模式,如果选择此参数,网卡将接收网络中所有的多播数据包
-a 显示全部接口信息
-s 显示摘要信息(类似于 netstat -i)
add 给指定网卡配置IPv6地址
del 删除指定网卡的IPv6地址
<硬件地址> 配置网卡最大的传输单元
mtu<字节数> 设置网卡的最大传输单元 (bytes)
netmask<子网掩码> 设置网卡的子网掩码。掩码可以是有前缀0x的32位十六进制数,也可以是用点分开的4个十进制数。如果不打算将网络分成子网,可以不管这一选项;如果要使用子网,那么请记住,网络中每一个系统必须有相同子网掩码。
tunel 建立隧道
dstaddr 设定一个远端地址,建立点对点通信
-broadcast<地址> 为指定网卡设置广播协议
-pointtopoint<地址> 为网卡设置点对点通讯协议
multicast 为网卡设置组播标志
address 为网卡设置IPv4地址
txqueuelen<长度> 为网卡设置传输列队的长度
(3)示例
A:显示网络配置信息(当前活动的网卡)
# ifconfig
显示eth0的MAC地址,IP地址、网关、子网等信息
B:开、关网络端口
# ifconfig eth0 down/up
# ifconfig eth0 down
当网卡关闭后,直接执行ifconfig 命令无法显示已关闭的网卡信息,只有加上eth0参数后才能显示关闭的网卡信息
# ifconfig eth0 up
网卡打开后,ifconfig可以直接显示配置信息
C:修改MAC地址:
# ifconfig eth0 hw ether 00:AA:BB:CC:DD:EE
注意:ifconfig 修改的配置信息,只在系统重启前有效,如果想保存配置信息,需要修改配置文件。
2)echo:显示字符
(1)命令格式:echo [-ne][字符串]
(2)命令选项:
-n:显示字符串不换行
-e:对字符转译,若字符串中出现以下字符,则特别加以处理,而不会将它当成一般
文字输出:
\a 发出警告声;
\b 删除前一个字符;
\c 最后不加上换行符号;
\f 换行但光标仍旧停留在原来的位置;
\n 换行且光标移至行首;
\r 光标移至行首,但不换行;
\t 插入tab;
\v 与\f相同;
\\ 插入\字符;
\nnn 插入nnn(八进制)所代表的ASCII字符;
(3)示例
A:输出字符,最后有回车键(换行)
#echo aaaaa
B:输出字符,最后没有回车键(不换行)
#echo -n aaaaa
C:输出字符前插入TAB键
#echo -e "\taaaaa"
3) tty:命令用于显示终端机连接标准输入设备的文件名称
(1)命令格式 :tty [-s]
(2)命令选项:
-s :不显示任何信息,只回传状态代码
(3)示例:
A:显示当前在那个模拟终端下
命令:#tty
4)startx:初始化一个 X 会话(启动图形界面)
(1)命令格式:
startx [ -d Display:0 ] [ -t | -w ] [ -x Startup | [ -r Resources ] [ -m Window_Manager ] ] [ -wait ]
(2)命令选项:
-d Display :0 指定在启动过程中传递给 X 客户机的 X 服务器的显示名称。
-m Window_Manager 当未找到 startup 脚本时,启动窗口管理器。
-r Resources 当未找到 startup 脚本时,装入资源文件。
-t 为一个 X 终端启动 X 客户机。
-w 为工作站上的 X 窗口会话启动 X 服务器和 X 客户机。
-wait 当 xdm 命令调用 startx 时,防止重新启动 X 会话。
-x Startup 使用 startup 脚本启动 X 窗口会话。
(3)示例
A:在工作站或终端上启动X会话:
命令:startx
注意:
1、如果已经启动了startx ,再输入命令会报错,只能启动一个图形界面,这时可用ctrl+alt+f7(f1-f7)来切换图形/命令界面
2、如果想关闭图形界面可以在命令界面输入:init <1-6>,1到6不同,可以上网上学习下
5)export:设置或显示环境变量
(1)命令格式:export [-fnp][变量名称]=[变量设置值] (变量修改只对当前登录有效)
(2)参数:
-
-f 代表[变量名称]中为函数名称。
-
-n 删除指定的变量。变量实际上并未删除,只是不会输出到后续指令的执行环境中。
-
-p 列出所有的shell赋予程序的环境变量。
(3)示例
A:显示当前shell环境变量:
命令:#export [p]
B:修改变量
命令:export PWD="mage"
注意:用export命令通常显示的结果会出现分屏显示,这时就要用到管道命令 [|more],这个参数的作用就是将输出结果分屏显示,用空格翻页,命令格式如下:
#export |more
6)pwd:查看”当前工作目录“的完整路径
(1)命令格式:pwd [选项]
(2)选项
一般情况下不带任何选项或参数
如果目录是链接时:
格式:pwd -P 显示出实际路径,而非使用连接(link)路径。
(3)示例
A:显示当前路径
命令:pwd
7)history:显示输入过的历史命令
(1)命令格式:history [选项]
Linux系统当你在shell(控制台)中输入并执行命令时,shell会自动把你的命令记录到历史列表中,一般保存在用户目录下的.bash_history文件中。默认保存1000条,你也可以更改这个值。如果你键入 history, history会向你显示你所使用的前1000个历史命令,并且给它们编了号,你会看到一个用数字编号的列表快速从屏幕上卷过。你可能不需要查看1000个命令中的所有项目, 当然你也可以加入数字来列出最近的 n 笔命令列表。linux中history命令不仅仅让我们可以查询历史命令而已. 我们还可以利用相关的功能来帮我们执行命令。运行特定的历史命令history会列出bash保存的所有历史命令,并且给它们编了号,我们可以使用“!接编号”的方式运行特定的历史命令.
(2)选项:
n :数字,要列出最近的 n 笔命令列表
-c :将目前的shell中的所有 history 内容全部消除
-a :将目前新增的history 指令新增入 histfiles 中,若没有加 histfiles,则预设写入 ~/.bash_history
-r :将 histfiles 的内容读到目前这个 shell 的 history 记忆中
-w :将目前的 history 记忆内容写入 histfiles
(3)示例:
A:显示所有应用过的命令
命令格式:#history |more (太多,用管道命令分屏显示)
B:显示最后20条命令:
命令格式:#history 20
C:重复执行第278条命令:
命令格式:!278
8)shutdown
(1)命令格式:shutdown [-efFhknr][-t 秒数][时间][警告信息]
(2)选项:
-c 取消一项已经运行关机命令。
-f 重新启动时不执行fsck。
-F 重新启动时执行fsck。
-h 将系统关机。
-k 只是送出信息给所有用户,但不会实际关机。
-n 不调用init程序进行关机,而由shutdown自己进行。
-r shutdown之后重新启动。
-t<秒数> 送出警告信息和删除信息之间要延迟多少秒。
[时间] 设置多久时间后执行shutdown指令,时间格式是hh:mm,now是立即执行。
[警告信息] 要传送给所有登入用户的信息。
(3)示例:
A:15分钟后重启
命令:shoutdown -r +15 "restart in 15 min"
B:终止15分钟重启命令(注意:如果不是用ctrl+c 强行终止程序,就需要切换到其它模拟终端输入命令)
命令:shoutdown -c
C:向用户输出警告信息,但不关机
命令:shoutdown -k now "Server would shutdown in 15 min!"
9)poweroff:关闭计算机操作系统并且切断系统电源
(1)命令格式:poweroff [选项]
(2)选项:
-n, –no-sync 在做重起或关机时不做同步处理
-f, –force 不论主机处于何种状态均强制立即关机。
-p, –poweroff 在做关机时,关闭电源
-w, –wtmp-only 实际上并不重新启动或停止,只是写wtmp纪录
-q, –quiet 只显示错误信息
-v, –verbose 输出运行过程中的详细信息
–help 显示帮助信息
–version 显示版本信息
(3)示例:
立即关机:#poweroff
10)reboot:重启系统
(1)命令格式:reboot [选项]
(2)选项:
-f 强制重新开机,不调用shutdown指令的功能。
-i 在重开机之前,先关闭所有网络界面。
-p 在关机后暂时关闭电源再启动(相当于冷启动,检测硬件)
-n 重开机之前不检查是否有未结束的程序。
-w 仅做测试,并不真的将系统重新开机,只会把重开机的数据写入/var/log目录下的wtmp记录文件。
(3)示例:
A:重启系统(热启,不检测硬件)
命令: #reboot
B:重启系统(冷启动,检测硬件)
命令:#reboot -p
11)hwclock:显示与设定硬件时钟
在Linux中有硬件时钟与系统时钟等两种时钟。硬件时钟是指主机板上的时钟设备,也就是通常可在BIOS画面设定的时钟。系统时钟则是指kernel中的时钟。当Linux启动时,系统时钟会去读取硬件时钟的设定,之后系统时钟即独立运作。所有Linux相关指令与函数都是读取系统时钟的设定。
(1)命令格式:hwclock [–adjust][–debug][–directisa][–hctosys][–show][–systohc][–test]
[–utc][–version][–set –date=<日期与时间>]
(2)选项:
–adjust hwclock每次更改硬件时钟时,都会记录在/etc/adjtime文件中。使用–adjust参数,可使hwclock根据先前的记录来估算硬件时钟的偏差,并用来校正目前的硬件时钟。
–debug 显示hwclock执行时详细的信息。
–directisa hwclock预设从/dev/rtc设备来存取硬件时钟。若无法存取时,可用此参数直接以I/O指令来存取硬件时钟。
–hctosys 将系统时钟调整为与目前的硬件时钟一致。
–set –date=<日期与时间> 设定硬件时钟。
–show 显示硬件时钟的时间与日期。
–systohc 将硬件时钟调整为与目前的系统时钟一致。
–test 仅测试程序,而不会实际更改硬件时钟。
–utc 若要使用格林威治时间,请加入此参数,hwclock会执行转换的工作。
–version 显示版本信息。
(3)示例:
A:显示当前硬件时钟
命令:hwclock
B:同步系统时钟
命令:#hwclock –systohc
12)date:显示或设置系统时间与日期
(1)命令格式:date [选项] [参数]
(2)选项:
-d<字符串>:显示字符串所指的日期与时间。字符串前后必须加上双引号;
-s<字符串>:根据字符串来设置日期与时间。字符串前后必须加上双引号;
-u:显示GMT;
–help:在线帮助;
–version:显示版本信息。
(3)参数:
<+时间日期格式>:指定显示时使用的日期时间格式。
%H 小时,24小时制(00~23)
%I 小时,12小时制(01~12)
%k 小时,24小时制(0~23)
%l 小时,12小时制(1~12)
%M 分钟(00~59)
%p 显示出AM或PM
%r 显示时间,12小时制(hh:mm:ss %p)
%s 从1970年1月1日00:00:00到目前经历的秒数
%S 显示秒(00~59)
%T 显示时间,24小时制(hh:mm:ss)
%X 显示时间的格式(%H:%M:%S)
%Z 显示时区,日期域(CST)
%a 星期的简称(Sun~Sat)
%A 星期的全称(Sunday~Saturday)
%h,%b 月的简称(Jan~Dec)
%B 月的全称(January~December)
%c 日期和时间(Tue Nov 20 14:12:58 2012)
%d 一个月的第几天(01~31)
%x,%D 日期(mm/dd/yy)
%j 一年的第几天(001~366)
%m 月份(01~12)
%w 一个星期的第几天(0代表星期天)
%W 一年的第几个星期(00~53,星期一为第一天)
%y 年的最后两个数字(1999则是99)
(4)示例:
A:显示当前系统时间
命令:#date
五、如何在Linux系统上获取命令的帮助信息,请详细列出,并描述man文档的章节是如何划分的
1、在Linux 命令的获取命令帮助
1)内部命令:
查看命令是内部还是外部:#type command
内部命令获取帮助:help command [|more]
示例:
2)外部命令获取帮助
(1)简单命令帮助
命令格式:command [-h] 或 command [–help]
如果help文档过长或超出一屏显示,可以命令后加管道命令:|more,分屏显示
命令格式:command [-h] | more 或 command [–help] |more
示例:
A:ls –help:
只能看到结尾。
B:ls –help |more
分屏查看,按空格键翻页。
(2)使用命令帮助手册查看命令帮助
命令格式:man command
示例:man reboot
(3)信息页方式查看命令帮助
命令格式:info command
示例 info reboot
(4)程序的帮助文档
A:readme:程序介绍文档
B:install:安装文档
C:changelog:修改信息
(5)程序官方文档
官方网站:documentation中有详细的说明
(6)发行版的官方文档
(7)google
3)man文档的章节是如何划分的
man1:用户命令
man2:系统调用
man3:C库调用
man4:设备文件及特殊文件
man5:配置文件格式
man6:游戏
man7:杂项
man8:管理类命令
章节内部分类:
NAME:程序名
SYNOPSIS:概要
DESCRIPTION:应用描述
OPTIONS:选项
ENVIRONMENT:环境
FILES:命令日志
AUTHOR:作者
REPORTING BUGS:BUGS报告
COPYRIGHT:版权
SEE ALSO :其它命令
UPSTART:程序时间
六:linux目录结构:
1、/:根目录
2、/bin: 系统有很多放置执行档的目录,但/bin比较特殊。因为/bin放置的是在单人维护模式下还能够被操作的指令。在/bin底下的指令可以被root与一般帐号所使用。
主要有:cat,chmod(修改权限), chown, date, mv, mkdir, cp, bash等等常用的指令。
3、/boot :主要放置开机会使用到的文件,包括Linux核心文件以及开机选单与开机所需设定档等等。
4、 /dev: 在Linux系统上,任何装置与周边设备都是以文件的型态存在于这个目录当中。只要通过存取这个目录下的某个文件,就等于存取某个装置。
比较重要的文件有/dev/null, /dev/zero, /dev/tty , /dev/lp*, / dev/hd*, /dev/sd*等等
5、/etc:系统主要的设定档几乎都放置在这个目录内,例如人员的帐号密码档、各种服务的启始档等等。 一般来说,这个目录下的各文件属性是可以让一般使用者查阅的,但是只有root有权力修改。
比较重要的文件有:
/etc/inittab, /etc/init.d/, /etc/modprobe.conf, /etc/X11/, /etc/fstab, /etc/sysconfig/。
另外,其下重要的目录有:
/etc/init.d/ :所有服务的预设启动script都是放在这里的。
6、/home:这是系统预设的用户目录(home directory)。
在你新增一个一般用户帐号时,预设的用户都会放到这里来。比较重要的是,用户目录有两种代号:
~ :代表当前用户,而 ~guest:则代表用户名为guest的用户目录。
7、/lib: 系统的函数库非常的多,而/lib放置的则是在开机时会用到的函数库,以及在/bin或/sbin底下的指令会呼叫的函数库 。
8、/media:media是媒体的英文,顾名思义,这个/media底下放置的就是可移除的装置。包括软碟、光碟、DVD等等装置都暂时挂载于此。
常见的文件名有:/media/usb, /media/cdrom。
9、/mnt: 如果妳想要暂时挂载某些额外的装置。
10、/opt:这个是给第三方软件放置的目录 。
11、/root:系统管理员(root)目录。
12、/sbin Linux有非常多指令是用来设定系统环境的,这些指令只有root才能够利用来设定系统,其他用户最多只能用来查询而已。放在/sbin底下的为开机过程中所需要的,里面包括了开机、修复、还原系统所需要的指令。
13、/srv:srv可以视为service的缩写,是一些网路服务启动之后,这些服务所需要取用的资料目录。 常见的服务例如WWW, FTP等等。
14、/tmp:这是让一般使用者或者是正在执行的程序暂时放置文件的地方。这个目录是任何人都能够存取的,所以需要定期的清理一下。
原创文章,作者:泥人,如若转载,请注明出处:http://www.178linux.com/21974
评论列表(1条)
写的很好,排版还可以在漂亮一点,就不要截黑屏上来了,加油