web-dev-qa-db-ja.com

致命的-> Ubuntuを使用したLinuxのWindowsサブシステムでの分岐に失敗しました

Windows 10 Proバージョン10.0.17134を実行しており、Linux用のWindowsサブシステムを有効にして、MicrosoftストアからUbuntuアプリをインストールしました。これは数か月間問題なく機能しています。

今日、Ubuntuシステムの別の更新を行いたかったのですが、次のエラーが表示されました。

# apt-get update
FATAL -> Failed to fork.

このエラーを検索した後、私が見つけた唯一の問題は十分な空きメモリではありませんでしたが、メモリを見ると、まだ22 GB近くのメモリが残っています。

# cat /proc/meminfo
MemTotal:       33341028 kB                                                     
MemFree:        21641608 kB                                                     
Buffers:           34032 kB                                                     
Cached:           188576 kB                                                     
SwapCached:            0 kB                                                     
Active:           167556 kB                                                     
Inactive:         157876 kB                                                     
Active(anon):     103104 kB                                                     
Inactive(anon):    17440 kB                                                     
Active(file):      64452 kB                                                     
Inactive(file):   140436 kB                                                     
Unevictable:           0 kB                                                     
Mlocked:               0 kB                                                     
SwapTotal:      60885884 kB                                                     
SwapFree:       60885884 kB                                                     
Dirty:                 0 kB                                                     
Writeback:             0 kB                                                     
AnonPages:        102824 kB                                                     
Mapped:            71404 kB                                                     
Shmem:             17720 kB                                                     
Slab:              13868 kB                                                     
SReclaimable:       6744 kB                                                     
SUnreclaim:         7124 kB                                                     
KernelStack:        2848 kB                                                     
PageTables:         2524 kB                                                     
NFS_Unstable:          0 kB                                                     
Bounce:                0 kB                                                     
WritebackTmp:          0 kB                                                     
CommitLimit:      515524 kB                                                     
Committed_AS:    3450064 kB                                                     
VmallocTotal:     122880 kB                                                     
VmallocUsed:       21296 kB                                                     
VmallocChunk:      66044 kB                                                     
HardwareCorrupted:     0 kB                                                     
AnonHugePages:      2048 kB                                                     
HugePages_Total:       0                                                        
HugePages_Free:        0                                                        
HugePages_Rsvd:        0                                                        
HugePages_Surp:        0                                                        
Hugepagesize:       2048 kB                                                                 
DirectMap4k:       12280 kB                                                     
DirectMap4M:      897024 kB

OR

# free -mh                                                   
              total        used        free      shared  buff/cache   available
Mem:            31G         10G         20G         17M        230M         21G
Swap:           58G        4.8M         58G                                                                                                            

誰が問題が何であるか、または可能な解決策が何であるかを知っていますか?

ありがとう!

追加情報

制限、実行中のプロセス、開いているファイル

root@somthing# ulimit -a
core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
scheduling priority             (-e) 40
file size               (blocks, -f) unlimited
pending signals                 (-i) 8041
max locked memory       (kbytes, -l) 64
max memory size         (kbytes, -m) unlimited
open files                      (-n) 1024
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
real-time priority              (-r) 0
stack size              (kbytes, -s) 8192
cpu time               (seconds, -t) unlimited
max user processes              (-u) 8041
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited

root@something# ps -ef
UID        PID  PPID  C STIME TTY          TIME CMD
root         1     0  0 16:40 ?        00:00:00 /init ro
root         3     1  0 16:40 tty1     00:00:00 /init ro
kevinho+     4     3  0 16:40 tty1     00:00:00 -bash
root        26     4  0 16:43 tty1     00:00:00 Sudo su
root        27    26  0 16:43 tty1     00:00:00 su
root        28    27  0 16:43 tty1     00:00:00 bash
root        49    28  0 17:03 tty1     00:00:00 ps -ef

root@something# lsof | wc -l
166

Apt-getの痕跡

Pastebinのファイルを参照してください: https://Pastebin.com/zbjLbkGd

2
Digihash

あなたのすべての助けと入力に感謝しますが、自分のコンピューターでプロセスをさらに検索した後、それは別のものであることがわかりました。

Kaspersky Total SecurityアプリケーションのTrusted Applications modeは、apt実行するバイナリなど。このモードを無効にした後、すべてが機能するので、LinuxのWindowsサブシステムにこのようなものがある場合は、ホストベースIPS(侵入防止システム)またはその他の種類のマルウェア/ウイルスを確認することをお勧めしますスキャナー。

敬具

デジハッシュ

1
Digihash

「LinuxのWindowsサブシステム」は他のほとんどのMS製品よりも優れているという事実は別として、簡単なGoogleセッションでは次のことがわかります。

通常、このメッセージは、aptプロセスのメモリが不足していることを示しています。 virtualminがダウンしていることは、システム全体が不足していることを示す良い兆候です。ほとんどの場合、データベースがクラッシュしています。これを確認するには、/ var/log/syslogでメモリ不足のメッセージを探します。

最初に行うことは(まだ行っていない場合)、サーバーにSWAPファイルを追加することです。

https://www.digitalocean.com/community/questions/etc-cron-daily-apt-fatal-failed-to-fork

1

「Windowsサブシステムfor Linux」の経験がないため、「フォークに失敗しました」のみを一般化できます

これは(デバッグしたように)メモリが原因である可能性がありますが、プロセスが多すぎる、ファイルを開いているなどが原因です。

これは、ulimitによって制御される「ソフトウェア」の制限です。 ulimit -aを使用して、すべての最大値を表示します。

ps -efを試して、実行中のプロセスが(多すぎる)かどうかを確認します。 lsofは、開いているファイルの数を知ることができます。

0
Holger Morgen

それは古いスレッドであり、コメントのいくつかの答えは私がこれを修正するのに役立ちました。@フランクは別のフォーラムからの正しい引用に言及しました。エラーがなくなり、スムーズに機能するために、SWAPファイルを作成する必要がありました。 DigitalOceanからこのガイドに従いました: https://www.digitalocean.com/community/tutorials/how-to-add-swap-space-on-ubuntu-16-04

0
Xonshiz