黑马程序员+linux从入门到精通配套笔记Word文档格式.doc
《黑马程序员+linux从入门到精通配套笔记Word文档格式.doc》由会员分享,可在线阅读,更多相关《黑马程序员+linux从入门到精通配套笔记Word文档格式.doc(164页珍藏版)》请在冰点文库上搜索。
①点击“文件”菜单,选择“新建虚拟机…”选项,选择“自定义”点击下一步
②选择兼容性,默认即可,直接下一步
③选择镜像文件的时候选择“稍后….”,点击下一步
④选择需要安装的操作系统
⑤选择虚拟机的名称(名称将会后期出现在左侧)和设置虚拟系统的安装位置
⑥cpu设置
⑦分配内存
⑧选择网络类型,选择nat即可
NAT:
配置好之后windows即可和虚拟机进行互相通信,但是教室内的其他同学是访问不了的,只能自己可以访问虚拟机中的操作系统;
桥接:
配置好之后其他同学也可以访问你的虚拟机操作系统;
⑨后续默认的步骤,直接下一步
⑩点击完成
5.2、使用VirtualBox(了解)
①点击左上角的新建按钮
②选择操作系统,由于centos在列表中是没有的,所以选择centos对应的主线redhat32位
③选择内存大小
④创建磁盘,默认即可
⑤选择磁盘类型,默认即可
⑥选择磁盘大小的分配方式,方式为动态分配即可
⑦设置磁盘的位置和大小确认
6、Linux操作系统安装
6.1、使用VMwareworkstation进行安装
a.由于之前没有指定iso镜像文件,因此此处需要先指定系统镜像文件
b.运行此虚拟机
注意:
如果开机之后鼠标点进去虚拟机出不来,则可以按下组合快捷键“ctrl+alt”。
如果启动之后出现类似提示框(不是错误框)则勾选不再提示,并且确定即可:
如果在启动时候出现下述错误,则说明电脑没有开启cpu的虚拟化,如果需要开启,则需要重启计算机,并且在开启的时候进入主板的BIOS设置开启虚拟化,然后保存设置重启电脑:
c.选择升级/安装已经存在的系统(通过↑/↓方向键)按下回车
d.在检测到光盘(disc)之后选择跳过完整性检测直接进行安装
随后提示不支持的硬件,忽略直接下一步
e.点击下一步
f.选择在安装过程中使用的语言
g.选择键盘类型,美国式英语
h.选择存储设备类型
i.对磁盘进行空白盘的初始化操作,选择“是,忽略所有的数据”
j.设置网卡自动连接,依次应用–关闭–下一步
k.设置时区,默认亚洲/上海
l.设置密码,设置好了之后下一步
m.使用全部的磁盘空间来安装Linux系统,点击下一步
n.选择安装的Linux类型
o.选择开发–开发工具,前面复选框√,点击下一步
p.等待软件包的安装
等待完成,点击重新引导
q.重新引导之后点击“前进”
r.在协议许可界面选择同意,然后点击前进
s.创建普通用户帐号(可选),然后点击前进
t.时间设置,设置好之后前进
u.关于kdump,之后点击完成
v.登录界面
如果需要使用非列出的用户进行登录则点击其他,否则双击列出的用户名即可,随后输入密码。
w.使用root帐号登录之后的提示
x.看到的桌面
6.2、使用virtualBox安装Linux(了解)
a.选择需要安装的系统镜像
b.启动虚拟机
如果鼠标在虚拟机中想退出到windows,则需要按下ctrl+alt组合键(空格右侧的)
c.后续全部操作按照上面6.1章节中的步骤继续安装即可。
7、终端
在目前的桌面系统中,如果需要关机可以通过“系统”“关机”进行关机,那么后期服务器都是命令行模式的,届时这种方式将不好用,那会要怎么关机呢?
答:
可以通过命令行方式进行关机。
命令的输入需要在终端中进行输入。
所谓终端,其实类似于windows下cmd命令行模式。
在终端中可以输入需要执行的一些指令,同样可以通过终端进行关机(注意:
以后在工作中很少会去使用关机命令,会使用重启比较多)。
终端的形式:
终端组成部分:
如何使用终端命令进行关机?
在Linux中关机命令有以下几个:
shutdown-hnow(正常关机)、halt(关闭内存)、init0
8、使用VMware备份操作系统
在vm中备份方式有2种:
快照、克隆。
快照:
又称还原点,就是保存在拍快照时候的系统的状态(包含了所有的内容),在后期的时候随时可以恢复。
【侧重在于短期备份,需要频繁备份的时候可以使用快照,做快照的时候虚拟的操作系统一般处于开启状态】
①在菜单“虚拟机”-“快照”-“拍摄快照”
输入相关信息,点击拍摄快照
②搞事情
③使用快照恢复搞事情之前的状态
路径:
虚拟机–快照–快照管理器
恢复好之后的状态:
克隆:
就是复制的意思。
【侧重长期备份,做克隆的时候是必须得关闭】
先关机–右键需要克隆的虚拟机–管理–克隆
上述的名称和位置与之前新建虚拟机的时候是一样的含义。
等待克隆完成
克隆好的服务器相关密码帐号等信息与被克隆的系统一致。
二、Linux系统的文件
1、文件与文件夹(目录)
什么是文件?
一般都是一个独立的东西,可以通过一些特定的工具进行打开,并且其中不能在包含除了文字以外的东西。
例如:
什么是文件夹?
可以在其中包含其他文件的东西。
为什么先讲文件?
1:
日常运维工作中,有近一半以上的工作内容精力其实都是对文件的操作。
2:
Linux本身也是一个基于文件形式表示的操作系统。
Linux一切皆文件。
①在windows是文件的,在Linux下同样也是文件;
②在windows不是文件的,在Linux下也是以文件的形式存储的;
日常学习中和日常工作中,对于文件的操作的都有哪些种类?
创建文件、编辑文件、保存文件、关闭文件、重命名文件、删除文件、恢复文件。
2、Linux系统的文件目录结构
目录结构:
Bin:
全称binary,含义是二进制。
该目录中存储的都是一些二进制文件,文件都是可以被运行的。
Dev:
该目录中主要存放的是外接设备,例如盘、其他的光盘等。
在其中的外接设备是不能直接被使用的,需要挂载(类似windows下的分配盘符)。
Etc:
该目录主要存储一些配置文件。
Home:
表示“家”,表示除了root用户以外其他用户的家目录,类似于windows下的User/用户目录。
Proc:
process,表示进程,该目录中存储的是Linux运行时候的进程。
Root:
该目录是root用户自己的家目录。
Sbin:
全称superbinary,该目录也是存储一些可以被执行的二进制文件,但是必须得有super权限的用户才能执行。
Tmp:
表示“临时”的,当系统运行时候产生的临时文件会在这个目录存着。
Usr:
存放的是用户自己安装的软件。
类似于windows下的programfiles。
Var:
存放的程序/系统的日志文件的目录。
Mnt:
当外接设备需要挂载的时候,就需要挂载到mnt目录下。
Linux的基本指令
一、指令与选项
什么是Linux的指令?
指在Linux终端(命令行)中输入的内容就称之为指令。
一个完整的指令的标准格式:
Linux通用的格式
#指令主体(空格)[选项](空格)[操作对象]
一个指令可以包含多个选项
操作对象也可以是多个
需要让张三同学帮忙去楼下小卖铺买一瓶农夫山泉水和清风餐巾纸,在这个指令中“买东西”是指令的主体,买的水和餐巾纸是操作的对象,农夫山泉、清风是操作的选项。
二、基础指令(重点)
1、ls指令
含义:
ls(list)
用法1:
#ls
列出当前工作目录下的所有文件/文件夹的名称
用法2:
#ls路径
列出指定路径下的所有文件/文件夹的名称
关于路径(重要):
路径可以分为两种:
相对路径、绝对路径。
相对路径:
相对首先得有一个参照物(一般就是当前的工作路径);
相对路径的写法:
在相对路径中通常会用到2个符号“./”【表示当前目录下】、“../”【上一级目录下】。
绝对路径:
绝对路径不需要参照物,直接从根“/”开始寻找对应路径;
用法3:
#ls选项路径
在列出指定路径下的文件/文件夹的名称,并以指定的格式进行显示。
常见的语法:
#ls-l路径
#ls-la路径
选项解释:
-l:
表示list,表示以详细列表的形式进行展示
-a:
表示显示所有的文件/文件夹(包含了隐藏文件/文件夹)
上述列表中的第一列字符表示文档的类型,其中“-”表示改行对应的文档类型为文件,“d”表示文档类型为文件夹。
在Linux中隐藏文档一般都是以“.”开头。
用法4:
#ls-lh路径
列出指定路径下的所有文件/文件夹的名称,以列表的形式并且在显示文档大小的时候以可读性较高的形式显示
参数含义:
2、pwd指令
用法:
#pwd (printworkingdirectory,打印当前工作目录)
3、cd指令
命令:
#cd (changedirectory,改变目录)
作用:
用于切换当前的工作目录的
语法:
#cd路径
案例:
当前在“/”下,需要使用绝对路径切换到/usr/local。
当前在/usr/local下,需要使用相对路径切换目录到home目录下的Linux123用户家目录中去。
补充:
在Linux中有一个特殊的符号“~”,表示当前用户的家目录。
切换的方式:
#cd~
4、mkdir指令
指令:
mkdir(makedirectory,创建目录)
语法1:
#mkdir路径【路径,可以是文件夹名称也可以是包含名称的一个完整路径】
在当前路径下创建出目录“yunweihenniux”
ls列出的结果颜色说明,其中蓝色的名称表示文件夹,黑色的表示文件,绿色的其权限为拥有所有权限。
在指定路径下创建出一个文件夹“yunweihenniux”
语法2:
#mkdir-p路径
当一次性创建多层不存在的目录的时候,添加-p参数,否则会报错
语法3:
#mkdir路径1路径2路径3….【表示一次性创建多个目录】
5、touch指令
touch
创建文件
#touch文件路径 【路径可以是直接的文件名也可以是路径】
使用touch来在当前路径下创建一个文件,命名为Linux.txt
使用touch来同时创建多个文件
使用touch来在“Linux123”用户的家目录中创建文件,Linux.txt
6、cp指令
cp (copy,复制)
复制文件/文件夹到指定的位置
#cp被复制的文档路径文档被复制到的路径
使用cp命令来复制一个文件
Linux在复制过程中是可以重新对新位置的文件进行重命名的,但是如果不是必须的需要,则建议保持前后名称一致。
使用cp命令来复制一个文件夹
当使用cp命令进行文件夹复制操作的时候需要添加选项“-r”【-r表示递归复制】,否则目录将被忽略
7、mv指令
mv(move,移动,剪切)
移动文档到新的位置
#mv需要移动的文档路径需要保存的位置路径
确认:
移动之后原始的文件还在不在原来的位置?
原始文件是不在原始位置的
使用mv命令移动一个文件
使用mv命令移动一个文件夹
在Linux中重命名的命令也是mv,语法和移动语法一样。
8、rm指令
rm(remove,移除、删除)
移除/删除文档
#rm选项需要移除的文档路径
选项:
-f:
force,强制删除,不提示是否删除
-r:
表示递归
删除一个文件
在删除的时候如果不带选项,会提示是否删除,如果需要确认则输入“y/yes”,否则输入“n/no”按下回车。
如果在删除的时候不想频繁的确认,则可以在指令中添加选项“-f”,表示force(强制)。
删除一个文件夹
删除一个目录的时候需要做递归删除,并且一般也不需要进行删除确认询问,所以移除目录的时候一般需要使用-rf选项。
删除多个文档
要删除一个目录下有公共特性的文档,例如都以Linux开头
其中*称之为通配符,意思表示任意的字符,Linux*,则表示只要文件以Linux开头,后续字符则不管。
9、vim指令
vim(vim是一款文本编辑器)
#vim文件的路径
打开一个文件(可以不存在,也可以存在)
使用vim来打开文件
退出打开的文件:
在没有按下其他命令的时候,按下shift+英文冒号,输入q,按下回车即可
10、输出重定向
一般命令的输出都会显示在终端中,有些时候需要将一些命令的执行结果想要保存到文件中进行后续的分析/统计,则这时候需要使用到的输出重定向技术。
>
:
覆盖输出,会覆盖掉原先的文件内容
追加输出,不会覆盖原始文件内容,会在原始内容末尾继续添加
#正常执行的指令>
/>
文件的路径
文件可以不存在,不存在则新建
使用覆盖重定向,保存ls-la的执行结果,保存到当前目录下的ls.txt
使用追加重定向,保存ls-la的执行结果到ls.txt中
11、cat指令
作用1:
cat有直接打开一个文件的功能。
#cat文件的路径
作用2:
cat还可以对文件进行合并
#cat待合并的文件路径1待合并的文件路径2….文件路径n>
合并之后的文件路径
例如,合并3个文件,并存到一个文件中【配合输出重定向使用】
三、进阶指令(重点)
1、df指令
查看磁盘的空间
#df-h -h表示以可读性较高的形式展示大小
2、free指令
查看内存使用情况
#free-m-m表示以mb为单位查看
剩余的真实可以用的内存为1665mb。
Swap:
用于临时内存,当系统真实内存不够用的时候可以临时使用磁盘空间来充当内存。
3、head指令
查看一个文件的前n行,如果不指定n,则默认显示前10行。
#head-n文件路径【n表示数字】
4、tail指令
查看一个文件的未n行,如果n不指定默认显示后10行
#tail-n文件的路径n同样表示数字
可以通过tail指令来查看一个文件的动态变化内容【变化的内容不能是用户手动增加的】
#tail-f文件路径
该命令一般用于查看系统的日志比较多。
5、less指令
查看文件,以较少的内容进行输出,按下辅助功能键(数字+回车、空格键+上下方向键)查看更多
#less需要查看的文件路径
在退出的只需要按下q键即可。
6、wc指令
统计文件内容信息(包含行数、单词数、字节数)
#wc-lwc需要统计的文件路径
表示lines,行数
-w:
表示words,单词数依照空格来判断单词数量
-c:
表示bytes,字节数
7、date指令(重点)
表示操作时间日期(读取、设置)
#date 输出的形式:
2018年3月24日星期六15:
54:
28
#date+%F (等价于#date“+%Y-%m-%d”) 输出形式:
2018-03-24
#date“+%F%T”引号表示让“年月日与时分秒”成为一个不可分割的整体
等价操作#date“+%Y-%m-%d%H:
%M:
%S”
输出的形式:
2018-03-2416:
01:
00
语法4:
获取之前或者之后的某个时间(备份)
#date-d“-1day”“+%Y-%m-%d%H:
符号的可选值:
+(之后)或者-(之前)
单位的可选值:
day(天)、month(月份)、year(年)
%F:
表示完整的年月日
%T:
表示完整的时分秒
%Y:
表示四位年份
%m:
表示两位月份(带前导0)
%d:
表示日期(带前导0)
%H:
表示小时(带前导0)
%M:
表示分钟(带前导0)
%S:
表示秒数(带前导0)
8、cal指令
用来操作日历的
#cal 等价于#cal-1 直接输出当前月份的日历
#cal-3 表示输出上一个月+本月+下个月的日历
#cal-y年份 表示输出某一个年份的日历
9、clear/ctrl+L指令
清除终端中已经存在的命令和结果(信息)。
clear 或者快捷键:
ctrl+L
需要注意的是,该命令并不是真的清除了之前的信息,而是把之前的信息的隐藏到了最上面,通过滚动条继续查看以前的信息。
10、管道(重要)
管道符:
|
管道一般可以用于“过滤”,“特殊”,“扩展处理”。
管道不能单独使用,必须需要配合前面所讲的一些指令来一起使用,其作用主要是辅助作用。
①过滤案例(100%使用):
需要通过管道查询出根目录下包含“y”字母的文档名称。
#ls/|grepy
针对上面这个命令说明:
①以管道作为分界线,前面的命令有个输出,后面需要先输入,然后再过滤,最后再输出,通俗的讲就是管道前面的输出就是后面指令的输入;
②grep指令:
主要用于过滤
②特殊用法案例:
通过管道的操作方法来实现less的等价效果(了解)
之前通过less查看一个文件,可以#less路径
现在通过管道还可以这么:
#cat路径|less
③扩展处理:
请使用学过的命令,来统计某个目录下的文档的总个数?
#ls/|wc-l
Linux的基本指令
(2)
一、高级指令
1、hostname指令
操作服务器的主机名(读取、设置)
#hostname 含义:
表示输出完整的主机名
#hostname-f 含义:
表示输出当前主机名中的FQDN(全限定域名)
2、id指令
查看一个用户的一些基本信息(包含用户id,用户组id,附加组id…),该指令如果不指定用户则默认当前用户。
#id 默认显示当前执行该命令的用户的基本信息
#id用户名 显示指定用户的基本信息
验证上述信息是否正确?
验证用户信息:
通过文件/etc/passwd
验证用户组信息:
通过文件/etc/group
3、whoami指令
“我是谁?
”显示当前登录的用户名,一般用于shell脚本,用于获取当前操作的用户名方便记录日志。
#whoami
4、ps-ef指令(重点)
ps
主要是查看服务器的进程信息
选项含义:
-e:
等价于“-A”,表示列出全部的进程
显示全部的列(显示全字段)
执行结果:
列的含义:
UID:
该进程执行的用户id;
PID:
进程id;
PPID:
该进程的父级进程id,如果一个程序的父级进程找不到,该程序的进程称之为僵尸进程(parentprocessID);
C:
Cpu的占用率,其形式是百分数;
STIME:
进行的启动时间;
TTY:
终端设备,发起该进程的设备识别符号,如果显示“?
”则表示该进程并不是由终端设备发起;
TIME:
进程的执行时间;
CMD:
该进程的名称或者对应的路径;
(100%使用的命令)在ps的结果中过滤出想要查看的进程状态
#ps-ef|grep“进程名称”
再例如查看火狐浏览器的进程:
5、top指令(重点)
查看服务器的进程占的资源(100%使用)
进入命令:
#top (动态显示)
退出命令:
按下q键
输出的结果:
表头含义:
USER:
该进程对应的用户;
PR:
优先级;
VIRT:
虚拟内存;
RES:
常驻内存;
SHR:
共享内存;
计算一个进程实际使用的内存=常驻内存(RES)-共享内存(SHR)
S:
表示进程的状态status(sleeping,其中S表示睡眠,R表示运行);
%CPU:
表示CPU的占用百分比;
%MEM:
表示内存的占用百分比;
TIME+:
执行的时间;
COMMAND:
进程的名称或者路径;