sure

描主宇田川浩行K#F85E
上描き希哲13年(2019年)
02月16日 22:48
下描き希哲11年(2017年)
07月03日 04:44
利承
ライセンス
希哲館普通利承(KULクール

superuser request

su -c ... と sudo で入力形式を統一するための駒手。一旦駒手を受け取り,sudo があれば sudo で,sudo が無ければ su -c ... で実行する。BLFS の一部で使われている as_root() を参考にしたが,root 作業を非推奨とするため $EUID が 0 の場合に失敗する点が異なる。

希哲11年7月3日SLFS 試作版2号 の開発中に su -c ... の欠点を補う手段として考案,kn plz の実装でも使える Synx 標準として採用を決定。

この駒手名は kn plz の予備案 kn sure として考案していたもの。当初は適当に superuser redo の略としていた。

希哲12年5月15日,あまり意味が通っていない superuser redo より自然な表現として superuser request の略とすることを検討開始。do よりも間接的な表現になっているのが役割に合っていると感じたこともあり,同日中に正式採用を決定。

希哲12年5月15日現在,開発中の SLFS の一部として /_kit/run/sure に直接置いている。Synx に採用していることもあり,場所を再検討する必要がある。

希哲12年12月11日,リモートで利用する必要に迫られ,コマに収録,/_kn/run/sure に引装するようにした。

希哲13年2月16日root での日常作業を原則禁止とし,sure を全面的に頼ることにした。

同日,無引数で起動した際,sudo の有効期限を延長出来る仕様を考案。sudo -s : を使う。事前に無引数の挙動を確認したところ,su のように用者を切り替えてしまう問題に気付いた。これは sudo -s のせいだった。その後,同様の機能を持つ sudo -v の存在に気付き書き換え。

同日,shrc に簡易的な補完機能を追加。sure の権限で譜類の補完が効くようになった。sudo -n -v を使って非対話的に権限の有無を確認し,権限がある場合に sure を通して compgen を使う。これなら sudo が入っていなくても問題ない。

一覧

=}{*}

さっきも語ったが,root になりたい動機として,sudo では補完であれこれ「手探り」がし辛い,というのがあったので,これは理想的な解決策を見つけたかもしれない。

=}{*}

Synx の高機能 sudosure(superuser request)で「sudo の有効期限内なら root 権限で効く」Bash 補完を追加した。

$ sure

(必要ならここで認証するか有効期限を延長する)

$ sure cat /root/[TAB]

(ここで補完が効く)

ちなみにこの sure には ! という省割(ショートカット)がある。

=}{*}

=}{*}

実は,知機 Unix 相互運用標準こと Synx にはすでに sudo を代替する sure(superuser request)という駒手(コマンド)がある。これは本来,su -csudo の差を吸収する駒手なのだが,このあたりの仕様でうまく対応出来ないかと考えているところ。

出力論組プログラム虎哲*イチ 1.01
制作・運営:希哲社
© K1-13 (2007-2019) KiTetuSha