Linux入门——环境基础开发(上)
Linux 软件包管理器 yum
什么是软件包
在Linux操作系统中,安装软件的方式通常较为复杂,其基本流程涉及下载程序源代码并通过编译得到可执行程序。然而,这种方法需要开发者具备一定的编程知识和环境配置能力,对于许多用户而言,操作起来显得相对繁琐。因此,为了提高用户的便利性,一些软件开发者选择了将常用软件提前编译成软件包。这些软件包可以被视作Windows系统中的安装程序,经过打包处理后,存放在服务器上,用户可以通过包管理器轻松获取并安装这些预先编译好的软件包。
在这个背景下,软件包和软件包管理器之间的关系可以类比为“App”和“应用商店”。软件包包含了具体应用程序及其依赖项的完整信息,而软件包管理器则是负责处理这些软件包的工具,使得安装、更新和卸载软件变得简单化且自动化。
在众多Linux包管理器中,yum(Yellowdog Updater, Modified)是一种非常流行的选择。它广泛应用于Fedora、Red Hat及CentOS等Linux发行版,用户只需通过简单的命令就能获取所需软件的最新版本,极大地简化了软件管理的过程。使用yum,不仅可以快速安装软件,还可以自动处理软件之间的依赖关系,确保系统的稳定和安全。
总之,包管理器的出现与发展,标志着Linux软件管理方式的变革,使得更多用户能够无缝体验到Linux系统的强大功能,而不必被复杂的编译和环境配置过程所困扰。
关于 rzsz
rzsz 是一款强大而实用的工具,它主要用于在 Windows 系统与远程 Linux 机器之间进行文件传输,特别是在使用 XShell 等终端仿真程序时。在现代办公或开发环境中,文件传输的高效性和便利性对工作流程的顺畅至关重要,因此 rzsz 的使用显得尤为重要。
安装完成 rzsz 后,用户能够通过简单的拖放操作,将文件从本地 Windows 机器上传至远程 Linux 系统。这种直观且用户友好的方式,大大简化了文件传输的过程,使得无论是开发人员、运维人员,还是其他需要频繁进行文件往来的用户,都能轻松上手。
具体来说,rzsz 使用 Zmodem 协议来实现文件的上传和下载。这一协议以其高效稳定的文件传输特性广受欢迎,支持断点续传和文件完整性校验,确保在网络不稳定的情况下,数据的安全与完整。在使用 XShell 进行远程操作时,用户只需在本地机器中拖动文件,将其“释放”到 XShell 窗口中,rzsz 就会自动识别并开始传输。这一流程既高效又省时,极大提高了用户的工作效率。
总的来说,rzsz 是连接 Windows 和 Linux 系统间的重要桥梁,使得文件传输变得简单易行。无论是在日常的文件管理,还是在开发、测试的过程中,它都展现出不可或缺的价值。
注意事项
关于 yum 的所有操作必须保证主机(虚拟机)网络畅通!!! 可以通过 ping 指令验证
ping www.baidu.com
查看软件包
使用 yum list
命令
首先,使用以下命令来列出当前系统上所有可用的软件包:
yum list
该命令会输出一个包含所有已安装和可用软件包的长列表,包括软件包名称和版本号。然而,当软件包数量急剧增加时,这个列表可能会变得非常冗长,并且不易于阅读。
使用 grep
命令筛选关心的软件包
为了更高效地查找特定的软件包,可以结合使用 grep
命令。例如,如果你想查找与 httpd
(Apache Web 服务器)相关的软件包,可以使用以下命令:
yum list | grep httpd
这条命令的作用是先执行 yum list
,将输出传递给 grep
,然后仅显示包含 "httpd" 字符串的行。执行后,你可能会看到类似以下的输出:
txt
httpd.x86_64 2.4.6-93.el7.centos base
httpd-devel.x86_64 2.4.6-93.el7.centos base
httpd-manual.noarch 2.4.6-93.el7.centos base
实际应用示例
假设你正在配置一台 Apache 服务器,想要查看当前系统中与 httpd
相关的软件包是否已经安装或可用。通过执行上述命令,你可以快速定位到相关的软件包,如 httpd
和 httpd-devel
,以便进行后续的安装或更新。
如果你还关心其他软件包,比如 php
,你可以继续使用 grep
筛选其他关键词:
yum list | grep php
这样可以迅速查看与 PHP 相关的所有软件包,确保你有需要的组件。
注意事项:
1. 软件包名称组成
软件包名称通常遵循以下格式:
<软件包名称>.<主版本号>.<次版本号>.<源程序发行号>-<软件包的发行号>.<主机平台>.<cpu架构>
1.1 主版本号与次版本号
- 主版本号(Major Version) :表示软件的主要版本变化,通常当软件进行了重大更新、功能增加时会增加。
- 次版本号(Minor Version) :用于表示小的功能改进或修复,变化通常不会影响软件的核心功能。
例如,在 httpd.x86_64 2.4.6-93.el7
中,2
是主版本号,4
是次版本号。
1.2 源程序发行号
- 这是一个由开发者指定的标识,通常表示特定版本的完备性和修复,更新或安全修复补丁应用后的版本。
例如,93
是源程序发行号,表示在版本 2.4.6
上的某一次更新。
2. 主机平台与 CPU 架构
2.1 主机平台
- 主机平台(Platform) :表示软件包适用的操作系统或发行版。比如,
el7
和el6
分别表示 CentOS 7/RHEL 7 和 CentOS 6/RHEL 6。
2.2 CPU 架构
- CPU 架构(CPU Architecture) :指的是软件包的适用处理器类型。常见的后缀包含:
x86_64
:表示适合 64 位系统的安装包。i686
:表示适合 32 位系统的安装包。
例如,在 httpd.x86_64 2.4.6-93.el7
中,x86_64
表示该软件包为 64 位系统而设计。
3. 发行版版本
el7
:表示该软件包针对的是 CentOS 7 或 Red Hat Enterprise Linux 7 版本。相应地,el6
则指向 CentOS 6 或 Red Hat Enterprise Linux 6。选择软件包时,需要确保其与系统版本匹配,以避免出现兼容性问题。
4. 软件源的名称
- 软件源(Repository) :在软件包管理系统中,软件源是提供软件包的在线存储库。例如,
base
代表了基础软件源,类似于“应用商店”概念。在 CentOS 和 Red Hat 环境中,软件源分为多个类型,比如base
、updates
、extras
等,非常类似于在手机上的应用商店(如“小米应用商店”或“华为应用商店”),用户可以通过不同软件源下载和安装软件。
如何安装软件
安装 GCC 的命令
要安装 GCC,您只需在终端中运行以下命令:
sudo yum install gcc
- 这里的
sudo
用于提升权限,因为安装软件通常需要写入系统目录,普通用户没有这个权限。 yum install gcc
是 yum 包管理器的具体安装命令,指示系统安装 GCC 软件包。
安装过程
- 运行上述命令后,
yum
会自动处理软件包依赖关系,查找并列出所有需要下载和安装的软件包。 - 系统会提示您确认安装,通常会出现一个消息,询问您是否继续操作。这时,请按
y
并回车确认安装。 - 随后,
yum
将下载所需的软件包并开始安装。安装完成后,你会看到 "Complete" 的字样,表明 GCC 已成功安装。
注意事项
-
权限问题:由于安装软件需要对系统目录进行修改,通常需要使用
sudo
命令来获得较高权限,或者直接切换到 root 用户。例如,您可以使用su -
命令切换到 root 用户。 -
安装顺序:
yum
同一时间只能处理一个安装请求。在您正在安装某个软件时,如果尝试使用 yum 进行另一个软件的安装,系统将返回错误信息。因此建议在完成一个软件的安装后再进行下一个软件的安装。 -
错误处理:在安装过程中,如果
yum
报错,可以尝试通过互联网搜索相关错误信息以找到解决方案。因此,建议具备一定的网络搜索能力,能迅速找到问题的解决办法。
卸载软件
如果您想要卸载安装好的 GCC,您同样只需要使用一条简单的命令:
sudo yum remove gcc
- 这里的
remove
命令指示yum
删除指定的软件包。 - 与安装时相同,您可能需要确认卸载操作。
示例情境
假设您是一名开发人员,刚刚在 CentOS 系统上完成了 GCC 的安装。您在终端中输入:
sudo yum install gcc
出现了如下提示:
txt
Dependencies Resolved================================================================================Package Arch Version Repository Size
================================================================================
Installing:gcc x86_64 4.8.5-39.el7 base 17 MTransaction Summary
================================================================================
Install 1 PackageTotal size: 17 M
Is this ok [y/d/N]:
您敲入 y
并按回车,等待安装完成后看到:
Complete!
这时,GCC 就已经成功安装在您的系统中。若日后需要卸载,只需运行:
sudo yum remove gcc
Linux开发工具
IDE例子