7. apt更新软件源#
apt是一个命令行实用程序,用于在Ubuntu、Debian和相关Linux发行版上安装、 更新、删除和管理deb软件包。
我们平常使用的软件以及命令可以从apt上下载下来使用。
7.1. 更新和升级#
让您的LubanCat保持最新状态很重要。 第一个也可能是最重要的原因是安全性。 运行linux操作系统的设备依赖的数百万行代码。 随着时间的推移,这数百万行代码将暴露众所周知的漏洞, 这些漏洞记录在公开可用的数据库中,这意味着它们很容易被利用。
除此外,部分软件还会依赖最新的软件包,更新和升级还可以兼容更多的软件。
备注
当我们烧录了新的镜像或者遇到部分软件不能安装,我们建议使用apt进行更新和升级。
注意
apt命令使用的时候需要连接网络。
1#更新软件包数据库
2sudo apt update
3
4#升级已安装的软件包
5sudo apt upgrade
注意
如果在升级的时候遇到update报错,我们重新执行命令
如下图
如果更新时出现以上的情况,说明系统时间不正确,网络获取时间还没成功。
解决方法:
等待一会儿,等待网络更新时钟
使用命令 date -s + 当天时间(手动设置时间),例如:sudo date -s "2024-11-26 17:53:30"
7.2. 修改apt软件源#
LubanCat系列板卡出厂使用的是中科大的软件源,如果想自己更换软件源,建议选择国内流畅的软件源。
注意
软件源会因为架构的不同而不一样,可以分为x86,arm64,armhf,riscv等,要确保你的源要符合你的架构,鲁班猫的软件源需要使用arm64的源。
在改写软件源前,可以备份一下软件源,防止设置错误的软件源:
1#备份软件源
2sudo cp /etc/apt/sources.list /etc/apt/sources.list.backup
3
4#编辑你要使用的软件源
5sudo vi /etc/apt/sources.list
6
7#更新软件源
8sudo apt update
9
10#升级
11sudo apt upgrade
修改软件源回中科大的软件源:
1#修改软件源为中科大软件源
2sudo cp /etc/apt/sources.list.backup /etc/apt/sources.list
3
4#更新软件源
5sudo apt update
6
7#升级
8sudo apt upgrade
7.3. apt常用命令#
7.3.1. 使用apt更新软件包数据库#
apt实际上在可用软件包的数据库上工作。如果数据库没有更新, 系统将不知道是否有更新的软件包可用。 这就是为什么在安装任何Linux系统之后,第一件事应该是更新apt数据库。
1sudo apt update
运行此命令时,您将看到从各种服务器检索到的软件包信息。
7.3.2. 使用apt升级已安装的软件包#
更新软件包数据库后,可以升级已安装的软件包。最方便的方法是升级所有有可用更新的软件包。
1sudo apt upgrade
7.3.3. 使用apt安装软件包#
1sudo apt install package_name
2
3#如果出于某种原因,你想安装一个软件包,但不想升级,那么如果已经安装了,就可以升级。
4sudo apt install <package_name> --no-upgrade
5
6#如果只想升级软件包,但不想安装(如果尚未安装),可以使用以下命令进行升级
7sudo apt install <package_name> --only-upgrade
8
9#使用apt安装软件的特定版本
10#默认情况下,将为应用程序安装存储库中可用的最新版本。但如果不想安装最新版本,可以指定版本号。您需要知道要安装的确切版本号-
11#只需使用包的名称添加=version。
12
13sudo apt install <package_name>=<version_number>
7.3.4. 使用apt移除软件包#
要删除已安装的软件包
1sudo apt remove package_name
2
3#还可以指定多个包,以空格分隔
4sudo apt remove package1 package2
remove命令将卸载给定的软件包,但可能会留下一些配置文件。如果要删除包含所有配置文件的软件包,请使用purge而不是remove
1sudo apt purge
7.3.5. 使用apt删除未使用的软件包#
每当在系统上安装依赖于其他软件包的新软件包时,也会安装软件包依赖项。删除包后,依赖项将保留在系统上。 这些剩余的软件包不再被其他任何东西使用,可以移除
1sudo apt autoremove
7.3.6. 使用apt生成软件包列表#
list命令允许您列出可用、已安装和可升级的软件包
1sudo apt list
2
3#该命令将输出所有包的列表,包括有关包的版本和体系结构的信息。要了解是否安装了特定的软件包,可以使用grep命令过滤输出。
4sudo apt list | grep package_name
5
6#要仅列出已安装的软件包
7sudo apt list --installed
8#在实际升级软件包之前,获取可升级软件包的列表可能很有用:
9sudo apt list --upgradeable
7.3.7. 使用apt搜索软件包#
此命令允许您在可用软件包列表中搜索给定软件包
1sudo apt search package_name
7.3.8. 使用apt显示软件包信息#
在删除或安装新软件包之前,有关软件包依赖项、安装大小、软件包源等的信息可能很有用。
1sudo apt show package_name
7.3.9. 使用apt清理下载文件的存档#
1sudo apt-get clean
7.3.10. 使用apt下载软件源代码#
1sudo apt-get source <packages>
7.3.11. 使用apt了解软件依赖关系#
1sudo apt-cache depends <packages>
7.3.12. 使用apt检查软件依赖关系#
1sudo apt-get check