• 请不要在回答技术问题时复制粘贴 AI 生成的内容
smdbh
V2EX  ›  程序员

对于经常装 Linux 系统,有什么工具或方法能快速初始化环境么

  •  
  •   smdbh · Jan 17, 2019 · 9730 views
    This topic created in 2847 days ago, the information mentioned may be changed or developed.
    1. 个人使用,没有批量需求
    2. 初始化 ,比如 ip 配置,apt 源,常用软件安装。smb 配置 zsh 等, 基本概括为修改配置文件和安装软件。
    3. 一键完成。

    当前手写 bash 脚本完成这个,但感觉不系统化。不知道有没有工具类完成这个工作。

    Supplement 1  ·  Jan 17, 2019
    学习了大家的建议
    1. 单机部分,最方便的还是虚拟机大法,快照功能无敌。
    2. 对于云环境,或是其他物理机器,bash dotfiles 更适合我。(虚拟机文件或是 docker 都还是臃肿,不好操作,但是稳定性性好,不会因为网络原因造成意外冲突)
    54 replies  •  2019-01-21 17:17:35 +08:00
    richzhu
    richzhu
    Jan 17, 2019 via iPhone
    1
    Ansible Task
    ly4572615
    ly4572615
    Jan 17, 2019
    2
    ansible 或者 salt 也是要写 yaml 的,亲
    Erskine
    Erskine
    Jan 17, 2019 via Android
    3
    dd
    CallMeReznov
    CallMeReznov
    Jan 17, 2019
    4
    KS 无论批量和个人 都原生支持 KS
    greenskinmonster
    greenskinmonster
    Jan 17, 2019
    5
    把默认系统和预装软件装好,tar 打包个模板出来,然后写个 bash,初始化设置下 ip,hostname,bootloader 啥的就好了。
    fox0001
    fox0001
    Jan 17, 2019 via Android
    6
    把相关配置文件备份,装完系统还原过去。
    rocksolid
    rocksolid
    Jan 17, 2019
    7
    虚拟机,建好放一个原始版本,用只用复制的
    lihongjie0209
    lihongjie0209
    Jan 17, 2019
    8
    ansible
    openbsd
    openbsd
    Jan 17, 2019
    9
    同机器还是不同的机器 ?同机器的话,快照 ?
    reus
    reus
    Jan 17, 2019
    10
    bash 怎么就不够系统化了?
    Tonni
    Tonni
    Jan 17, 2019
    11
    Ansible...
    zjsxwc
    zjsxwc
    Jan 17, 2019❤️1
    12
    换硬盘
    0w0b
    0w0b
    Jan 17, 2019
    13
    nixos
    zoum
    zoum
    Jan 17, 2019 via iPhone❤️1
    14
    GitHub 上有许多 dotfiles 可以参考下
    DovaKeen
    DovaKeen
    Jan 17, 2019
    15
    不装系统了,都弄到 docker 里
    quinoa42
    quinoa42
    Jan 17, 2019
    16
    bash 怎么不系统化了,代码是自己写的,而且一般来讲无论什么发行版都会自带 bash
    我之前用的 dotbot,但考虑到不是所有发行版都自带 python,最后还是手写了自己的 bash script
    hoyixi
    hoyixi
    Jan 17, 2019
    17
    不想写代码的话:

    虚拟机做好环境,然后作为一个备份镜像, 以后用的时候,用它 clone 一个;

    vagrant,本质一样,自己做个做好环境的 box,用的时候,装一份。


    个人感觉虚拟机简单粗暴。配上上面说的别人写好的脚本或者工具,可以方便定制。

    比如刚装好系统,做个最基础的备份镜像,

    然后克隆一份,比如 Nodejs,用专门配置脚本弄好环境,此时再保存镜像,就是一个初始的 Nodejs 环境。

    同理看工作需求,Python,数据库之类都可以搞个,甚至按照数据库版本都可以多弄几个(比如做为测试环境)。

    这样,麻烦的工作做一次,以后就可以少做点。
    TotoroSora
    TotoroSora
    Jan 17, 2019
    18
    这个问题思考了好久没想到什么好方法。。想到过的有直接自制 LiveCD,另一个方法是直接 tar 系统盘
    wenzhoou
    wenzhoou
    Jan 17, 2019 via Android
    19
    bash +1
    写完记得放 GitHub 上共享一下啊。😁😁
    catalina
    catalina
    Jan 17, 2019 via Android
    20
    。。。lvm 不是自带快照功能吗?
    dajj
    dajj
    Jan 17, 2019
    21
    Clonezilla 再生龍 镜像备份
    itabas016
    itabas016
    Jan 17, 2019 via Android
    22
    我现在是 clonezilla 镜像盘 然后是一键 shell 改 IP Host 及个性化设置
    visitantzj
    visitantzj
    Jan 17, 2019
    23
    关注一下,像 rsync 这样直接把绝大部分文件备份可行么,到时候就干净系统再覆盖一下
    itskingname
    itskingname
    Jan 17, 2019 via iPhone
    24
    为什么不用 Docker 呢
    F1024
    F1024
    Jan 17, 2019
    25
    写个自动安装脚本
    iorilu
    iorilu
    Jan 17, 2019 via iPhone
    26
    用 docker 不就行,把初始环境装好做成 image,以后直接用啊,顺便还可以做版本控制随时切换任意版本
    xpresslink
    xpresslink
    Jan 17, 2019
    27
    经常装 Linux 系统,这话说得很笼统。
    云环境,物理机,虚拟机里面,装 1 个,装 10 个还是 50 个,这个差别很大。
    使用的策略和方法也非常不同。
    STRRL
    STRRL
    Jan 17, 2019 via Android
    28
    刚好看到这么一个工具 叫 azk 貌似刚刚起步
    kernel
    kernel
    Jan 17, 2019 via Android
    29
    我就是一个几百行的脚本,因为经常要装 vps,一键全搞定
    yylucifer
    yylucifer
    Jan 17, 2019
    30
    似乎楼主只想要一个 repo 或者一套脚本
    而不是实施方案。。。例如 ansible 啥的我觉得楼主是知道的。。
    guoqiao
    guoqiao
    Jan 17, 2019
    31
    我很早就有跟楼主一样的需求,bash 脚本,python 脚本,dotfiles 什么的都试过。最后发现这个事情没法一劳永逸的,而且会不断演化,比如集成新的工具,支持新的环境。所以最后一定会代码化。我最后的选择是 Ansible。
    MilkShake
    MilkShake
    Jan 17, 2019
    32
    docker ansible
    playnoa
    playnoa
    Jan 17, 2019 via Android
    33
    hyper-v,快照树,恢复任何版本只需 3-5 秒
    weck
    weck
    Jan 17, 2019
    34
    如果 lab 有 snapshot 功能可以试试创建 snapshot,然后初始化只需要 revert to snapshot,当然也可以使用 docker
    sundev
    sundev
    Jan 17, 2019 via iPhone
    35
    我感觉像树莓派镜像那样挺好的,直接恢复,然后第一次启动时候对系统进行初始化
    lfzyx
    lfzyx
    Jan 17, 2019
    36
    PXE
    lozzow
    lozzow
    Jan 17, 2019 via iPhone
    37
    再生龙
    luozic
    luozic
    Jan 17, 2019
    38
    docker 搞定
    NB40B938mff85mtq
    NB40B938mff85mtq
    Jan 17, 2019
    39
    直接做镜像不就好了。。。。
    neverwin
    neverwin
    Jan 17, 2019
    40
    最喜欢手动装系统了)逃
    toyland
    toyland
    Jan 17, 2019
    41
    很多 Linux 发行版都支持无人值守安装,比如 Debian/Ubuntu 在安装时可以读取事先准备好的配置 preseed.cfg 、CentOS 也有类似的 ks.cfg ,其中可以更改系统默认配置或者添加额外要安装的软件包。
    HFcbyqP0iVO5KM05
    HFcbyqP0iVO5KM05
    Jan 17, 2019 via Android
    42
    每次安装 /编译重要软件的时候都会写成 bash 脚本,把必要的配置文件也备份,然后推到 github
    honglongmen
    honglongmen
    Jan 17, 2019
    43
    这种一般都是先装好个基本完整的主机, 然后快照恢复或者复制镜像.不过 31 楼说的对,迟早要更新各种环境,细微变化.

    觉得还是 docker 好点和方便点, 配上 shell 脚本应该可以了吧.
    hei1000
    hei1000
    Jan 17, 2019
    44
    我个人电脑一般都是 dotfiles 以及各种放到 github 备份,其他本地文件什么的放到硬盘,如果是公司那种一个做好的系统要安装到多个服务器上面,貌似直接做镜像的
    zhouyut001
    zhouyut001
    Jan 17, 2019
    45
    目前想到的也只有系统相同的情况下,备份主要的配置文件,到时候只需要 yum/ apt 装一次,把所有文件覆盖进去,重启完事儿。
    zhouyut001
    zhouyut001
    Jan 17, 2019
    46
    借贴求 Linux 整盘(一个硬盘都是系统目录)备份成镜像的方法,像 ghost 一样直接恢复。。。。
    hxroyal
    hxroyal
    Jan 17, 2019
    47
    docker 最方便
    lekai63
    lekai63
    Jan 17, 2019 via iPhone
    48
    bash 脚本完成简单任务:新建用户,改端口,放公钥,装 docker。
    剩下的就是 docker 的事了。
    stebest
    stebest
    Jan 17, 2019
    49
    直接把环境封装成系统镜像啊
    hanxiV2EX
    hanxiV2EX
    Jan 18, 2019 via Android
    50
    dotfiles 写个一键安装脚本,可以参考我的。
    https://github.com/hanxi/dotfiles
    wanwaneryide
    wanwaneryide
    Jan 18, 2019
    51
    配置好环境,然后自己做成一个系统的镜像就行了
    Rheinmetal
    Rheinmetal
    Jan 18, 2019
    52
    @zhouyut001 可以试试 wimlib-imagex 虽然是给 windows 镜像写的 不过可以跨平台
    fangzheng
    fangzheng
    Jan 18, 2019
    53
    用 virtualbox,先装个 mini 版的 CentOS1.vdi ,然后使用 virtualbox 的复制功能即可。
    loser
    loser
    Jan 21, 2019
    54
    我以前喜欢用 shell 脚本,crt 连上后下载写好脚本全部自动配置
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1721 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 113ms · UTC 17:08 · PVG 01:08 · LAX 09:08 · JFK 12:08
    ♥ Do have faith in what you're doing.