บริษัทที่ฉันทำงานมีเครื่องเซิร์ฟเวอร์ Ubuntu 18.04 ประมาณ 100 เครื่องกระจายอยู่ทั่วสหรัฐอเมริกา โดยเป็นส่วนหนึ่งของสายผลิตภัณฑ์ของเรา เราไม่ได้มีปัญหาใดๆ กับเครื่องเหล่านี้เป็นเวลา 1-2 ปี จนกระทั่งเมื่อสัปดาห์ที่แล้ว ในช่วง 5 วันที่ผ่านมา หกยูนิตมีข้อผิดพลาดร้ายแรงซึ่งส่งผลให้ระบบไฟล์เป็นแบบอ่านอย่างเดียวในท้ายที่สุด
ในที่สุดฉันก็สามารถเข้าถึงอุปกรณ์เครื่องใดเครื่องหนึ่งได้
ฉันพบสิ่งต่อไปนี้ใน DMESG: EXT4-fs (dm-0): ไม่สามารถต่อเชื่อม RDWR ใหม่ได้เนื่องจากรายการ inode ที่ไม่ได้ใช้งานยังไม่ได้ประมวลผล กรุณาถอดถอน/ต่อเชื่อมใหม่แทน
และการรัน fsck.ext4 -n /dev/sda2 (ซึ่งเป็นพาร์ติชันรูท) จะให้ค่าไอโหนดที่ไม่ได้ใช้งานหลายตัว
ฉันแน่ใจว่า fsck สามารถแก้ไขได้ แต่ฉันสนใจมากกว่าว่าอะไรเป็นสาเหตุของสิ่งนี้ตั้งแต่แรก
ฉันพบข้อผิดพลาดของเคอร์เนลใน syslog ด้วย:
27 ก.ค. 12:35:09 xxxxxxx เคอร์เนล: [ 5505.937302] BUG: ไม่สามารถจัดการคำขอเพจจิ้งเคอร์เนลที่ ffff93cdf5ef2eaa
27 ก.ค. 12:35:09 xxxxxxx เคอร์เนล: [ 5505.937348] IP: kmem_cache_alloc+0x7a/0x1c0
27 กรกฎาคม 12:35:09 xxxxxxx เคอร์เนล: [ 5505.937360] PGD 87d99067 P4D 87d99067 PUD 0
27 ก.ค. 12:35:09 xxxxxxx เคอร์เนล: [ 5505.937383] อ๊ะ: 0000 [#3] SMP PTI
Jul 27 12:35:09 xxxxxxx kernel: [ 5505.937395] Modules linked in: ccm intel_rapl intel_soc_dts_thermal intel_soc_dts_iosf intel_powerclamp coretemp kvm_intel arc4 kvm irqbypass snd_hda_codec_hdmi punit_atom_debug joydev iwlmvm snd_hda_codec_realtek intel_cstate snd_hda_codec_generic mac80211 snd_hda_intel iwlwifi snd_hda_codec snd_hda_core snd_hwdep hid_multitouch input_leds cfg80211 snd_pcm ftdi_sio lpc_ich serio_raw snd_timer usbserial btusb cdc_acm btrtl snd mei_txe shpchp mei soundcore hci_uart btbcm btqca btintel rfkill_gpio bluetooth ecdh_generic pwm_lpss_platform pwm_lpss mac_hid sch_fq_codel ib_iser rdma_cm iw_cm ib_cm ib_core iscsi_tcp libiscsi_tcp libiscsi scsi_transport_iscsi ip_tables x_tables autofs4 btrfs zstd_compress raid10 raid456 async_raid6_recov async_memcpy async_pq async_xor async_tx xor raid6_pq libcrc32c raid1
Jul 27 12:35:09 xxxxxxx kernel: [ 5505.937571] raid0 multipath linear hid_generic usbhid i915 crct10dif_pclmul crc32_pclmul drm_kms_helper ghash_clmulni_intel cryptd syscopyarea sysfillrect igb sysimgblt psmouse fb_sys_fops dca i2c_algo_bit drm ptp pps_core ahci libahci video i2c_hid hid
27 ก.ค. 12:35:09 xxxxxxx เคอร์เนล: [ 5505.937646] CPU: 0 PID: 1212 Comm: uwsgi เสีย: G D 4.15.0-151-generic # 157-Ubuntu
27 กรกฎาคม 12:35:09 xxxxxxx เคอร์เนล: [ 5505.937657] ชื่อฮาร์ดแวร์: Winmate Inc. IB3S/IB32S, BIOS V210 05/06/2019
27 กรกฎาคม 12:35:09 xxxxxxx เคอร์เนล: [ 5505.937676] RIP: 0010:kmem_cache_alloc+0x7a/0x1c0
27 กรกฎาคม 12:35:09 xxxxxxx เคอร์เนล: [ 5505.937689] RSP: 0018:ffffb7b6c1207d58 EFLAGS: 00010286
27 กรกฎาคม 12:35:09 xxxxxxx เคอร์เนล: [ 5505.937703] RAX: ffff93cdf5ef2eaa RBX: 0000000000000000 RCX: 0000000000000000
27 กรกฎาคม 12:35:09 xxxxxxx เคอร์เนล: [ 5505.937715] RDX: 0000000000009791 RSI: 00000000014080c0 RDI: 0000440bc0024800
27 ก.ค. 12:35:09 xxxxxxx เคอร์เนล: [ 5505.937727] RBP: ffffb7b6c1207d88 R08: ffffd7b6bfc24800 R09: ffff93aaf1400c00
27 กรกฎาคม 12:35:09 xxxxxxx เคอร์เนล: [ 5505.937738] R10: 0000000000000010 R11: 0000000000026d00 R12: ffff93cdf5ef2eaa
27 กรกฎาคม 12:35:09 xxxxxxx เคอร์เนล: [ 5505.937750] R13: 00000000014080c0 R14: ffff93aafb017800 R15: ffff93aaf1405e00
27 ก.ค. 12:35:09 xxxxxxx เคอร์เนล: [ 5505.937765] FS: 00007fe86c207740(0000) GS:ffff93aaffc00000(0000) knlGS:0000000000000000
27 กรกฎาคม 12:35:09 xxxxxxx เคอร์เนล: [ 5505.937778] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
27 กรกฎาคม 12:35:09 xxxxxxx เคอร์เนล: [ 5505.937789] CR2: ffff93cdf5ef2eaa CR3: 00000001314ce000 CR4: 00000000001006f0
27 กรกฎาคม 12:35:09 xxxxxxx เคอร์เนล: [ 5505.937800] การติดตามการโทร:
27 กรกฎาคม 12:35:09 xxxxxxx เคอร์เนล: [ 5505.937824] ? __delayact_tsk_init+0x1e/0x40
27 ก.ค. 12:35:09 xxxxxxx เคอร์เนล: [ 5505.937844] __delayact_tsk_init+0x1e/0x40
27 กรกฎาคม 12:35:09 xxxxxxx เคอร์เนล: [ 5505.937868] copy_process.part.35+0x6d3/0x1c00
27 ก.ค. 12:35:09 xxxxxxx เคอร์เนล: [ 5505.937887] ? __handle_mm_fault+0xa21/0xff0
27 กรกฎาคม 12:35:09 xxxxxxx เคอร์เนล: [ 5505.937911] _do_fork+0xdf/0x400
27 ก.ค. 12:35:09 xxxxxxx เคอร์เนล: [ 5505.937931] ? __do_page_fault+0x2a1/0x4b0
27 กรกฎาคม 12:35:09 xxxxxxx เคอร์เนล: [ 5505.937951] ? get_unused_fd_flags+0x30/0x40
27 ก.ค. 12:35:09 xxxxxxx เคอร์เนล: [ 5505.937971] SyS_clone+0x19/0x20
27 กรกฎาคม 12:35:09 xxxxxxx เคอร์เนล: [ 5505.937990] do_syscall_64+0x73/0x130
27 กรกฎาคม 12:35:09 xxxxxxx เคอร์เนล: [ 5505.938009] entry_SYSCALL_64_after_hwframe+0x41/0xa6
27 กรกฎาคม 12:35:09 xxxxxxx เคอร์เนล: [ 5505.938025] RIP: 0033:0x7fe86a002b7c
27 ก.ค. 12:35:09 xxxxxxx เคอร์เนล: [ 5505.938036] RSP: 002b:00007fff26bfcc60 EFLAGS: 00000246 ORIG_RAX: 0000000000000038
27 ก.ค. 12:35:09 น. xxxxxxx เคอร์เนล: [ 5505.938052] RAX: ffffffffffffffda RBX: 00007fff26bfcc60 RCX: 00007fe86a002b7c
27 กรกฎาคม 12:35:09 xxxxxxx เคอร์เนล: [ 5505.938063] RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000001200011
27 กรกฎาคม 12:35:09 xxxxxxx เคอร์เนล: [ 5505.938075] RBP: 00007fff26bfccd0 R08: 00007fe86c207740 R09: 00007fe86a5cab40
27 กรกฎาคม 12:35:09 xxxxxxx เคอร์เนล: [ 5505.938086] R10: 00007fe86c207a10 R11: 0000000000000246 R12: 0000000000000000
27 กรกฎาคม 12:35:09 xxxxxxx เคอร์เนล: [ 5505.938098] R13: 0000000000000020 R14: 0000000000000000 R15: 0000000001abacf8
27 ก.ค. 12:35:09 xxxxxxx เคอร์เนล: [ 5505.938113] รหัส: 50 08 65 4c 03 05 0f d5 1b 4d 49 83 78 10 00 4d 8b 20 0f 84 09 01 00 00 4d 85 e4 0f 84 00 6 00 6 00 47 20 49 8b 3f 4c 01 e0 <48> 8b 18 49 33 9f 40 01 00 00 48 89 c1 48 0f c9 4c 89 e0 48 31
27 กรกฎาคม 12:35:09 xxxxxxx เคอร์เนล: [ 5505.938259] RIP: kmem_cache_alloc+0x7a/0x1c0 RSP: ffffb7b6c1207d58
27 กรกฎาคม 12:35:09 xxxxxxx เคอร์เนล: [ 5505.938269] CR2: ffff93cdf5ef2eaa
27 ก.ค. 12:35:09 xxxxxxx เคอร์เนล: [ 5505.938284] ---[ สิ้นสุดการติดตาม 5841e09627f12869 ]---
26 ก.ค. 19:46:35 xxxxxxx เคอร์เนล: [167923.077278] BUG: ไม่สามารถจัดการคำขอเพจจิ้งเคอร์เนลที่ ffff994c94603766
26 ก.ค. 19:46:35 xxxxxxx kernel : [167923.077295] IP : down_write+0x1f/0x40
26 ก.ค. 19:46:35 xxxxxxx เคอร์เนล: [167923.077298] PGD a0599067 P4D a0599067 PUD 0
26 ก.ค. 19:46:35 xxxxxxx เคอร์เนล: [167923.077304] อ๊ะ: 0002 [#2] SMP PTI
Jul 26 19:46:35 xxxxxxx kernel: [167923.077308] Modules linked in: ccm arc4 snd_hda_codec_hdmi iwlmvm snd_hda_codec_realtek snd_hda_codec_generic mac80211 intel_rapl intel_soc_dts_thermal intel_soc_dts_iosf intel_powerclamp coretemp kvm_intel joydev kvm irqbypass punit_atom_debug intel_cstate iwlwifi snd_hda_intel snd_hda_codec ftdi_sio serio_raw hid_multitouch snd_hda_core lpc_ich cfg80211 input_leds mei_txe snd_hwdep snd_pcm usbserial btusb btrtl mei snd_timer snd cdc_acm soundcore shpchp hci_uart btbcm btqca btintel bluetooth rfkill_gpio pwm_lpss_platform pwm_lpss ecdh_generic mac_hid sch_fq_codel ib_iser rdma_cm iw_cm ib_cm ib_core iscsi_tcp libiscsi_tcp libiscsi scsi_transport_iscsi ip_tables x_tables autofs4 btrfs zstd_compress raid10 raid456 async_raid6_recov async_memcpy async_pq async_xor async_tx xor raid6_pq libcrc32c raid1
Jul 26 19:46:35 xxxxxxx kernel: [167923.077360] raid0 multipath linear hid_generic usbhid i915 igb drm_kms_helper dca ahci i2c_algo_bit crct10dif_pclmul syscopyarea crc32_pclmul sysfillrect sysimgblt ghash_clmulni_intel ptp cryptd fb_sys_fops psmouse pps_core libahci drm i2c_hid video hid
26 ก.ค. 19:46:35 xxxxxxx เคอร์เนล: [167923.077381] CPU: 2 PID: 22792 Comm: uwsgi เสีย: G BDW 4.15.0-151-generic # 157-Ubuntu
26 กรกฎาคม 19:46:35 xxxxxxx เคอร์เนล: [167923.077384] ชื่อฮาร์ดแวร์: Winmate Inc. IB3S/IB32S, BIOS V210 05/06/2019
26 ก.ค. 19:46:35 xxxxxxx เคอร์เนล: [167923.077389] RIP: 0010:down_write+0x1f/0x40
26 ก.ค. 19:46:35 xxxxxxx เคอร์เนล: [167923.077392] RSP: 0018:ffffb4e7018cfd10 EFLAGS: 00010246
26 ก.ค. 19:46:35 xxxxxxx เคอร์เนล: [167923.077396] RAX: ffff994c94603766 RBX: ffff994c94603766 RCX: 0000000000027f57
26 ก.ค. 19:46:35 xxxxxxx เคอร์เนล: [167923.077398] RDX: ffffffff00000001 RSI: 0000000001000200 RDI: ffff994c94603766
26 ก.ค. 19:46:35 xxxxxxx เคอร์เนล: [167923.077401] RBP: ffffb4e7018cfd18 R08: ffffd4e6ffd292c0 R09: ffff996d60d7e4e0
26 ก.ค. 19:46:35 xxxxxxx เคอร์เนล: [167923.077404] R10: 00007f220ffec000 R11: ffff996d70adde00 R12: ffff994c9460375e
26 ก.ค. 19:46:35 xxxxxxx เคอร์เนล: [167923.077407] R13: ffff996d54325ec0 R14: ffff994c9460375e R15: ffff996df104f000
26 ก.ค. 19:46:35 xxxxxxx เคอร์เนล: [167923.077410] FS: 00007f221338d740(0000) GS:ffff996dffd00000(0000) knlGS:0000000000000000
26 ก.ค. 19:46:35 xxxxxxx เคอร์เนล: [167923.077413] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
26 ก.ค. 19:46:35 xxxxxxx เคอร์เนล: [167923.077416] CR2: ffff994c94603766 CR3: 00000000943ba000 CR4: 00000000001006e0
26 กรกฎาคม 19:46:35 xxxxxxx เคอร์เนล: [167923.077419] การติดตามการโทร:
26 กรกฎาคม 19:46:35 เคอร์เนล xxxxxxx: [167923.077428] anon_vma_clone+0x8f/0x1c0
26 ก.ค. 19:46:35 xxxxxxx เคอร์เนล: [167923.077433] anon_vma_fork+0x32/0x130
26 ก.ค. 19:46:35 xxxxxxx เคอร์เนล: [167923.077440] copy_process.part.35+0xfe1/0x1c00
26 ก.ค. 19:46:35 xxxxxxx เคอร์เนล: [167923.077446] _do_fork+0xdf/0x400
26 ก.ค. 19:46:35 xxxxxxx เคอร์เนล: [167923.077454] ? __do_page_fault+0x2a1/0x4b0
26 ก.ค. 19:46:35 xxxxxxx เคอร์เนล: [167923.077460] ? get_unused_fd_flags+0x30/0x40
26 ก.ค. 19:46:35 xxxxxxx เคอร์เนล: [167923.077465] SyS_clone+0x19/0x20
26 ก.ค. 19:46:35 xxxxxxx เคอร์เนล: [167923.077471] do_syscall_64+0x73/0x130
26 กรกฎาคม 19:46:35 เคอร์เนล xxxxxxx: [167923.077475] entry_SYSCALL_64_after_hwframe+0x41/0xa6
26 ก.ค. 19:46:35 xxxxxxx เคอร์เนล: [167923.077479] RIP: 0033:0x7f2211188b7c
26 ก.ค. 19:46:35 xxxxxxx เคอร์เนล: [167923.077482] RSP: 002b:00007fff81411ac0 EFLAGS: 00000246 ORIG_RAX: 0000000000000038
26 ก.ค. 19:46:35 xxxxxxx เคอร์เนล: [167923.077486] RAX: ffffffffffffffda RBX: 00007fff81411ac0 RCX: 00007f2211188b7c
26 กรกฎาคม 19:46:35 xxxxxxx เคอร์เนล: [167923.077488] RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000001200011
26 ก.ค. 19:46:35 xxxxxxx เคอร์เนล: [167923.077491] RBP: 00007fff81411b30 R08: 00007f221338d740 R09: 00007f2211750b40
26 ก.ค. 19:46:35 xxxxxxx เคอร์เนล: [167923.077494] R10: 00007f221338da10 R11: 0000000000000246 R12: 0000000000000000
26 กรกฎาคม 19:46:35 xxxxxxx เคอร์เนล: [167923.077497] R13: 0000000000000020 R14: 0000000000000000 R15: 0000000001735cf8
26 ก.ค. 19:46:35 น. xxxxxxx เคอร์เนล: [167923.077500] รหัส: 40 00 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 44 00 00 55 48 89 e5 53 48 89 fb e8 9e d7 ff 0 ff 48 ba 00 00 ff ff ff ff 48 89 d8 <f0> 48 0f c1 10 85 d2 74 05 e8 73 b5 fe ff 65 48 8b 04 25 00 5c
26 ก.ค. 19:46:35 xxxxxxx เคอร์เนล: [167923.077534] RIP: down_write+0x1f/0x40 RSP: ffffb4e7018cfd10
26 ก.ค. 19:46:35 xxxxxxx เคอร์เนล: [167923.077537] CR2: ffff994c94603766
26 กรกฎาคม 19:46:35 เคอร์เนล xxxxxxx: [167923.077541] ---[ สิ้นสุดการติดตาม 4d3c04fc4bbb2b33 ]---
มีคนอื่นที่ฉันสามารถโพสต์ได้เช่นกันหากจำเป็น
ฉันยังเห็นสิ่งนี้ในการบู๊ตบ่อยครั้ง:
[ FAILED ] ไม่สามารถเริ่มบริการชื่อโฮสต์ได้
ดูสถานะ systemctl systemd-hostnamed.service สำหรับรายละเอียด
...
[ FAILED] ไม่สามารถเริ่มการจำแนกชื่อเครือข่ายได้
ดูสถานะ systemctl systemd-resolved.service สำหรับรายละเอียด
[ ตกลง ] หยุดการแก้ไขชื่อเครือข่าย
[ FAILED] ไม่สามารถเริ่มการจำแนกชื่อเครือข่ายได้
ดูสถานะ systemctl systemd-resolved.service สำหรับรายละเอียด
[ ตกลง ] หยุดการแก้ไขชื่อเครือข่าย
[ FAILED] ไม่สามารถเริ่มการจำแนกชื่อเครือข่ายได้
ดูสถานะ systemctl systemd-resolved.service สำหรับรายละเอียด
[ ตกลง ] หยุดการแก้ไขชื่อเครือข่าย
เราเห็นสิ่งนี้ทั่วประเทศภายใน 5 วันที่ผ่านมา ดังนั้นฉันไม่คิดว่าสิ่งนี้เกี่ยวข้องกับฮาร์ดแวร์หรือสภาพแวดล้อม เราไม่ได้เผยแพร่การอัปเดตใด ๆ ให้กับซอฟต์แวร์ของเราในช่วงสองสามสัปดาห์ (และลูกค้าบางรายของเราก็เพิกเฉยต่อการอัปเดตซอฟต์แวร์ของเราอยู่ดี)
ใครบ้างมีความคิดเกี่ยวกับสิ่งที่อาจทำให้เกิดสิ่งนี้และจะป้องกันได้อย่างไร?
ขอบคุณ!
แก้ไข 1:
ผลลัพธ์ของ ls -la /boot
รวม 143024
drwxr-xr-x 3 รูทรูท 4096 23 ก.ค. 06:35 น.
drwxr-xr-x 24 รูทรูท 4096 22 ก.ค. 06:57 ..
-rw-r--r-- 1 รูทรูท 217414 18 มิ.ย. 16:49 config-4.15.0-147-generic
-rw-r--r-- 1 รูทรูท 217414 9 ก.ค. 20:19 config-4.15.0-151-generic
drwxr-xr-x 5 รูทรูท 4096 23 ก.ค. 06:34 น. ด้วง
-rw-r--r-- 1 รูทรูท 60458100 20 ก.ค. 20:08 initrd.img-4.15.0-147-generic
-rw-r--r-- 1 รูทรูท 60462046 23 ก.ค. 06:35 น. initrd.img-4.15.0-151-generic
-rw------- 1 รูทรูท 4082393 18 มิ.ย. 16:49 System.map-4.15.0-147-generic
-rw------- 1 รูทรูท 4082629 9 ก.ค. 20:19 System.map-4.15.0-151-generic
-rw------- 1 รูทรูท 8449696 18 มิ.ย. 18:42 vmlinuz-4.15.0-147-generic
-rw ------- 1 รูทรูท 8453792 9 ก.ค. 20:23 vmlinuz-4.15.0-151-generic
ผลลัพธ์ของ ฟรี -h
รวมใช้บัฟ/แคชที่ใช้ร่วมกันฟรี
หน่วยความจำ: 3.7G 165M 3.2G 6.7M 435M 3.4G
สลับ: 0B 0B 0B
สลับ -s
ไม่ได้ผลลัพธ์
ผลลัพธ์ของ sysctl vm.swappiness
vm.swappiness = 60
แก้ไข 2:
พบรายงานข้อบกพร่องที่เกี่ยวข้องกับเคอร์เนล -151: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1938013
ฉันดึงยูนิตเก่าออกมาและทดสอบอย่างละเอียดบน 4.15.0-142-generic จากนั้นฉันอัปเดตเป็น -151 และสามารถทำให้เกิดข้อผิดพลาดโดยใช้ nmcli เพื่อพยายามเชื่อมต่อ wifi หลังจากรีบูตเป็น -142 ฉันไม่สามารถทำให้เกิดข้อผิดพลาดได้อีกต่อไป ฉันยังมีการทดสอบเพิ่มเติมในหน่วยดั้งเดิมและจะโพสต์เมื่อทำเสร็จแล้ว