Linux基础篇

传送门

SpringMVC的源码解析(精品)
Spring6的源码解析(精品)
SpringBoot3框架(精品)
MyBatis框架(精品)
MyBatis-Plus
SpringDataJPA
SpringCloudNetflix
SpringCloudAlibaba(精品)
Shiro
SpringSecurity
java的LOG日志框架
Activiti(敬请期待)
JDK8新特性
JDK9新特性
JDK10新特性
JDK11新特性
JDK12新特性
JDK13新特性
JDK14新特性
JDK15新特性
JDK16新特性
JDK17新特性
JDK18新特性
JDK19新特性
JDK20新特性
JDK21新特性
其他技术文章传送门入口

前言

不懂点Linux,都不好意思和别人说自己是开发,所以一些基础的必须掌握,同样的也是面试高频。

以下文章不定时更新…
Linux基础篇

一、概念

Linux 是一种开源的类 Unix 操作系统,最初由 Linus Torvalds 于 1991 年开发。它基于 Linux 内核,可以安装在各种硬件平台上,如个人电脑、服务器、嵌入式系统等。与其他操作系统(如 Windows 或 macOS)不同,Linux 提供了源代码,用户可以自由查看、修改和分发。

Linux 的主要特点:
开源:Linux 是免费并且开源的,任何人都可以查看、修改和分发其源代码。
稳定性和可靠性:Linux 被认为是非常稳定和可靠的,适用于服务器、嵌入式系统等长期运行的场景。
多用户与多任务:Linux 允许多个用户同时使用系统,并且可以同时执行多个任务。
安全性:Linux 提供了良好的安全机制,包括用户权限、访问控制等。
高可定制性:用户可以根据自己的需求自定义操作系统,选择合适的桌面环境、软件包等。
支持多种硬件架构:Linux 支持从嵌入式设备到高端服务器的各种硬件架构。
社区驱动:Linux 有一个强大的全球开源社区,持续开发和维护各种软件和工具。
常见的 Linux 发行版:
Ubuntu:适用于桌面和服务器的流行 Linux 发行版,用户友好,社区支持广泛。
CentOS:面向企业服务器环境的发行版,与 RHEL 兼容。
Debian:稳定且可靠,广泛用于服务器和桌面系统。
Fedora:Red Hat 赞助的社区发行版,注重新技术的实验和开发。
Arch Linux:滚动更新,注重极简主义和用户控制。
Linux 的应用:
服务器:Linux 是世界上最流行的服务器操作系统,特别是在 web 服务器领域(如 Apache、Nginx)。
开发环境:很多开发者使用 Linux 进行软件开发,尤其是开源开发。
嵌入式系统:许多智能设备和家电使用 Linux,尤其是 Android 系统。
云计算:Linux 是主流云服务平台(如 AWS、Google Cloud)的基础操作系统。

总体而言,Linux 因其自由度、稳定性、可靠性和社区支持,在许多领域得到了广泛应用。

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
虚拟机相关概念
在这里插入图片描述
桥链接就是和本地ip地址在同一个网段,共享255个ip地址。NAT是由于255个网络不够用,所以本地有两个ip地址,两个网段的地址,其中一个网段和虚拟机的ip地址是同一个网段,这样就远大于255个ip地址数量了。

二、版本分类

Linux 的版本通常指的是 Linux 发行版,因为 Linux 本身是一个内核,而不同的发行版在 Linux 内核的基础上进行了定制,提供了不同的功能、软件包和用户体验。下面是一些主要的 Linux 发行版及其特点:

  1. Ubuntu
    类型:基于 Debian
    特点:
    用户友好,适合新手。
    提供完整的桌面和服务器版本。
    拥有广泛的社区支持。
    每年发布两个版本:一个长期支持版(LTS)和一个常规版本。
    LTS 版本提供五年的安全更新。
  2. Debian
    类型:独立开发
    特点:
    以稳定著称,适用于服务器和桌面环境。
    更强调软件包的稳定性和安全性,可能不会集成最新的软件。
    支持多种硬件架构,广泛用于各种嵌入式设备和服务器。
  3. Fedora
    类型:基于 Red Hat
    特点:
    最新技术的试验场,通常包含最新的软件和功能。
    由 Red Hat 支持,适用于开发者和技术爱好者。
    发布周期较短,通常每 6 个月发布一次新版本。
  4. CentOS(CentOS Stream)
    类型:基于 Red Hat Enterprise Linux (RHEL)
    特点:
    专为企业级环境设计,稳定且高效。
    CentOS 8 已被 CentOS Stream 取代,后者为 RHEL 下游版本,提供更快的更新周期。
    没有官方的商业支持,但有广泛的社区支持。
  5. Red Hat Enterprise Linux (RHEL)
    类型:商业发行版
    特点:
    面向企业市场,提供长期支持和安全更新。
    提供专业的商业技术支持。
    需要付费订阅,适用于数据中心和生产环境。
  6. Arch Linux
    类型:独立开发
    特点:
    极简主义,用户可以自定义安装。
    滚动更新(Rolling release),即不断更新,没有传统的版本发布。
    适合高级用户,要求用户有较高的 Linux 知识。
  7. Linux Mint
    类型:基于 Ubuntu 或 Debian
    特点:
    主要针对桌面用户,提供与 Windows 类似的界面,适合初学者。
    包含多种桌面环境,如 Cinnamon、MATE、Xfce。
    对比 Ubuntu 更加轻量,适用于老旧硬件。
  8. openSUSE
    类型:独立开发
    特点:
    提供稳定版(Leap)和滚动更新版(Tumbleweed)。
    强调开发者工具和企业环境支持。
    包含丰富的配置工具,如 YaST(Yet another Setup Tool)用于系统管理。
  9. Manjaro
    类型:基于 Arch Linux
    特点:
    提供用户友好的 Arch 体验,简化了安装和管理。
    支持多种桌面环境,如 Xfce、KDE Plasma、GNOME。
    适合中级用户,结合了 Arch 的灵活性和易用性。
  10. Kali Linux
    类型:基于 Debian
    特点:
    专为安全研究人员和渗透测试人员设计,预装了大量的安全工具。
    常用于网络安全、漏洞扫描、数据恢复等专业领域。
  11. Slackware
    类型:独立开发
    特点:
    最老的 Linux 发行版之一,注重简洁和稳定。
    主要面向经验丰富的用户,安装和配置较为复杂。
    保持传统 Unix 风格,很多细节需要手动配置。
  12. Zorin OS
    类型:基于 Ubuntu
    特点:
    主要面向 Windows 用户,提供与 Windows 类似的用户界面。
    适合从 Windows 迁移到 Linux 的用户,尤其是初学者。
  13. Elementary OS
    类型:基于 Ubuntu
    特点:
    强调简洁、直观和美观的用户界面。
    采用独特的 Pantheon 桌面环境,适合注重外观和易用性的用户。
  14. Puppy Linux
    类型:独立开发
    特点:
    极其轻量,占用的硬盘空间和内存非常小。
    适用于旧设备和低配置硬件。
    可以直接从 USB 或 CD 启动,不需要安装到硬盘。
    Linux 版本分类
    稳定版(Stable):适合生产环境,具有较长的支持周期。例如 Debian Stable、CentOS、RHEL、Ubuntu LTS。
    测试版(Testing):包含最新的功能,可能不如稳定版可靠。例如 Debian Testing、Fedora。
    滚动更新版(Rolling Release):没有固定的版本号,软件不断更新。例如 Arch Linux、Manjaro、openSUSE Tumbleweed。
    选择合适的 Linux 版本
    新手用户:推荐 Ubuntu、Linux Mint 或 Zorin OS,因其安装和使用较为简单。
    开发者和高级用户:推荐 Fedora、Debian 或 Arch Linux,因其提供更高的自定义和开发支持。
    企业用户:推荐 RHEL、CentOS Stream 或 Ubuntu Server,因其提供长期支持和稳定性。
    每个 Linux 发行版都有其特点和优势,可以根据自己的需求和技能水平选择合适的版本。

三、目录结构

centeros有20个

bin:Linux的常用命令(结合后面截图,更容易理解下面目录)
dev:设备管理,比如cpu,硬盘那些映射成了文件,类似window的设备管理
etc: 存放配置文件,比如安装MySQL数据库,有个my.conf配置文件就会放到这里面
home:家目录,创建一个用户的时候,home就有对应文件,比如创建temp用户,这边就会生成对应文件夹,不过默认的root用户这边并没有。
lib: 动态库
lib64:库文件
lost+found: 默认是空的,系统非法关机后,存放了一些文件
media: dvd或者u盘一插入,这里面就会失败有文件,默认是空文件夹,挂载文件夹
mnt:挂载其他文件目录,比如共享目录以后,这个文件夹下面就会有共享的目录
opt:  安装的软件目录,一般是软件安装包,实际安装之后的文件目录在usr/local那边。
proc: 内存的一些东西
root:  root用户的相关东西
sbin: 超级用户和高权限用户的相关东西
selinux: 安全目录,类似window下面装了个360的那种360目录,有黑客攻击的时候,就会触发这个目录
srv:service的缩写,存放一些服务启动之后需要读取的文件
sys: 系统
tmp: 临时目录,用完就丢弃的文件可以放这边,比如安装包
usr:很多应用程序默认安装在这边,相当于window的program files文件夹
boot:  启动Linux的核心文件,包括一些链接文件和核心文件
var:经常被修改的文件放这边,比如日志文件,个人感觉更多的是软件的日志文件,比如jenkins的日志文件就在这边(var/lib里面日志文件都很大)

以下为非常重要的目录:
ext:配置目录,比如Redis的配置放这边
home:个人用户目录,相当于window的用户user目录(下面有administrator等具体用户目录)
opt:软件额外安装目录,比如Redis的安装文件放这边,但是不是实际软件的安装目录,实际的还是在usr/local那边
root:超级权限者的用户目录
usr:很多应用程序默认安装在这边,相当于window的program files文件夹
tmp:临时目录,用完就丢弃的文件可以放这边,比如安装包
var:经常被修改的文件放这边,比如日志文件

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

蓝影铁哥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值