web-dev-qa-db-ja.com

VS Codeにより17.10、18.04がランダムに完全にフリーズする

必ずお読みください:最後のビットを参照してください。これはUbuntuに関連する問題ではなく、VS Codeに関連する問題だとは思わない。

最近、17.10and18.04(今日アップグレードしたばかり)では、Ubuntuはランダムに完全にフリーズします。カーソルを動かしたり、キーボードを使用したりできません。当然、私は成功せずにTTYセッションに切り替えようとしました。毎回、私はに頼らなければなりません SysRq + REISUB、これは(明らかに)優先されません。

私は、それがそうであるかもしれないという理論に基づいて、グラフィックスドライバーを切り替えようとしました。私はもともとオープンソースのnVidiaドライバを使用していたが、独自仕様に切り替えて利用できなかった。現在、オープンソースのドライバーを使用しています。

私が通常開いているのは、Firefox(たくさんのタブloadedではない)とVS Codeであり、最大でいくつかのファイルとターミナルが開いています。

何か案は?

更新:システムログには、anythingの兆候はまったく示されておらず、まちがった問題はありません。これが関連しているかどうかはわかりませんが、コマンドラインプログラムでさえ、プログラムがかなりの時間(5〜10秒以上)を要することがあります(特にブート後)。

さらに別のアップデート! —すべてのGNOME拡張機能を無効にしても、クラッシュします。 XFCEを試しましたが、まだクラッシュしていました。

概要:Ubuntuは一見ランダムな時間に完全にフリーズし、ログにトレースを残さず、特定のデスクトップ環境やGNOME拡張機能とは関係ありません。

(おそらく最終)更新:これはVS Codeの問題だと確信しています。私は他のElectronアプリ(Slack、Pulseなど)を開いた状態でGNOMEを何日も実行していますが、一度もフリーズしていません。 TwitterでVS CodeをDMで公開しましたが、まだ応答していないため、バグレポートを提出する可能性があります。

10
jhpratt

したがって、これはUbuntuに固有のものではないことがわかりましたが、今後の参考のためにとにかくここに投稿します。

どうやら、files.exclude設定(特に./node_modulesディレクトリ)を使用して特定のファイルを無視していますが、VS Codeはまだwatchesそれらのファイルの変更を無視しています。

これを解決するには、リストをfiles.excludeからfiles.watcherExcludeにコピーするだけです。これにより、VS Codeはnode_modulesまたは他の類似のディレクトリにある何千ものファイルを検索できなくなります。そうすれば、RAMがゴブアップするためにsome Chromeのままになります。

5
jhpratt

私はこれに出くわしました。起動時に、大きなプロジェクトでは、私のシステムは20秒後にフリーズし、応答しなくなります(Ubuntu 18.04)。 VSCodeの起動中にhtopを実行すると、すべてのコアが100%(i7-8700K)になり、すべてのメモリ(16gb)を使用してからスワップを使用することが示されました。凍結はすぐに起こりました。これは拡張機能が悪いために発生していました。私の場合はCSS Peekでした。

そのため、拡張機能を無効にして(code --disable-extensions)vscodeを起動してみて、まだ発生するかどうかを確認してください。問題のある拡張機能と地獄に送るを追跡できない場合。

ランダムな完全フリーズが発生し、その原因を突き止めるためにかなりの時間を費やしました。再起動時に、ログは実際には役に立ちませんでした。最初はnvidiaドライバーだと思っていましたが、いや-単なるVSCode拡張機能です。

2
neculaesei

Ubuntu 16.04でも同じ問題が発生しました。

git.autorefreshSettingsをオフにした後、問題なくスムーズに動作します

1
Kumar Immanuel

私は同じ問題を経験しました。最終的には、私の場合、問題はメモリ不足になっていることに気付きました(ディスク上に8GBのRAMと1GBのスワップパーティションしかありません)。ルートディレクトリのファイルを使用して追加のスワップスペースを割り当てることで、これを修正しました。

Sudo fallocate -l 1G /swapfile
Sudo chmod 600 /swapfile
Sudo mkswap /swapfile
Sudo swapon /swapfile

これにより、システムで追加の8GBのスワップが一時的に有効になります。役立つ場合は、 here 新しいスワップを継続的に有効にするための詳細な手順をお読みください。

別のオプション:RAMを物理的に追加するか、スワップパーティションを追加/拡大します。

Luks + lvmで暗号化されたシステムを取得し、既存のスワップパーティションのサイズを変更するのは複雑すぎるため、ファイルとして新しいスワップをファイルとして使用しました。

追伸Ubuntu 18.04を入手しました

1
Artem S.

また、VSCの実行中にシステムがランダムにクラッシュすることもありました。拡張機能なしで起動しようとしても、まったく役に立ちませんでした。 VSCの起動時に、システムが数回フリーズしました。

ただし、ログを確認したところ、これらのクラッシュはグラフィックドライバー(NVidia GTX 660)に関連している可能性があることがわかりました。

私の場合の解決策: Nouveauから独自のドライバーに切り替える(メタパッケージを選択しました)

ところで:Ubuntu 18.04の使用

1
gordon