在干净安装后创建安装软件的脚本?

我发现自己最近在多台新机器之间移动(新笔记本电脑,工作中的新电脑等)。 我想创建一个bash脚本来安装我使用的所有软件。 Ninite不够丰富。 我没有bash脚本的经验,我正在学习它。 我正在计划使用aptitude search来查找软件包名称(如果它们存在于存储库中)并创建多行aptitude install

然后,从头开始安装Ubuntu后我要做的就是安装aptitude并运行脚本。

  1. 脚本会一个接一个地运行(而不是并行运行并失败)吗?
  2. 我可以进行“静默安装”,以便安装程序不会提示答案(预先定义答案或用户默认)吗?
  3. 有没有办法通过bash脚本定义一些系统设置?

在所有3个问题上都是。

关于有关设置的最后一个问题:您可以使用软件包dconf-tools (包含在示例中)中的很多内容。 对于其他一些人来说gconftool-2 (虽然后者被逐步淘汰)。 我在示例的底部添加了一行。 你可以像gsettings list-recursively | grep plugins.power|more一样搜索它们 gsettings list-recursively | grep plugins.power|more 。 这将显示与电源设置相关的任何内容。

如果需要条件命令,可以使用&& :{command && command2}仅在命令1未发生故障时才发出命令2。


创建一个文本文件并使其可执行,并添加可检索的代码片段。 我安装后发布的一些随机内容的示例(包括将我的主页符号链接到单独的光盘(重新安装时不会格式化):

 #启用源,添加PPA并更新源: 
 sudo sed's /#deb / deb /'- i /etc/apt/sources.list

 sudo add-apt-repository ppa:tiheum / equinox
 sudo add-apt-repository ppa:am-monkeyd / nautilus-elementary-ppa
 sudo apt-get update
 sudo apt-get升级

 #syinking主页文件夹。
 cd / discworld2 /
 mkdir桌面/下载/图片/video/公共/音乐/模板/文件/ 
光盘
 rm -rf桌面/下载/图片/video/公共/音乐/模板/文件/ 
 ln -s / discworld2 /桌面/桌面
 ln -s / discworld2 / Documents / Documents
 ln -s / discworld2 /下载/下载
 ln -s / discworld2 /图片/图片
 ln -s / discworld2 /模板/模板
 ln -s / discworld2 /videovideo

 #添加软件:
 sudo apt-get install -y dconf-tools powertop htop compizconfig-settings-manager deluge vlc smplayer shutter chromium-browser cheese gtk2-engines-equinox faenza-icon-theme equinox-theme

 #re restart nautilus(req。激活初级):
鹦鹉螺-q

 #remove lock screen

 gsettings set org.gnome.desktop.screensaver lock-enabled false

 #更改设置电源管理(OLD方法):

 gconftool-2 --set --type string / apps / gnome-power-manager / critical_battery shutdown 
 gconftool-2 --set --type bool / apps / gnome-power-manager / battery_reduce false
 gconftool-2 --set --type bool / apps / gnome-power-manager / idle_dim_battery false
 gconftool-2 --set --type string / apps / gnome-power-manager / lid_ac blank
 gconftool-2 --set --type string / apps / gnome-power-manager / lid_battery blank
 gconftool-2 --set --type string / apps / gnome-power-manager / sleep_computer_ac 0
 gconftool-2 --set --type string / apps / gnome-power-manager / sleep_computer_battery 0
 gconftool-2 --set --type string / apps / gnome-power-manager / power interactive

您可以使用Ubuntu One在计算机之间同步已安装的应用程序。 该选项位于软件中心菜单中。