Linux概述
1 Linux概述
1.1 什么是Linux
-
Linux(Linux Is Not UniX 的递归缩写)一般指GNU/Linux,是一套免费使用和自由传播的类Unix操作系统,由林纳斯·托瓦兹于1991年创建,是一个遵循POSIX的多用户、多任务、支持多线程和多CPU的操作系统。
- GNU是一个操作系统,其内容软件完全以GPL方式发布。这个操作系统是GNU计划的主要目标,名称来自GNU’s Not Unix!的递归缩写,因为GNU的设计类似Unix,但它不包含具著作权的Unix代码。
- POSIX(Portable Operating System Interface的缩写)可移植操作系统接口,是IEEE为要在各种UNIX操作系统上运行软件,而定义API的一系列互相关联的标准的总称,其正式称呼为IEEE Std 1003。
-
Linux不仅系统性能稳定,而且是开源软件。其核心防火墙组件性能高效、配置简单,保证了系统的安全。在很多企业网络中,为了追求速度和安全,Linux不仅仅是被网络运维人员当作服务器使用,甚至当作网络防火墙,这是Linux的一大亮点。
-
Linux具有开放源码、没有版权、技术社区用户多等特点,开放源码使得用户可以自由裁剪,灵活性高,功能强大,成本低。尤其系统中内嵌网络协议站,经过适当的配置就可实现路由器的功能。这些特点使得Linux成为开发路由交换设备的理想开发平台。
1.2 核心特征
Linux是类Unix开源操作系统内核,核心特性包括:
- 多用户多任务支持
- 模块化设计
- 稳定高效
- 兼容多种硬件平台
- 遵循POSIX标准
- 提供丰富网络功能
- 强大安全机制
1.3 Linux组成
1.3.1 内核
Linux内核层负责系统核心功能包括进程管理、内存管理、设备驱动、文件系统控制和网络通信为硬件与软件提供基础运行环境确保系统稳定高效执行。
1.3.2 Shell层
Shell层是用户与Linux内核交互的接口,负责解析用户输入的命令并传递给内核执行,同时管理进程、文件操作和系统资源,提供脚本编程能力以自动化任务。
1.3.3 应用程序
基于操作系统之上的各类应用软件,Linux应用层组件包括用户应用程序、图形界面(如GNOME、KDE)、命令行工具(如Bash)、开发工具(如GCC)及服务程序(如Apache)。
这些组件运行在用户空间,通过系统调用与内核交互,完成各类任务。
1.3.4 文件系统
文件系统指的是操作系统对文件的组织管理方式。Linux跟Windows有很大不同,最大的特点是:一切皆文件,包括硬件,也是以文件方式来管理存储的。
Linux只有一个根目录:/
1.4 Linux版本
1.4.1 Linux内核版本
操作系统的核心部分,它提供了操作系统的基本功能和底层支持,如内存管理、文件系统、设备驱动等。
内核版本号通常具有“主版本号.次版本号.修正号”的格式,例如5.10.23次版本号的偶数通常表示稳定版,奇数则可能包含测试的新功能。
1.4.2 Linux发行版
在内核的基础上加入了用户界面、应用程序和管理工具等,形成了一个完整的操作系统供用户安装和使用。不同的发行版会使用不同版本的Linux内核,并在此基础上集成各自的特性和软件包。
常见的Linux发行版包括Ubuntu、Debian、CentOS、Fedora等。
1.5 Linux主要发行版
- Debian系的Ubuntu、Linux Mint
- Red Hat系的Fedora、CentOS
- 独立发行的Arch Linux、openSUSE和Gentoo等
1.6 常见Linux发行版的用途
1.6.1 Ubuntu
适合初学者和桌面用户,广泛用于服务器和云计算平台。它以用户友好和易用性著称,拥有一个庞大的社区和丰富的软件仓库。
1.6.2 Fedora
适用于桌面用户和服务器,特别是那些希望使用最新技术和软件的用户。Fedora常被视为Red Hat Enterprise Linux (RHEL)的上游版本,它的许多功能最终会出现在RHEL中。
1.6.3 CentOS
主要面向服务器市场,特别是企业级应用。它是一个稳定的、免费的RHEL克隆版本(2024年6月30日起,彻底停止维护服务)。
1.6.4 Debian
以稳定性和安全性著称,适合服务器和桌面用户。它是一个社区支持的项目,拥有广泛的软件包和良好的系统管理工具。
1.6.5 Kali Linux
专为网络安全和渗透测试设计,包含了众多安全审计和攻击工具,是安全专业人士的首选工具之一。
1.6.6 Arch Linux
以其高度的可定制性和最新的软件包而受到高级用户和开发者的喜爱。它鼓励用户从基础开始构建自己的系统。
2 虚拟机的安装与使用
2.1 虚拟机简介
- 虚拟机(VirtualMachine,VM)是一种通过软件模拟而创建的计算环境,使得一台物理计算机可以运行多个独立的操作系统和应用程序。
- 虚拟机可以在单一硬件平台上提供隔离的计算资源,模拟出多个独立的计算机系统,从而提高硬件资源利用率和灵活性。
2.3 虚拟机的安装
- 找到【VMware Workstation Pro 17.exe】安装包【双击】打开安装包
- 点击【下一步】
- 勾选【我接受许可协议】,再点击【下一步】
- 默认安装位置在C盘,不想安装在C盘的话根据自己的电脑更改位置,再点击【下一步】
- 根据自己的需求勾选【用户体验设置】,建议都不选,再点击【下一步】
- 勾选【快捷方式】方便使用,再点击【下一步】
- 点击【安装】
- 等待安装完毕
- 点击【许可证】
- 将密钥直接复制到【对话框】中即可,再点击【下一步】
- 点击【完成】
2.4 新建虚拟机
- 创建新的虚拟机
- 选择典型安装
- 选择(Ubuntu)镜像文件
- 命名并选择安装位置
- 设置硬盘大小
- 设置其它硬件
3 Ubuntu安装与使用
3.1 Ubuntu简介
Ubuntu(乌班图)是一个以桌面应用为主的Linux发行版操作系统,以其易用性、免费和开放源代码的特性而闻名,适用于桌面、笔记本电脑和服务器。
3.2 安装
- 选择第一项,测试并安装
- 语言和键盘选择英语
- 选择安装类型
- 配置网卡,选择ens33、ipv4模式
- 选择Manual,手动配置IP地址
- 代理暂时不用配置
- 配置镜像仓库,使用阿里源:http://mirrors.aliyun.com/ubuntu
- 选择第二个,继续但不更新
- 配置磁盘
- 填写服务器信息
- 不升级Ubuntu Pro版本
- 安装远程协议openssh
- 开始安装
- 安装完成重启
- 本教程中没有配置CDROM,重启过程出现如下界面, 直接按Enter跳过即可
- 登录,修改root用户密码
sudo passwd root
4 XShell的安装与使用
- 企业中,会通过SSH工具远程访问操作Linux服务器。
- 个人学习,一般会在电脑上安装一个虚拟机,然后使用SSH工具连接虚拟机上的Linux服务器。
- 常用的SSH工具,SSH是远程安全连接协议,默认使用22端口
- 命令行SSH工具:xshell(商业版收费)、putty(开源免费)等等。
- 文件传输工具:xftp(商业版收费)、winscp(开源免费)等等。
4.1 XShell使用前的配置
- 登录linux后,使用vim打开文件:sudo vim /etc/ssh/sshd_config
- 做如下配置
- 执行命令:systemctl restart sshd
4.2 创建连接
4.3 在xshell中上传文件
apt install lrzsz