GazeでLinuxの顔認証をスマートに実現する

広告

Windows、特にSurfaceを使ったことがあるなら、Windows標準の顔認証にはきっと強い印象を持っているはずだ。その後ThinkPadでもこの機能はさらに強化されて、たとえば画面の前に座っているときだけ画面が点灯し、離れるとノートPCが自動でロックされる……なんてこともできるようになった。

ではLinuxの世界に来たとき、似たようなことを実現する方法はあるのだろうか?

広告

そこら中にあふれる優れた百合二次小説と同じように、Linuxにも似たようなソリューションは存在する。以前は Howdy というプロジェクトがその役割を担っていた。あれはどちらかというと昔ながらの赤外線方式で、基本的にIRカメラが必須。しかもPythonで書かれた古い代物で性能も低く、画面を開いてから反応するまで数秒待たされることもザラだった。当時ThinkPad X1 Carbonの5thモデルで使ったことがあるが、正直ギリギリ使えるレベル。あまりにラクガキレベルだったので、記事を書く気にもならなかった。

もちろん時は流れ、今は新しいソリューションがある。それが今回紹介するGazeだ。

古いHowdyと違い、今回のGazeはRustで書かれていて、認識方式も専用のビジョンモデルを使っている。だから性能の向上は飛躍的だ。

インストールについては公式ドキュメントにも詳しい説明があるが、やはり公式のワンライナーコマンドで入れるのがおすすめだ。

https://gaze.gundulabs.com/guide/getting-started.html

Gazeはシステムへの統合がかなり密接で、systemdサービスとして深く組み込まれている。Gnome-shellとの統合はさらに良く、専用プラグインまで用意されている。カメラもIRが必須というわけではなく、普通のカメラでも動く。まあセキュリティは落ちるけど。もちろん、筆者と同じようにPinduoduoで50元のカメラを買ってモニターに付ければいい。コストも安いし、パスワード入力からも解放される。

photo_2026-07-28_23-12-07.jpg

プラグインも設定も直感的で、むしろGNOMEの標準モジュールにすべきなんじゃないかと思うくらいだ。

photo_2026-07-24_17-59-50.jpg

photo_2026-07-24_17-59-50 (2).jpg

photo_2026-07-24_17-59-50 (3).jpg

とはいえ、これから始めようという人には水を差しておきたいし、警鐘も鳴らしておきたい。このGazeは便利だが、危険も伴う。

たとえば筆者はSurface Go 2タブレットにGazeを入れようとした。毎回ロック解除のパスワードを打つのが面倒だったからだ。ところがインストール後に問題が発生。再起動するとGDMがクラッシュしてログインできなくなり、なんとかttyでログインしてもsudo権限が使えない。

そこで気づいた。Gazeはsudoの認証をハイジャックしていて、sudoのたびにGazeを通す必要がある。しかもGazeは運悪く起動するたびにCoredumpでクラッシュしていた……

つまり無限ループに陥ったわけだ。Gazeをアンインストールするにはsudo権限が要る。sudo権限を得るにはGazeの認証を通す必要がある。そしてGazeは認証するたびにクラッシュして認証に失敗する。だからGazeを消すためのsudo権限が得られない。

結局丸一日格闘して、LiveUSBとBtrfsスナップショットを使ってGazeを始末した。原因を調べたら、Surface Go 2がとあるカーネル更新後に内蔵カメラが使えなくなっていて、呼び出すたびにエラーを起こし、それがGazeのクラッシュを招いていた。そしてGazeは各種systemdサービスでsudo認証をハイジャックする……

ここまで長々と書いたのは、Gazeの便利さは安定して動くことが大前提だ、と伝えたかったからだ。自分のデバイスのカメラが……不安定な可能性があるなら、Gazeは慎重に検討したほうがいい。まあこの問題はGazeの開発者にも伝えてあって、もっとrobustにするよう改良すると言っていた。ただ最近新しいバージョンを見た限り、まだsudoをハイジャックしているようだが……

まあ、そこは各自の判断で。

本家 plumz.me でこの記事にコメントする

コメントは中国語の本家サイトで受け付けています。このミラーは閲覧専用です。

目次