Linux 学习笔记

一、 概述

1. 操作系统

① 计算机由硬件和软件组成

② 操作系统属于软件范畴,主要作用是协助用户调度硬件工作,充当用户和计算机硬件之间的桥梁

③ 常见的操作系统

 PC端:Windows、Linux、MacOS

 移动端:Android、IOS、鸿蒙

2. linux系统

⭐ 出生日期:1991年

(1)组成

linux 系统由 linux系统内核 和 系统级应用程序 两部分组成

① 内核:调度CPU、调度内存、调度文件系统、调度网络通讯、调度IO 等

② 系统记应用程序:文件管理器、任务管理器、图片查看、音乐播放 等

(2)虚拟机

问题来了,怎么去暗转一个 Linux 系统呢?

① 虚拟机:通过虚拟化技术,在电脑内,虚拟出计算机硬件,并给虚拟的硬件安装操作系统,
  即可得到一台虚拟的电脑(笔者使用 VMware)
② 可以给电脑重装一个系统(不建议) 

(3)第三方工具

finallshell

操作作Linux系统中间跨越VMware窗口会导致交互不太方便
我们只需要使用命令行无需使用图形化,所以通过命令行远程连接使用即可

二、基础知识

1. 目录结构

linux 的目录系统是以 “ / ” 为最高目录(根目录),所有文件都在它下面

Linux 学习笔记_第1张图片
‍ linux 中层级关系用 反斜杠 / 表示,不同于 windows 的 正斜杠 \

2. 基础命令

‍ 命令表示说明:command [ -options ] [ parameter ]

⭐ command:命令本身
⭐ -options:[可选项] (控制命令的一些操作细节)
⭐ parameter:[可选项](命令的参数,多用于指向特定目标)
⭐ [ ]:表示是可写可不写
(1) ls:列出目录下的内容
 ls [ -a -l -h ] [ 路径 ]
⭐ -a:表示列出全部文件(包括隐藏文件)
⭐ -l:表示以竖排的方式列出文件列表
⭐ -h:表示以易于阅读的方式列出文件(必须搭配 -l 一起使用),比如 列出文件大小
(2) cd:切换工作目录(change directory)
 cd [ 路径 ]
⭐ 不写路径默认切换到 home 目录
(3) pwd:查看当前所在工作目录(print work directory)(无选项无参数)
(4) 特殊路径符
⭐ .   :表示当前目录
⭐ ..  :表示上一级目录
⭐ ~   :表示 home 目录
(5) mkdir:创建目录命令
 mkdir [-p] 路径
⭐ -p:表示自动创建不存在的父目录,可以一次性创建多层文件夹
(6) 文件操作命令Ⅰ

都支持 相对路径、绝对路径、特殊路径

 touch 路径:创建文件

 cat 路径:查看文件内容,一次性全部展示出来

 more 路径:类似 cat,支持翻页
(7) 文件操作命令Ⅱ

cp:文件拷贝

 cp [-r] 参数1 参数2
⭐ -r:复制文件夹使用
⭐ 参数1:源路径(源文件)
⭐ 参数2:目标路径(目的地)

mv:文件移动

 mv 参数1 参数2
⭐ 参数1:源文件路径
⭐ 参数2:目的地路径

rm:删除文件

 rm [-r -f] 参数1 参数2 ……参数n
⭐ -r:用于删除文件夹
⭐ -f:表示强制删除(不弹出确认信息)【普通用户删除也没有提示信息,root用户才有提示,所以一般用户用不上】
⭐ 参数:表示要删除的文件、文件夹路径,可以多个,用空格隔开
‍ 支持使用通配符:* (任意)
	 a*:以a开头
	 *a:以a结尾
	 *a*:包含a 
(8) 查找命令

查找 命令 路径的命令(命令是一个 exe文件)

 which:要查找的“命令”
⭐ 比如:pwd 就是一个命令,which 也是一个命令

按文件名查找文件

 find 起始路径 -name "要查找的文件名"
‍ 支持通配符模糊查询

按文件大小查找文件

 find 起始路径 -size +/- n[k/M/G]
⭐ +/-:表示大于和小于
⭐ n:表示文件大小的数值
⭐ k/M/G:表示文件大小的单位(k小写,其他大写)kb、Mb、Gb
(9) grep、wc和管道符

过滤器 grep

 grep [-n] 关键字 文件路径
⭐ -n:表示在结构显示匹配的行号
⭐ 关键字:表示需要过滤的关键字(相当于筛选)(带有特殊符号得使用 双引号 “” 包住避免产生歧义)
⭐ 文件路径:表示要过滤内容的文件路径(可作为内容输入端口)

wc:做数量统计

 wc [-c -m -l -w] 文件路径
⭐ -c:统计 bytes 数量
⭐ -m:统计字符数量
⭐ -l:统计行数
⭐ -w:统计单词数量
⭐ 文件路径:被统计的文件,可作为内容输入端口

管道符:| (将左端命令的结果 作为 右边命令 的输入)

(10) echo、tail和重定向

echo:在命令行输出指定内容

 echo 输出内容
⭐ 输出内容过于复杂的时候可以用双引号包着 “”

‍ 反引号:` `
⭐ echo ` pwd`
⭐ 将反引号包围的内容作为命令执行

重定向符:> 和 >>

 例:echo “content”  > test.txt :覆盖写入 content 到 test.txt 中
⭐ >:将左侧命令的结果 覆盖 写入到 右侧指定的文件中
⭐ >>:将左侧命令的结果 追加 写入 右侧指定文件的末尾

tail:查看文件末尾 部内容,跟踪文件的最新更改

 tail [-f -num] 路径
⭐ -f:表示持续跟踪
⭐ -num:表示查看尾部多少行,不填默认十行
(11) vi编辑器

vi / vim:文本编辑器 (visual interferce) 【vim 兼容所有的 vi 功能】

Linux 学习笔记_第2张图片

 vi / vim 文件路径
⭐ 打开新窗口,进入的是命令模式

 命令模式(Command mode)
⭐ 键盘输入的都是命令
⭐ 按 i 进入 输入模式  ……
⭐ 按 “:” 进入底线命令模式

 输入模式(insert mode)
⭐ (编辑模式)可以对文本内容进行资源编辑
⭐ 按 esc 退回 命令模式

 底线命令模式(last line mode)
⭐ 通常用于文件的保存和退出
⭐ :wq 保存并退出
⭐ :q 仅退出
⭐ :q! 强制退出
⭐ :w 仅保存
⭐ :set nu 显示行号
⭐ :set paste 设置粘贴模式 
(12)附加

⭐ 命令 --help:任何命令都支持查询命令帮助(ls --help)

⭐ man 命令:查看命令手册

⭐ ctrl + c :终止命令

⭐ ctrl + d :退出或登出

⭐ history:查看历史输入过的命令

⭐ !+命令前缀:自动执行最近一次匹配前缀的命令

⭐ ctrl+r:输入内容匹配历史命令

搜到的内容后
① 回车:直接执行
② 键盘左右方向键,便可修改此命令(不执行)

⭐ 光标移动快捷键

① ctrl+a:跳到开头
② ctrl+e:跳到命令结尾
③ ctrl+键盘左键、右键:向左、向右跳过一个单词

⭐ ctrl+l(clear命令):清屏

三、实用操作

1. 软件安装

centos:yum:RPM包软件管理器,用于自动化安装配置 linux 软件,并可以自动解决依赖问题
Ubuntu:apt

 yum [-y] [install | remove | search] 软件名称
⭐ 选项:-y 自动确认,跳过二次确认安装或卸载的过程
⭐ install:安装
⭐ remove:卸载
⭐ search:搜索

‍ yum 需要 root 权限,而且需要联网

2. systemctl

控制服务的 启动、停止、开机自启

 systemctl start | stop | status | enable | disable 服务名
⭐ start:启动
⭐ stop: 停止
⭐ status:查看状态
⭐ enable:开启开机自启动
⭐ disable:关闭开机自启动

系统的内置服务

⭐ NetworkManager:主网络服务
⭐ network:副网络服务
⭐ firewall:防火墙服务
⭐ sshd:ssh服务(可用于远程登录)

3. 软链接

在系统中创建软链接,相当于创建一个 windows 文件系统的快捷方式

 ls -s 参数1 参数2   (是 L 的小写,不是 i 的大写)
⭐ -s 选项:创建软链接
⭐ 参数1:被链接的文件或文件夹
⭐ 参数2:要链接去的目的地

4. 日期、时区

date 命令查看系统时间

 date [-d] [+格式化字符串]
⭐ -d 按照指定的字符串显示日期,一般用于日期计算
   "+1 day"
   "-1 day"
   "+1 month"
   ……
⭐ 格式化字符串:通过特定的字符串标记,来控制显示的日期格式
   %Y:年
   %y:年份后两位数字(21,22,23)
   %m:月份(01,02……12)
   %d:日(01,02……31)
   %H:小时(00,01……59)
   %M:分钟(00,01……59)
   %S:秒(00,01……60)
   %s:自 1970-01-01 00:00:00 UTC 到现在的秒数(以秒数为单位的时间戳)

修改 linux 时区

⭐ 将系统自带的 localtime 文件删除
	rm -f /etc/localtime
⭐ 将 上海时区的文件 软链接为  localtime 文件即可
	sudo ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

ntp 程序:自动校准系统时间

 yum -y install ntp :安装程序

 systemctl start ntpd:启动程序

 systemctl enable ntpd:开启开机自启动

⭐ 手动校准:ntpdate: -u ntp.aliyun.com (需要 root 权限) (阿里云的服务网址)

5. IP 地址、主机名

(1) IP 地址

格式:a.b.c.d:其中a、b、c、d 都是 0~255 之间数字

‍ 特殊的 IP 地址

⭐ 127.0.0.1:本机 IP 地址 
⭐ 0.0.0.0:特殊 IP 地址
  可以指本机
  可以在端口中用来确定绑定关系
  在一些 IP 地址限制中,表示所有 IP 的意思,当放行规则设为 0.0.0.0,表示允许任何 IP 访问

 ifconfig:查看 IP 地址

(2)主机名

 hostname:查看系统主机名

 hostname set-hostname 名:修改主机名(需要 root)

(3)域名解析

IP 地址又臭又长,正经人谁记啊?域名应运而生(例:www.baidu.com【百度的域名】)

怎么通过域名访问到服务器的呢?

域名解析器(江湖人称 地址本)
Linux 学习笔记_第3张图片⭐ 本地私人地址本:

 Windows:C:\Windows\System32\drivers\etc\hosts  【管理员身份用记事本可修改】
 Linux:/etc/hosts 【root 权限即可修改】

⭐ 联网地址本:DNS服务器

 180.76.76.76(百度)
 223.5.5.5(阿里)
 114.114.114.114(电信)
 8.8.8.8(谷歌)
……

(4)配置虚拟机固定 IP

传送门: 简直山路十八弯

你可能感兴趣的:(linux,linux,学习,运维)