Versi Linux Kernel: Debian Sid vs Ubuntu Precise

9

Saya sudah menyiapkan dua mesin:

Di satu mesin saya telah menginstal Ubuntu Precise 12.04 beta dan dist-upgrade ke paket terbaru.

Di komputer lain saya telah menginstal Debian Sid Tidak Stabil dan dist-upgrade ke paket terbaru.

Pada mesin Ubuntu uname -a berbunyi:

Linux 3.2.0-20-generic # 32-Ubuntu SMP Kamis 22 Maret 02:22:46 UTC 2012 x86_64 x86_64 x86_64 GNU / Linux

Pada mesin Debian uname -a berbunyi:

Linux 3.2.0-2-amd64 # 1 SMP Rab 28 Mar 13:28:04 UTC 2012 x86_64 GNU / Linux

Pertanyaan saya adalah tentang versi kernel:

Ubuntu: 3.2.0-20-generic
Debian: 3.2.0-2-amd64

Versi 3.2 Linux dirilis pada:

linux-3.2.tar.gz         05-Jan-2012 00:40   94M

Sejak itu telah ada 13 rilis poin, 3.2.1 .. 3.2.13 dari kernel.org, dan 3.3 dirilis.

Pertanyaan saya adalah tentang sejarah pohon sumber dari dua kernel di dua mesin saya:

Dari rilis mana kernel resmi.org yang merupakan dua versi dari kernel tersebut?

Apa hubungan sumber kernel Debian Sid dengan Ubuntu Precise?

Apakah perubahan yang dilakukan dari sumber kernel.org untuk menghasilkan 3.2.0-2-amd64 juga hadir dalam 3.2.0-20-generik di Ubuntu?

Apakah kernel Debian Sid "upstream" dari Ubuntu?

Apa arti nomor versi keempat (setelah tanda hubung pertama) "2" dalam kasus Debian dan "20" dalam kasus Ubuntu - dan bagaimana hubungannya dengan yang di atas?

Andrew Tomazos
sumber

Jawaban:

5

Kernel Ubuntu tidak sama dengan kernel hulu, meskipun nomor versi mungkin serupa. Anda dapat membaca tentang Kernel Ubuntu di Wiki Ubuntu yang menjawab pertanyaan pertama dan keempat Anda:

Beta-2 termasuk kernel Ubuntu 3.2.0-20.33 yang didasarkan pada kernel Linux stabil upstream v3.2.12.

FAQ Kernel Ubuntu menjelaskan penomoran versi sebagai berikut:

Mengingat versi seperti 2.6.35-6.9-genericini dapat dipecah menjadi empat bagian seperti di bawah ini:

<base kernel version>-<ABI number>.<upload number>-<flavour> Versi kernel dasar mewakili versi arus utama yang menjadi dasar kernel Ubuntu. Nomor ABI menunjukkan perubahan signifikan dalam Antarmuka Biner Aplikasi kernel. Nomor unggahan adalah penghitung yang meningkat secara monoton untuk setiap unggahan versi dasar ini. Rasanya menunjukkan varian konfigurasi kernel mana ini

Anda juga dapat memeriksa pemetaan versi kernel Ubuntu untuk arus utama untuk informasi lebih lanjut tentang versi kernel ubuntu vs versi kernel upstream.

pkhamre
sumber
Kecuali saya salah paham, pertanyaannya adalah Is the Debian Sid kernel "upstream" of the Ubuntu one?( Ya ) dan From which release of official kernel.org kernel are those two versions of the kernel derived?( 3.2.0 ) - bukan rilis kernel.org mana yang paling mirip dengan rilis ubuntu, atau patch mana dari rilis kernel.org yang saya percaya hanya berfungsi untuk mempersulit masalah.
syserr0r
2

Pertanyaan Anda

From which release of official kernel.org kernel are those two versions of the kernel derived?
Kernel versi 3.2.0 .

What is the relationship of the sources of the Debian Sid kernel to the Ubuntu Precise one?
Keduanya adalah versi Debian (tidak ada perubahan Ubuntu), paket Debian (3.2.0-2) revisi 2 , paket Ubuntu (3.2.0-20) revisi 20 .

Are the changes made from the kernel.org sources to produce 3.2.0-2-amd64 also present in 3.2.0-20-generic on Ubuntu?
Saya tidak yakin karena mereka (afaik) paket yang berbeda ( generik vs amd64 spesifik ).

Is the Debian Sid kernel "upstream" of the Ubuntu one?
Ya . Debian adalah hulu dari Ubuntu. Perubahan yang dilakukan oleh Ubuntu (ditandai dengan revisi berakhir -ubuntuXdi mana Xadalah revisi) biasanya bergabung kembali ke Debian

Angka Revisi

tl; dr version : Angka setelah hypen adalah nomor revisi yang diberikan oleh pengelola paket setelah build / patch baru.

-

Untuk Debian, nomor setelah tanda hubung adalah Debian Revision Number[ sumber ]
Untuk Ubuntu, nomor setelah tanda hubung adalah Debian Revision Numberdan nomor setelah -ubuntu(jika ada) adalah Ubuntu Revision Number[ sumber-2 ]

Umumnya angka setelah tanda hubung adalah revisi yang diberikan oleh pengelola paket .

Paket dari pengelola paket sering memiliki tambalan dari berbagai jenis yang diterapkan padanya (seperti untuk memperbaiki ketidakcocokan; perbaikan keamanan; perbaikan kecil; bendera build berbeda dll); Inilah sebabnya mengapa dalam contoh Anda kernel versi 3.2.0 memiliki beberapa revisi.

Hanya karena satu lebih tinggi daripada yang lain tidak berarti itu lebih baru, lebih baik atau memiliki semua tambalan yang sama diterapkan. Ini karena mereka mungkin pengelola paket yang berbeda yang menjaga paket pada setiap distro dan mereka mungkin (misalnya) menambal lebih jarang (artinya angka revisi yang lebih rendah) tetapi masih menggabungkan [beberapa atau] semua tambalan yang sama .

Catatan : Ubuntu didasarkan dari Debian sehingga lebih sering daripada tidak Ubuntu memiliki semua tambalan dari Debian (dan sering dari rilis debian yang lebih baru seperti pengujian)

Hubungan Paket

Sepotong perangkat lunak dibuat (misalnya kernel). Ini memiliki versi ( 3.2.0 ). Seorang pengelola paket ( Dave ) untuk sebuah distro ( Debian ). Dia mengambil perangkat lunak dan mengemasnya dalam format (.deb) sesuai dengan pedoman distro. Ini adalah versi 3.2.0-1 dari kernel , alias kernel-3.2.0-1 .

Dave belum cukup mengikuti pedoman untuk distro yang ia kemas untuk ( Debian ) sehingga harus membuat beberapa perubahan pada paket. Dia melakukan ini dan menyerahkan versinya yang diperbarui. Ini adalah versi 3.2.0-2 dari kernel, alias kernel-3.2.0-2 .

Sementara kernel 3.2.1 , 3.2.2 hingga 3.2.25 telah dirilis. Paket yang sedang dikerjakan Dave masih berbasis 3.2.0 . Dia akan segera merilis 3.2.25 tapi belum.

Pada saat yang sama, pengelola paket lain ( Harry ) membutuhkan paket yang sama untuk distro-nya ( Ubuntu ). Karena Debian dan Ubuntu serupa; bukannya melakukan semuanya dari awal, dia hanya membutuhkan salinan Dave 's kernel 3.2.0-2 dan menyerahkan. Harry merilis ini ke Ubuntu sebagai 3.2.0-2 .

Harry kemudian ingin membuat beberapa perubahan pada pekerjaan Dave. Dia membuat perubahan dan merilis paketnya yang diperbarui. Ini adalah versi 3.2.0-2-ubuntu1

Dalam contoh ini:
Versi terbaru kerneladalah 3.2.25
Versi terbaru dari kernelpaket untuk Debian adalah 3.2.0-2
Versi terbaru dari kernelpaket untuk Ubuntu adalah 3.2.0-2-ubuntu1

syserr0r
sumber
Informasi Anda salah. Versi kernel ubuntu tidak selalu sama dengan kernel upstream dari kernel.org. Kernel ubuntu 3.2.0-20.33 didasarkan pada kernel Linux 3.2.12 hulu.
pkhamre
Ini adalah versi kernel yang menjadi dasar paket. Dari wiki Ubuntu itu sendiri. Perubahan dari kernel linux garis utama sering ditarik sebagai tambalan oleh pengelola paket tetapi itu bukan pertanyaan.
syserr0r
Situasinya agak berlumpur. Menurut FAQ Kernel Ubuntu ( wiki.ubuntu.com/Kernel/... ) orang dapat menyimpulkan versi kernel dasar dari versi Ubuntu. Namun, pada kenyataannya, seseorang harus memeriksa / proc / version_signature atau berkonsultasi daftar di kernel.ubuntu.com/~kernel-ppa/info/kernel-version-map.html . Untuk perubahan spesifik, lihat file /usr/share/doc/linux-image-*/changelog.Debian.gz dan bandingkan dengan wiki.ubuntu.com/Kernel/FAQ/UbuntuDelta atau ambil pohon git Ubuntu.
Mikko Rantalainen