使用Ubuntu系统管理工具Landscape来构建离线APT仓库:第一篇
by liam zheng on 18 January 2022
Ubuntu 是开发人员、云或横向扩展应用程序最流行的 Linux 发行版,原因之一是提供长期可用且易于安装的软件升级及安全补丁。一些企业用户可能在没有互联网访问的本地网络中运行大量 Ubuntu 桌面或服务器,这些机器无法访问在线的 Ubuntu APT 仓库导致无法获得和安装系统更新,从而导致网络中的机器存在安全问题。然而,借助 Ubuntu 系统管理工具 Landscape 则可以有效地解决此问题。
本系列博客将演示如何使用 Ubuntu 系统管理工具 Landscape 来构建一个离线的 APT 仓库为内网机器提供软件更新源。需要注意的是,Landscape 仍需通过代理访问互联网,但其它系统只需访问到 Landscape 来下载安全补下或软件升级。其为 apt-mirror 提供了一种替代的方法,如果您有着成百上千的 Ubuntu 桌面或服务器需要集中化管理,那么这将大幅提高您的管理效率,减少维护成本。
一、Landscape 和服务器安装
Landscape 是支持和监控大型且不断增长的桌面、服务器和云网络的最具成本效益的方式。减少团队进行基本日常管理所需的工作量。 Landscape 提供的工具可以像一台机器一样轻松地部署、监控和管理数千台 Ubuntu 机器。它通过以下方式节省时间并大规模提高安全性:
- 自动执行日常任务
- 接收警报以更新您指定的机器
- 使用最新的安全补丁以保持安全
- 单一界面管理多达40000台机器
- 创建您自己的软件
- 通过 API 扩展和自定义 Landscape
作为 Canonical 企业级支持服务 Ubuntu Advantage (简称“UA”)的一部分,Landscape 已包含在订阅服务中,无需额外采购。Landscape 提供10台机器的测试许可,如超过 10 台机器需要 UA 订阅,但如果您在内网内安装 Landscape On-premises,可免费管理最多 10 台机器。在您决定获得 Landscape 提供的完全自动化权限之前,您可以使用免费许可证来完成镜像和共享离线 Ubuntu APT 仓库。如并手动配置一些 APT 源,所有内部 Ubuntu 系统都能使用。
通过下面的方法,可在 Ubuntu 18.04 上通过快速入门方法安装 Landscape,更多详细内容请参考此链接。通过访问 https://<servername> 并填写请求的信息。
sudo add-apt-repository ppa:landscape/19.10 sudo apt-get install Landscape-server-quickstart
完整操作如下:
ubuntu@vm-landscape-server:~$ sudo add-apt-repository ppa:landscape/19.10 October 2019 release of Landscape More info: https://launchpad.net/~landscape/+archive/ubuntu/19.10 Press [ENTER] to continue or Ctrl-c to cancel adding it. Get:1 http://ppa.launchpad.net/landscape/19.10/ubuntu bionic InRelease [15.4 kB] Get:2 http://ppa.launchpad.net/landscape/19.10/ubuntu bionic/main amd64 Packages [6320 B] … Fetched 7218 kB in 14s (526 kB/s) Reading package lists... Done ubuntu@vm-landscape-server:~$ sudo apt-get install landscape-server-quickstart Reading package lists... Done Building dependency tree ... Processing triggers for rsyslog (8.32.0-1ubuntu4) ... ubuntu@vm-landscape-server:~$
二、Landscape api 访问
Landscape 为大多数管理任务提供了一个简洁且易于使用的仪表板。您还可以调用 Landscape 的 API,它允许您从命令行、shell 脚本或 Python 模块执行许多 Landscape 任务。虽然离线 repos 只能通过 API 进行设置和管理,但如下所示它也相当简单。
安装 Landscape api 客户端并配置使用:
- sudo add-apt-repository –update ppa:landscape/landscape-api
- sudo apt-get install Landscape-api
- 获取 api 密钥并设置环境
ubuntu@vm-landscape-server: ~$sudo add-apt-repository --update ppa:landscape/landscape-api ubuntu@vm-landscape-server: ~$sudo apt-get install Landscape-api
从下面截图(Landscape 网页界面) 中查找 API 密钥。

配置和测试api:
ubuntu@vm-landscape-server:~$ cat api.rc #!/bin/bash export LANDSCAPE_API_KEY="6QNNH5QHK2OU7JPPS7FJ" export LANDSCAPE_API_SECRET="SYFbvBezQQlgWx0JUrZVl6SJ51xqlO75mstHTqfQ" export LANDSCAPE_API_URI="https://vm-landscape-server .maas/api/" export LANDSCAPE_API_SSL_CA_FILE="/etc/ssl/certs/landscape_server_ca.crt" ubuntu@vm-landscape-server:~$ source api.rc ubuntu@vm-landscape-server:~$ landscape-api get- scripts [] ubuntu@vm-landscape-server:~$
三、下一步设置本地并同步
通过上面您已经安装了 Landscape 服务器和建立了 api 访问。下一步我们将进一步介绍客户端和本地仓库搭建的设置。同时,您也可以访问 Landscape网站 阅读更多内容。
或者联系我们获得更多关于 Landscape 的服务支持相关的内容。
本教程由Canonical FE Mao Zhanglei 所撰写。订阅博客文章
查看更多内容
Canonical 发布 Ubuntu 25.04 Plucky Puffin
Ubuntu 的最新临时版本,引入了适用于如 Spring 等热门框架的“开发软件包”,同时在各种硬件设备上增强了性能。 发布日期:2025 年 4 月 17 日 Canonical 宣布发布 Ubuntu 25.04,代号“Plucky Puffin”,用户可前往 ubuntu.com/download 进行下载并安装。 Ubuntu 25.04 搭载最新的 GNOME 48 桌面环境,支持三重缓冲技术,提供更好的安装和启动体验。引入适用于 Spring 框架的“开发软件包”,进一步扩大了 Ubuntu 中的工具链可用性。Canonical 携手合作伙伴在芯片技术上取得的进步,不仅为 Intel GPU 上人工智能工作负载提升了性能,同时还支持 AMD SEV-SN […]
Ubuntu 正式支持 NVIDIA Jetson
Ubuntu 正式支持 NVIDIA Jetson:助力边缘 AI 未来发展 Canonical 宣布推出支持 NVIDIA® Jetson Orin™ 的 Ubuntu 正式发布版本,该版本专为边缘 AI 和机器人领域打造,为全球 AI 开发者带来优化的性能、开箱即用的兼容性以及实现高性能 AI 解决方案的便捷途径。 Ubuntu 发行商 Canonical 宣布正式支持 NVIDIA Jetson 平台,标志着其与 NVIDIA 的合作迎来重要里程碑,为加速边缘 AI 领域创新再添动力。此次正式发布(GA)版本为 Ubuntu 与 NVIDIA Jetson 系统级模块解决方案的强大组合赋予了企业级的稳定性与技术支持。 为各行各业 AI 创新赋能 此次通过 Canon […]
NIS2 合规指南:第 2 部 — 了解 NIS2 合规要求
在上一篇博客文章中,笔者详细介绍了 NIS2 及其适用对象。本系列的第二篇文章中将详细介绍 NIS2 中的主要要求,并将这些要求具体转化为切实可行的行动措施,助力企业组织满足 NIS2 合规要求。欢迎阅读本文,一同深入了解 NIS2 的内容。 NIS2 适用于您。那么,您需要做些什么来满足 NIS2 合规要求? 如果您正在阅读本文,想必已经意识到 EU NIS2 适用于您所在的公司。接下来,让我们深入探究其中的具体要求,以及为实现合规性需要采取的行动。 该指令规定,相关实体必须落实网络安全风险管理措施,且这些措施必须“适当适度”。尽管这一要求看似宽泛,存在一定的解释空间,但指令中明确规定了一系列必须落实的最低限度的网络安全风险管理措施。 下面将细入探讨这些措施,并将其转化 […]