如何设置我的 centos 实例以自动应用安全更新?
是否像设置一个在凌晨 1:00 执行 yum -y 更新的 cron 作业一样简单?
当您单击 WSUS 中已被取代的更新时,您会收到一条警告,提示您在拒绝更新之前应确认不再需要该更新。根据 Microsoft 的说法,您应该首先批准取代更新,等待计算机接受它们,确认客户不再需要旧的更新,然后您可以安全地拒绝被取代的更新。是的,嗯……这不太实用,微软。
多年来,我一直拒绝被取代的更新,但我最近看到一篇文章说你不应该这样做。
所以我的问题是:为什么不呢?
是否存在特定更新不适用于客户端但它取代的更新适用的情况?谁能给我一个令人信服的理由,为什么盲目拒绝被取代的更新不是一个好主意?
我有一个远程站点,其中有大约 70 个系统在过去 4 个月内由于 WSUS 服务器宕机而没有打补丁,我现在正准备在那里部署 SCCM 2012。
你们中的一位 SCCM 大师、MCC、MVP 能否告诉我以下方法对您是否有意义,如果是,这是一个好主意吗?顺便说一下,我已经有一个软件更新包,我用它来将补丁星期二更新放入每个月。我只想知道以下策略是否有意义:
大家觉得这个怎么样?
还有一件事,我有一个我已经在使用的软件更新包,但它仅用于补丁星期二补丁,而不是基线补丁。有两个软件包是否有意义,一个用于周二补丁更新,另一个用于基线更新?
我的想法是,补丁星期二包用于最新且不需要先前补丁的系统。Baseline 软件包适用于新系统,或者由于某种原因很久没有打补丁的系统。
此外,无论如何,是否能够在 SCCM 2012 控制台而不是所有 SCCM 2012 客户端中找出系统子集上需要哪些更新?我还没有想出如何做到这一点,或者是否有可能。我会为此创建一个软件更新配置基准吗?
如果我能在这里得到一些好的反馈,我将非常感激。
谢谢大家
我已经安装了 Debian 无人值守升级包。它升级大部分软件包,但不是所有软件包。如果我apt-get upgrade在运行后执行,则会安装更多软件包。
这是我的/etc/apt/sources.list:
deb http://ftp.de.debian.org/debian/ squeeze main non-free
deb-src http://ftp.de.debian.org/debian/ squeeze main non-free
deb http://security.debian.org/ squeeze/updates main non-free
deb-src http://security.debian.org/ squeeze/updates main non-free
# squeeze-updates, previously known as 'volatile'
deb http://ftp.de.debian.org/debian/ squeeze-updates main non-free
deb-src http://ftp.de.debian.org/debian/ squeeze-updates main non-free
# squeeze backports
deb http://backports.debian.org/debian-backports squeeze-backports main contrib non-free
# LTS
deb http://http.debian.net/debian/ squeeze-lts main contrib non-free
deb-src http://http.debian.net/debian/ squeeze-lts main contrib non-free
Run Code Online (Sandbox Code Playgroud)
这是我的/etc/apt/apt.conf.d/50unattended-upgrades文件。我的猜测是问题可能出在应该与我的sources.list条目匹配的前几行中:
// Automatically upgrade packages from these (origin, archive) pairs …Run Code Online (Sandbox Code Playgroud) 当我尝试在华硕 H87I-PLUS LGA 1150 Intel H87 Mini ITX 主板上刷新我的 LSI SAS 9211-8i 卡时,我能够通过所有说明,直到我最终准备好使用 SAS2FLSH.exe 进行刷新。报告的错误是:
ERROR: Failed to initialize PAL. Exiting program.
什么会导致这种情况?
我们有一堆旧的戴尔 R610。我们需要更新 BIOS 和驱动程序,但服务器上没有操作系统,而且戴尔下载页面只有适用于各种更新程序的 Windows 可执行文件。我们知道唯一的方法是下载 11GB 的戴尔服务器更新实用程序 ISO 映像。
问题是,如果我们设法下载它,我们如何使用它?把它刻录成 DVD 实在是太大了。有没有什么方法可以把它刻录到 U 盘上,R610 会用这个古老的 BIOS 启动(USB 不在启动设备列表中)。
似乎有 3 种方法可以更新戴尔服务器,所有这些方法都有问题。
所以这个选项看起来不起作用。
使用 DRAC 中内置的 UEFI。在启动时按 F10,可以选择一个 FTP 存储库,该存储库提供更新列表,包括“戴尔 32 位诊断程序、戴尔操作系统驱动程序包、戴尔生命周期控制器等。但是,当您尝试“应用”更新时,每个人都提出
“您尝试应用的更新不是戴尔授权的更新”
然后它尝试安装它们,然后提出:
"update failed: ...."
Run Code Online (Sandbox Code Playgroud)
如果固件太旧,似乎无法使用生命周期控制器更新系统,如果您没有操作系统,则无法更新它。请参阅本文:http : //en.community.dell.com/support-forums/servers/f/177/t/19475476
在我们公司,我们使用 GPO 来推送 Java 更新等软件更新。我们在位于不同国家/地区的不同办公室有大约 150 名用户,所有用户都使用 Windows 7。我们有一些特定于办公室的应用程序,并且没有用户具有管理员权限。
最近,在我们的一些办公室,有时用户会需要不同版本的 Java;他们使用的一个应用程序需要版本 A 的 Java,而另一个应用程序需要版本 B。最糟糕的情况是同一用户需要不同的 Java 版本,这取决于所使用的应用程序(Web 应用程序或独立应用程序)。
本月和上个月,我们在两个办公室的几个用户遇到了这个问题。到目前为止,我们在需要时安装了足够的 Java 版本。显然,这是耗时的。下个月,我们将考虑为旧 Java 版本提供特定的虚拟机或计算机。但这也不是最好的解决方案。其他解决方案是什么?
公司如何处理对同一用户的不同(且不兼容)Java 需求的需求?
我有几十台混合了 CentOS 6 和 7 的主机。我最近开始使用 Ansible 来帮助管理它们,但我仍然是一个新手。
和每个人一样,我需要定期更新这些计算机上的软件包,特别是出于安全原因。但是,我不想更新它们上的所有软件包,而只想更新特定的软件包——这可能因机器而异,具体取决于其角色。我过去曾使用 Ansible 的yum命令(带有state=latest和特定软件包列表)来更新这些主机,但直到今天我才注意到,在针对主机运行该命令时,如果未安装列出的软件包之一然后将在该机器上安装它。
我需要的是一种向 Ansible 提供软件包列表的方法,然后它会对每个主机执行操作: - 如果软件包存在,请将其更新到最新版本;- 如果包不存在,则不执行任何操作。
有没有一种实用的方法可以做到这一点?
我需要针对多个正在运行的容器运行一个命令。例如,假设我的应用程序需要在收到代码更新后针对数据库运行数据结构更新。为此,我们要运行docker build <project_dir> -t latest,然后docker stop; docker rm; docker run。在这个阶段,我们可以假设我们已经更新了容器的核心代码,但我们仍然需要使用应用程序自己的工具运行该数据库更新。
本质上,我需要某种方法来获取正在运行的容器列表,按某些条件进行过滤,然后将这些容器 ID 注册到 Ansible。然后对于每个容器,我们运行命令。
像这样:
- name: Get list of running containers
docker:
image: my-image:latest
state: running
register: container_ids
Run Code Online (Sandbox Code Playgroud)
此任务将存储使用my-image:latestto的正在运行的容器列表container_ids。然后我们执行命令:
- name: Exec the database update
cmd: "docker exec -it {{ item }} my-app-db-update.sh"
with: container_ids
Run Code Online (Sandbox Code Playgroud)
由于我们真的不想将活动容器用于此类操作,因此更好的选择是启动一个新的一次性容器来处理相同的数据:
- name: Run the database update
cmd: "docker run --rm --volumes-from {{ item }} --link:mydb:db my-app sh -c 'my-app-db-update.sh'"
with: container_ids
Run Code Online (Sandbox Code Playgroud)
以上只是伪代码——它实际上不会运行。如何完成存储满足特定条件的正在运行的 docker 容器列表的任务,以便我可以使用docker …
我需要更新 100 多个运行 ubuntu 的工作站。
问题是我希望他们从本地服务器下载包,这样他们就不会使用太多的互联网带宽。
我为此使用了一种缓存代理,它只下载一次特定的包,然后将其分发到所有工作站。