画面の使用に問題があります。コンソールを介してルーターに接続しようとするたびに画面が終了します。
eric@pop-os:~$ screen /dev/ttyUSB0
[screen is terminating]
eric@pop-os:~$ screen /dev/ttyUSB0
[screen is terminating]
ルートまたはスーパーユーザーとしてのみ機能します。
答え1
あなたのユーザーアカウントにeric
アクセスできますか/dev/ttyUSB0
?確認するにはを実行してくださいls -l /dev/ttyUSB0
。出力は次のとおりです。
$ ls -l /dev/ttyUSB0
crw-rw----+ 1 root dialout 166, 0 Jul 9 08:55 /dev/ttyUSB0
一番左の列の文字はファイルタイプと権限情報です。
- 最初の文字は
c
文字ベースのデバイスを表します。 - 最後の文字は、
+
デバイスノードに追加のアクセスルールを指定するアクセス制御リスト(ACL)があることを示します。これは、他の権限が解釈される方法を変更するので重要です。 - 文字2-4は、3番目の列に示す
rw-
ようにファイル所有者の権限を表す3文字のグループです。root
- 2番目の3文字セット(
rw-
再)は通常、次に適用されることを意味します。グループファイルが割り当てられたユーザーの数。この場合、グループはdialout
4列目に表示されます。ただし、このファイルにはACLがあるため意味が異なります。ACLが適用されると、ファイルの所有者ではなく、特定のユーザーまたはグループに付与されている最高権限のみを表示するだけで、どのユーザーまたはグループであるかを知ることはできません。 - 3文字の3番目のセット(
---
)は他の人のアクセス権を表します。すべてダッシュの場合、アクセスが許可されていないことを意味します。 - 最後の文字は、
+
デバイスノードに追加のアクセスルールを指定するアクセス制御リスト(ACL)があることを示します。
最後に、ACLはgetfacl /dev/ttyUSB0
。出力は次のとおりです。
$ getfacl /dev/ttyUSB0
getfacl: Removing leading '/' from absolute path names
# file: dev/ttyUSB0
# owner: root
# group: dialout
user::rw-
user:sddm:rw-
group::rw-
mask::rw-
other::---
デフォルトでは、既存の非ACLファイル権限を複製し、必要な数のユーザーとグループに追加の権限を指定できます。この場合、GUIログインマネージャプロセスが現在実行されているユーザーアカウントであるuser:sddm:rw-
ユーザーへの読み取りおよび書き込みアクセスを示す追加の行があります。クラシックグループがこのファイルへの完全な読み取り/書き込みアクセス権を持っていることを確認する行もあります。この情報は、ACLがこのデバイスノードに適用されると、クラシック出力から隠されます。sddm
sddm
group::rw-
dialout
ls -l
ACLが権限を付与するという事実は、sddm
GUIログインダイアログを使用してローカルにログインする場合、オペレーティングシステムが自動的にローカルシリアルポートへのアクセスを許可するように構成できることを示唆しています。 ACLはログインしているユーザーと一致するように自動的に変更され、sddm
ユーザーがログアウトするとその状態に戻ります。これらのACLが存在しない場合、デプロイメントではこれらの自動権限メカニズムを使用しない可能性があります。
dialout
以前は、シリアルポートがモデムで使用されていたため、グループ名は歴史的です。ただし、デバイスがこれらの特別なグループに割り当てられている場合は、そのdialout
グループを使用してシリアルポートへのアクセスを管理するように展開が設定されている可能性があります。したがって、この例では、ユーザーアカウントをdialout
グループに追加できます。これを行うには、root/superuser アクセス権が必要です。
# usermod -a -G dialout eric
新しいグループメンバーシップは次回のログイン時に適用されるため、ログアウトしてから再度ログインする必要があります。
/dev
ファイルシステムはRAMベースの仮想ファイルシステムなので、システムが起動するたびにすべてのデバイスノードが最初から作成されます。したがって、物理デバイスノードの権限を変更しようとする試みは役に立ちません。システムをシャットダウンすると、変更が忘れられます。代わりに、デバイスに対するデフォルトの権限は、管理者がグループメンバーシップを使用して特定のユーザーに特定の種類のデバイスへのアクセス権を付与できるようにする明示的な目的で特定のグループを使用します。これらのグループを意図したとおりに使用することは、おそらく問題を解決する最も簡単な方法です。