5年ぶりくらいに会社 PC を Win7 から Win10 に移行したのでメモ

前提

環境

  • old pc(Win7)
  • new pc(Win10)
  • 個人バックアップディスク(UNCパスでアクセスできる)

old から new にリモートデスクトップで繋ぐ。コピペでファイルを転送できる。

old からも new からもバックアップディスクに繋げられる。バックアップ対象の選定や、古いバックアップファイルの削除などを検討する際に適宜見たりいじったりする。

作業方針

  • old pc も new pc も常時立ち上げる
  • 普段は old pc で業務
  • 空き時間に old pc から new pc にリモートデスクトップで入って作業
    • ロックされるのがうざいので 対策した上で 常時立ち上げておく&作業する時にモニタ一枚分で最大化
    • 最大化は必須。これしないと Win + R などが転送されない

1: IP アドレスの付与

部門でプールされてる分から一つを拝借。

2: PC の配置

  • 自分の机の上に new pc の HDD も置いた
    • ただでさえ狭い机がさらに狭い……
  • コンセントは 4 つでギリ足りた
    • 一部タコ足してるけど

3: old pc から new pc に繋ぐ

リモートデスクトップで繋ぐ。

4: new pc 設定(必須)

a) 会社マニュアルに従い new pc をセットアップ

システム設定とセキュリティツール類のインストールおよび設定が続く。

b) Windows Update を適用

一晩放置。

終わったら次に進む。

c) セキュリティソフトの設定カスタマイズ

デフォだと重たすぎて話にならないのでスケジュール設定やスキャン対象を絞る。

5: new pc 設定(オレオレ)

手順はかなり前後するが網羅性を重視して五月雨式に書く。

管理者権限フルコン

  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System
  • EnableLUA エントリの値を 0 に

参考: Windows 7 から 10 に乗り換えたら一部アプリに干渉できなくなる現象が発生、原因は管理者権限だった - Qiita

デスクトップのターゲット変更

  • HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders
  • Desktop エントリの値を変える

フォルダオプション

  • 拡張子表示する

その他コンパネを一通り見る

眺めたら「ここはうざいからこうしよう」的なのが思い出せるので、適宜オフにしたりする。

その他設定を一通り見る

コンパネと同様。

インストーラーで入れる系のソフト

開発環境やらでかい必須アプリ系。

必要なのは後で入れればいいが、すぐ使うとわかっているものは一通り入れてしまって動作確認まで済ますのが楽。

  • Google 日本語入力
  • ……
  • Git
  • Tortoise Git
  • ……
  • Visual Studio Code
  • 秀丸エディタ
  • ……
  • Python
  • Go
  • Node.js
  • ……
  • Firefox
  • AutoHotkey
  • ……

ネットワーク導通確認

  • npm
  • pip
  • go get
  • git clone/pull/push
    • GitHub からの clone
    • 社内 GitLab からの clone/pull
    • 社内 GitLab への push

ブラウザ導通確認

  • Internet Explorer
    • 社内サイト
    • inetcpl.cpl(設定ミスると社内サイト見れなかったりする)
  • Firefox
    • インターネット
    • 社内サイト

Firefox のプロファイル移行は、落ち着いたタイミングで行う。

IE のお気に入りデータも必要ならコピペなどで移す。

頻出ツールの設定

  • XFinder
  • 秀丸エディタ
  • ConEmu
  • AutoHotkey
  • alauncher
    • 環境変数 PATH も一通り
  • ……

ルート構造のデータ移行

私はドライブ直下にフォルダツリーを組んで、そこにすべてのデータを集めるようにしている。

- D:\
  - bin
  - bin1
  - data
  - data1
  - download
  - temp
  - temp1
  - work1_proj
  - work3_oddjob
  - ……

これを old から new に移す作業。

  • リモートデスクトップ + コピペで移していく
  • 毎日少しずつやる
  • 断捨離も並行して行う
    • 基本的に使ってないのは消す
    • 取っておきたいがすぐには使わないものは zip してバックアップディスクに
  • 移行が終わった old 側のフォルダは閉鎖していく
    • D:\downloadD:\xxxdownload
  • 一通りやると一日仕事になる ので 1h x 1週間など、ゆとりをもって取り組む

自作クイックランチ

デスクトップにファイルを置かないという選択肢 - Qiita

感想

  • 手作業だるい
  • クラウド等でデータ同期できないのだるい
  • Windows がそもそも設定画面ゲーだからだるい

理想は「ファイル置くだけで設定も反映される」「ファイルはクラウドでバージョン管理」「コマンド一発で移行完了しちゃう」なんだけど、会社で Windows 使ってるうちは無理だろうなぁ。

Firefox でタイトルが「ページ名 | サイト名」のサイトを Markdown リンク文法の「ページ名 - サイト名」でコピーする

特定のウェブページを Markdown で書いてる文章中で引用したい場合、いちいち [タイトル](URL) を手作業で書くのはだるい。

なので拡張機能 Format Link を使って、右クリから一発コピーできるようにしたのだけど、もうひとつ問題が起きた。

GitHub Pages (の Jekyll)上で [ページ名 | サイト名](URL) ← こういう書き方をした リンク表記がテーブルとして扱われてしまい 表示がめちゃくちゃになる。

この |- に自動で置き換えて回避したい。どうすれば?

Format Link – 🦊 Firefox (ja) 向け拡張機能を入手

2: |- に変換する設定をする

  • ツール > アドオン > 拡張機能
  • Format Link の「・・・」 > オプション

FormatLink settings の Markdown の部分を以下のようにする。

[{{text.s("\\|","-")}}]({{url}})

これで行けるはず。

書き方まとめ

要するに正規表現を書く。

詳しい書き方は英語だが Format Link 配布サイト 内で解説されているが、ポイントは二つ。

  • text, url, title の三つが使える
  • 正規表現のエスケープをする時は \\ のように 二つ重ねる こと
    • Javascript などプログラミング言語の文字列表記のエスケープと同じ
  • .s(before, after) を付けて before を after に置換できる(要正規表現)
  • text.s(before1, after1)..s(before2, after2) のようなチェーンも可能

MkDocs のテーマ mkdocs-docskimmer を導入してみた

Intro - docSkimmer theme

緑基調でスッキリしてて一目見て気に入ったので、導入してみることに。

前提

  • Windows 10
  • MkDocs 1.0.4
  • Python 3.7.4

インストール

テンプレートの入手

pip はまだ使えないので git clone で手動で取ってきて、mkdocs プロジェクトに配置する必要がある。

まずは docSkimmer のテンプレートファイルたちを配置する。

$ cd (mkdocs new したプロジェクトフォルダ)
$ git clone https://github.com/hfagerlund/mkdocs-docskimmer/
$ move mkdocs-docskimmer\mkdocs_docskimmer .\

紛らわしいが mkdocs-docskimmer\mkdocs_docskimmer を MkDocs プロジェクト直下に配置する。

mkdocs.yml の設定

ソースファイルは docs/index.md だけつくってるものとする。

site_name: お試し

nav:
  - Intro: index.md

theme:
  name: null
  custom_dir: 'mkdocs_docskimmer'
  include_search_page: true
  search_index_only: false
  static_templates:
  - 404.html

plugins: ['search']

extra:
    version: 0.4.0

こんな漢字。theme.name は null のままで良い。

これで設定完了。

ビルド

普通に mkdocs build する。

感想

まだまだ発展途上。

  • 検索結果から各ページにジャンプできない
  • TOC(ON THIS PAGE)をクリックすると TOC の表示が乱れる(with Firefox v69)

今後に期待 or 勉強がてら何か修正してプルリクってみるのもいいかも。

Windows 10 1809 のショートカットキー「Windows + アルファベットキー」をすべて調べてみた

最近 Windows 10 1809 をがっつり使い始めたのだが、たまによくわからない機能が発動してびっくりする。せっかくなので全部調べておいた。

Windows ショートカットキーの一覧

キー 機能
a Action center / アクションセンターを開く(サイドバー)
b ? / タスクトレイアイコンをアクティブにする
c -
d Desktop / デスクトップを表示(全ウィンドウの最小化)
e Explorer / エクスプローラーを開く
f Feedback hub
g Game capture / ゲームバー(動画キャプチャ機能など)
h -
i ? / Windowsの設定(1ペイン)
j -
k ? / ワイヤレスとオーディオの検索(サイドバー)
l Lock / 画面ロック
m Minimize / デスクトップを表示(全ウィンドウの最小化)
n -
o -
p ? / ディスプレイ表示設定(サイドバー)
q Query / 検索(Cortana)
r Run / ファイル名を指定して実行
s Search / 検索(Cortana)
t Tool bar / ツールバーをアクティブにする
u ? / Windowsの設定(3ペイン)
v ? / クリップボード履歴
w Workspace / Windows Lnk ワークスペース(付箋やスケッチパッド等を呼び出せる)(サイドバー)
x ? / スタートボタン右クリック(システムメニュー)
y -
z -

秀丸エディタで一時的にプロポーショナルフォントに切り替えるマクロ

普段は等幅フォントが使いたいが、一時的にプロポーショナルフォントできれいに表示したいという場合がある。いちいち設定画面から切り替えるのはだるいのでマクロをつくった。

マクロ

$defaultFont = "MS ゴシック";
$readableFont = "メイリオ";
$currentFont = getconfig("Font");
if($currentFont != $defaultFont){
    config "f(" + $defaultFont + ")";
}else{
    config "f(" + $readableFont + ")";
}
endmacro;

解説

このマクロは「デフォルトのフォント」と「読みやすいフォント」を交互に切り替える処理を行う。

フォントとして何を使うかは変数に指定。ここでは MS ゴシックとメイリオ。

Outlook 2016 で「Microsoft Outlook を起動できません。 Outlook ウィンドウを開けません。 このフォルダーのセットを開けません」が出る件

Outlook 2016 で受信トレイを見ようとしたらフリーズして、なぜか強制終了して、もう一度起動してみたらこんなエラーが出て起動できなくなった。

Microsoft Outlook を起動できません。 Outlook ウィンドウを開けません。 このフォルダーのセットを開けません。 ファイル D:\data\outlook\XXXXXX.pst を開けません。

対処したのでメモ。

結論

  • 残っている outlook.exe プロセスを殺す
  • pst ファイルと同じフォルダにある tmp ファイルを削除する
  • Outlook を起動する

これでいけた。

プロセスの削除

コマンドでやるならこう。

$ taskkill /f /im outlook.exe
成功: プロセス "OUTLOOK.EXE" (PID 12345) は強制終了されました。

タスクマネージャなどから殺しても良い。

tmp ファイルを削除する

D:\data\outlook\XXXXXX.pst を例にすると、D:\data\outlook\~XXXXXX.pst.tmp みたいなファイルが残っている。これを削除する。

※outlook.exe を殺してないと削除できないので先に殺しておく

テキストエディタで高橋メソッドをする

高橋メソッドは手軽なプレゼンテーション手段として重宝するが、パワポを触らないといけないのがだるい。

「テキストエディタ上で資料つくって、そのまま投影できないか」

を考えた結果、一応それっぽいのが実現できた。

デモ

f:id:stakiran:20190902210420g:plain

設定するまでの道のり

【要約】テキストエディタの設定と格闘して見た目をスライドっぽくし、また挙動もスライドをめくる感じにする。

以下秀丸エディタの例を永遠と。

独自ファイルタイプ .takahashi をつくる

秀丸エディタではファイルタイプ .xxxx ごとに設定を保存する仕組みになっているので、専用の設定をつくる。

ここでは安直だが .takahashi にしてみた。

.takahashi ファイルに対する設定

白紙スライドっぽい見た目にする

  • ファイルタイプ別の設定 > デザイン
    • off ルーラー
    • off 行番号
    • off カーソル行
    • off カーソル位置の縦線
    • off 改行文字
    • off EOF
    • ……

文字サイズを大きくする

  • ファイルタイプ別の設定 > フォント
    • 72pt とか 48pt とか、お好みで

フォントを見やすくする

  • ファイルタイプ別の設定 > フォント
    • 等角フォントの「HG創英角ポップ体」
    • お好みで良いが、等角フォントでないと揃えられないので辛い

強調表示を導入する(ここでは "" 囲いで赤文字のみ設定する)

  • ファイルタイプ別の設定 > デザイン
    • 強調表示1 を赤色太字強調にする
  • ファイルタイプ別の設定 > デザイン > 強調表示
    • "[^\"]+" ← この正規表現に強調1を割り当てる

ページの概念を導入する(秀丸エディタでは「アウトライン」という見出し単位で文章を扱う機能がある)

  • ファイルタイプ別の設定 > アウトライン > 解析
    • 行頭の文字列「・」を追加する
  • アウトライン解析の枠を表示する

あとはページ単位で前後に進む操作を実現する。秀丸エディタでは「前(次)の見出し」という操作がそっくりそのまま用意されている。

スライドに見えるように微調整

まずはファイルの書き方。

test.takahashi

  • 先頭行は 1 行空ける
  • 各ページは 3 行 + 余白 2 行
  • 末尾行だけは最後のページから 4 行空ける
・1ページ目
  本文
  本文


・2ページ目
  本文
  本文


・3ページ目
  本文
  本文


・4ページ目
  本文
  本文


・5ページ目
  本文
  本文




・おわり

続いてウィンドウサイズ縦は 4 行 + パディング下(1行未満で余白)分 にする。

ページ単位で前後に進む操作

下方向は「次の見出し」で良いが、上方向は「前の見出し」だけだと足りないので、カーソル操作を加えたマクロを作ってこれを使うようにする。

takahashi_up.mac:

prevoutlineitem;
up;
down;

takahashi_down.mac:

nextoutlineitem;

なぜ up して down しているかについては突っ込まない。秀丸エディタではこうすればうまいこと見えるようになる。泥臭くていい。というか 泥臭く設定を駆使しないとスライドっぽく似せることができない

感想

総評:アリかもしんない

まだ実践では使ったことないんだけど、一度試してみたいなぁ。

良い

  • パワポ使わずに済むので楽
  • バージョン管理もできるよ

悪い

  • 上方向にめくる時に一瞬ちらつく
  • 各行の余白を目で見て手で調整しないといけないのがだるい
  • 4行など少ない行で運用すると見た目が横長になってしまい不格好

キーボードショートカットの文脈における Chords とは何か

元々は Emacs の key-chords。key-chords では同時押し or 連続で素早く押す、というタイプのショートカットキーを提供している。

ここから派生して、同時押し or 連続で素早く押すタイプのショートカットキー全般を Chords と呼ぶ。たとえば Visual Studio Code がこの言葉を使っている。

chord の語源

chord (コード)とは「和音」のこと。

Visual Studio Code における chord

Visual Studio Code Key Bindings に詳しく書いてあるが、

Chords (two separate keypress actions) are described by separating the two keypresses with a space. For example, Ctrl+K Ctrl+C.

とのこと。同時押しではなく連続で素早く押す限定。

例1: Ctrl+K Ctrl+C

  • 1: Ctrl + K を押す

この時、Chords のうちの最初の Ctrl+K が認識されたことになる。

  • 2: Ctrl + C を押す

これで Chords と一致するので、押されたとみなされる。

例2: Ctrl+K C

  • 1: Ctrl + K を押す
  • 2: C を押す

Ctrl + K の後は、Ctrl キーを押してはいけない。Chords では、修飾キーの効果が継続されるわけではない。

参考

Javascript ES5 は辛いし AltJS は変換がだるい。ES6(ES2015) 直書きはダメなの?

Javascript 初心者 + ポンコツ PC の私。去年から続けてた開発は IE11 対応必須のせいで泣く泣く ES5 で頑張ったが、ES5 はやはり書きづらい。かといって AltJS は PC スペック的にキツイ。というわけで ES6 直書きがしたいのだが、現在ではいけるのだろうか。

結論

机上調査レベルだが(IE11 が絡まない世界なら)いける。

  • Firefox, Chrome 限定なら問題無い(規格の 98% をサポート)
  • Safari 含めても問題無い(98%)
  • Edge 含めてもほぼ問題ない(96%)
  • IE 11 含めると死亡(11%)

対応状況は ECMAScript 6 compatibility table こちらをチェック。

詳しく

ECMAScript 6 compatibility table

https://kangax.github.io/compat-table/es6/

これ、公式かと思ったら違った。有志なのね。リポジトリは kangax/compat-table: ECMAScript 5/6/7 compatibility tables こちら。

この kangax さん、このブログ によると Facebook のエンジニアさんなのだそう。Star 3000 ついてるし、否定的コメントも無さそうだし、信用して良さそうか。

仕組みとしては、テストコードを動かした上で結果をデータファイル(たとえば data-es6 とか)に記入する感じ。GitHub Pages が動いてるので、リポジトリを更新するだけでサイトも更新される。

w3school の ECMAScript 6

ECMAScript 6 - w3school.com

ブラウザ毎の Fully support date が書いてある。引用すると、

  • 2016/08 Edge
  • 2017/04 Chrome 58
  • 2017/05 Firefox 54

とのことだが……ん?Fully?compatibility table では 96% とか 98% までで full(100%) ではないのに?

その他の情報源

git clone で fatal: unable to access 'https://...' schannel: next InitializeSecurityContext failed: Unknown error (0x80092012) が出る時の対処方法

社内の GitLab に対して git clone すると

$ git clone https://...
Cloning into 'xxxxxx'...
fatal: unable to access 'https://...': schannel: next InitializeSecurityContext failed: Unknown error (0x80092012) - ....

こんなエラーが出て clone できなかった。

既に対処したこと

プロキシはちゃんとできてる。インターネットからの clone は上手くいく。

以下 %userprofile%.gitconfig (global の gitconfig) の例。

[http]
    proxy = http://(プロキシサーバーのIP):(ポート番号)
[http "https://...(今回 clone したい gitlab サーバー)"]
    sslCAInfo=D://(gitlabサーバーの認証に必要なcerファイル).cer

また (gitlabサーバーの認証に必要なcerファイル).cer も Windows 証明書ストアにインストール済。実際ブラウザから gitlab は開ける。

対処方法

git の SSL 通信設定を openssl にする。

$ git config --system http.sslcainfo "C:/Program Files/Git/mingw64/ssl/certs/ca-bundle.crt"
$ git config --system http.sslbackend openssl

これでエラーがでなくなった。

その他情報

結局なぜこれでエラーが出なくなったのかがわからない。Windows 証明書ストアにインストール済なんだから動くはずなんだが……。

とりあえず関連しそうな情報はまとめておく。

元々はどうなっていたか

sslcainfo は空値で、sslbackend は schannel だった。

$ git config --system http.sslcainfo
$ git config --system http.sslbackend
schannel

http.sslbackend って何?

SSL 認証としてどんな手段を使うか。

元々は openssl だけだったが、Git for Windows 2.14 からは http.sslbackend=schannel という新しいモードが使えるようになった。

schannel モードは、Windows にインストールされた証明書ストアを使って SSL 認証をするモード。証明書ストアにちゃんと証明書を入れてたら sslcainfo による crt ファイル指定が不要になる……という恩恵がある。

http.sslcainfo って何?

Git が openssl モードの時に SSL 通信で使う証明書。

基本的に Git に同梱された ca-bundle.crt が指定されてるはずなので、ここをいじることはたぶんない。

ただし Git for Windows 2.14 以降をインストールする時にウィザード画面で「schannel を使う」みたいな選択肢を選んでた場合は、上記したように schannel モードになる& --system http.sslcainfo が空値になる。

参考

I/O の遅い HDD を使ってる PC で Firefox の起動が遅い・重い場合はキャッシュを消すと良いかも

Firefox 起動直後が遅い、というか重い。1~2分くらい CPU と HDD をブンブン言わせている。原因はどうもキャッシュが溜まりすぎていたことだったようだ。

前提

  • Win7 x86
  • Firefox 68.0.2

手順

まずは設定画面を開く。

  • (1) オプション > プライバシーとセキュリティ > Cookie とサイトデータ

ここまで開くとデータ量が計算されて表示される。

私の場合、1.2GB ものデータがあった。うちキャッシュが 1GB あった。

続いて削除する。

  • (2) 「データを消去」ボタン > ウェブコンテンツのキャッシュ にのみチェックを入れる > 消去 ボタン

これで 1 GB 分のキャッシュが削除される。削除まで少々時間かかる(その間重くなる)(2分くらいかかった所感)。

適用後

Firefox の起動後、重たかった処理が 10 秒くらいにまで縮んだ。

Outlook 2016 でファンクションキーだけで分類項目を割り当てられるようにする

Outlook 側の設定と AutoHotkey が必要。

(1) まずは Outlook 上で割り当てる

  • 適当なメールを選択
  • 右クリック > 分類 > すべての分類項目
  • 使いたい分類項目を選び、ショートカットキープルダウンから適当に選ぶ(ここでは CTRL + F2 を例にする)

これで Ctrl + F2 キーで分類項目を付け外しできるようになる。

が、Ctrl 押すのがだるいので、もう少し楽をする。

(2) AutoHotkey で Ctrl + F2 → F2 にする

以下の AutoHotkey スクリプトを使う。

#IfWinActive ahk_class rctrl_renwnd32
F2::Send,^{F2}
#IfWinActive

これは以下を意味する。

  • 「Outlook のウィンドウのとき(ウィンドウクラス名が rctrl_renwnd32 になる)」に、
  • F2 キーが押されたら、
  • Ctrl + F2 キー( ^{F2} と書く)を転送する

これで F2 キーで付け外しできるようになった。

応用

F3, F4 なども同様の手順で使える。結果、複数の分類項目をファンクションキー達で自在に付け外しできるようになってますます便利に。

著作権表示はどう在るべきか

プライベートでは GitHub で生成した MIT LICENSE ばかり使っているが、会社ではそうはいかない。また「その表示は冗長すぎる」「いやこれで良い」的な議論も発生することがある。

というわけで著作権表示はどう在るべきなのか調べてみた。

結論

© 2019 stakiran が良い。

最低限必要なのはコピーライトマーク(Copyright とか (c) はダメ)と、発行年と、著作者名。これ以上は過剰情報なので無くてもいい。また順序も問わない。

注意点1: 方式主義国への対策がメイン

実は大半の国では著作権は自動発生するので記載さえ不要。

しかし一部の国(方式主義)では © 2019 stakiran の記載がないと著作権が保護されない。

注意点2: 現在では権利者明示用途がメイン

著作権表示の目的は、どちらかと言えば 権利者を明示的に表明する手段 になっている。

  • 例1: Copyright © 2017-2019 stakiran All rights reserved.

一番明示的な例。これだとしっかり主張している感が出るし、2017 年から最近まで更新されていることを読み手に与える。

  • 例2: © 2017 stakiran

これは手抜き感が強い。2019 年現在では「あれ?最近は更新されてないのかな」という印象を受ける。

注意点3: 書き方のルールが定まっている場合はそれに従う

ルールとして表記方法を定めている場合があるので、従うしかないこともある。

例:

  • 会社「うちは Copyright(C) 2000-2019 XXXXX と書くルールになってんだよ」
  • 会社「発行年-更新年の表記も必須だ。更新年は面倒くさくても毎年更新しろ」

参考

詳しく

少し歴史的経緯を読み解く

参考でも挙げた以下ページがわかりやすい。

まとめると、

  • 1: アメリカで保護されない
    • 元から日本では無方式主義(自動的に著作権が発生する)だった
    • でもアメリカでは方式主義(政府に登録したものだけが著作権を認められる)だった
    • このままではアメリカでは日本の著作物が(政府に登録されてないから)保護されない、どうしよう?
  • 2: 万国著作権条約
    • 万国著作権条約「©、氏名、発行年が記されたものは著作物として尊重しなさい」
    • アメリカもこれに加盟したので、日本の著作物も尊重されるようになった
  • 3: ベルヌ条約
    • ベルヌ条約「うちに加盟した国は無方式主義です」
    • アメリカもこれに加盟したので、©、氏名、発行年表示は無くても済むようになった
  • 4: 現在
    • ©、氏名、発行年表示は「権利者を明示的に示すための表記」として用いられる

万国著作権条約の該当箇所

万国著作権条約.pdf

「第3条〔保護の条件〕」の 1 を見ると、

自国外で最初に発行され、かつ、その著作者が自国民でないものについて、著作者又は著作権を有する他の者の許諾を得て発行された著作物のすべての複製物にその最初の発行の時から○Cの記号が著作権を有する者の氏名及び最初の発行の年とともに表示されている限り、これらの要求が満たされたものと認めなければならない。

とある。意訳すると「©、著作者名、発行年の記載があったものは(他国のものであっても)ちゃんと著作権を尊重してね」といった感じか。

Avira Free Antivirus の Quick process scan が重すぎるし無効化できないので Avira やめた

軽くて気に入ってたんだけど、うーん。

まとめ

  • 2019/07/10 のアップデートでスケジュールスキャンに Quick process scan(Every 22 hour)が追加された
  • Quick process scan は アップデート後に強制的に走る
  • 走っている間、停止することができない
  • めちゃくちゃ重たい
    • 当方 Win10 ノート PC では 20 分くらい続いた
  • 終了した後は消せるが、アップデート時にまた復活する
  • 色々試したし、Avira にフィードバックも送ったけど、解決しなかった

Avira やめた。

以下詳細情報を雑多にまとめとく。

Quick process scan まわりの情報

Activity ログ

Quick process scan が動き始めた時の Activity。

  • 2019/07/11 7:26 PM: Job Started
    • ここで Quick process scan が動き始めた
  • 2019/07/10 8:55 PM: Update successfully carried out
    • Product version は 15.0.1906.1402
  • 2019/07/10 8:55 PM: Service started
    • Version of service は 15.0.1906.1402

プロセス

"C:\Program Files (x86)\Avira\Antivirus\avscan.exe" /CFG="process.avp" /GUIMODE=9 /EXITMODE=3 /JOBNAME="Quick process scan" /SCHEDULED 

無効化するために試したこと

どれも効果無かったが。

タスクスケジューラからスケジュールを消す

ログオン時に発動してた Avira_Antivirus_Systray を無効に。

Quick process scan はスリープ復帰時に発動していたので、これで無くなる可能性はある。ただ Avira が Update 時にまたこのスケジュールを上書きしたら意味ない(そしてセキュリティソフトはそういうことをよくやる) → そのとおりの模様で効果無し。

サービスを止める

Avira の Scheduler サービスを止めてみたかったが、権限無くて無理だった(セキュリティのためなんだろうけど Administrator なのに権限分けられてるの本当に腹立つよなぁ)。

$ sc stop AntiVirSchedulerService
[SC] ControlService FAILED 1052:

要求された制御はこのサービスに対して無効です。

プロセスを殺す

avgscan.exe を Kill しようとしたができなかった。

たぶん NT AUTHORITY\SYSTEM ユーザーで起動されてるせい。

Allow stopping the scaner を有効にする

  • Manage Antivirus > ギアアイコン > PC Protection > System Scanner > Scan
  • Scan process > Allow stopping the scanner にチェックを入れる

入れてるのに Quick process scan 止められなかった。

既に存在してたら追加されないのでは?作戦

「Quick process scan というスケジュールをあらかじめつくっておいたら、新しくつくられないのでは?」と考え、(Quick process scan を消した後)以下のようなスケジュールをつくってみた。

  • Quick process scan
    • Weekly
    • Friday, 9:00 PM
    • quick scan

これは毎週金曜日午後 9:00 から quick scan が走る設定。quick scan なのでそんなに重くないはずだし、手動でも停止できるはず。

……効果なかった。普通に同名の Quick process scan が作成された。

クレームを出す

7/15、Feedback から日本語で「Quick process scan 停止できるようにして」的な要望を出しといた(英語が良かったか?)

7/18、改善されてなかった。

Avira のアンインストール

appwiz.cpl から Avira Antivirus と Avira を普通にアンインストールする。ただし Avira は二つあって、そのうち一つは再起動しないとアンインストールできない。

ちなみに Avira Antivirus のアンインストールを行うと、既に走っている Quick process scan も止まる。