Asusポケットベル(やや)はルート(busybox実装)でのみ機能します。

Asusポケットベル(やや)はルート(busybox実装)でのみ機能します。

私はasuswareを実行しているAsusルーターで作業しています。これは組み込みLinuxの実装であり、ややビジボックスの実装です。 Telnetを使用して管理者(ルート)としてルーターにログインすると、ページの最後の24行目でスクロールが停止するように、より少ないページングが完全に機能します。しかし、root権限のないアカウントでログインすると、ファイルがいくら大きくてもファイルの最後までスクロールが止まりません。私の環境変数(TERM = xterm、LINES = 24、COLUMNS = 80)が設定されて動作していることを確認しました。 viもファイルを編集するとうまく機能し、カーソルを正常に動かすことができます。したがって、端末制御は通常動作するようです。また、一般ユーザーが共有/terminfoファイルに対するフルアクセス権を持っていることも確認しました。

私のロジックによると、これは一種の権限の問題のようです。これは、ユーザーグループの割り当てを/ etc / passwdのグループルート(0)に移動すると、スクロールがすぐに期待どおりに機能し始めるためです。ただし、グループ500(システムのユーザー)に移動すると、動作が停止します。しかし、それは私には理解できません。

だから問題は次にどこを見るかです。これらのものを制御するために関連する他の文書は何ですか?

ベストアンサー1

の所有権と権限は何ですか/dev/tty

一部のツールは、/dev/tty端末のサイズを確認するために既存のファイル記述子を使用する代わりに再度開くことができます。 busyboxでは、コードサイズが大幅に減少したためかもしれません。

一部のディストリビューションは、/dev/tty必要以上の保護を提供できます。私はこれが不注意な設定かもしれないと思います。/dev/tty*

この場合、OPは以下を報告します。

crw-rw---- 1 admin root 5, 0 Jan 1 1970 tty

それが問題であることが判明しました。

ファイルシステムによっては、デバイスを再起動するたびにリセットが必要になる可能性があることは注目に値します。ディストリビューションに応じて/etc/mdev.conf、、/etc/udev/rules.d/または他の場所でこれを行うことができます。/etc/rc.localまたは、変更可能な永続ストアがない場合は、リモートで実行する必要があります。

(検査のために回答を追加しました。)

おすすめ記事