カテゴリー: Windows

  • Powershell上からSSH接続するとコネクションが切れる問題の対処

    Windows10のPowershell上からSSH接続して、ちょっと放置するとコネクションが切れている。Windows Terinalを入れてから、結構、Powershell上からSSH接続することが増えたので、簡単にきれてしまうのは辛い。

    packet_write_wait: Connection to xxx.xxx.xxx.xxx port 22: Connection aborted
    

    すぐに切れないようにするために、下記の設定をクライアント側でおこなった。これで定期的に通信を行って、コネクションを維持する。

    1. 下記のフォルダを開く。「.ssh」のフォルダは、一度、SSHで外部に接続していれば、「known_hosts」ファイルができているので、フォルダもある。

    C:\Users\アカウント名\.ssh\

    2. 「config」というファイルを作る(既にあれば、つくらない)

    3. 「config」のファイルに、以下を書き込む。内容としては、300秒おきに、アライブの信号を送る。それを最大10回行う。

    ServerAliveInterval 300
    ServerAliveCountMax 10
    

    Windows10だけど、SSHの設定がLinuxのような感じでできるのはよい。

  • 使用しているWSLのバージョンを調べる

    新しくWSL2が公開された。現在使用されているWSLのバージョンを調べる方法は下記。

    どちらかのコマンドをPowershellなどで実行する。

    wsl --list --verbose
    wsl -l -v

    ■実際に実行したところ

    PS C:\Users\zen> wsl --list --verbose
      NAME      STATE           VERSION
    * Ubuntu    Running         1
    PS C:\Users\zen> wsl -l -v
      NAME      STATE           VERSION
    * Ubuntu    Running         1
    PS C:\Users\zen>
    
  • WSLをWSL2に更新する

    WSLをWSL2に更新したので、そのときの作業メモ。

    1. 下記のURLにアクセスする
    https://docs.microsoft.com/ja-jp/windows/wsl/wsl2-kernel

    2. 「最新の WSL2 Linux カーネル更新プログラム パッケージをダウンロード」のリンクをクリックする。(wsl_update_x64.msiがダウンロードされた)

    3. ダウンロードしたMSIファイルを実行する

    4. 特権ユーザの確認が求められるので、許可する。

    5. 「Finish」をクリックする

    6. Powershellで以下のコマンドを実行し、デフォルトのバージョンをWSL2に切り替える(新しくディストリビューションをインストールするとき用の設定)

     wsl --set-default-version 2
    

    7. 既存のWSLのディストリビューションをWSL2に変換するコマンドを実行する(Ubuntuがインストールされているので、変換する)

    wsl --set-version Ubuntu 2
    

    書式

    wsl --set-version ディストリビューション バージョン

    8. WSLのバージョンを確認する、Powershellで以下のコマンドを実行する

    wsl -l -v

    これで、VERSIONの部分が2になっていれば、WSL2への移行が終わり。

    ■実行したところ

    PS C:\Users\zen> wsl --set-default-version 2
    WSL 2 との主な違いについては、https://aka.ms/wsl2 を参照してください
    PS C:\Users\zen>
    PS C:\Users\zen> wsl -l -v
      NAME      STATE           VERSION
    * Ubuntu    Running         1
    PS C:\Users\zen>
    PS C:\Users\zen>
    PS C:\Users\zen> wsl --set-version Ubuntu 2
    変換中です。この処理には数分かかることがあります...
    WSL 2 との主な違いについては、https://aka.ms/wsl2 を参照してください
    変換が完了しました。
    PS C:\Users\zen>
    PS C:\Users\zen> wsl -l -v
      NAME      STATE           VERSION
    * Ubuntu    Running         2
    PS C:\Users\zen>
    
  • Windows Update後、SMBv1のファイルサーバに接続できなくなった

    Windows 10 May 2020 Update(Ver.2004)で、2020年6月のWindows Updateを適用したところ、もともと接続できていたSMBv1のファイルサーバに接続できなくなった。

    May 2020 Updateの適用では問題なくSMBv1のファイルサーバにアクセスできていた。2020年6月のWindows Updateに、SMBに関連したアップデートが含まれていたので、その影響と思われる。

    対応は、レジストリをいじっていて、1回接続できるようになったのだが、検証のためにレジストリの値を戻したら接続できず。再現できず。暫くは情報が出てくるのを待つしかないか。

  • Windows10 May 2020 Updateにしたら、大型アップデートの延長メニューが消えた

    Windows10 May 2020 Update(Ver 2004)にしたら、大型アップデート(機能更新プログラム)の延長メニューが消えた。

    Windows10のレジストリ値をいじったけれど、復活しない。Ver1903のときも、一度、Windows Updateのメニューから消えて、あとから復活した。レジストリを書き換えっぱなしは危険なので、もとには戻した。マイクロソフトから情報が出てくるまでは暫く様子見。

  • コマンドから管理者モードでWindows Terminalを起動する

    コマンドラインから、Windows Terminal、Powershell、コマンドプロンプトを起動させるときのコマンドのメモ。Powershellのオプションを使って、起動するので、コマンドが長い。実際には、エリアスに登録しておくのがよい。

    ■Windows Terminalを管理者権限で起動する。

    powershell start-process wt -verb runas
    
    

    ■コマンドプロンプトを管理者権限で起動する

    powershell start-process cmd -verb runas
    
    

    ■Powershellを管理者権限で起動する

    powershell start-process wt -verb runas
    
    

  • リモートデスクトップクライアントでアクセスするとCredSSPのエラーで接続できない

    Windows 10から、リモートデスクトップクライアント(RDC)で接続したときに、「CredSSP 暗号化オラクルの修復であるk脳性があります」と表示されて接続できない。

    認証エラーが発生しました。
    要求された関数はサポートされていません
    
    リモートコンピューター:xxx
    原因は、CredSSP 暗号化オラクルの修復である可能性があります。
    詳細について、xxxxxxx を参照してください
    

    その場合は、CredSSPの設定を書き換えることで、接続できるようになる。管理者権限のコマンドプロンプトや管理者権限のPowershellで下記のコマンドを実行する(レジストリの書き換え)。変更後は、再起動しなくても、リモートデスクトップクライアントで接続できるようになる。

    REG ADD HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\System\CredSSP\Parameters /v AllowEncryptionOracle /t REG_DWORD /d 2
    

    実行したときの例。

    PS C:\Users\zen> REG ADD HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\System\CredSSP\Parameters /v AllowEncryptionOracle /t REG_DWORD /d 2
    この操作を正しく終了しました。
    PS C:\Users\zen>
    PS C:\Users\zen>
    
  • VS Codeでファイルのエンコードを変更する

    VS Codeで古いテキストファイルを開くと、文字コードがSJISになっている。これを、VS CodeでUTF-8に変換して保存する方法。

    まず、古いファイルを開くと、文字コードが適切に選択されずに、文字化けするので、右下のUTF-8の部分クリックする。

    上部にアクションが表示されるので、「エンコード付きで再度開く Reopen with Encoding」を選択し、推奨される文字コードか、SJISなどを選択する。

    これで、ファイルの表示としての文字化けはなくなる。このまま保存すると、古い文字コードのままなので、文書自体の文字コードを変更する。

    もう一度、右下の文字コード(SJISで開きなおしたらSJIS)をクリックする。

    上部にアクションが表示されるので、「エンコード付きで保存 Save with Encoding」を選択する。

    保存時のエンコード選択になるので、UTF-8を選択する。

    これで、ファイル全体がUTF-8に変換されて保存されている。

  • Windows Terminalを起動させるコマンド

    Windows Terminalをコマンドで簡単に起動させる方法は、下記のどちらか。

    • Windowsキーを押して、”wt”を入力してEnter
    • Windowsキー+R から、”wt”を入力してEnter

    とりあえず、wtがWindows Terminalであることを覚えておけばOK。

  • Windows10でGoogle Meetを使った時のCPU,GPUの状況

    Google Meet(Hangouts Meet)を使っているときに、たまに動作が重くなる。気になったので、CPUやGPUの利用状況を調べてみた。PCは、第7世代のCore i5、GPUはCPU内蔵のHD Graphics620。

    • CPUの使用率は、2コア/4スレッド 3GHzで動作中のうち、30%程度をGoogle Chromeブラウザだけで使用している。
    • 画面共有されると、HD Graphics 620で3Dが20%〜25%くらい使用される。