文章目录
- 前言
- 1. Linux 是什么
- 1.1 Unix & Linux 发展历程图
- 1.2 Linux 的发展
- 1.3 Linux 的发行版
- 2. Linux 环境搭建
- 2.1 环境搭建方式
- 2.2 使用云服务器
- 3. 使用终端软件连接到 Linux
- 3.1 什么是终端软件
- 3.2 下载安装 XShell
- 3.3 使用 XShell 登陆主机
- 总结
前言
可能很多人都会有一个疑问, 真正的搞出一个网站来, 是如何让这个王章被别人访问到的? 如 Tomcat 服务器, 难道其他人都能使用 127.0.0.1:8080
来访问到你的网站吗? 答案显然不是的. 这就需要我们通过搭建服务器来实现了 (或购买云服务器), 而服务器中的操作系统绝大多数都是使用的 Linux 系统, 与我们通常使用的 Windows 差异很大, 是通过命令行进行操作的. 那么 Linux 是如何诞生的呢? 又是如何发展至今的? 本文来聊一聊.
关注收藏, 开始学习吧🧐
1. Linux 是什么
Linux 是一个操作系统, 和 Windows 是 “齐驱并驾” 的关系.
当今市面上常见的操作系统:
- Windows
- Linux
- macOS
- Android
- iOS
与其余系统不同, Linux 系统是一般用户(非计算机专业) 基本不会使用到的, 与别的操作系统(采用的是图形化界面)不同, 它的操作方式全部采用命令行来进行, 并不太适合日常使用, 但是非常适合用于开发. 作为一个开发人员, 无论是搞 后端 / 前端 / 客户端 / 测试 / 运维 / 网络 等等一系列的人员, Linux 都是务必要掌握切要能熟练使用的一个系统.
1.1 Unix & Linux 发展历程图
-
1969-1970 年, 贝尔实验室的 Dennis Ritchie (上图) 和 Ken Tompson (下图) 开发了 Unix 操作系
统.
-
Unix 火了之后, 衍生出很多的分支. 其中有一只为 “Minix”. 由荷兰的Andrew S. Tanenbaum 教授
开发. MINIX 含义为 “小型的UNIX”, 源代码开放给大学教学和研究工作.
-
1991 年, 还在读大学的 芬兰人 Linus Benedict Torvalds (1969年12月28日出生, 当时 22 岁) 基于
Minix 的启发, 开发出了 Linux 的第一个版本.
1.2 Linux 的发展
1991年, 可以认为是 “计算机领域奇迹年”, Linux, Python, Qt, Vim, OpenGL…都是出自这一年. Linux 也是这一年诞生, Linus 大佬在读研究生时闲着无聊, 写了个操作系统来玩. 万万没想到, 这个系统就火了, 因为它是开源, 免费的.
Linux 出现之前, 比较火的系统比如 Unix(其实就是 Linux 的前身), 虽然是开源的, 但是收费. 其余操作系统有的闭源, 有的收费, 所以当出现了一个开源免费的 Linux 后, 很多当时的大牛都加入其中, 为 Linux 的发展贡献出自己的一份力量, 这使 Linux 快速迭代, 从刚开始一个并不大, 功能也不是很丰富的系统, 摇身一变, 成一个庞然大物了.
后来, 为了能够很好的进行多人协同开发, Linus 大佬又顺手开发另一个大名鼎鼎的东西, git 开发工具软件, 可以管理代码版本, 协同多人进行开发.
再后来 Linus 大佬还写了一个自传, 叫做 《Just For Fun》, 这书名什么意思就不用我多解释了吧(滑稽).
时过境迁, Linux 已经发展成为 世界第一大操作系统. 连 Android 系统的内核都是基于 Linux 来实现的. 以下领域, Linux 都有参与.
- 服务器领域.
- 嵌入式设备, 现在的智能设备, 包括但不限于空调, 洗衣机, 冰箱, 路由器, 里面都需要有一个操作系统来支持.
- 移动端, Android 本质上就是 Linux.
补充一下:
Linux 也有桌面的版本, 但体验上很差, 使用起来感觉比 Windows 的桌面水平落后十年(不夸张), 所以还是老老实实使用命令行吧.
1.3 Linux 的发行版
Linux 严格意义来说只是一个 “操作系统内核”(提供最核心的功能, 管理硬件设备, 给软件提供稳定的运行环境).
一个完整的操作系统 = 操作系统内核 + 配套的应用程序.
由于 Linux 是一个完全开源免费的内核, 因此有些公司/开源组织又基于 Linux 内核, 提供了不同的配套程序. 这就构成了不同的 “发行版”.
这些发行版也大同小异, 命令几乎都是一样的, 个别不同, 掌握其中一个, 其他的也就很容易快速上手.
企业中最主要使用的发行版是 RedHat (红帽). 但是 RedHat 是一个收费的系统(报价参考 https://www.redhat.com/en/store/linux-platforms?intcmp=701f20000012m33AAA).
由于红帽是收费的, 不适合我们学习使用, 在此推荐两个别的选择.
CentOS, 和 RedHat 几乎一模一样, 就是拿着 RedHat 的源码换个 logo, 重新编译了一下.
CentOS 和 RedHat 的关系
RedHat一直都提供源代码的发行方式,CentOS就是将RedHat发行的源代码去掉 RedHat 的 logo 商标, 重新编译一次.
RedHat对这种发行版的态度是:“我们其实并不反对这种发行版,真正向我们付费的用户,他们重视的并不是系统本身,而是我们所提供的商业服务。”
所以,CentOS可以得到RedHat的所有功能,甚至是更好的软件。但CentOS并不向用户提供商业支持,当然也不负上任何商业责任。
Ubuntu, 比较知名的一个老牌系统, 在企业端使用份额虽然不是很高, 但在社区里还是挺火的.
2. Linux 环境搭建
要想学习使用 Linux , 需要先有一个 Linux 的环境. 如何获取 Linux 环境呢?
2.1 环境搭建方式
主要有四种:
- 直接安装在物理机上. 但是由于 Linux 桌面使用起来非常不友好. [不推荐].
- 使用虚拟机软件, 用软件去模拟硬件. 将 Linux 搭建在虚拟机上. 但是由于当前的虚拟机软件多多少少存在一些 bug , 会导致环境上出现各种莫名其妙的问题, 比较折腾. 并且虚拟机无法拥有一个外网 IP 地址. [非常不推荐]
- 使用 WSL (Windows Subsystem for Linux). 这个是 Windows 近几年开发的新功能, 在 Windows 系统内集成了一个 Linux. 目前成熟度还是挺高的, 但也无法拥有外网 IP. [暂时不推荐]
- 使用云服务器, 可以直接在 腾讯云, 阿里云或华为云 等服务器厂商处直接购买一个云服务器, 相当于租了一台电脑, 完美解决了怎么获得外网 IP 的问题, 学生购买还有大幅度优惠. [推荐]
使用云服务器不仅环境搭建简单, 避免折腾, 同时还有一个最大的好处, 部署在云服务器上的项目可以直接被外网访问到, 这个时候就和一个公司发布一个正式的网站没有任何区别. 也就能让我们自己写的程序真的去给别人去使用.
2.2 使用云服务器
在此我们不具体演示如何去购买一个云服务器, 因为各大云服务器厂商的价格也不相同, 读者可以自行查看购买, 购买也很简单, 挑价格便宜的买就行, 毕竟目前我们的服务器也不需要配置很高.
给大家提供一下三大云服务器厂商的官网, 可自行挑选购买.
- 腾讯云
- 阿里云
- 华为云
3. 使用终端软件连接到 Linux
3.1 什么是终端软件
终端软件是一类工具软件, 可以和远程的主机建立网络连接, 从而对主机进行一些操作.
常见的终端软件:
- XShell
- Putty
- MobaXTerm
- Iterm2
- SecureCRT
…
推荐大家下载使用 XShell, 功能能加丰富.
3.2 下载安装 XShell
下载地址: https://www.xshell.com/zh/xshell/
点击下载之后, 就可以一路 next 了.
3.3 使用 XShell 登陆主机
打开 XShell. 通过云服务器提供的外网 IP, 连接云服务器.
关于XShell 下的复制粘贴
- 复制:
ctrl + insert
(有些笔记本的 insert 需要配合Fn
来按) - 粘贴:
shift + insert
总结
✨ 本文主要讲解了 Linux 系统的发展历程, 并且讲了如何搭建一个 Linux 环境, 如何使用终端软件连接 Linux.
✨ 想了解更多知识, 请持续关注博主, 本人会不断更新学习记录, 跟随我一起不断学习.
✨ 感谢你们的耐心阅读, 博主本人也是一名学生, 也还有需要很多学习的东西. 写这篇文章是以本人所学内容为基础, 日后也会不断更新自己的学习记录, 我们一起努力进步, 变得优秀, 小小菜鸟, 也能有大大梦想, 关注我, 一起学习.
再次感谢你们的阅读, 你们的鼓励是我创作的最大动力!!!!!