SysRq ve NMI çağrıları için Azure Seri Konsolu'nu kullanma
Sistem İsteği (SysRq)
SysRq, Önceden tanımlanmış bir dizi eylemi tetikleyebilen Linux işlem sistemi çekirdeği tarafından anlaşılan bir anahtar dizisidir. Bu komutlar genellikle sanal makine sorunlarını giderme veya kurtarma işlemi geleneksel yönetim aracılığıyla gerçekleştirilemediğinde (örneğin, VM yanıt vermiyorsa) kullanılır. Azure Seri Konsolu'nun SysRq özelliğinin kullanılması, SysRq tuşuna ve fiziksel klavyeye girilen karakterlere basılmış gibi görünür.
SysRq dizisi teslim edildikten sonra çekirdek yapılandırması sistemin nasıl yanıt vereceğini denetler. SysRq'yi etkinleştirme ve devre dışı bırakma hakkında bilgi için bkz. SysRq Yönetici Kılavuzumetin | markdown.
Azure Seri Konsolu, aşağıda gösterilen komut çubuğundaki klavye simgesini kullanarak Bir Azure sanal makinesine SysRq göndermek için kullanılabilir.
"SysRq Komutu Gönder" seçeneğinin seçilmesi, yaygın SysRq seçenekleri sağlayan veya iletişim kutusuna girilen bir dizi SysRq komutunu kabul eden bir iletişim kutusu açar. Bu, SysRq'ler serisinin şunu kullanarak güvenli bir yeniden başlatma gibi üst düzey bir işlem gerçekleştirmesine olanak tanır: REISUB
.
SysRq komutu durdurulan veya çekirdeği yanıt vermeyen bir durumda olan sanal makinelerde kullanılamaz. (örneğin çekirdek paniği).
SysRq'yi etkinleştirme
Yukarıdaki SysRq Yönetici Kılavuzu'nda açıklandığı gibi, SysRq tümü, hiçbiri veya yalnızca belirli komutlar kullanılabilir olacak şekilde yapılandırılabilir. Aşağıdaki adımı kullanarak tüm SysRq komutlarını etkinleştirebilirsiniz ancak yeniden başlatma işlemi devam edecektir:
echo "1" >/proc/sys/kernel/sysrq
SysReq yapılandırmasını kalıcı hale getirmek için, tüm SysRq komutlarını etkinleştirmek için aşağıdakileri yapabilirsiniz
- Bu satırı /etc/sysctl.conf dosyasına ekleme
kernel.sysrq = 1
- Sysctl'i çalıştırarak yeniden başlatma veya güncelleştirme
sysctl -p
Komut Tuşları
Yukarıdaki SysRq Yönetici Kılavuzu'ndan:
Komut | İşlev |
---|---|
b |
Disklerinizi eşitlemeden veya çıkarmadan sistemi hemen yeniden başlatır. |
c |
NULL işaretçi başvurusu kaldırma işlemiyle sistem kilitlenmesi gerçekleştirir. Yapılandırılırsa bir kilitlenmedump alınır. |
d |
Tutulan tüm kilitleri gösterir. |
e |
Init dışında tüm işlemlere bir SIGTERM gönderin. |
f |
Hafıza hog işlemini öldürmek için oom katilini çağıracak, ama hiçbir şey öldürülemezse panikleme. |
g |
kgdb (çekirdek hata ayıklayıcısı) tarafından kullanılır |
h |
Yardımı görüntüler (burada listelenenlerden başka herhangi bir anahtar da yardım görüntüler, ancak h anımsamak kolaydır:-) |
i |
Init dışında tüm işlemlere bir SIGKILL gönderin. |
j |
Zorla "Sadece çöz" - FIFREEZE ioctl tarafından dondurulan dosya sistemleri. |
k |
Güvenli Erişim Anahtarı (SAK) Geçerli sanal konsoldaki tüm programları öldürür. NOT: SAK bölümünde aşağıdaki önemli yorumlara bakın. |
l |
Tüm etkin CPU'lar için bir yığın geri izlemesi gösterir. |
m |
Geçerli bellek bilgilerini konsolunuza dökümünü alır. |
n |
RT görevlerini iyi kullanılabilir hale getirmek için kullanılır |
o |
Sisteminizi kapatır (yapılandırıldıysa ve destekleniyorsa). |
p |
Geçerli yazmaçları ve bayrakları konsolunuza dökümünü alır. |
q |
Tüm silahlı hrtimer'ların (ancak normal timer_list zamanlayıcıların DEĞIL) CPU listeleri başına dökümünü ve tüm clockevent cihazları hakkında ayrıntılı bilgileri döküm eder. |
r |
Klavye ham modunu kapatır ve XLATE olarak ayarlar. |
s |
Tüm bağlı dosya sistemlerini eşitlemeyi dener. |
t |
Geçerli görevlerin listesini ve bunların bilgilerini konsolunuza döküm eder. |
u |
Tüm bağlı dosya sistemlerini salt okunur olarak yeniden bağlamayı dener. |
v |
Framebuffer konsolunu zorla geri yükler |
v |
ETM arabellek dökümü neden oluyor [ARM'ye özgü] |
w |
Kesintisiz (engellenmiş) durumdaki görevlerin dökümünü alır. |
x |
ppc/powerpc platformlarında xmon arabirimi tarafından kullanılır. sparc64'te genel PMU Yazmaçlarını göster. TÜM TLB girişlerini MIPS'de dökümünü alır. |
y |
Genel CPU Yazmaçlarını gösterme [SPARC-64'e özgü] |
z |
Ftrace arabelleğinin dökümünü alma |
0 -9 |
Konsolunuza hangi çekirdek iletilerinin yazdırılacağını denetleyen konsol günlüğü düzeyini ayarlar. (0 örneğin, bunu yalnızca PANC'ler veya OOPS'ler gibi acil durum iletilerinin konsolunuza yapabilmesi için yapar.) |
Dağıtıma özgü belgeler
SysRq ile ilgili dağıtıma özgü belgeler ve Linux'ı SysRq "Crash" komutu aldığında kilitlenme dökümü oluşturacak şekilde yapılandırma adımları için aşağıdaki bağlantılara bakın:
Ubuntu
Red Hat
- SysRq Tesisi nedir ve bunu nasıl kullanabilirim?
- Bir RHEL sunucusundan bilgi toplamak için SysRq tesisini kullanma
SUSE
CoreOS
Maskelenemeyen Kesme (NMI)
Maskelenemeyen bir kesme (NMI), sanal makinedeki yazılımların yoksayılmayacağı bir sinyal oluşturmak için tasarlanmıştır. Geçmişte NMI'ler belirli yanıt süreleri gerektiren sistemlerde donanım sorunlarını izlemek için kullanılmıştır. Günümüzde programcılar ve sistem yöneticileri genellikle yanıt vermeyen sistemlerde hata ayıklama veya sorun giderme mekanizması olarak NMI kullanır.
Seri Konsol, aşağıda gösterilen komut çubuğundaki klavye simgesini kullanarak Bir Azure sanal makinesine NMI göndermek için kullanılabilir. NMI teslim edildikten sonra, sanal makine yapılandırması sistemin nasıl yanıt vereceğini denetler. Linux işletim sistemleri kilitlenmek ve işletim sisteminin NMI aldığı bir bellek dökümü oluşturmak için yapılandırılabilir.
NMI'yi etkinleştirme
Çekirdek parametrelerini yapılandırmak için sysctl destekleyen Linux sistemleri için, aşağıdakileri kullanarak bu NMI'yi alırken paniğe neden olabilirsiniz:
- Bu satırı /etc/sysctl.conf dosyasına ekleme
kernel.panic_on_unrecovered_nmi=1
- Sysctl'i çalıştırarak yeniden başlatma veya güncelleştirme
sysctl -p
, ve gibi Linux çekirdek yapılandırmaları hakkında daha fazla bilgi için bkz. /proc/sys/kernel/*belgeleri.unknown_nmi_panic
panic_on_unrecovered_nmi
panic_on_io_nmi
NMI ile ilgili dağıtıma özgü belgeler ve Linux'ı NMI aldığında kilitlenme dökümü oluşturacak şekilde yapılandırma adımları için aşağıdaki bağlantılara bakın:
Ubuntu
Red Hat
- NMI nedir ve ne için kullanabilirim?
- NMI anahtarı gönderildiğinde sistemimi kilitlenmesi için nasıl yapılandırabilirim?
- Kilitlenme Dökümü Yönetici Kılavuzu
SUSE
CoreOS
Sonraki adımlar
- Ana Seri Konsol Linux belgeleri sayfası burada bulunur.
- Seri Konsolu kullanarak GRUB'da önyükleme ve tek kullanıcı moduna girme
- Seri Konsol, Windows VM'leri için de kullanılabilir
- Önyükleme tanılaması hakkında daha fazla bilgi edinin
Yardım için bize ulaşın
Sorularınız veya yardıma ihtiyacınız varsa bir destek isteği oluşturun veya Azure topluluk desteği isteyin. Ürün geri bildirimini Azure geri bildirim topluluğuna da gönderebilirsiniz.
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin