DKMSモジュールの取り外し/ゴーストが可能

DKMSモジュールの取り外し/ゴーストが可能

wifi dkmsモジュールをインストールし、パッケージを削除して再インストールしました。 modprobe -rができなかったからです。再インストールした後もまだできず、wifiは引き続き機能します。明らかに、Wi-Fiドライバを削除しましたが、Wi-Fiはまだ機能します。

実行するとlspci -k | grep Adapter何も表示されず、ワイヤレスはありませんがアダプタはありません。

ベストアンサー1

これは実際には他のファイル削除の意味に関連しています。

たとえば、Windowsシステムでは、通常使用されているファイルを削除できません。ただし、Unixファミリーシステムでは、ファイルシステムは通常POSIX標準ファイルシステムの意味に従います。これは、使用中のファイルを削除するときに次のことを意味します。

  • 削除コマンドを正常に返す必要があります。
  • ファイル名はディレクトリからすぐに削除され、必要に応じて同じ名前の新しいファイルに置き換えられます。
  • ファイルを使用するすべてのエントリが実際にファイルの使用を停止するまで、ファイルの実際の内容はディスクに残り、この時点でファイルシステムは自動的に削除を完了します。
  • 例外:ファイルに複数のハードリンクがある場合(=同じファイルに実際に1つ以上ファイル名)と単一のハードリンク(=対応する特定ファイル名) ファイルが削除されます。実際のファイルは次回以降のみ削除されます。みんなハードリンクが削除されました。そしてこれ以上ファイルを使用することはありません。

これは、Windowsのようなファイル削除の意味スキームに精通している人にとっては興味深いかもしれません。実際には、その時点で使用したり使用したりすることがないソフトウェアアップデートなどの作業を実行する方が簡単になりますが、それを理解できない場合は驚くべきことがあります。

たとえば、プログラムが大量のファイルに多くのデータを書き込むためにディスク容量が不足している場合、ファイルを削除してもプログラムが実際にファイルを閉じたり停止したりするまでディスク容量は復元されません。代わりに、この状況でプログラムを終了せずにできるだけ早くディスク領域を再利用する正しい方法は次のとおりです。カット削除せずにファイル長を0に設定します。

背景:POSIXスタイルのファイルシステムでは、特定のファイルに対して保証されているデフォルトの識別子は次のとおりです。いいえファイル名ですが、アイノード番号ファイル。ファイルの一種の社会保障ID番号だと思えばいいです。ディレクトリは、コンピュータのように数字を処理できない人の便宜のために、ファイル名をinode番号に関連付ける特別な種類のファイルと考えることができます。

コンピュータの観点から見ると、すべてのハードリンクはただ普通の古いディレクトリエントリです。各ファイルには通常、1つ以上のハードリンクがあります。

人間の観点から見ると:

  • 複数のハードリンクを持つファイルは、同時に複数の名前を持ちます。これらの名前は異なるディレクトリにありますが、同じファイルシステムに存在する必要があります。なぜなら、inode番号の一意性は単一のファイルシステム内でのみ保証されるからです。
  • ハードリンクが1つしかないファイルは通常のファイルで正常です。
  • ハードリンクを持たないファイルは、そのファイルを開いたプログラムからのみアクセスでき、ファイルシステムドライバは誰もファイルを再度開かないとそのデータを削除します。

一方、Linux カーネルモジュールのロードとアンロードは、「現在使用中のモジュールをアンロードできません」というより使い慣れた意味に従います。

POSIX標準ファイルシステムの意味で、これは最初にWiFiアダプタの電源を切らないとモジュールの現在のバージョンを削除できないことを意味します。ただし、ディスク上のモジュールファイルを新しいバージョンに置き換えることができ、次回の再起動時に新しいバージョンが自動的に使用されます。 (再起動する前にinitramfsが再構築されたことを確認した場合、以前のバージョンのモジュールはinitramfsファイルに保持されません。)

おすすめ記事