Ubuntu でアプリケーションを完全に削除する正しい方法!


コマンドラインパッケージ管理

そのような情報を求めてネットを検索したところ、次のようなさまざまなコマンド ラインが見つかりました.

sudo apt-get remove application
sudo apt-get remove application*

sudo apt-get remove --purge application
sudo apt-get remove --purge application*

sudo apt-get purge application
sudo apt-get purge application*



それで、正しい方法は何ですか?その「*」を使う必要はありますか?

その後、次のコマンドも見つけました.

sudo updatedb
sudo locate application
sudo rm -rf (file/folder name)


受け入れられた回答


  • apt-get remove packagenameバイナリは削除されますが、パッケージの構成ファイルやデータ ファイルは削除されません packagename .また、インストール時に依存関係がインストールされたままになります.
  • apt-get purge packagenameまたは apt-get remove --purge packagenameパッケージに関するすべてを削除します packagename 、ただし、インストール時にインストールされた依存関係ではありません.どちらのコマンドも同等です.

  • 構成を台無しにしてアプリケーションを「最初からやり直し」たい場合に特に便利です.ただし、ユーザーのホーム ディレクトリ (通常は隠しフォルダ) にある構成ファイルやデータ ファイルは削除されません.それらを削除する簡単な方法もありません.
  • apt-get autoremove孤立したパッケージ、つまり、以前は依存関係としてインストールされていたが、もはやインストールされていないインストール済みパッケージを削除します.
  • 不要になった依存関係をインストールしたパッケージを削除した後に、これを使用してください.
  • aptitude remove packagenameまたは aptitude purge packagename (同様に) packagename によって必要とされた他のパッケージも削除しようとします.オンになっていますが、残りのパッケージでは必要ありません. aptitude に注意してください.インストールしたパッケージの依存関係情報のみを記憶します.

  • そして、さらに多くが存在します.下位レベル dpkg -commands (高度な)、または Muon、Synaptic、Software Center などの GUI ツールを使用できます.アプリケーションを削除したり、パッケージ管理と対話する他のタスクを実行したりする唯一の「正しい方法」はありません.

    あなたが見つけたリストは単なる例です.アクションを受け入れる前に、意味を理解し、何をしたいかを試してください (提案されたアクションを実際に実行する前に Y を押す必要があります).

    質問のアスタリスク バージョンはおそらく間違っています. apt-getシェルとして glob パターンではなく、正規表現を受け入れます.それで何が起こるか

    sudo apt-get remove application*
    
    


    は次のとおりです.
  • シェルが application* を展開しようとします.現在のディレクトリ内のファイルを調べます. (通常はそうであるように) 何も見つからない場合は、glob パターンを変更せずに返します (ここで bash がデフォルトの動作であると仮定すると、zsh はエラーになります).
  • apt-get正規表現 application* を満たす文字列を名前に含むパッケージを削除します. 、つまり applicatioその後に任意の数の n が続きます. : applicatioapplicationapplicationnlibapplicatioなど
  • これがどのように危険なのかを確認するには、(二重の安全のために root なしで) apt-get -s remove "wine*" を試してください. (-s 実行する代わりにシミュレートします) — 名前に「win」が含まれるすべてのパッケージと依存パッケージ、ほぼシステム全体を削除すると表示されます...

  • おそらく、意図されたコマンドは本当に

     sudo apt-get remove "^application.*"
    
    


    (引用符とドットに注意してください) これにより、名前が application で始まるすべてのパッケージが削除されます. .

    これらのコマンド、

    sudo updatedb # <-- updates the locate database (index). harmless
    sudo locate application # <-- locates the file 'application'. harmless
    sudo rm -rf (file/folder name) # <-- removes files/dirs recursively. dangerous.
    
    


    パッケージ管理の範囲外です.パッケージ マネージャーを使用せずに、パッケージに属するファイルを削除しないでください.それは混乱し、物事を行う間違った方法です.

    ファイルがどのパッケージに属するかわからない場合は、これを試してください.

    dpkg -S /path/to/file
    
    


    投稿 The Correct Way to Completely Remove an Application in Ubuntu! Stack All Flowに最初に登場.