Ubuntu örneğini alarak, distro ile gelenlerden ziyade çekirdeğin özel olarak derlenmiş olup olmadığını söyleyebilir miyiz?
Ubuntu örneğini alarak, distro ile gelenlerden ziyade çekirdeğin özel olarak derlenmiş olup olmadığını söyleyebilir miyiz?
Yanıtlar:
Elbette, dpkg
bunu bilip bilmediğini kontrol et.
İlk önce çalıştırdığınız çekirdek sürümünü kontrol edin.
uname -a
Linux orwell 3.2.0-4-amd64 #1 SMP Debian 3.2.65-1+deb7u2 x86_64 GNU/Linux
Sonra veritabanındaki dpkg
çekirdek görüntü dosyasını aramasını söyleyin dpkg
.
dpkg -S /boot/vmlinuz-3.2.0-4-amd64
linux-image-3.2.0-4-amd64: /boot/vmlinuz-3.2.0-4-amd64
Ya da, daha iyi kullanmak dlocate
gelen dlocate
paketin. dlocate
önce dpkg
veritabanından bir önbellek oluşturur ve bunu kullanır. Bu yüzden hızlı.
dlocate /boot/vmlinuz-3.2.0-4-amd64
linux-image-3.2.0-4-amd64: /boot/vmlinuz-3.2.0-4-amd64
Son olarak, Debian arşivlerinin bu paketi içerdiğini kontrol edin.
apt-cache policy linux-image-3.2.0-4-amd64
linux-image-3.2.0-4-amd64:
Installed: 3.2.68-1+deb7u1
Candidate: 3.2.68-1+deb7u1
Version table:
*** 3.2.68-1+deb7u1 0
500 http://security.debian.org/ wheezy/updates/main amd64 Packages
100 /var/lib/dpkg/status
3.2.65-1 0
500 http://httpredir.debian.org/debian/ wheezy/main amd64 Packages
Eğer yapmazlarsa, o zaman özel bir pakettir. Tabii ki, dpkg görüntü dosyasını bilmiyorsa, çekirdeğiniz bir paketin parçası değildir, ancak yerel olarak derlenmiştir.
Not apt
olabilir Debian arşivinde bir paket ve aynı adı taşıyan bir derlediğim arasındaki farkı anlatmak. Bence paketin md5sum'unu kontrol ediyor, ama bunu nasıl yaptığının ayrıntılarını unutuyorum. İkili paketler karmalar hakkında bilgi içerir apt-cache show linux-image-3.2.0-4-amd64
, örneğin altına bakın . Örneğin
Package: linux-image-3.2.0-4-amd64
Source: linux
Version: 3.2.68-1+deb7u1
Installed-Size: 105729
[...]
Size: 23483788
MD5sum: f9736f30f8b68ae79b2747d8a710ce28
SHA1: 64bfde903892801dccd04b52b12316901a02cd96
SHA256: 775814b3eff4a964b593c0bdeaac20587a4e3ddb1257a9d2bfcf1e9d3b9bfd15
apt-cache show ...
çalışır. Görüyorum ki yanlış yazdım. Şimdi düzeltiliyor.
En azından, uname -r
çekirdek sürümünü verecek gibi 3.18.6
. Bununla birlikte, çekirdek derlendiğinde, içinde ek bir dize yapılandırılabilir ve ona eklenebilir ve dağıtımlar genellikle bunu kendi yama seviyelerini (tiredan sonra) ve tadı belirtmek için yapar 3.18.6-32-generic
. Bu bir ipucu; özel bir çekirdek oluşturduğunuzda kendi dizginizi kullanmak başka bir şey olabilir.
uname -v
varsayılan olarak bunun gibi bir dize verir
#4 SMP PREEMPT Mon Mar 9 13:55:25 EDT 2015
Sayı, bu çekirdeğin, ağaç sıfırlanmadan belirli bir kaynak ağaç kullanılarak kaç kez oluşturulduğu anlamındadır - bu, kendinizinkini oluştururken yararlı olabilir. SMP
çok görevli (yani gerçek zamanlı olmayan) bir çekirdeği belirtir ve PREEMPT, zamanlayıcının "önleme modeli" ile ilgili başka bir yapılandırma seçeneğidir. Ama buradaki büyük ipucu muhtemelen inşa edildiği zamandır. Bu, örneğin, ile değiştirilebileceğini akılda tutarak, çekirdeğin kendisindeki değişiklik / değişiklik zaman damgasına karşı eşleştirmek için kullanılabilir touch
. Örneğin, stat
bu çekirdekte şöyle görünür:
File: ‘3.19-goldilocksSpecial’
Size: 6858880 Blocks: 13400 IO Block: 4096 regular file
Device: 801h/2049d Inode: 3156605 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2015-02-15 15:32:29.000000000 -0500
Modify: 2015-03-03 13:55:21.000000000 -0500
Change: 2015-03-03 14:02:26.767045553 -0500
Birth: -
Hangi hemen hemen doğrultusunda Mon Mar 9 13:55:25 EDT 2015
.
Diğerleriyle aynı
sudo apt-cache policy linux-generic
paket yöneticisi aracılığıyla yüklenmiş sürüm ve
uname -r
sürümleri karşılaştır
benim için
linux-generic:
Installed: 3.19.0.15.14
Candidate: 3.19.0.15.14
ve
3.19.0-15-generic
aynı sürümü gösterir
/boot
. Demek istediğim, uname
bazı seçenekleri değiştirirken yeniden derlerseniz , çıktının neden değişmesini beklediğinizi görmüyorum . Bu durumda, bunu beklediğiniz apt-cache
ve uname -r
yerel olarak yeniden derlenmesi ettik olmasına rağmen, aynı bilgileri döndürür.
En genel doğru cevabın "hayır, yapamazsın" olduğunu söyleyebilirim. Bazı durumlarda yardımcı olabilecek çeşitli yöntemler vardır ve bunlar zaten önerilmiştir, ancak bunların hepsi bu durumun gerçekte nasıl ortaya çıktığını kaçırmaktadır. Gerçekte, özel bir çekirdek kullanıyorsanız, bu çekirdek varlığını gizlemek veya farklı bir çekirdek gibi görünmek de dahil olmak üzere her şeyi yapabilir.
Gerçekten özel bir çekirdek çalıştırıyorsanız ve bunu bilmiyorsanız endişelenirim. Hangi çekirdeğin kullanıldığını bilmenin tek güvenilir yolu, hangi çekirdeği derlediğiniz ve yüklediğinizi dikkatlice takip etmektir.
Sistemin hangi çekirdeğin çalıştığından veya bu çekirdeğin hangi kaynaklardan veya nereden geldiğinden gerçekten emin değilseniz, işletim sistemini bilinen iyi bir görüntüden yeniden yüklemeyi ve gelecekte hangi denemeler ve önyükleme yaptığınız konusunda daha dikkatli olmayı düşünürüm kullanın.