网站跳出率多少合适,网站建设怎么分析市场分析,广东白云手机网站建设,汽车网站大全Linux操作系统的实操性非常强#xff0c;纯操作#xff0c;不适用于日常的办公使用
1.初始Linux
1.1 操作系统概述
1.1.1 了解OS的作用
OS#xff1a;是计算机软件的一种#xff0c;主要负责#xff1a;作为用户和计算机硬件之间的桥梁#xff0c;调度和管理计算机硬…Linux操作系统的实操性非常强纯操作不适用于日常的办公使用
1.初始Linux
1.1 操作系统概述
1.1.1 了解OS的作用
OS是计算机软件的一种主要负责作为用户和计算机硬件之间的桥梁调度和管理计算机硬件进行工作而计算机如果没有OS就是一段无法使用的塑料而已 用户使用OSOS安排硬件干活
1.1.2 了解常见的OS
PC操作系统Window系统、Linux、MacOS移动设备操作系统 安卓系统、IOS系统苹果、HarmonyOS 华为
1.2 初始Linux
1.2.1 了解Linux系统的诞生
创始人林纳斯 托瓦兹
1.2.2 了解什么是Linux内核
Linux系统的组成Linux系统内核、系统级应用程序两部分组成。
内核提供系统最核心的功能如调度CPU、调度内存、调度文件系统、调度网络通讯、调度IO等系统级应用程序可以理解为出厂自带程序可供用户快速上手操作系统如文件管理器任务管理器图片查看音乐播放等 使用系统例如播放音乐、无论用户使用自带音乐播放器或是自行安装的第三方播放器均是由播放器程序调用内核提供的相关功能由内核调度CPU解码音响发声等
1.2.3 了解常见的Linux发行版
内核时Linux系统最核心的所在系统级应用程序只是锦上添花Linux内核是免费开源的任何人都可以下载内核源码并查看且修改并自行集成系统级程序提供了内核 系统级程序的完整封装称之为Linux发行版下载内核可通过https://www.kernel.org 下载Linux内核任何人都可以封装Linux目前市面上有非常多的Linux发行版常用的有中国公司deepin、中标麒麟、红旗Linux、国外公司centOS、Ubuntu…本课程主要基于centOS进行讲解、辅助讲解Ubuntu系统的相关知识
1.3 虚拟机介绍
1.3.1 了解什么是虚拟机
学习Linux系统就需要有一个可用的Linux系统如何获得将自己电脑重装系统为Linux不是Linux系统不适用于日常的办公使用此时需要借助虚拟机来获得可用的Linux系统环境进行学习借助虚拟机来获得可用的Linux系统环境进行学习什么是虚拟机借助虚拟化技术可以在系统中通过软件模拟计算机硬件并给虚拟硬件安装真实的操作系统这样就可以在电脑中虚拟出一个完整的电脑虚拟硬件 操作系统 虚拟机
1.3.2 了解为什么要使用虚拟机
学习Linux系统需要有Linux系统环境不能给自己电脑重装系统为Linux因为Linux系统不适用于日常办公所以通过虚拟机的形式得到可以用的Linux系统环境供后续学习使用
1.4 VMware WorkStation安装替换成Oracle VM VirtualBox
1.4.1 了解VMware WorkStation软件
虚拟化技术通过虚拟化技术可以虚拟出计算机的硬件那么如何虚拟呢可以通过提供虚拟机的软件来获得虚拟机提供虚拟机的软件VMware WorkStation Pro下载VMware虚拟机https://www.vmware.com/cn/products/workstation-pro.html有试用、有收费的下载vmware—安装vmware—安装完成即可进行使用vmware安装完成为了确保后续能够正常使用需要检查一下相关的设置如何检查安装的vmware设置 检查内容虚拟网卡 检查方法打开windows系统的设置页面—“网络设置”找到“高级网络设置”“更多网络适配器的选项”然后出现网络连接页面确保页面中有VMnet1和VMnet8这两个虚拟网卡若没有这两个虚拟网卡安装的虚拟机会无法上网需要卸载重启电脑重新安装快捷打开网络连接页面windowsR输入指令“ncpa.cpl”
1.4.2 完成VMware WorkStation软件的安装
1.5 在VMware上安装Linux
1.5.1 掌握使用VMware安装Linux虚拟机
虚拟化软件VMware安装完成后需要在该软件内构建虚拟的硬件并完成虚拟机的安装操作下载CentOS操作系统 1需要下载操作系统的安装文件本次使用CentOS7.6版本进行学习(CentOS-7-x86_64-DVD-1810.iso) 2下载链接1https://vault.centos.org/7.6.1810/isos/x86_64//不可缺少 下载链接2https://vault.centos.org/7.6.1810/isos/x86_64/CentOS-7-x86-DVD-1810.iso使用虚拟化软件实现CentOS Linux操作系统的安装部署 具体实现 1双击打开VMware虚拟化软件页面中出现“创建新的虚拟机” 2点击“创建新的虚拟机”出现新建虚拟机向导选择推荐使用典型下一步 3“安装程序光盘映像文件iso(在浏览里面查找下载的centos目录)”下一步 4配置个人账户名全名、用户名、密码、确认下一步 5给虚拟机起个名称选择虚拟机的存放位置下一步 6虚拟机的虚拟硬盘设置大小默认20GB此次设置为40GB下一步 7页面展示前面步骤信息的汇总其中有默认配置数据可以点击自定义硬件进行重新配置默认值内存、处理器–硬件、新CD/DVD(IDE)、网络适配器、USB控制器、声卡、打印机、显示器创建后开启此虚拟机点击完成。在VMware中安装CentOS操作系统打开VMware软件
1.6 Mac系统Linux环境
1.6.1 掌握使用VMware Fusion 虚拟化软件在MacOS中安装Linux虚拟机
VMware Fusion类似于windows中的VMware虚拟化软件下载地址https://www.vmware.com/cn/products/fusion.html收费软件新建发行版虚拟机具体操作和windows中类似
1.7 远程连接Linux系统
1.7.1 掌握操作系统的图形化、命令行2种操作模式
操作系统Windos、Linux、MacOS的使用有2种使用形式 1图形化使用操作系统(OS)提供的图形化页面以获得图形化反馈的形式去使用OS 2命令行使用OS提供的各类命令类似于windows中命令提示符以获得字符反馈的形式去使用OS;
1.7.2 理解为什么使用命令行操作Linux系统
无论是企业开发或个人开发使用LinuxOS多数都是使用命令行Linux从诞生至今在图形化页面的优化上并未重点发力因此Linux操作系统的图形化页面不好用不稳定在开发中使用命令行形式效率更高并且资源占用低程序运行更稳定
1.7.3 掌握使用FinalShell软件连接Linux操作系统
使用VMware可以得到Linux虚拟机但在VMware中操作Linux的命令行页面不太方便 1内容的复制、粘贴跨越VMware不方便 2文件的上传、下载跨越VMware不方便 3也就是和Linux系统的各类交互跨越VMware不方便通过使用第三方软件FinalShell远程连接到Linux操作系统之上并通过FinalShell去操作Linux系统第三方软件FinalShell;FinalShell下载地址 1Windows:http://www.hostbuf.com/downloads/finalshell_install.exe 2)Mas:http://www.hostbuf.com/download/finalshellinstall.pkg;下载完成后双击finalShell打开安装finalShell远程连接到Linux操作系统 1打开finalShell软件 2打开VMware虚拟机在VMware虚拟机中登录账户 3在登录后的桌面的空白位置右键鼠标点击Open Terminal打开终端 4输入命令“ifconfig”回车发现在ens33对应地方有个ip地址 5回到finalShell软件点击左上角一个文件夹其中点击左上角白色小加号选择SSH连接(Linux)配置Linux系统的连接常规名称-CentOS系统、主机-IP地址、端口、备注、认证方法-密码、用户名-linux用户名、密码-linux密码、高级选择-启用Exec…点击确定在finalShell中就有了Linux系统的连接centOS系统 6双击centOS系统点击接受并保存则finalShell已经成功连接到CentOS系统 7验证finalShell是否成功连接CentOS系统在centos中输入和final中输入相同的命令如ls命令判断输入结果是否一样如果相同则连接成功 8将vmware虚拟机软件最小化而非关闭 9后续对Linux系统的操作可以直接在finalShell中进行 10注意Linux虚拟机如果重启有可能发生IP改变如果改变IP需要在finalShell中修改连接的IP地址后面会实现如何固定IP地址不发生变化 11如何在finalShell中修改连接的IP地址在finalshell中右键点击选中的centos系统点击编辑修改主机IP;
1.8 拓展WSLWindows Subsystem for Linux
1.8.1 掌握使用WSL获得Ubuntu系统环境
WSL是用于windows系统之上的Linux子系统其作用是可在windows系统中获得Linux系统环境并完全直接连接计算机硬件无序通过虚拟机虚拟硬件WSL是windows10自带功能需要开启无序下载windows系统—右键点击应用和功能—点击程序和功能按钮—点击启用或关闭windows功能—找到适用于Linux的Windows子系统勾选确定电脑重启安装WSL操作系统打开windows应用商店—搜索Ubuntu点击获取安装成功Terminal软件安装Ubuntu自带的终端窗口软件不太好用可以使用微软推出的Windows Terminal软件在应用商店中搜索terminal关键字找到Windows Terminal软件下载并安装
1.9 扩展虚拟机快照
1.9.1 掌握虚拟机快照的制作和还原
VMware虚拟机Workstation和Funsion支持为虚拟机制作快照通过快照将当前虚拟机的状态保存下来在以后可以通过快照恢复虚拟机到保存的状态在VMware Workstation Pro中制作并还原快照前提确保虚拟机推荐虚拟机centos是关机状态—右键虚拟机选中快照快照管理器—拍摄快照—快照列表中出现一个快照如何使用快照首先关闭centos虚拟机—右键虚拟机找到快照管理器—选中制作的快照—点击转到按钮点击是即可恢复
2.Linux基础命令会用
2.1 Linux的目录结构
2.1.1 掌握Linux系统的目录结构
Linux的目录结构是一个树形结构Windows系统可以拥有多个盘符如C盘、D盘、E盘C:、D:、E:Linux没有盘符这个概念只有一个根目录/所有文件都在它下面
2.1.2 掌握Linux系统的路径表达形式
在Linux系统中路径之间的层级关系使用:/来表示/usr/local/hello.txt第一个/表示根目录在Windows系统中路径之间的层级关系使用:\来表示D:\local\hello.txt;
2.2 Linux命令入门
2.2.1 Linux命令基础
2.2.1.1 掌握什么是命令
命令行即Linux终端Terminal是一种命令提示符页面以纯“字符”的形式操作系统可以使用各种字符化命令对系统发出操作指令命令即Linux程序一个命令就是一个Linux的程序命令没有图形化页面可以在命令行终端中提供字符化的反馈
2.2.1.2 掌握Linux命令的基础格式
无论是什么命令用于什么用途在Linux中命令有其通用的格式
command [-options][parameter]
command命令本身;
-options可选非必填命令的一些选项可以通过选项控制命令的行为细节
parameter可选非必填命令的参数多数用于命令的指向目标等
注意用法中的[]表示可选的意思
例如
ls -l/home/textls是命令本身-l是选项/home/text是参数意思是以列表的形式显示/home/text目录内的内容;
cp -r test1 test2cp是命令本身-r是选项test1和test2是参数意思是复制文件夹test1成为test2;2.2.2 ls命令入门
2.2.2.1 对照图形化页面快速体验第一个命令ls
ls命令的作用是列出目录下的内容语法细节如下
ls [-a -l -h] [Linux路径]
-a -l -h是可选的选项
Linux路径是此命令可选的参数
当不使用选项和参数直接使用ls命令本体表示以平铺形式列出当前工作目录下的内容2.2.2.2 理解什么是HOME目录当前工作目录
直接输入ls命令表示列出当前工作目录下的内容当前工作目录是Linux系统的命令行终端在启动的时候默认会加载 1当前登录用户的HOME目录作为当前工作目录所以ls命令列出的是HOME目录的内容 2HOME目录每个Linux操作系统用户在Linux系统的个人账户目录路径在/home/用户名 - 如图中的Linux用户是yueyue其HOME目录是/home/yueyue - Windows系统和Linux系统均设有用户的HOME目录
2.2.3 ls命令的参数和选项
2.2.3.1 掌握ls命令的参数使用
ls [-a -l -h] [Linux路径]
参数[Linux路径]
当ls不使用参数表示列出:当前工作目录的内容即用户的HOME目录
当ls使用参数表示指定一个Linux路径列出指定路径的内容2.2.3.2 掌握ls命令的选项使用
ls [-a -l -h] [Linux路径]
选项 [-a -l -h]
-a选项表示: all的意思即列出全部文件包含隐藏的文件/文件夹
以.开头的表示是LInux系统的隐藏文件/文件夹只要以.开头就能自动隐藏只有通过-a选项才能看到这些隐藏的文件/文件夹
-l选项表示以列表竖向排列的形式展示内容并展示更多信息
ls命令选项的组合使用语法中的选项是可以组合使用的ls -l -a、ls -la、ls -al这三种写法都是一样的表示同时应用-l和-a的功能
-h选项表示以易于阅读的形式列出文件大小单位如KB、MB、GB必须要搭配-l一起使用2.3 目录切换相关命令cd/pwd
2.3.1 掌握cd切换工作目录命令
当Linux终端命令行打开的时候会默认以用户的HOME目录作为当前的工作目录可通过cd命令更改当前所在的工作目录
cd命令来自英文Change Directory
语法cd [Linux路径]
cd 命令无需选项只有参数表示要切换到哪个目录下
cd命令直接执行不写参数表示回到用户的HOME目录2.3.2 掌握pwd展示当前工作目录命令
pwd命令来查看当前所在的工作目录
pwd命令来自英文Print Work Directory
语法pwd
pwd命令无选项、无参数、直接输入pwd即可2.4 相对路径、绝对路径和特殊路径符
2.4.1 掌握相对路径和绝对路径的概念和写法
相对路径以当前目录为起点描述路径的一种写法路径描述无需以/开头如cd Desktop
绝对路径以根目录为起点描述路径的一种写法路径描述以开头如cd /home/yueyue/Desktop2.4.2 掌握几种特殊的路径表示符
特殊路径符
.表示当前目录比如cd ./Desktop表示切换到当前目录下的Desktop目录内和cd Desktop效果一致
..表示上一级目录比如cd ..即可切换到上一级目录cd ../..切换到上二级的目录
~表示HOME目录比如cd ~即可切换到HOME目录或cd ~/Desktop切换到HOME内的Desktop目录2.5 创建目录命令mkdir
2.5.1 掌握通过mkdir命令创建目录文件夹
mkdir命令可以创建新的目录文件夹
mkdir来自英文Make Directory
语法mkdir [-p] Linux路径
参数必须表示Linux路径即要创建的文件夹的路径相对路径或绝对路径即可
-p选项可选表示自动创建不存在的父目录适用于创建连续多层级的目录
如相对路径mkdir yueyue绝对路径mkdir /home/yueyue/test
注意创建文件夹需要修改权限请确保操作均在HOME目录内不要在HOME外操作涉及到权限问题HOME外无法成功后续会讲解权限管控的知识2.6 文件操作命令part1touch、cat、more
2.6.1 掌握使用touch创建文件
touch命令创建文件
语法touch Linux路径
touch命令无选项参数必填表示要创建的文件路径相对、绝对、特殊路径符均可使用
如touch test.txt在当前路径下创建文件test.txt2.6.2 掌握使用cat、more查看文件内容
cat命令查看文件内容
语法cat Linux路径
cat命令同样没有选项只有必填参数参数表示被查看的文件路径相对、绝对、特殊路径都可以使用
如cat test.txt查看文件内容more命令查看文件内容同cat的区别
1.cat是直接将内容全部显示出来
2.more支持翻页如果文件内容过多可以一页一页的展示
语法more Linux路径
同样没有选项只有必填参数参数表示被查看的文件路径相对、绝对、特殊符都可以使用
注意使用more查看文件内容时在查看的过程中通过空格翻页通过q退出查看2.7 文件操作命令part2cp、mv
2.7.1 掌握使用cp复制文件、文件夹
cp命令可以用于复制文件\文件夹cp命令来自英文copy
语法cp [-r] 参数1 参数2
-r选项可选用于复制文件夹作用表示递归
参数1Linux路径表示被复制的文件或文件夹
参数2Linux路径表示要复制去的地方
如cp test1.txt test2.txt2.7.2 掌握使用mv移动文件、文件夹
mv命令可以用于移动文件\文件夹mv命令来自英文单词move
语法mv 参数1 参数2
参数1Linux路径表示被移动的文件或文件夹
参数2LInux路径表示要移动去的地方如果目标不存在则进行改名确保目标存在
如mv test.txt Desktop/2.7.3 掌握使用rm删除文件、文件夹
rm命令可以用于删除文件、文件夹
rm命令来自英文remove
语法rm [-r -f] 参数1 参数2 ....... 参数N
1.同cp命令一样-r选项用于删除文件夹
2.-f表示force强制删除不会弹出提示框确认信息普通用户删除内容不会弹出提示只有root管理员用户删除内容会有提示所以一般普通用户用不到-f选项
3.参数1、参数2 ... 参数N表示要删除的文件或文件夹路径按照空格隔开rm删除文件、文件夹 - 通配符
rm命令支持通配符*用来做模糊匹配
符号*表示通配符即匹配任意内容包含空例如
test*表示匹配任何以test开头的内容
*test表示匹配任何以test结尾的内容
*test*表示匹配任何包含test的内容
注意rm是一个危险的命令特别是在处于root超级管理员用户时请谨慎使用2.8 查找命令which、find
2.8.1 掌握使用which命令查找命令的程序文件
Linux命令的本体是一个个二进制可执行程序和windows系统中的.exe文件是一个意思
which命令查看所使用的一系列命令的程序文件存放在哪里
语法which 要查找的命令
如which cd2.8.2 掌握使用find使用查找指定文件
1.find命令-按照文件名查找
find 起始路径 -name “被查找文件名”
如find / -name “hello” 查找根目录下的根据文件名的模式查询指定文件名对应的文件
注意支持使用通配符*来做模糊查询符号*表示通配符即匹配任意内容包含空如find / -name “hello*”2.find命令-按照文件大小查找
语法find 起始路径 -size |-n[kMG]
- 、—表示大于和小于
- n表示大小数字
- kMG表示大小单位k小写字母表示kbM表示MBG表示GB
如查找小于10KB的文件find / -size -10k查找大于100MB的文件find / -size 100M2.9 grep、wc和管道符
2.9.1 掌握使用grep命令过滤文件内容
grep命令从文件中通过关键字过滤文件行
语法grep [-n] 关键字 文件路径
选项-n可选表示在结果中显示匹配的行的行号
参数关键字必填表示过滤的关键字带有空格或其它特殊符号建议使用将关键字包围起来
参数文件路径必填表示要过滤内容的文件路径可作为内容输入端口
如grep -n code test.txt2.9.2 掌握使用wc命令统计内容数量
wc命令统计文件的行数、单词数量等
语法wc [-c -m -l -w] 文件路径
选项-c,统计bytes数量
选项-m统计字符数量
选项-l统计行数
选项-w统计单词数量
参数文件路径被统计的文件可作为内容输入端口
如wc -l /test.txt2.9.3 掌握|管道符的概念和应用
管道符| 只要能产生输出内容的命令都可以和管道符搭配使用
管道符的含义将管道符左边命令的结果作为右便命令的输入
如cat hello.txt | grep hicat hello.txt的输出结果文件内容作为右边grep命令的输入被过滤文件将查看hello.txt文件中的内容作为grepgrep 关键字 文件路径的文件路径的值内容hi作为grep命令的关键字2.10 echo和重定向符
2.10.1 掌握使用echo命令输出内容
echo命令可以使用echo命令在命令行内输出指定内容
语法echo 输出的内容
1. 无需选项只有一个参数表示要输出的内容复杂内容可以使用包围
如echo Hello Linux
2.带有空格或\等特殊符号建议使用双引号包围因为不包围的化空格后很容易被识别为参数2尽管echo不受影响但要养成习惯
如echo Hello Linux2.10.2 掌握反引号的使用
反引号飘号命令使用号包围的内容会被作为命令执行而非普通字符
如echo pwd输出pwd对应的路径2.10.3 掌握tail命令跟踪文件更改
tail命令使用tail命令可以查看文件尾部内容跟踪文件的最新更改
语法tail [-f -num] Linux路径
参数Linux路径表示被跟踪的文件路径
选项-f表示持续跟踪
选项-num表示查看尾部多少行不填默认为10行2.10.4 掌握重定向符号的使用
符号将左侧命令的结果覆盖写入到符号右侧指定的文件中
符号将左侧命令的结果追加写入到符号右侧指定的文件中
如echo Hello Linux hello.txt将Hello Linux覆盖掉Hello.txt文件中原本内容echo Hello Linux hello.txt将Hello Linux追加到Hello.txt文件中原本内容后面2.11 vim编辑器
2.11.1 掌握使用VI\VIM编辑器完成文件编辑工作
vi\vim是visual interface的简称是Linux中最经典的文本编辑器
同图形化界面中的文本编辑器一样vi是命令行下对文本文件进行编辑的绝佳选择
vim是vi的加强版本兼容vi的所有指令不仅能编辑文本而且还具有shell程序编辑的功能可以不同颜色的字体来辨别语法的正确性极大方便了程序的设计和编辑性。
vi\vim编辑器的三种工作模式
1.命令模式command mode
命令模式下所敲的按键编辑器都理解为命令以命令驱动执行不同的功能此模型下不能自由进行文本编辑
2.输入模式Insert mode:
也就是所谓的编辑模式、插入模式此模式下可以对文件内容进行自由编辑
3.底线命令Last line mode:
通过命令模式进入以:开始通常用于文件的保存、退出
三种模式之间的转换
首先进入的是vi filename命令模式命令模式---输入iao---进入输入模式、输入模式---ESC键---命令模式、命令模式---:---底线命令模式、底线命令模式---命令以回车结束运行---命令模式、命令模式---输入:wq退出
如果需要通过vi/vim编辑器编辑文件请通过一下命令
vi 文件路径
vim 文件路径
vim兼容全部的vi功能后续全部使用vim命令
如果文件路径表示的文件不存在那么此命令会用于编辑新文件
如果文件路径表示的文件存在那么此命令用于编辑已有文件vi编辑器的快速体验
通过vi/vim命令编辑文件会打开一个新的窗口此时这个窗口就是命令模式窗口
命令模式vi编辑器的入口和出口
1.进入vi编辑器会进入命令模式
2.通过命令模式输入键盘指令可以进入输入模式
3.输入模式需要退回到命令模式然后通过命令可以进入底线命令模式
命令模式快捷键
1.i在当前光标位置进入输入模式
2. a在当前光标位置之后进入输入模式
3. I在当前行的开头进入输入模式
4. A在当前行的结尾进入输入模式
5. o在当前光标下一行进入输入模式
6. O在当前光标上一行进入输入模式
7. esc任何情况下输入esc都能回到命令模式
8. 键盘上、键盘k向上移动光标
9. 键盘下、键盘j向下移动光标
10. 键盘左、键盘h向左移动光标
11. 键盘右、键盘l向右移动光标
12. 0移动光标到当前行的开头
13. $移动光标到当前行的结尾
14. pageup(Pgup)向上翻页
15. pagedown(PgDn)向下翻页
16. /进入搜索模式
17. n向下继续搜索
18. N向上继续搜索
19. dd删除光标所在行的内容
20. nddn是数字表示删除当前光标向下n行
21. yy复制当前行
22. nyyn是数字复制当前行和下面的n行
23. p粘贴复制的内容
24. u撤销修改
25. ctrlr反向撤销修改
26. gg跳到首行
27. G跳到行尾
28. dG从当前行开始向下全部删除
29. dgg从当前行开始向上全部删除
30. d$从当前光标开始删除到本行的结尾
31. d0从当前光标开始删除到本行的开头
底线命令模式
在命令模式内输入:即可进入底线命令模式支持如下命令
32. :wq保存并退出
33.:q仅退出
33. :q!强制退出
34.:w仅保存
34. :set nu显示行号
35. :set paste设置粘贴模式 3.Linux权限管控懂权限
3.1 认知root用户
3.1.1 了解什么是root用户超级管理员
在Linux系统中拥有最大权限的账户名为root超级管理员 普通用户的权限一般在其HOME目录内是不受限的一旦出了HOME目录大多数地方普通用户仅有只读和执行权限无修改权限
3.1.2 掌握用户切换命令
su命令用于账户切换的系统命令其来源英文单词Switch User
语法su [-] [用户名]
-符号是可选的表示是否在切换用户后加载环境变量建议带上
参数用户名表示要切换的用户用户名也可以省略省略表示切换到root
切换用户后可以通过exit命令退回上一个用户也可以使用快捷键ctrl d
使用普通用户切换到其他用户需要输入密码如切换到root用户
使用root用户切换到其他用户无需密码可以直接切换3.1.3 掌握sudo命令
在我们得知密码时通过su命令切换到root得到最大权限但我们不建议长期使用root用户避免带来系统损坏可以使用sudo命令为普通的命令授权临时以root身份执行
语法sudo 其他命令
在其他命令之前带上sudo即可为这一条命令临时赋予root授权
但不是所有的用户都有权利使用sudo我们需要为普通用户配置sudo认证
为普通用户配置sudo认证
切换到root用户执行visudo命令会自动通过vi编辑器打开/etc/sudoers
在文件的最后添加yueyue ALL(ALL) NOPASSWD: ALL
其中最后的NOPASSWD:ALL表示sudo命令无需输入密码
最后通过保存
切换回普通用户sudo ls /root
执行的命令均以root运行3.2 用户、用户组管理
3.2.1 理解用户、用户组的概念
Linux系统中可以
配置多个用户配置多个用户组用户可以加入多个用户组中 Linux中关于权限的管理级别有2个级别分别针对用户的权限控制针对用户组的权限控制 如针对某文件可以控制用户的权限也可以控制用户组的权限所以需要学习在Linux中进行用户、用户组管理基础命令为后面学习权限控制打下基础
3.2.2 掌握用户、用户组管理的相关命令
用户组管理
6. 创建用户组groupadd 用户组名
7. 删除用户组groupdel 用户组名
用户管理以下命令需root用户执行
8. 创建用户useradd [-g -d] 用户名选项-g指定用户的组不指定-g会创建同名组并自动加入指定-g需要组已经存在如已存在同名组必须使用-g选项-d指定与用户HOME路径不指定HOME目录默认在/home/用户名
9. 删除用户userdel [-r] 用户名选项-r删除用户的HOME目录不使用-r删除用户时HOME目录保留
10. 查看用户所属组id [用户名] 参数用户名被查看的用户如果不提供则查看自身
11. 修改用户所属组usermod -aG 用户组 用户名将指定用户加入指定用户组中
查看当前系统中有哪些用户getent命令
语法getent password
结果信息7份用户名:密码(x)用户ID:组ID:描述信息(无用):HOME目录:执行终端(默认bash)3.3 查看权限控制
3.3.1 掌握查看Linux文件的权限管控信息
通过ls -l 可以以列表形式查看内容并显示权限细节
表示文件、文件夹的权限控制信息表示文件、文件夹所属用户表示文件、文件夹所属用户组
权限细节总共分为10个槽位ls -l
所属用户权限-表示文件d表示文件夹l表示软链接r表示读权限w表示写权限x表示执行权限
针对文件、文件夹的不同rwx的含义有细微差别
r针对文件可以查看文件内容针对文件夹可以查看文件夹内容如ls命令
w针对文件表示可以修改此文件针对文件夹可以在文件夹内创建、删除、改名等操作
x针对文件表示可以将文件作为程序执行针对文件夹表示可以更改工作目录到此文件夹即cd进入
1. -或d或l
2. r或-
3. w或-
4. x或-
所属用户组权限
5. r或-
6. w或-
7. x或-
其它用户权限
8. r或-
9. w或-
10.x或- 3.3.2 掌握读、写、执行三种权限的含义
3.4 修改权限控制–chmod
可以使用chmod命令修改文件、文件夹的权限信息 普通用户无法修改所属为其他用户或组所以此命令只适用于root用户执行
3.4.1 掌握使用chmod修改权限信息
注意只有文件、文件夹的所属用户或root用户可以修改
语法chmod [-R] 权限 文件或文件夹
选项-R对文件夹内的全部内容应用同样的操作
如chmod urwx,grx,ox hello.txt将文件权限修改为rwxr-x--x其中u表示user所属用户权限g表示group组权限o表示other其他用户权限
chmod -R urwx,grx,ox test将文件夹test以及文件夹内全部内容权限设置为rwxr-x--x;3.4.2 掌握使用数字序号标记权限推荐使用
权限可以用3位数字来代表第一位数字表示用户权限第二位表示用户组权限第三位表示其他用户权限
数字的细节如r记为4w记为2x记为1可以有3.5 修改权限控制–chown
3.5.1 掌握使用chown修改所属用户、用户组
语法chown [-R] [用户] [:] [用户组] 文件或文件夹
选项-R同chmod对文件夹内全部内容应用相同规则
选项用户修改所属用户
选项用户组修改所属用户组
: 用于分隔用户和用户组
如chown root hello.txt 将hello.txt所属用户修改为root;
chown :root hello.txt将hello.txt所属用户组修改为root
chown root:yueyue hello.txt将hello.txt所属用户修改为root,用户组修改为yueyue
chown -R root test将文件夹test的所属用户修改为root并对文件夹内全部内容应用同样规则4.Linux实用操作熟练
4.1 各类小技巧快捷键
4.1.1 强制停止ctrl c
4.1.2 退出、登出ctrl d
4.1.3 历史命令搜索
1. history查看所有历史执行的命令
2. !命令前缀自动执行上一次匹配前缀的命令
3. 通过快捷键ctrlr输入内容去匹配历史命令如果搜索到的内容是需要的那么回车键可以直接执行键盘左右键可以得到此命令不执行4.1.4 光标移动
1. ctrl a跳到命令开头
2. ctrl e跳到命令结尾
3. ctrl 键盘左键向左跳一个单词
4. ctrl 键盘右键向右跳一个单词
5. 清屏ctrll可以清空终端内容或通过命令clear得到同样效果4.2 软件安装
Linux系统的应用商店
操作系统安装软件有许多种方式一般分为
1.下载安装包自行安装
- 如win系统使用exe文件.msi文件等
- 如mac系统使用dmg文件、pkg文件等
2. 系统的应用商店内安装
- 如win系统有Microsoft Store商店
- 如mac系统有App Store商店
Linux系统同样支持这两种方式首先学习使用Linux命令行内的“应用商店”yum命令安装软件4.2.1 掌握使用yum为CentOS系统安装软件
yum命令
yumRPM包软件管理器用于自动化安装配置Linux软件并可以自动解决依赖问题。
语法yum [-y] [install | remove | search] 软件名称
选项-y自动确认无需手动确认安装或卸载过程
install安装
remove卸载
search搜索
yum命令需要root权限可以su切换到root或使用sudo提权yum命令需要联网
如
- yum [-y] install wget通过yum命令安装wget程序
- yum [-y] remove wget通过yum命令卸载wget命令
- yum search wget通过yum命令搜索是否有wget安装包4.2.2 掌握使用apt为Ubuntu安装软件拓展
前面学习的各类Linux命令都是通用的但是软件安装CentOS系统和Ubuntu是使用不同的包管理器。
CentOS使用yum管理器Ubuntu使用apt管理器
通过前面学习的WSL环境可以得到Ubuntu运行环境
语法 apt [-y] [install | remove | search] 软件名称
用法和yum一致同样需要root权限
如
apt install wget安装wget
apt remove wget移除wget
apt search wget搜索wget4.3 systemctl
4.3.1 掌握使用systemctl命令控制软件的启动和关闭
Linux系统很多软件内置或第三方均支持使用systemctl命令控制启动、停止、开机自启动能够被systemctl管理的软件一般也称之为服务
语法systemctl start | stop | status | enable | disable 服务名
start启动stop关闭status查看状态enable开启开机自启disable关闭开机自启
系统内置的服务比较多如
NetworkManager主网络服务
network副网络服务
firewalld防火墙服务
sshdssh服务FinalShell远程登录Linux使用的就是这个服务除了内置的服务以外部分第三方软件安装后也可以以systemctl进行控制
yum install -y ntp安装ntp软件可以通过ntpd服务名配合systemctl进行控制
部分软件安装后没有自动集成到systemctl中我们可以手动添加4.4 软连接
4.4.1 掌握使用ln命令创建软连接
ln命令创建软连接
在系统中创建软连接可以将文件、文件夹链接到其他位置类似Windows系统中的《快捷方式》
语法ln -s 参数1 参数2
-s选项创建软连接
参数1被链接的文件或文件夹
参数2要链接去的目的地
实例
ln -s /etc/yum.conf~/yum.conf
ln -s /etc/yum~/yum4.5 日期、时区
4.5.1 掌握date命令查看日期时间
date命令
通过date命令可以在命令行中查看系统的时间
语法date [-d] [格式化字符串]
- -d按照给定的字符串显示日期一般以用于日期计算
- 格式化字符串通过特定的字符串标记来控制显示的日期格式
1. %Y年
2. %y年份后两位数字00~99
3. %m月份01~12
4. %d日01~31
5. %H小时00~23
6. %M分钟00~59
7. %S秒00~60
8. %s自1970-01-01 00:00:00 UTC到现在的秒数时间戳4.5.2 掌握修改Linux系统的时区
通过date查看的日期时间是不准确的是因为系统默认时区非中国的东八区需要通过root权限执行如下命令修改时区为东八区时区
rm -f /etc/localtime
sudo ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
将系统自带的localtime文件删除并将/usr/share/zoneinfo/Asia/Shanghai文件链接为localtime文件即可4.5.3 掌握使用ntp进行时间同步和校准
ntp程序可以通过ntp程序自动校准系统时间
安装ntpyum -y install ntp
启动并设置开机自启
systemctl start ntpd
systemctl enable ntpd
当ntpd启动后会定期的帮我们联网校准系统的时间
也可以手动校准需root权限ntpdate -u ntp.aliyun.com
通过阿里云提供的服务网址配合ntpdate安装ntp后会附带这个命令命令自动校准4.6 IP地址、主机名
4.6.1 掌握什么是IP地址
IP地址每一台联网的电脑都会有一个地址用于和其他计算机进行通讯
IP地址主要有两个版本V4版本和V6版本V6很少用
IPv4版本的地址格式a.b.c.d其中abcd表示0~255的数字如192.168.88.101就是一个标准的IP地址
可以通过命令ifconfig查看本机IP地址如无法使用ifconfig命令可以安装yum -y install net-tools特殊IP地址
除了标准的IP地址以外还有几个特殊的IP地址需要了解
1 127.0.0.1这个IP地址用于指代本机
20.0.0.0特殊IP地址可以用于指代本机可以在端口绑定中用来确定绑定关系在一些IP地址限制中表示所有IP的意思如放行规则设置为0.0.0.0表示允许任意IP访问4.6.2 掌握什么是主机名
每一台电脑除了对外联络地址IP地址以外也可以有一个名字称之为主机名
无论是Windows或Linux系统都可以给系统设置主机名
Windows系统主机名设备主机名
Linux系统查看主机名执行命令“hostname”
Linux系统设置主机名需root权限hostnamectl set-hostname 主机名用于设置主机名
重新登录FinalShell即可看到主机名已经正确显示修改后的主机名4.6.3 掌握什么是域名解析
域名解析
实际上通过字符化的地址去访问服务器很少指定IP地址如www.baidu.com会打开百度网址称之为域名
域名解析
1. 先查看本机的记录私人地址本系统内部记录DNS解析Windows看C:\Windows\System32\drivers\etc\hostsLinux看/etc/hosts
2. 再联网去DNS服务器如114.114.114.1148.8.8.8等询问
DNS服务器的作用就是当查询的时候给出DNSDNS服务器会给出相对应的IP地址4.6.4 掌握如何在VMware Workstation中配置Linux系统的固定IP地址用于Windows系统
当前我们虚拟机的Linux操作系统其IP地址是通过DHCP服务获取的 DHCP动态获取IP地址即每次重启设备后都会获取一次可能导致IP地址频繁变更 原因1办公电脑IP地址变化无所谓但我们要远程连接到Linux系统如果IP地址经常变化我们就要频繁修改适配很麻烦 原因2在刚刚我们配置了虚拟机IP地址和主机名的映射如果IP频繁更改我们也需要频繁更新映射关系 综上所述需要IP地址固定下来就不要变化了
在VMware Workstation中配置固定IP
配置固定IP需要2大步骤
1. 在VMware Workstation(或Fusion)中配置IP地址网关和网段IP地址的范围
2. 在Linux系统中手动修改配置文件固定IP
手动配置文件使用vim编辑/etc/sysconfig/network-scripts/ifcfg-ens33文件填入如下内容
1修改BOOTPROTOstatic
2新增IPADDR192.168.88.130 IP地址NETMASK255.255.255.0子网掩码固定255.255.255.0GATEWAY192.168.88.2网关和VMware虚拟网络编辑器中设置的一致DNS1192.168.88.2DNS1设置为网关即可
3执行systemctl restart network重启后就可以执行ifconfig查询修改后的新IP地址4.6.5 掌握如何在VMware Fusion中配置Linux系统的固定IP地址用于MacOS系统
在VMware Fusion中配置固定IP
步骤一先修改VMware Fusion的网络设置
1.打开Mac系统的终端程序名叫终端并执行如下命令
2.在终端内执行sudo su - 并输入个人系统密码切换到root用户
3.先备份一下文件cp /Library/Preferences/VMware\Fusion/networking/Library/Preferences/VMware\Fusion/networking.backup
通过vim编辑器修改文件vim/Library/Preferences/VMware\Fusion/networking
4.备份文件cp /Library/Preferences/VMware\Fusion/vmnet8/nat.conf/Library/Preferences/VMware\Fusion/networking.backup
修改文件vim /Library/Preferences/VMware\Fusion/vmnet8/nat.conf在NAT gateway address下修改ip为192.168.88.2网关的IP并保存退出
5.启动VMware Fusion进入Linux虚拟机4.7 网络传输
4.7.1 下载和网络请求
4.7.1.1 掌握使用ping命令检查服务器是否可联通
ping命令可以通过ping命令检查指定的网络服务器是否是可联通状态
语法ping [-c num] ip或主机名
选项-c检查的次数不使用-c选项将无限次数持续检查
参数ip或主机名被检查的服务器的ip地址或主机名地址
如
检查到baidu.com是否联通ping baidu.com
检查到39.156.66.10是否联通并检查3次ping -c 3 39.156.66.104.7.1.2 掌握使用wget命令下载文件
wget命令是非交互式的文件下载器可以在命令行内下载网络文件
语法wget [-b] url
选项-b可选后台下载会将日志写入到当前工作目录的wget-log文件
参数url下载链接
如
下载apache-hadoop3.3.0版本wget http://archive.apache.org/dist/hadoop/common/hadoop-3.3.0/hadoop-3.3.3.tar.gz
在后台下载wget -b http://archive.apache.org/dist/hadoop/common/hadoop-3.3.0/hadoop-3.3.3.tar.gz
通过tail命令可以监控后台下载进度tail -f wget-log
注无论下载是否完成都会生成要下载的文件如果下载未完成请及时清理未下载不可用的文件
快速取消执行指令CTRLC4.7.1.3 掌握使用curl命令发起网络请求
curl命令可以发送http网络请求可用于下载文件、获取信息等
语法curl [-O] url
选型-O用于下载文件当url是下载链接时可以使用次选项保存文件
参数url要发起请求的网络地址
如
向cip.cc发起网络请求curl cip.cc
向python.yueyue.com发起网络请求curl python.yueyue.com
通过curl下载hadoop-3.3.0安装包curl -O http://archive.apache.org/dist/hadoop/common/hadoop-3.3.0/hadoop-3.3.0.tar.gz4.7.2 端口
4.7.2.1 掌握端口的概念
端口是设备与外界通讯交流的出入口端口可以分为物理端口和虚拟端口两类
物理端口又可称之为接口是可见的端口如USB端口RJ45网口HDMI端口等
虚拟端口是指计算机内部的端口是不可见的是用来操作系统和外部进行交互使用的
计算机程序之间的通讯通过IP只能锁定计算机但无法锁定具体的程序
通过端口可以锁定计算机上具体的程序确保程序之间进行沟通
类似于IP地址相当于小区地址在小区内可以有许多住户程序而门牌号端口就是各个住户程序的联系地址。Linux系统是一个超大号小区可以支持65535个端口这6万多个端口分为3类进行使用
1.公用端口1~1023通常用于一些系统内置或知名程序的预留使用如SSH服务的22端口HTTPS服务的443端口非特殊需要不要占用范围的端口
2.注册端口1024~49151通常可以随意使用用于松散的绑定一些程序\服务
3.动态端口49152~65535通常不会固定绑定程序而是当程序对外进行网络链接时用于临时使用
如
计算机A的微信连接计算机B的微信A使用的50001即动态端口临时找一个端口作为出口计算机B的微信使用端口5678即注册端口长期绑定此端口等待别人连接查看端口占用
1.可以通过Linux命令去查看端口的占用情况
使用nmap命令安装nmapyum -y install nmap
语法nmap被查看的IP地址如nmap 127.0.0.14.7.2.2 掌握netstat命令的基本使用
2.可以通过netstat命令查看指定端口的占用情况
语法netstat -anp | grep 端口号安装netstat: yum -y install net -tools4.8 进程管理
4.8.1 掌握进程的概念
进程程序运行在操作系统中是被操作系统所管理的
为管理运行的程序每一个程序在运行的时候便被操作系统注册为系统中一个进程并会为每个进程都分配一个独有的进程ID(进程号)
Windows系统任务管理器Linux系统查看进程ps -ef4.8.2 掌握如何查看进程、关闭进程
查看进程可以通过ps命令查看Linux系统中的进程信息
语法ps [-e -f]
选项-e显示出全部的进程
选项-f以完全格式化的形式展示信息展示全部信息
一般来说固定用法就是ps -ef列出全部进程的全部信息
具体信息解释从左到右
UID进程所属的用户ID;
PID进程的进程号ID
PPID进程的父ID启动此进程的其它进程
C此进程的CPU占用率百分比
STIME进程的启动时间
TTY启动此进程的终端序号如显示表示非终端启动
TIME进程占用CPU的时间
CMD进程对应的名称或启动路径或启动命令查看指定进程
在FinalShell中执行命令tail可以看到此命令一直阻塞在哪里
在FianlShell中复制一个标签页执行ps -ef找到tail这个程序的进程信息
问题是否会发现列出的信息太多无法准确的找到或很麻烦怎么办
答可以使用管道符配合grep来进行过滤如ps -ef | grep tail即可准确的找到tail命令的信息
过滤不仅仅过滤名称进程号用户ID等等都可以被grep过滤如ps -ef | grep 30001过滤带有30001关键字的进程信息一般指代过滤30001进程号关闭进程
在Windows系统中可以通过任务管理器选择进程后点击结束进程从而关闭它同样在Linux中可以通过kill命令关闭进程
语法kill [-9] 进程ID
选项-9表示强制关闭进程不使用此选项会向进程发送信号要求其关闭但是否关闭看进程自身的处理机制4.9 主机状态
4.9.1 掌握查看主机运行状态的监控命令
top命令查看系统资源占用
可以通过top命令查看CPU、内存使用情况类似Windows的任务管理器
默认每5秒刷新一次
语法直接输入top即可按q或ctrlc退出
top命令内容解释
第一行程序名称
第二行进程个数
第三行cpu使用率
第四、五行物理内存、虚拟内存
top命令支持多种选项...
top交互式选项...df命令查看硬盘的使用情况
语法df [-h]
选项-h以更加人性化的单位显示iostat命令查看CPU、磁盘的相关信息
语法iostat [-x] [num1] [num2]
选项-x显示更多信息
num1数字刷新间隔num2数字刷新次数sar命令查看网络的相关统计sar命令非常复杂这里仅简单用于统计网络
语法sar -n DEV num1 num2
选项-n查看网络DEV表示查看网络接口
num1刷新间隔默认查看一次就结束num2查看次数默认无限此次数4.10 环境变量
4.10.1 理解环境变量的作用
环境变量是操作系统在运行时记录的一些关键性信息用以辅助系统运行在Linux系统中执行env命令即可查看当前系统中记录的环境变量
环境变量是一种KeyValue型结构即名称和值环境变量PATH
PATH记录了系统执行任何命令的搜索路径路径之间以:隔开
当执行任何命令都会按照顺序从上述路径中搜索要执行的程序的本体4.10.2 掌握符号$的作用
$符号
在Linux系统中$符号被用于取“变量”的值
环境变量记录的信息除了给操作系统自己使用外如果我们想要取用也可以使用
取得环境变量的值就可以通过语法$环境变量名 来取得
如echo $PATH就可以取得PATH这个环境变量的值并通过echo语句输出出来
或echo ${PATH}ABC当和其他内容混合在一起时可以通过{}来标注取的变量是谁自行设置环境变量
Linux环境变量可以用户自行设置其中分为
临时设置语法export 变量名变量值
永久生效针对当前用户生效配置在当前用户的~/bashrc文件中针对所有用户生效配置在系统的/etc/profile文件中并通过语法source配置文件进行立刻生效或重新登录FinalShell生效4.10.3 掌握在Linux中配置环境变量
4.11 上传、下载
4.11.1 掌握通过FinalShell在Linux系统中进行上传、下载
1. 浏览文件系统找到合适的文件右键点击下载即可传输到本地电脑
2. 浏览文件系统找到合适的目录将本地电脑的文件拓展进入即可方便的上传数据到Linux中4.11.2 掌握rz、sz命令
除了通过FinalShell的下方窗体进行文件的传输以外也可以通过rz、sz命令进行文件传输
rz、sz命令通过安装可以通过yum -y install lrzsz即可安装
rz命令进行上传语法直接输入rz即可
sz命令进行下载语法sz要下载的文件
文件会自动下载到桌面fsdownload文件夹中4.12 压缩、解压
常见压缩格式
zip格式Linux、Windows、MacOS常用
7zipWindows系统常用
rarWindows系统常用
tarLinux、MacOS常用
gzipLinux、MacOS常用
在Windows系统中常用的软件如winrar、bandizip等软件都支持各类常见的压缩格式4.12.1 掌握使用tar命令压缩或解压tar或gzip文件
tar命令
Linux和MacOS系统常用有2种压缩格式后缀名分别是
1. .tar称之为tarball归档文件即简单的将文件组装到一个.tar的文件内并没有太多文件体积的减少仅仅是简单的封装
2. .gz也常见为.tar.gz .gzip格式压缩文件即使用gzip压缩算法将文件压缩到一个文件内可以极大的减少压缩后的体积
针对这两种格式使用tar命令均可以进行压缩和解压缩的操作
语法tar [-c -v -x -f -z -C] 参数1 参数2 ... 参数N
-c创建压缩文件用于压缩模式
-v显示压缩解压过程用于查看进度
-x解压模式
-f要创建的文件或要解压的文件-f选项注意必须在所有选项中位置处于最后一个
-zgzip格式不使用-z就是普通的tarball格式注意一般处于选项位第一个
-C选择解压的目的地用于解压模式单独使用和解压所需的其他参数分开4.12.2 掌握使用zip、unzip命令压缩或解压zip文件
zip命令
可以使用zip命令压缩文件位zip压缩包
语法zip [-r] 参数1 参数2 ... 参数N
-r被压缩的包含文件夹时需要使用-r选项和rm、cp等命令的-r效果一致unzip命令
使用unzip命令可以方便的解压zip压缩包
语法unzip [-d] 参数
-d指定要解压去的位置同tar的-C选项
参数被解压的zip压缩包文件
注意同名的内容会被替换掉5.实战软件部署深入掌握
6.脚本自动化用的更溜
7.项目实战学到经验
8.云平台技术紧跟潮流