notebook notebook
首页
  • 计算机网络
  • 计算机系统
  • 数据结构与算法
  • 计算机专业课
  • 设计模式
  • 前端 (opens new window)
  • Java 开发
  • Python 开发
  • Golang 开发
  • Git
  • 软件设计与架构
  • 大数据与分布式系统
  • 常见开发工具

    • Nginx
  • 爬虫
  • Python 数据分析
  • 数据仓库
  • 中间件

    • MySQL
    • Redis
    • Elasticsearch
    • Kafka
  • 深度学习
  • 机器学习
  • 知识图谱
  • 图神经网络
  • 应用安全
  • 渗透测试
  • Linux
  • 云原生
面试
  • 收藏
  • paper 好句
GitHub (opens new window)

学习笔记

啦啦啦,向太阳~
首页
  • 计算机网络
  • 计算机系统
  • 数据结构与算法
  • 计算机专业课
  • 设计模式
  • 前端 (opens new window)
  • Java 开发
  • Python 开发
  • Golang 开发
  • Git
  • 软件设计与架构
  • 大数据与分布式系统
  • 常见开发工具

    • Nginx
  • 爬虫
  • Python 数据分析
  • 数据仓库
  • 中间件

    • MySQL
    • Redis
    • Elasticsearch
    • Kafka
  • 深度学习
  • 机器学习
  • 知识图谱
  • 图神经网络
  • 应用安全
  • 渗透测试
  • Linux
  • 云原生
面试
  • 收藏
  • paper 好句
GitHub (opens new window)
  • Linux

    • 韩顺平 2021 Linux 课程笔记

      • 基础篇
        • 1. Linux 入门
        • 2. VM 与 Linux 的安装
          • 2.1 VMware 的安装
          • 2.2 CentOS 的安装
          • 2.3 虚拟机的使用
          • 2.4 网络连接的三种方式
          • 2.5 vmtools
        • 3. 目录结构
          • 3.1 基本介绍
          • 3.2 具体的目录结构
          • 3.3 文件目录的相关指令
        • 4. 远程登录到 Linux 服务器
      • 实操篇(上)
      • 实操篇(下)
      • JavaEE 与 Python 定制篇
      • 大数据定制篇 - Shell 编程
    • TLCL(The Linux Command Line)

  • 云原生

  • 运维
  • Linux
  • 韩顺平 2021 Linux 课程笔记
yubin
2022-02-07
目录

基础篇

  • 1. Linux 入门
  • 2. VM 与 Linux 的安装
    • 2.1 VMware 的安装
    • 2.2 CentOS 的安装
    • 2.3 虚拟机的使用
    • 2.4 网络连接的三种方式
    • 2.5 vmtools
  • 3. 目录结构
    • 3.1 基本介绍
    • 3.2 具体的目录结构
    • 3.3 文件目录的相关指令
  • 4. 远程登录到 Linux 服务器

# 1. Linux 入门

读法有十多种,都可以。

最新 Linux 源码下载:The Linux Kernel Archives (opens new window)

Linux 与 Unix 关系图:

image-20220207002443363

# 2. VM 与 Linux 的安装

使用环境:

  • VMware 15.5
  • CentOS 7.6(主)/ 8.1

# 2.1 VMware 的安装

...

# 2.2 CentOS 的安装

...

# 2.3 虚拟机的使用

# 2.3.1 克隆

如果已经安装了一台 Linux 操作系统,并还想要更多的,这时没必要重新安装,只需要克隆就可以了:

  • 方式1:直接拷贝一份安装好的虚拟机文件
  • 方式2:使用 VMware 的克隆操作

# 2.3.2 快照

快速恢复到快照时的运行状态。

# 2.3.3 迁移和删除

虚拟系统本质就是文件。迁移只需要文件夹的整体拷贝或剪切到另外位置。删除可以直接删除对应文件夹即可。

# 2.4 网络连接的三种方式

image-20220207143720572

# 1)桥接模式(张三)

在桥接模式下,虚拟机 IP 地址需要与主机在同一个网段,给虚拟系统再分配一个本网段的 IP。虚拟系统可以和外部系统通讯,但这容易造成 IP 冲突。

# 2)NAT 模式(王五)

NAT 模式,就是网络地址转换模式。虚拟系统可以和外部系统通讯,不造成 IP 冲突。

# 3)仅主机模式(李四)

一个独立的系统

# 2.5 vmtools

vmtools 可以让我们在 Windows 下更好的管理虚拟机,比如可以设置 Windows 和 Centos 共享文件。

# 2.5.1 vmtools 的安装

  1. VMware 上方 虚拟机 -> (重新)安装 VM tools
  2. 桌面上出现一个 VMware tools,打开里面有个 xxx.tar.gz,将其拷贝到 /opt
  3. 使用解压命令 tar -zxvf xx.tar.gz 得到一个安装文件
  4. 进入该安装文件夹里面,执行命令 ./vmware-install.pl 进行安装,安装过程全部回车默认即可,直到安装完成。

注意点:

  • 安装过程需要有 gcc
  • 第一步的点击 (重新)安装 VM tools 后可能没有反应,只需要取消一下再重新点一下即可。

# 2.5.2 主机与 VM 共享文件夹

  1. 安装 VMtools 后,在 VMware 的 设置 -> 选项 -> 共享文件夹
  2. 在这个界面中,先点击 总是启用 ,然后在下面文件夹中添加需要共享的文件夹
  3. 在虚拟系统中,/mnt 里可以找到共享的文件夹,对其的修改也会同步到主机中

# 3. 目录结构

# 3.1 基本介绍

Linux 采用层级目录结构,最上层是根目录 /。

在 Linux 世界里,一切皆文件。

# 3.2 具体的目录结构

目录 说明
/bin 或 /usr/bin、/usr/local/bin。Binary 的缩写,存放着最经常使用的命令。
/sbin 或 /usr/sbin、/usr/local/sbin。s —— Super User,存放着系统管理员使用的程序。
/home 存放普通用户的主目录,每个用户有一个自己的目录。
/root 系统管理员的主目录
/lib 系统开机所需要的最基本的动态链接共享库。几乎所有应用程序都需要这些库。
/lost+found 一般为空,当系统非法关机时这里就存放了一些文件、
/etc 所有的系统管理所需要的配置文件和子目录。比如安装 mysql 时的 my.conf
/usr 用户安装的很多应用程序都放在这个目录下。类似于 Windows 的 program files。
/boot 存放着启动 Linux 时使用的核心文件
/proc 【不能动】。是一个虚拟目录,它是系统内存的映射,访问这个目录来获取系统信息。
/srv 【不能动】。service 的缩写,存放一些服务启动后需要提取的数据
/sys 【不能动】。安装了 2.6 内核中新出现的一个文件系统 sysfs
/tmp 存放临时文件
/dev 把所有设备硬件用文件的形式存储
/media Linux 自动识别的一些设备(如 U 盘、光驱)挂载到这个目录下。
/mnt 让用户临时挂载别的文件系统。我们可以将外部存储挂载到 /mnt 下,然后进入里面查看内容
/opt 主机额外安装软件所存放的目录。如安装 Oracle 就可以放到这里面
/usr/local 这是另一个给主机额外安装软件所存放的目录。这里一般是通过编译源码方式安装的程序。
/var 存放着不断扩充着的东西,习惯将经常修改的目录放在这里面,如日志文件。
/selinux Security-Enhanced Linux。SELinux 是一种安全子系统,它能控制程序只能访问特定文件。

# 3.3 文件目录的相关指令

# 3.3.1 pwd

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

# 3.3.2 ls

ls [选项] [目录或文件]

  • -a:显示包括隐藏文件在内的所有文件
  • -l:以单列的方式显示详细信息

补充知识点:

  • Linux 下,隐藏文件是以 . 开头
  • 命令的选项可以组合使用,比如 ls 的选项可以组合成 ls -al。

# 3.3.3 cd 切换到指定目录

  • cd ~:回到家目录
  • cd ..:回到上一级目录
  • cd /usr:切换到 /usr 目录

# 3.3.4 mkdir 创建目录

mkdir [选项] 要创建的目录

  • -p:创建多级目录

案例:

  • 创建一个目录:mkdir /home/dog
  • 创建多级目录:mkdir -p /home/animal/tiger

# 3.3.5 rmdir 删除目录

rmdir [选项] 要删除的空目录

  • rmdir 删除的是空目录,如果目录下有内容时无法删除
  • 如果需要删除非空目录,应该使用 rm -rf 要删除的目录,-r 递归删除,-f 强制删除

# 3.3.6 touch 创建空文件

touch 文件名

# 3.3.7 cp 拷贝

cp [选项] src dst

  • -r:递归复制整个文件夹
  • 强制覆盖不提示的方法:\cp,比如 \cp -r /home/src /opt

# 3.3.8 rm 移除文件或目录

rm [选项] 要移除的文件或目录

  • -r:递归删除整个文件夹
  • -f:强制删除不提示

# 3.3.9 mv 移动(文件/目录)或重命名

mv old new

案例:

  • mv cat.txt pig.txt:将 cat.text 重命名为 pig.txt
  • mv /home/src /opt/:将 /home/src 移动到 /opt 下面

# 3.3.10 cat 查看文件

由于它不能修改文件,因此比 vim 更安全

cat [选项] 文件名

  • -n:显示行号
  • 为了浏览方便,一般会带上管道命令 | more

管道命令:将前一个指令的输出作为后一个指令的输入

# 3.3.11 more

more 指令以全屏的方式按页显示文本内容。常见操作:

操作 功能
空白键 向下翻页
Enter 向下翻一行
q 离开 more
Ctrl F 向下滚动一屏
Ctrl B 返回上一屏
= 输出当前行号
:f 输出文件名和当前行号

# 3.3.12 less

用来分屏查看文件内容,与 more 指令类似,但更加强大。支持各种终端;显示文本时按需加载文本内容,对大型文件效率较高。

常见操作:

操作 功能
空白键 向下翻页
[pagedown] 向下翻页
[pageup] 向上翻页
/str 向下搜索 “str”。n 下一个,N 上一个
?str 向上搜索 “str”。n 下一个,N 上一个
q 离开 less

# 3.3.13 echo 输出内容到控制台

echo [选项] [输出内容]

案例:

  • ⭐️ echo 输出环境变量:echo $PATH,其中 $ 后面接环境变量名。

# 3.3.14 head 显示文件开头部分

head 文件 默认显示文件前 10 行内容。

  • -n:指定显示前几行,比如 head -n 5 foo.txt

# 3.3.15 tail 显示文件结尾部分

tail 文件 显示文件最后默认 10 行内容。

  • -n:指定行数
  • -f:实时追踪该文档的所有更新

# 3.3.16 > 和 >> 重定向

  • > 输出重定向
  • >> 重定向并追加

案例:

  • ls -l > foo.txt:将 ls 的输出覆盖写入 foo.txt 中
  • cat foo.txt > bar.txt :将 foo.txt 内容覆盖到 bar.txt
  • echo “hello” >> foo.txt :将 hello 追加到文件后面

# 3.3.17 ln 创建软链接

ln,是 link 的缩写,创建一个软链接(类似 Windows 的快捷方式),主要存放了链接其他文件的路径。

ln -s [原文件或目录] [软链接名]:给原文件创建一个软链接。

  • rm 删除的是软链接,不会删除到原文件
  • pwd 查看目录时仍然看到的是软链接所在目录

# 3.3.18 history

history 查看已经执行过的历史命令,也可以执行历史命令

  • history:显示所有的历史命令
  • history 10:显示最近使用过的 10 个指令
  • !5:指令历史编号为 5 的指令

# 4. 远程登录到 Linux 服务器

我们这里使用 Xshell 6 和 Xftp 6 来作为远程登录客户端。

在虚拟机中使用 ifconfig 查看 IP 地址,在输出的第一部分的 inet 中可以看到 IP。

然后尝试主机与虚拟机能否连通:在主机中用 ping <IP> 测试是否能够成功。

在 Xshell 和 Xftp 中新建会话即可。

编辑 (opens new window)
上次更新: 2023/06/07, 13:42:57
实操篇(上)

实操篇(上)→

最近更新
01
Deep Reinforcement Learning
10-03
02
误删数据后怎么办
04-06
03
MySQL 一主多从
03-22
更多文章>
Theme by Vdoing | Copyright © 2021-2024 yubincloud | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式
×