Membuat daftar aplikasi dari instalasi lama untuk menjalankannya di instalasi baru


8

Saya ingin beralih dari ubuntu-desktop 10.10 ke netbook ubuntu edisi 10.10 di netbook saya. Saat ini, saat saya ssh ke ubuntu dari jaringan ad-hoc saya, ubuntu membeku. Itu selalu membutuhkan shutdown dingin. Jadi berharap edisi netbook mungkin tidak memiliki masalah ini. Saya telah kustom menginstal banyak aplikasi pada edisi desktop. Jadi saya ingin menyimpan daftar aplikasi ke dalam skrip dan menjalankan skrip pada instalasi baru, sehingga semua aplikasi akan diunduh dan diinstal. Saya perlu saran tentang cara terbaik untuk mencapai ini.


Siapa pun yang berpikir untuk menyarankan dpkg --get-selections: ingat bahwa ada paket berbeda yang diinstal oleh sistem. Anda harus memfilter berdasarkan pada aplikasi mana yang diinstal setelah sistem dasar.
Oli

1
Membeku kemungkinan besar terkait dengan driver kernel / xorg / X, sangat tidak mungkin bahwa mengubah manajer windows akan memperbaikinya.
João Pinto

Selain itu, persatuan dalam 10,10 lebih "beku" dari apa pun
Extender

1
Juga periksa apt pada cd jika Anda tidak ingin harus mengunduh lagi.
Jeremy

Jawaban:


9

Jalankan monster ini di instal Anda yang ada, ganti 12.04versi Ubuntu Anda dan i386dengan arsitekturnya (i386 atau amd64):

release_num='12.04'
arch='i386'

comm -23 \
    <(sort <(aptitude search '~i!~E' --disable-columns | grep -v "i A " | cut -d " " -f 3)) \
    <(sort <(wget -q -O- http://releases.ubuntu.com/maverick/ubuntu-${release_num}-desktop-${arch}.manifest | grep -E -o '^[^ ]+')) \
| sed 's/$/ install/g' > packages

Ini akan menghasilkan file bernama packages. Salin ini ke suatu tempat di instalasi baru Anda dan kemudian jalankan:

sudo apt-get update
sudo bash -c "cat packages | xargs apt-get -y install"

catatan: Ini membandingkan paket yang digunakan pada LiveCD dengan yang saat ini. Saat ini ada beberapa paket (gparted, btrfs-tools, dll) yang ada di CD yang tidak diinstal. Jika Anda menginstal gparted secara manual, Anda harus menginstalnya kembali di mesin baru secara manual juga. Untungnya ini hanya berlaku untuk beberapa paket, yang semuanya mudah dipasang jika / ketika Anda sadar Anda membutuhkannya.

Juga jika Anda menggunakan PPA atau repositori lain, pastikan Anda mengaturnya di mesin baru sebelum Anda menjalankan ini.


Cukup gunakan .manifest-desktop sebagai gantinya. Misalnya. gparted dan btrfs-tools bukan bagian dari instalasi default (hanya ada di CD). Jika Anda telah menginstal paket-paket itu secara manual, mereka tidak akan muncul di 'paket'.
htorque

Anda mungkin ingin menyambungkan kedua bagian melalui sortir, karena 'comm' mengeluh bahwa kedua file tidak diurutkan. IIUC ini harus memiliki 'masalah' yang sama dengan paket-paket dari instalasi default, yang secara manual ditandai sebagai 'diinstal secara manual' (saya kira itu akan menjadi kolom ke-3 dari 'comm'?).
htorque

Di mana .manifest-desktoptinggal? Saya akan mengedit untuk menambahkan penyortiran. Mereka terlihat beres sehingga saya tidak berpikir saya harus melakukannya tetapi sepertinya tidak. Tangkapan yang bagus. Dalam keadilan bagi saya, saya mengetik posting ini dari tempat tidur di ponsel saya menggunakan keyboard 15mm * 100mm kecil yang jahat. ;)
Oli

Itulah sisi buruknya - sepertinya tidak tersedia secara online seperti itu. File manifest. : - / Pada CD itu ada di folder 'casper'.
htorque

Saya sudah berburu dan tidak dapat menemukan versi terbaru. Saya pikir menggunakan versi lama sama merusak dan mengunduh ISO hanya untuk mengekstraknya adalah pemborosan energi. Saya pikir itu hanya menjadi peringatan dari proses ini. Anda mungkin harus secara manual menginstal beberapa paket yang Anda miliki sebelumnya tetapi ini akan melakukan sebagian besar dari mereka.
Oli

7

Saya sarankan menggunakan oneconf Instal oneconf

Terintegrasi dengan Pusat Perangkat Lunak dengan baik, dan melakukan apa yang Anda inginkan.


Apakah oneconf siap digunakan oleh pengguna biasa?
Decio Lira

Pengguna biasa mungkin dapat menggunakannya, tetapi belum akan menyukainya; perlu banyak cinta sebelum itu terjadi. Meskipun demikian itu bermanfaat.
Chipaca

6

Saya pikir orang lain telah menjawab bagian teknis dari pertanyaan Anda, saya ingin menjawab pertanyaan yang tersirat - "akan pindah ke Unity memperbaiki masalah ssh ini", dan jawabannya adalah saya khawatir saya ragu. Sesi shell jarak jauh umumnya tidak menggunakan Unity atau desktop. Jika Anda dapat ssh baik ke desktop Anda dari jaringan kabel, tetapi tidak dari jaringan ad-hoc, pembekuan mungkin terkait dengan driver nirkabel Anda dan bukan shell desktop.


Saya yang kedua - karena edisi netbook dan edisi desktop menggunakan hampir semua driver / paket yang sama, tidak mungkin menginstal ulang akan menyelesaikan apa pun. Lebih baik mendiagnosis masalah jaringan sebagai gantinya.
ImaginaryRobots

Mark, Ya, sepertinya itu masalah driver. Tetapi dalam kasus yang jarang terjadi itu terjadi saat di jaringan kabel juga. Saya harus mencoba mematikan kartu dan mencoba.
nixnotwin

1

Ada file yang disebut 'filesystem.manifest-desktop' di folder 'casper' pada CD (atau ekstrak dari file ISO). Ini berisi semua paket yang diinstal, minus yang diunduh selama instalasi (pembaruan, bahasa?).

Jadi sesuatu seperti ini akan memberi Anda daftar paket yang ditambahkan dan dihapus:

dpkg --get-selections | awk '{print $1}' > now.txt
awk '{print $1}' filesystem.manifest-desktop > then.txt
diff -u then.txt now.txt | grep '^+' | sed 's/^+//' | grep -v '^+' > add.txt
diff -u then.txt now.txt | grep '^-' | sed 's/^-//' | grep -v '^-' > rem.txt

Anda kemudian dapat menginstal melalui:

cat added.log | xargs sudo apt-get install

(Anda perlu memastikan bahwa semua paket itu tersedia, kalau tidak perintah itu akan gagal.)


1
Apakah ini akan membuat paket yang diinstal secara otomatis saat ini diinstal secara manual pada sistem baru?
Oli

Sepertinya 'add.txt' saya berisi paket yang sama dengan 'paket' Anda, jadi saya rasa tidak. Namun, yang gagal dilakukan adalah mengatur paket dari instalasi menjadi 'yang diinstal secara manual', jika Anda melakukannya pada sistem saat ini.
htorque

2
Saya telah mencuri metode instal ulang Anda, tetapi Anda harus mencatat bahwa xargs dapat memecah banyak hal menjadi beberapa perintah jika ada banyak argumen. Mengingat berapa banyak waktu yang mungkin ada antara mengunduh batch pertama dan kedua, sudo mungkin akan kedaluwarsa. Itu sebabnya saya membungkus milik saya di sudo bash -c "...".
Oli

Heh, sebenarnya saya pikir mode instal Anda lebih baik karena dselect akan secara eksplisit menampilkan paket yang tidak dapat diinstal (PPA tidak dikenal, 3rd party .debs), sehingga Anda dapat menghapus centangnya. Dengan apt itu semua atau tidak sama sekali.
htorque
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.