运维相关知识

Posted yaolintao

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了运维相关知识相关的知识,希望对你有一定的参考价值。

一·对linux的认识

1.什么是linux?

linux整个基于Linux内核,是linux的内核+GNU组织的软件 GNU/linux的操作系统

2.什么是shell?

shell是一个解释器,是保护系统内核不被篡改的软件,我们所使用的系统中默认启动的shell是bash 注: bash是一个为GNU计划编写的Unix shell,它是Bourne-Again SHell的缩写。

3.怎样在shell中执行命令? 命令必须在行提示符之后输入,如果行提示符被占用,那么,ctrl+c可以结束占用当前行提示符的程序从而释放行提示符。

4.在shell中输入命令的格式:命令+空格+参数+空格+对象 命令就是程序,参数就是程序指定的某种功能 -a -b -c =-abc = -bac,对象是操作的目标 举例: rm -f -r /*==rm -fr /*

二·虚拟机的基本操作

1.虚拟机的控制

[[email protected] Desktop]$ rht-vmctl view desktop #显示虚拟机

[[email protected] Desktop]$ rht-vmctl start desktop #打开虚拟机

[[email protected] Desktop]$ rht-vmctl poweroff desktop #关闭虚拟机

[[email protected] Desktop]$ rht-vmctl reset desktop #重置虚拟机

注:

kiosk //表示shell的运行人是谁

@foundation0 //shell开启主机的主机名称

Desktop //你当前所在文件夹的名字

2. 虚拟机的报错情况以及改正

[[email protected] Desktop]$ rht-vmctl start desktop

Error: desktop not started (is already running) //虚拟机正在运行

Correction:停止‘rht-vmctl start desktop’操作,直接执行当前准备执行的命令

[[email protected] Desktop]$ rht-vmctl view desktop

Error: unable to view desktop - not currently running. //虚拟机没有运行

Correction:先执行命令‘rht-vmctl start desktop’,再执行下一步操作

[[email protected] Desktop]$ rht-vmct1 start desktop

bash: rht-vmct1: command not found... //命令输入错误

Correction:检查输入的命令‘rht-vmctl’是否正确,注意区分‘数字1’和‘字母l’

[[email protected] Desktop]$ rht-vmctl stat desktop

Error: bad option, stat //参数写入错误

Correction:检查输入的参数   

‘start/view/poweroff/reset’是否正确,注意区分大小写

[[email protected] Desktop]$ rht-vmctl start deskop

Error: unrecognized VMNAME specified, deskop.#虚拟机名称错误

Correction:检查输入的名称‘desktop’是否正确,注意区分大小写

3.系统用户登陆

$ //普通用户,这个用户只能使用系统,但是权力比较低,比如不能删除 home---->computer ----> boot

student ----> student

# //超级用户,系统管理员,权力绝对大,可以破坏系统,比如删除 home---->computer ----> boot

not list ---->root ----->redhat

注意: 删除boot以后,在系统中选择reset 那么系统启动成功 系统启动不了可以直接重置虚拟机

4.在系统内添加中文输入法

application ------> setting ---> 蓝旗(region&language)---->china pinyin

5.文本编辑

gedit 文件名称+& //"&"的作用是让gedit命令在后台运行而不占用当前接口

6.文件管理命令

<1>新建文件 touch ‘文件名’ 注:建立多个文件时,touch ‘文件名’ ‘文件名’ ... //多少个文件,就用引号引多少个

<2>新建目录 mkdir ‘目录名’

<3>删除文件 rm -f ‘文件名’ //-f 是force的缩写,表示强制删除不提示 区分 rm/rm -f

<4>删除目录 rm -f -r/rm -fr ‘文件名’ //-r 表示递归,包括目录本身和里面的所有内容

7.查看

<1>cat ‘文件名’ //查看文件或者目录里的具体内容

<2>ls ‘文件名’ //显示当前文件下的目录名称 注: ls -a //显示所有文件包括以点开头的隐藏文件 ls -R //递归显示目录中的所有内容

<3>file //查看文件类型 操作步骤(可以清楚的体现file的作用以及文件的作用)

touch westos

file westos

vim westos

hello

file westos

vim westos

#!/bin/bash

hello

file westos

vim westos

#include

hello

file westos

<4>wc //统计文件的字数,字符数,字节数

wc -l //行数

wc -m //字符数

wc -c //字节数

wc -w //字数

注: 区分wc -m 与 wc -c 在输入中文时,会有不同;输入英文时,两个差不多

8.复制 cp file 新文件名称|目录

cp -r dir 新名称|目录

注:复制根目录下文件里的全部内容时,需要在文件最后加一个‘.’

举例: cp /etc/passwd .

9.移动

mv file 目录

mv dir 目录

mv 目录/* , 把目录中的所有内容移动到当前所在系统位置 "."代表当前所在系统目录

10.系统结构

/bin //常用系统命令

/sbin //系统管理命令

/boot //启动分区

/sys //内核参数调整

/dev //设备文件

/lib //32位库文件

/lib64 //64文库文件

/media /run /mnt //临时设备的挂载点

/opt //第三方软件安装位置

/proc //系统信息

/etc //系统配置目录

/home //普通用户家目录

/root //超级用户家目录

/var,/srv //系统数据

11.关于路径的命令

<1>路径的分类 绝对路径:文件所在系统的真实位置,在系统的任何位置都可以使用通常以"/"开头

相对路径:相对当前所在系统位置的一个文件名称的简写,它通常会自动添加"pwd"的值在名称前

举例: pwd //print work directory 显示当前所在系统位置的路径

touch /mnt/file //用绝对路径的方式在/mnt/中建立file文件

rm -fr /mnt/file //用绝对路径的方式删除/mnt/中的file文件

mv hello /mnt //把当前的hello文件移动到/mnt目录中

mv /mnt/hello . //用绝对路径的表示方式把/mnt中的hello文件移动到当前位置

12.切换工作目录

cd 目录名称

cd .. //进入当前目录的上层目录

cd . //进入当前目录

13.如何在系统中获得帮助

1.whatis 命令:得到一个命令但不知道这个命令的作用时使用

举例: whatis cal 显示cal命令的用途

cal (1) - display a calendar

cal (1p) - print a calendar

2.--help命令:当知道命令的用途,但是不知道命令的运行格式或者方法时使用

注:--help只适用与命令

举例: cal --help

useage:

cal [options] [ [ [day] month] year]

注:如果只写‘年’的话,就不需要加[],想要显示哪一月或者哪一天,必须给‘月’和‘天’加[].

[] //选加,可以加也可以不加

... //加的个数可以时任意多个

<> //必须加不可缺少的信息

3.man == manual:当查看文件的帮助时,--help是不能使用的,必须用man命令来查看帮助了

man的级别

1 命令,2 内核调用的接口,3 函数库;4 特殊文件比如设备文件;5 系统文件,6 游戏;7 包信息;8 系统密令;9 内核规则

举例: man date //查看date命令的帮助手册

man 5 passwd //查看/etc/passwd 文件的帮助手册

<2>man使用时的快捷键

进入man页面后

pageup //向上翻页

pagedown //向下翻页

q //退出

注:当man或者whatis命令无法查询帮助是,是因为系统没有加载帮助数据库

解决办法:执行 mandb

三·*******vim*********

1.编辑文件

vim ‘文件名’ 进入浏览模式,按"i"键 进入插入模式开始编写字符,编写结束后按"ESC"键 退出插入模式,按":wq" 保存退出,文件编写完成。

vim同时编辑多个文件 : 先打开一个文件,再进行操作‘:sp ’+‘filename’

ctrl + w 上 //光标进入上边文件窗口

ctrl + w 下 //光标进入下边文件窗口

注: <1>当文件名称存在,那么进入文件直接编辑,当文件名称不存在,vim会在退出保存时自动建立文件,当vim命令后没有跟任何文件名称时,时无法实现‘:wq’退出保存的那么可以用":wq filename"

<2>当vim异常退出时,系统会建立.file.swp这个缓存文件,这个文件中保存着在‘:wq’动作之前保存的信息,当用vim对文件做编辑的时候会提示

O //只读打开

E //直接忽略.file.swap信息编辑文件

R //利用.file.swap进行为保存数据恢复

D //删除.file.swap

Q //退出

A//终止

//图片,出现以上几个提示的图片

2.vim的三种模式

<1>命令模式

A:vim工作方式设定(命令模式是vim打开文件后默认进入的模式,这个模式中不能插入字符,但是可以设定vim的工作方式)

:set 指定信息

:set nu

:set nonu

:set cursorline

:set mouse=a

注:在vim中直接设定vim的工作方式是临时设定,也就是说当vim关闭,设定失效 如果要永久设定需要编写vim的配置文件 ‘/etc/vimrc’

B:在命令模式下如何管理字符

"x" : 删除光标所在字符

"u" : undo 恢复

"ctrl+r" : redo 撤销恢复

"y” : 复制

"yw" : 复制一个单词

"yl": 复制一个字母

"yy" : 复制一整行

"y5y" : 复制5行

"c": 剪切

"cw" : 剪掉一个单词

"cl" : 剪掉一个字母

"cc" : 剪掉一整行

“c5c": 剪掉5行

注:"用C做剪切时,会进入插入模式,如果要粘贴需要退出插入模式按‘ESC’键再按‘P’

"d" : 删除

"dw" 删除一个单词

"dl" 删除一个字母

"dd" 删除一整行

"d5d" 删除5行

"p": 粘贴

C:vim的可视化操作

a:可视化模式的基本操作

在vim中是不能用鼠标选择区域操作的,如果要操作某个区域,需要进入到可视化模式,在命令模式下 "ctrl + v" 就可以进入到可视模式了

按"上|下|左|右"移动光标选择区域,按相应操作键就可以对选择区域进行操作

b.可视化模式下批量添加字符 。

把光标停留在想要加入字符所在的列的第一行 。

移动光标选择添加字符所在列 。

"I"进入插入模式 。

写入要插入的字符 。

按"ESC"退出插入模式,字符批量添加成功

D:vim的字符替换

%s/原有字符/新字符/g //全文替换

1,5s/原有字符/新字符/g //替换1到5行的字符

g //替换出现的所有关键字,如果不加"g"只替换没行出现的第一个

E:总字符的查找及光标的移动

<1>字符的查找

/关键字 //搜索关键字

n //向下匹配关键字

N //向上匹配关键子

注:按‘v’ 由浏览模式进入vim模式,按‘i’进入编辑模式,按‘ECS’后按‘:wq’退出编辑模式进入浏览模式

<2>光标的移动

:‘数字’ //光标快速移动到指定行

gg //光标移动到文件的第一行

G //光标移动到文件的最后以行

<2>插入模式

"i" //在光标所在位置插入字符

"I" //光标所在行的行首插入字符

"o" //光标所在行的下一行新行插入字符

"O" //光标所在行的上以行新行插入

"s" //删除光标所在字符并插入字符

"S" //删除光标所在行并插入字符

"a" //光标所在字符的下一个字符插入

"A" //光标所在行的行尾插入字符

<3>退出模式

:q //当vim进入文件没有对文件内容做任何操作可以按"q"退出

:q! //当vim进入文件对文件内容有操作但不想保存退出

:wq //正常保存退出 :wq! /技术分享图片行保存退出,只针对与root用户或文件所有人生效

四.通配符

1.字符匹配

* //匹配0到任意字符

? //匹配单个字符

[[:alpha:]] //匹配单个字母

[[:lower:]] //匹配单个小写字母

[[:upper:]] //匹配单个大写字母

[[:digit:]] //匹配单个数字

[[:alnum:]] //匹配单个数字或字母

[[:punct:]] //匹配单个符号

[[:space:]] //匹配单个空格

//图片,删除带数字或者带字母的文件

{} //精确指定目标,前提是指定的所有目标都必须存在

{}{} //两个括号里的目标分别进行有顺序的组合组合

举例: {1..3} 指定1,2,3,而且1,2,3都存在

{1..3}{a..c} 1a 2a 3a 2a 2b 2c 3a 3b 3c

[] //模糊指定目标

举例: [1-3] //1或者2或者3 [^abc]|[!abc] //除了a并且除了b并且除了c

2.常用文本处理工具 //在命令输入窗口直接输入

<1>head //显示指定文件的前多少行

head -n 1 passwd //显示文件的第一行

head -n 3 passwd //显示文件的前3行

head passwd //默认显示文件的前10行

<2>tail //显示文件的后多少行,在阅读文件时,直接按此字符

tail -n 1 passwd //显示文件的最后1行

tail -n 5 passwd //显示文件的最后5行

tail passwd //显示文件的最后10行

<3>less //分页浏览

less passwd

<4>‘!’or‘^’ //表示非,相反的

3. 鼠标点不动时, ctrl alt f2 , init 3,ctrl f1 init5。

以上是关于运维相关知识的主要内容,如果未能解决你的问题,请参考以下文章

DevOps开发运维与持续集成相关知识

运维入门的相关知识介绍

Linux运维相关网络基础知识

DevOps开发运维与持续集成相关知识

学Python运维,这知识点你肯定会遇到,必收藏之nginx 域名跳转相关配置

docker相关知识