我正在寻找方法或自动化工具来记录我对 Linux 机器所做的调整。
这些调整将是:
- 通过 apt-get 安装新的软件/软件组件,包括强制安装特定版本
- Perl 模块的安装
- 使用make install,make过程满足以上项目的目标
- 路径和环境变量的更改
- 对 Linux 机器进行的几乎任何更改
- 记录可能导致上述任何步骤的错误
我将使用这种记录技术来:
- 允许复制这些步骤,以便在另一台 Linux 机器上重复执行,例如,如果我要为多台机器设置相同的应用程序
- 为记录步骤提供基础
- 帮助提供撤消过程,以撤消更改并将机器恢复到进行更改之前的状态
为什么我认为这样的方法或方法和工具是必要的?
- 因为我们经常会面临压力,需要接连输入大量命令来构建、安装等
- 因为似乎有很多基于 Linux 的软件不能完全按照制造商的意图运行,或者说明不完整、含糊不清。(不过,随着像这个和 howtoforge.com 这样的网站的出现,情况正在好转)
- 因为Linux管理员、开发人员不太擅长记录他们所做的事情,或者不愿意,或者觉得这是一项无聊的任务,认为它不重要
我所寻找的功能包括:
- 记录输入的命令和输出
- 记录对系统造成的变化
- 也许可以使用 BeyondCompare 风格的比较工具来智能地比较更改前后的文件系统分区
答案1
答案2
为了 ”记录输入的命令和输出“部分,您可以使用命令脚本。
SCRIPT(1) BSD General Commands Manual SCRIPT(1)
NAME
script — make typescript of terminal session
SYNOPSIS
script [-a] [-c COMMAND] [-f] [-q] [-t] [file]
DESCRIPTION
Script makes a typescript of everything printed on your terminal. It is
useful for students who need a hardcopy record of an interactive session
as proof of an assignment, as the typescript file can be printed out
later with lpr(1).
If the argument file is given, script saves all dialogue in file. If no
file name is given, the typescript is saved in the file typescript.
记录你所做的事情真的很有用。
答案3
与其这样,为什么不直接通过 Puppet 之类的配置管理系统对服务器进行所有更改呢?这就是我管理机器的方式,这样我就可以确保负载平衡集群中的所有机器都是相同的。