一、Linux入门概述

1.1 概述

Linux内核最初由芬兰人Linus Torvalds在赫尔辛基大学就读时处于个人爱好编写的。

Linux是一套免费使用且自由传播的类Unix操作系统,是一个基于POSIX和Unix的多用户、多任务、支持多线程和多CPU的操作系统。Linux能运行主要的Unix工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

而目前市面上较为知名的发行版有:Ubuntu、RedHat、CentOS、Debian、Fedora、SUSE、OpenSUSE。

1.2 下载地址

CentOS下载地址:

网易镜像:http://mirrors.163.com/centos/8/isos/

搜狐镜像:http://mirrors.sohu.com/centos/8/isos/

1.3 Linux的特点

在Linux系统中,一切皆是文件,没有后缀名的这一说法。

1.4 Linux和Windows的区别

目前国内Linux更多应用于服务器上,而桌面操作系统(个人PC以及办公电脑)更多使用的是Windows,不过也有少数人选择Deepin(国产Linux桌面操作系统)。Linux和Windows的主要区别有:

  • 在界面上,windows的界面统一,外壳程序固定所有Windows程序菜单几乎一致,快捷键也几乎相同;而Linux使用圆形界面风格,且不同的发布版本也会有不同的改变,可能互不兼容。GNU/Linux的终端机是从Unix传承下来,基本命令和操作方法也几乎一致。
  • 在驱动程序上,Windows的驱动程序丰富,版本更新频繁。默认安装程序里面一般包含该版本发布时流行的硬件驱动程序,之后所出的新硬件驱动依赖于硬件厂商提供,对于一些老硬件,如果没有了原配的驱动有时候很难支持,另外有时硬件厂商未提供所需版本的Windows下的驱动,会比较难搞;而Linux的驱动程序由志愿者开发,由核心开发小组发布,很多硬件厂商基于版本考虑并未提供驱动程序,尽管多数无需手动安装,但是涉及安装则相对复杂,是的新用户面对驱动程序问题会一筹莫展,但是在开源开发模式下,许多老硬件尽管在Windows下很难支持的也容易赵铎驱动,HP、Intel和AMD等硬件厂商逐步不同程序支持开源驱动,问题正在得到缓解。
  • 在使用方面,Windows的使用更加简单却容易入门,圆形化界面对没有计算机背景知识的用户使用十分有利;而Linux的文字界面(即命令行界面)需要学习才能掌握,相对较难入门。
  • 在学习方面,Windows系统构造复杂、变化频繁,且知识、技能淘汰快,深入学习较难;而Linux系统构造简单、稳定,且知识、技能传承性好,深入学习相对容易。
  • 在软件方面,Windows每一种特定功能可能都需要商业软件的支持,需要购买相应的授权;而Linux大部分软件都可以自由获取,同样功能的软件选择较少。

二、Linux目录结构

2.1 概览

Linux应知应会(一) Linux 第1张

 

 2.2 目录结构及作用

  • /bin:是Binary的缩写,该目录下存放着系统必备的执行命令,例如:cd、ls、cat...
  • /boot:这里存放的是启动Linux时使用的一些核心文件,包括一些连接文件和镜像文件,类似于Windows下的system目录
  • /dev:Device的缩写,该目录下存放的是Linux的外部设备,在Linux中访问设备的方式和访问文件的方式是相同的
  • /etc:所有的系统管理所需要的配置文件和子目录
  • /home:存放普通用户的主目录,在Linux中每个yoghurt都有一个自己的目录,一般该目录名是以用户的账号命名的
  • /lib:系统开机所需要最基本的动态链接共享库,其作用类似于Windows里的dll文件,几乎所有的应用程序都需要用到这些共享库
  • /lost+found:这个目录一般情况下是空的,当系统非法关机后,这里就会产生会自动删除的碎片文件
  • /media:linux系统会自动识别一些设备,例如U盘、光驱等,当识别后,Linux会把识别的设备挂载到这个目录下
  • /mnt:系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将光驱挂载在/mnt/上,然后进入该目录就可以查看光驱里面的文件了
  • /net:存放着和网络相关的一些文件
  • /opt:这是给主机额外安装软件所摆放的目录,比如要安装一个Oracle数据库就可以放在这个目录下,默认是空的
  • /proc:该目录是一个虚拟的目录,是系统内存的映射,可以通过直接访问这个目录来获取系统信息
  • /root:该目录为系统管理员,也称作超级权限者的用户主目录
  • /sbin:s就是Super User的意思,这里存放的是系统管理员使用的系统管理程序
  • /selinux:这个目录是Redhat和CentOS特有的目录,Selinux是一个安全机制,类似于windows的防火墙
  • /srv:service的缩写,该目录存放一些服务启动之后需要提取的数据
  • /sys:存放着与Linux系统相关的文件
  • /tmp:用来存放临时文件
  • /usr:存放用户的很多应用程序和文件,类似于windows的program files目录
  • /var:存放着不断扩充的东西,我们习惯将那些经常被修改的目录放在该目录下,包括各种日志文件

三、VI、VIM编辑器

3.1 概述

所有的Unix Like系统都会内建vi文书编辑器,其他的文书编辑器则不一定会存在。但是目前我们使用比较多的是vim编辑器。

Vim具有程序编辑的能力,可以主动的以字体颜色辨别语法的正确性,方便程序设计。Vim是从VI发展出来的一个文本编辑器,代码补完、编译及错误 跳转等方便编程的功能特别丰富,被广泛使用。

具体来说,VI是老师的字处理器,不过功能已经齐全,但是可以改进;VIM则可以说是程序开发者的一项很好用的工具。

3.2 一般模式

以VI打开一个档案就直接进入一般模式了,也是默认模式。在这个模式中,你可以使用【上下左右】按键来移动光标,可以使用【删除字符】或【删除整行】来处理档案内容,也可以使用【复制】【粘贴】来处理文件数据。

常用语法

  1. 【yy】:复制光标单签一行
  2. 【y数字Ny】:复制一段(光标后N行)
  3. 【p】:箭头移动到目的行粘贴
  4. 【u】:撤销上一步
  5. 【dd】:删除光标当前行
  6. 【d数字Nd】:删除光标后N行
  7. 【x】:删除一个字母,相当于del
  8. 【X】:删除一个字母,相当于backspace
  9. 【yw】:复制一个词
  10. 【dw】:删除一个词
  11. 【shift+^】:移动到行头
  12. 【shift+$】:移动到行尾
  13. 【1+shift+g】:移动到页头,数字
  14. 【shift+g】:移动到页尾
  15. 【数字N+shift+g】:移动到目标行

3.3 编辑模式

在一般模式中可以进行删除、复制、粘贴等动作,但是却无法编辑文件内容。要等按下【i,I,o,O,a,A,r,R】任何一个字母之后才会进入编辑模式。

在Linux中,按下这些按键时,会在画面的左下方出现【INSERT】或【REPLACE】字样,此时代表进入编辑模式,可以进行编辑,如果要回到一般模式时,必须按下【Esc】退出编辑模式。

常用语法

  1. 【i】:进入编辑模式,当前光标前
  2. 【a】:进入编辑模式,当前光标后
  3. 【o】:进入编辑模式,当前光标行的下一行
  4. 【Esc】:退出编辑模式

3.4 指令模式

在一般模式中,输入【:】【/】【?】中的任何一个按钮,就可以将光标移动到最底下那一行。

在这个模式中,可以提供搜寻资料的动作,而读取、存盘、大量取代字符、离开vi、显示行号等动作都是在此模式中达成。

常用语法

  1. 【:】:选项
  2. 【w】:保存
  3. 【q】:退出
  4. 【!】:强制执行
  5. 【/被查找词】:n是查找下一个,shift+n是往上查找
  6. 【?被查找词】:n是查找上一个,shift+n是往下查找
  7. 【:wq!】:强制保存退出

四、网络与防火墙

4.1 查看、修改IP、网关、DNS

一、临时修改IP地址、网关

  1. 修改IP:命令行输入 network eth0 192.168.1.100 netmask 255.255.255.0
  2. 修改网关:命令行输入 route add default gw 192.168.1.1
  3. 删除网关:命令行输入 route del dafault gw 192.168.1.1

注意:在命令行中的操作待用户退出后会失效,如要永久生效,则需要修改配置文件

二、永久修改IP地址、网关、DNS

  1.  在命令行输入setup,在弹出的窗口中手动配置IP、网关、DNS即可
  2. 修改IP地址和网关:

  命令行输入:vim /etc/sysconfig/network-scripts/ifcfg-eth0

  

  DEVICE = eth0 //etho标识网卡的标识

  IPADDR =192.138.1.100 //标识网卡的IP

  GATWAY = 192.168.1.1 //标识网关

  NETMASK = 255.255.255.0 //标识子网掩码

  HWADDR = 11:22:***:33  //标识Mac地址

  ONBOOT = yes/no  //启动时是否激活该网卡

   3. 修改DNS:在命令行输入 vim /etc/resolv.conf,手动输入:nameserver 123.125.81.6

三、查看IP、网关、DNS

命令行中输入ifconfig可以查看IP

命令行中输入route -n ,IP地址为0.0.0.0后的gateway即为默认网关

四、IP等信息修改完成后需要执行service network restart重启生效

4.2 防火墙

一、基本语法

  1. 【service iptables statas】:查看防火墙状态
  2. 【chkconfig iptables -list】:查看防火墙开机启动状态
  3. 【service iptables stop】:临时关闭防火墙
  4. 【chkconfig iptables off】:关闭防火墙开机启动
  5. 【chkconfig iptables on】:开启防火墙开机启动

二、扩展

Linux系统有7个运行级别(runlevel),分别是:

  1. 运行级别0:系统停机状态,系统默认运行级别不能设为0,否则不能正常启动
  2. 运行级别1:单用户工作状态,root权限,用户系统维护,进制远程登陆
  3. 运行级别2:多用户状态(没有NFS)
  4. 运行界别3:完全的多用户状态(有NFS),登陆后进入控制台命令行模式
  5. 运行级别4:系统未使用,保留
  6. 运行级别5:X11控制台,登录后进入图形GUI模式
  7. 运行级别6:系统正常关闭并重启,默认运行级别不能设为6,否则不能正常启动

4.3 关机重启

Linux大多用于服务器,很少遇到关机的操作。毕竟服务器上跑一个服务是永无止境的,除非特殊情况下,不得已才会关机。正确的关机流程为:sync ->shutdown ->reboot -> halt。

一、基本语法

  • 【sync】:将数据有内存同步到硬盘中
  • 【shutdown [选项][时间]】,选项:-h:关机,-r:重启
  • 【halt】:关闭系统,等同于shutdown -h now 和 poweroff
  • 【reboot】:重启,等同于shutdown -r now

二、示例

  1. 10分钟后关机:shutdown -h 10
  2. 立即重启:shutdown -r now或者reboot
  3. 关机:halt

五、常用基本命令

5.1 帮助命令

5.1.1 man获得帮助信息

基本语法

man 【命令或配置文件】:获得帮助信息

Linux应知应会(一) Linux 第2张

Linux应知应会(一) Linux 第3张

  1. 显示说明
NAME 命令的名称和单行描述
SYNOPSIS 怎样使用命令
DESCRIPTION 命令功能的深入讨论
EXAMPLES 示例
SEE ALSO 相关主题

    2. 数字说明(命令之后括号中的数字)

1 用户在shell环境中可以操作的命令或是可执行的文件
2 系统内核(Kernel)可以调用的函数
3 常用的函数或函数库
4 设备配置文件
5 配置文件的格式
6 游戏相关
7 linux网络协议和文件系统
8 系统管理员可以用的命令
9 和内核有关系的文件

5.1.2 help获得shell内置命令的帮助信息

基本语法

help 【命令】:获得shell内置命令的帮助信息

Linux应知应会(一) Linux 第4张

5.1.3 常用快捷键

Ctrl+C 停止进程
Ctrl+L 清屏
Ctrl+Q 退出
Ctrl+ALT 虚拟机中linux和window切换
TAB 命令、目录补全
上下键 查找执行过的命令

5.2 文件目录类命令

5.2.1 pwd显示当前工作目录的绝对路径

基本语法

【pwd】:显示当前工作目录的绝对路径

Linux应知应会(一) Linux 第5张

 5.2.2 ls 列出目录的内容

基本语法

ls【选项】【目录或是文件】

选项:

-a :全部的文件,连同隐藏文件一起列出来

-l :长数据串列出,包含文件的属性与权限等,每行列出的基本信息依次为:文件类型与权限、链接数、文件属主、文件属组、文件大小(用byte表示)、建立或最近修改的时间、名字。

Linux应知应会(一) Linux 第6张

 5.2.3 mkdir创建一个新的目录

基本语法

mkdir 【-p】目录名称

选项:-p:创建多层目录

Linux应知应会(一) Linux 第7张

 5.2.4 rmdir 删除一个空的目录

基本语法

rmdir 【目录名称】

Linux应知应会(一) Linux 第8张

 

 5.2.5 touch创建空文件

基本语法

touch 【文件名称】

Linux应知应会(一) Linux 第9张

 

 5.2.6 cd切换目录

基本语法

cd 绝对路径 进入指定目录
cd 相对路径 进入指定目录
cd~或cd 进入home家目录
cd - 回到上一次所在目录
cd .. 回到当前目录的上一级目录
cd -P 跳转到实际物理路径,而非快捷方式路径

Linux应知应会(一) Linux 第10张

 

 5.2.7 cp复制文件或目录

基本语法

  • cp 【source】【dest】:复制source文件到dest
  • cp -r【sourceFolder】 【targetFolder】:递归复制整个文件夹

Linux应知应会(一) Linux 第11张

 5.2.8 rm 移除文件或目录

基本语法

rm 【文件名】 删除文件
rm -r 【目录名】 递归删除目录
rm -rf【目录名】 强制递归删除目录
rm -rf * 删库跑路必备

Linux应知应会(一) Linux 第12张

 

 Linux应知应会(一) Linux 第13张

 

 5.2.9 mv移动文件与目录或重命名

基本语法

  • mv 【oldNameFolder】【newNameFolder】:重命名
  • mv 【movefile】 【targetFolder】:移动文件

Linux应知应会(一) Linux 第14张

 

 5.2.10 cat查看文件内容

查看文件内容,从第一行开始显示。

基本语法

cat 【选项】【文件名】

选项:

-A 相当于-vET的整合,可列出一些特殊字符而不是空白
-b 列出行号,仅针对非空白行做行号显示,空白行不标行号
-E 将结尾的断行字节$显示出来
-n 列出行号,连同空白行也会有行号
-T 将【TAB】按键以^I显示出来
-v 列出一些看不出来的特殊字符

Linux应知应会(一) Linux 第15张

 

 5.2.11 tac查看文件内容

查看文件内容,从最后一行开始显示,可以看出tac是cat的反写。

基本语法

tac 【选项参数】【文件名】

Linux应知应会(一) Linux 第16张

 

 5.2.12 more查看文件内容

查看文件内容,一页一页的显示。

基本语法

more 【文件名】

Space空格键 向下翻一页
Enter回车键 向下翻一行
q 立刻离开more,不再显示内容
Ctrl+F 向下滚动一屏
Ctrl+B 返回上一屏
= 输出当前行的行号
:f 输出文件名和当前行的行号

Linux应知应会(一) Linux 第17张

 

 5.2.13 less查看文件内容

less的作用于more十分相似,都可以用来浏览文字档案的内容,不同的是less允许使用【pageUp】和【pageDown】来回滚动。

基本语法

less 【文件名】

Space空格键 向下翻动一页
pageDown 向下翻动一页
pageUp 向上翻动一页
/【字串】 向下搜寻【字串】,n:向下查找,N:向上查找
?【字串】 向上搜寻【字串】,n:向上查找,N:向下查找
q 离开less程序

Linux应知应会(一) Linux 第18张

 

 5.2.14 head查看文件内容

查看文件内容,只看前几行。

基本语法

head -n 【数字M】【文件名】:查看文件的前M行内容。

Linux应知应会(一) Linux 第19张

 

 5.2.15 tail查看文件内容

查看文件内容,只看后几行。

基本语法

  • tail -n 【数字M】【文件名】:查看文件后M行内容。
  • tail -f 【文件名】:实时追踪该文件的所有更新。

Linux应知应会(一) Linux 第20张

 

 5.2.16 重定向命令

基本语法

  • ls -l >文件名:列表的内容写入文件中(覆盖写)
  • ls -al >>文件名:列表的内容追加到文件的末尾

Linux应知应会(一) Linux 第21张

 

 5.1.17 echo命令

基本语法

  • echo【要显示的内容】>>【文件名】:将要显示的内容存储到文件中
  • echo 【变量】:显示变量的值

Linux应知应会(一) Linux 第22张

 

 5.2.18 In软链接

基本语法

In -s 【原文件】【目标文件】:给原文件创建一个软链接,软链接存放在目标文件目录

Linux应知应会(一) Linux 第23张

 

 5.2.19 history查看命令历史

基本语法

【history】

Linux应知应会(一) Linux 第24张

 

 

==================================================================================================================================================================

2020-07-14

22:36:00  

                  

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄