如何一次安装多个PPA和应用程序?

我打算在我实验室的一个工作台上安装一些通用计算机。

Ubuntu存储库中有一大堆PPA存储库和应用程序,我想在最初的Ubuntu安装后安装它们。

是否可以编写一个脚本,一次性安装所有这些应用程序和PPA,要求我只需双击可执行脚本并输入管理员密码?

我想这将是相当直接的。 有人可以指点我快速教程,或者甚至提供某种模板脚本,这样我就可以添加PPA名称和apt-get安装包吗?

谢谢。

我使用下面的简单脚本添加texworks和Ubuntu GIS PPA,然后从各自的源代码安装texworks和Quantum Gis,您可以通过添加其他PPA并将软件包名称添加到apt-get install命令行来扩展它。

#!/bin/bash echo "Adding PPAs" add-apt-repository ppa:texworks add-apt-repository ppa:ubuntugis/ubuntugis-unstable echo "updating repositories" apt-get update echo "Installing packages" apt-get install texworks qgis echo "Finished adding PPAs and insatlling applications" exit 0 

bash脚本可以很容易地完成你的要求。

这是我使用的一个好的bash脚本指南的链接: http : //tldp.org/LDP/abs/html/

简单地说,你需要调用3个命令来从PPA安装

  1. sudo add-apt-repository ppa:
  2. sudo apt-get update
  3. sudo apt-get dist-upgrade

如果你想直接进入一个示例,我已经写了一篇博客文章,其中包含一个这样的自动bash脚本来安装来自不同来源的应用:

http://gautham-chandra.tumblr.com/post/15544311989/ninite-like-bash-script-to-install-and-configure-some

在脚本中,我提前要求脚本的root权限,以便命令不必像你问的那样在它前面运行sudo。

安装不同版本的libnotify时,文章中显示了从PPA安装的具体示例。

从列表中无人参与安装

对于无人参与的软件包列表安装和向我们的系统添加几个ppa ,我们可以使用以下脚本:

 #! /bin/bash # Save as eg 'uptodate' and make executable # Usage: # sudo ./uptodate   sudo cp $1 /etc/apt/sources.list.d/mysource.list sudo apt-get update xargs -a "$2" sudo apt-get -y install 

该脚本有两个参数。 第一个是脚本目录中的文件(例如mysources ),我们根据sources.list的规范保存了我们的软件源列表,例如:

 deb http://ppa.launchpad.net///  main deb http://ppa.launchpad.net///  main ... 

用所需的值替换所有变量

第二个参数是一个文件(例如packages ),其中包含我们希望以以下格式安装的包列表:

 packagename otherpackage ... 

使用例如名称uptodate保存脚本,使其可执行并从终端运行:

 cd /directory/of/script sudo ./uptodate mysources packages 

脚本做了什么?

它只是将我们的mysources列表复制到/etc/sources.list.d/mysources.list ,更新包信息并从我们使用xargs提供的packages列表中安装所有包。

注意:我们可能还必须从launchpad keyserver下载有效密钥才能从我们添加的ppa安装。

 sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 72D340A3 

将签名密钥(此处为72D340A3)替换为适当的密钥

注意2:最好在终端中运行脚本而不是双击,因为我们确实想知道错误。