Bagaimana cara menginstal beberapa PPA dan aplikasi sekaligus?

9

Saya akan menyiapkan beberapa komputer yang umum digunakan di salah satu bangku laboratorium saya.

Ada sejumlah besar repositori PPA dan aplikasi dari repositori Ubuntu yang ingin saya instal setelah instalasi Ubuntu awal.

Apakah mungkin untuk menulis skrip yang akan menginstal semua aplikasi dan PPA dalam sekali jalan, mengharuskan saya hanya mengklik dua kali skrip yang dapat dieksekusi dan mengetikkan kata sandi admin?

Saya membayangkan itu akan sangat lurus ke depan. Bisakah seseorang mengarahkan saya ke tutorial cepat atau bahkan mungkin menyediakan semacam skrip template sehingga saya dapat menambahkan nama PPA dan paket instalasi apt-get?

Terima kasih.

mloman
sumber

Jawaban:

7

Saya menggunakan skrip sederhana di bawah ini untuk menambahkan texworks dan PPA GIS Ubuntu dan kemudian menginstal texworks dan Quantum Gis dari sumbernya masing-masing, Anda dapat mengembangkannya dengan menambahkan PPA lain dan menambahkan nama paket ke baris perintah 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
Sabacon
sumber
add-apt-repository sering meminta saya untuk mengetik Y untuk setuju menambahkannya ke daftar sumber. Apakah ini akan memengaruhi alur otomatis skrip?
mloman
Dalam pengujian saya tidak ada pertanyaan yang dikeluarkan semuanya ditambahkan dan diinstal secara otomatis.
Sabacon
Tidak ada prompt di 11,04, prompt "Tekan Y untuk menambahkan" yang mengganggu di 11.10. Saya tidak tahu bagaimana cara menyingkirkan ini - maaf.
Scaine
2
Seharusnya disebutkan - jika Anda yakin tentang apa yang akan diinstal oleh apt-get, Anda bisa lulus apt-get install -ydan itu tidak akan meminta Anda untuk "Y untuk melanjutkan". Mungkin add-apt-repositorymendukung opsi yang sama?
Scaine
3
@ Skaine Ya, add-apt-repositorymendukung-y
jcollado
2

Skrip bash akan melakukan apa yang Anda minta dengan sangat mudah.

Berikut ini tautan ke panduan skrip bash yang baik yang saya gunakan: http://tldp.org/LDP/abs/html/

Sederhananya, Anda perlu memanggil 3 perintah untuk menginstal dari PPA

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

Jika Anda ingin langsung melihat contohnya, saya telah menulis artikel blog tentang satu skrip bash otomatis untuk menginstal aplikasi dari berbagai sumber:

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

Dalam skrip, saya meminta izin root untuk skrip terlebih dahulu sehingga perintah tidak harus dijalankan dengan sudo di depannya saat Anda bertanya.

Contoh spesifik dari penginstalan dari PPA ditunjukkan dalam artikel ketika menginstal versi libnotify yang berbeda.

Gautham C.
sumber
0

Instalasi tanpa pengawasan dari daftar

Untuk pemasangan daftar paket tanpa pengawasan dan menambahkan beberapa ppa ke sistem kami, kami dapat menggunakan skrip berikut:

#! /bin/bash
# Save as e.g. 'uptodate' and make executable
# Usage:
# sudo ./uptodate <mysources> <packages>

sudo cp $1 /etc/apt/sources.list.d/mysource.list
sudo apt-get update
xargs -a "$2" sudo apt-get -y install

Script memiliki dua argumen. Yang pertama adalah file (misalnya mysources) dalam direktori skrip tempat kami menyimpan daftar sumber perangkat lunak kami sesuai dengan spesifikasi untuk sources.list misalnya:

deb http://ppa.launchpad.net/<maintainer>/<name>/<ubuntu> <release> main
deb http://ppa.launchpad.net/<other_maintainer>/<name>/<ubuntu> <release> main
...

Ganti semua variabel dengan nilai yang diinginkan

Argumen kedua adalah file (misalnya packages) dengan daftar paket yang ingin kita instal dalam format misalnya:

packagename
otherpackage
...

Simpan skrip dengan mis. Nama uptodate, jalankan dan jalankan dari terminal:

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

Apa yang dilakukan skrip?

Itu hanya menyalin mysourcesdaftar kami ke /etc/sources.list.d/mysources.list, memperbarui informasi paket dan menginstal semua paket dari packagesdaftar yang kami sediakan dengan menggunakan xargs .

Catatan: kita mungkin juga harus mengunduh kunci yang valid dari launchpad keyserver untuk dapat menginstal dari ppa yang kita tambahkan.

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

Ganti kunci penandatanganan (di sini 72D340A3) dengan yang sesuai

Catatan 2: Adalah ide yang baik untuk menjalankan skrip di terminal dan bukan dengan klik dua kali karena kami ingin tahu tentang kesalahan.

Takkat
sumber
Ini sangat berguna untuk membuat cadangan dan memulihkan daftar dan paket sumber saya sendiri. Tapi bisakah Anda menguraikan pada bagian keyserver. Apakah saya akan memasukkan kode terakhir di dalam skrip, atau menjalankannya secara terpisah? Apakah saya perlu melakukan ini untuk kunci penandatanganan semua AKP?
mloman
Sebenarnya, karena saya bisa menulis daftar sumber saya sendiri dan daftar paket, ini mungkin merupakan metode instalasi yang lebih mudah, tapi tolong uraikan pada bagian keyserver. Bagaimana saya tahu apa kunci tanda tangan "tepat" itu?
mloman
Anda dapat memeriksa apakah pada halaman beranda ppa atau Anda akan mendapatkan kesalahan karena memberitahu Anda. Begitu kuncinya ada di mesin, ia tidak akan bertanya lagi. Ini bukan untuk dimasukkan dalam skrip. Anda belum tahu angkanya.
Takkat
Baiklah, sekarang sudah jelas bagi saya. Saya menemukan tautan ini untuk pencadangan cepat keyfiles.
mloman