web-dev-qa-db-ja.com

Ubuntuソフトウェアセンターとコマンドラインのインストールの違い

こんにちは、ubuntuの世界は初めてです。 ubuntuでのソフトウェアのインストールについて、いくつか質問があります。

  1. Ubuntuソフトウェアセンターとコマンドラインにソフトウェアをインストールすることの違いは何ですか?

  2. コマンドラインでインストールした一部のソフトウェアがソフトウェアセンターで検索できないのはなぜですか(ウィンドウキーを押します)。

  3. コマンドラインからソフトウェアをインストールして、それらを検索できるようにする正しいコマンドは何ですか?

  4. システムを一度バックアップして復元しましたが、以前は機能していたコマンド(「subl」など)がシステムの復元後に機能しません。

これらの質問はどういうわけか$ PATHに関するものだと思いますが、これに関する資料は見つかりません。余分な資料をいただければ幸いです。 :)

8
Andy

TL; DR:灰色の領域が多くあり、それはあなたが何をしているかに依存します。ほとんどの場合、.debパッケージに関しては、Software Centerとコマンドラインのメソッドは同様のことを行いますが、他のソフトウェアパッケージでは異なる手順が必要になる場合があります。

Ubuntuソフトウェアセンターとコマンドラインにソフトウェアをインストールすることの違いは何ですか?

現実は次のとおりです。インストールとは、ソフトウェアパッケージに付属のファイルを適切なディレクトリに格納することです。コマンドライン経由でもSoftware Center経由でも関係ありません-同じことを行います-ファイルをそれぞれのディレクトリにスローします。ただし、重要なのはパッケージとその処理方法です。ここでは、Ubuntuで扱うことができる基本的なパッケージをいくつか紹介します。コマンドラインとSoftware Centerの違いに関して、最も基本的な違いはSoftware Centerでボタンをクリックすることです。コマンドラインでコマンドを入力します。 Software Centerは多くのpythonコードを使用しますが、コマンドラインでは使用するユーティリティによって異なります。 Software Centerが削除できる量もあります(それについては以下をお読みください)

Ubuntuのソフトウェアパッケージには、.debファイル、.runファイル、および圧縮されたZipまたはtarアーカイブの生のソースコードの3つの方法があります。どちらを扱っているかに応じて、コマンドラインのインストールは多少面倒です。これは、少なくともLinuxを使用した最初の1年ではなく、新しいユーザーが本当に心配するべきことではありません。

ほとんど.debファイルが表示されます。これらは、プリコンパイルされたソフトウェアパッケージであり、すぐに使用できます。これらは痛みが少ないです。また、多くの場合、依存関係(プログラムが実行されない他のソフトウェア)を指定します。 aptapt-getなどのコマンドラインユーティリティは、依存関係を自動的にインストールします。実際、Software Centerはapt-getをバックエンドとして使用するため、依存関係も自動的にインストールされます。

.runファイルは通常、独自のエンコードされたバイナリファイルです。あなたは彼らが何をしているのか本当に見ることができません。

生のソースコードを使用すると、ソフトウェアをビルドして依存関係をインストールするなど、すべてを自分で行う必要があります。

.rpmパッケージなど、他のディストリビューションからパッケージをインストールする方法もありますが、これは非常にまれです。

コンテナと呼ばれるソフトウェアのクラスも存在します。 dockerとlxdコンテナーがあります。最近、Ubuntuはsnapパッケージと呼ばれるものを導入しました。それらすべての良い点は何ですか?どこでも実行でき、メインシステムから安全に隔離され、非常に迅速にインストール/再インストールできます。これらの種類のソフトウェアは、not Software Centerを介してインストール可能であり、通常は専門のシステム管理者または技術者/上級ユーザー向けです。新規ユーザーとして、それらについて心配する必要はありません。それらが存在すること、そしてそれらが素晴らしいことだけに注意してください:)

最後に、スクリプト(および通常は単一のファイル)のようなものもアプリケーションと見なすことができます。インストールは、そのファイルを所属または所属するはずの場所に放り投げるだけです。

コマンドラインでインストールした一部のソフトウェアがソフトウェアセンターで検索できないのはなぜですか(ウィンドウキーを押します)。

繰り返しますが、これは本当にパッケージに依存します。ソフトウェアの開発者が.desktopファイルをパッケージに含めることにした場合、ダッシュで検索できます。 .desktopファイルは、Windowsのショートカットのようなものですが、はるかに多くの機能を備えています。 .desktopファイルに付属するコマンドラインユーティリティの良い例は、端末を余分なタブ/ウィンドウに分割するための非常に便利なプログラムであるByobuです。

ただし、プログラムごとに独自の.desktopファイルを作成し、~/.local/share/applications/フォルダーに配置できます。

繰り返しますが、これにはnothingがあり、アプリがコマンドラインまたはGUIであることに関係します。アプリ開発者の選択に依存します

コマンドラインからソフトウェアをインストールして、それらを検索できるようにする正しいコマンドは何ですか?

繰り返しますが、あなたがしていることに依存します。公式のUbuntuリポジトリからソフトウェアをインストールしている場合は、Sudo apt-get install my-softwareを実行するだけです。

.debパッケージをインストールする場合、dpkgコマンドまたはapt-getのいずれかを使用できます。 apt-getを使用してgoogle-chrome debパッケージをインストールする例を次に示します。 NOTE:インストール時には、.debファイルと同じディレクトリにあるため、./部分を指定する必要があります。

$ Sudo apt-get install ./google-chrome-stable_current_AMD64.deb                
[Sudo] password for xieerqi: 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Note, selecting 'google-chrome-stable' instead of './google-chrome-stable_current_AMD64.deb'
The following NEW packages will be installed:
  google-chrome-stable
0 upgraded, 1 newly installed, 0 to remove and 54 not upgraded.
Need to get 0 B/50.0 MB of archives.
After this operation, 190 MB of additional disk space will be used.
Get:1 /home/xieerqi/下载/google-chrome-stable_current_AMD64.deb google-chrome-stable AMD64 53.0.2785.101-1 [50.0 MB]
Selecting previously unselected package google-chrome-stable.
(Reading database ... 476104 files and directories currently installed.)
Preparing to unpack .../google-chrome-stable_current_AMD64.deb ...
Unpacking google-chrome-stable (53.0.2785.101-1) ...
Processing triggers for menu (2.1.47ubuntu1) ...
Processing triggers for bamfdaemon (0.5.3~bzr0+16.04.20160701-0ubuntu1) ...
Rebuilding /usr/share/applications/bamf-2.index...
Processing triggers for gnome-menus (3.13.3-6ubuntu3.1) ...
Processing triggers for desktop-file-utils (0.22-1ubuntu5) ...
Processing triggers for mime-support (3.59ubuntu1) ...
Processing triggers for man-db (2.7.5-1) ...
Setting up google-chrome-stable (53.0.2785.101-1) ...
update-alternatives: using /usr/bin/google-chrome-stable to provide /usr/bin/x-www-browser (x-www-browser) in auto mode
update-alternatives: using /usr/bin/google-chrome-stable to provide /usr/bin/gnome-www-browser (gnome-www-browser) in auto mode
update-alternatives: using /usr/bin/google-chrome-stable to provide /usr/bin/google-chrome (google-chrome) in auto mode
Processing triggers for menu (2.1.47ubuntu1) .

apt-getの利点は何ですか? --purgeオプションがあり、プログラムに関連するすべてを削除できます。たとえば、Sudo apt-get remove google-chrome-stableで削除したり、Software Centerで削除したりすると、構成ファイルが残る可能性があります。そのため、ソフトウェアを再インストールすると、以前と同じように使用できます。 --purgeオプションは、構成ファイルも削除します。ソフトウェアが壊れて、完全に新鮮なインストールが必要な場合に便利です。 Software Centerはそれを行わないため、別の違いがあります。

.runファイルを扱っている場合は、そのファイルを実行可能にして実行する必要があります。このような:

$ Sudo chmod +x ./software.run
$ Sudo ./software.run

システムを一度バックアップして復元しましたが、以前は機能していたコマンド(「subl」など)がシステムの復元後に機能しません。

バックアップの種類によって異なります。バックアップにsublを機能させるために必要なすべてのファイルが含まれていれば、機能しているはずです。 sublがインストールされる前にバックアップが行われた可能性もあります。バックアップが適切に構成されていることを確認してください

これらの質問はどういうわけか$ PATHに関するものだと思いますが、これに関する資料は見つかりません。余分な資料をいただければ幸いです。

$PATH変数は、シェル(コマンドを配置するコマンドインタープリター)に関連しています。 Unity Dashにはあまり関係ありません。 $PATH変数は実際にはディレクトリのリストであり、Shellは実行可能なアクセス許可が設定されているプログラムを検索します。 Dashは本当に.desktopファイルのみに関心があります。たとえば、プログラムを/usr/binフォルダーに配置してコマンドラインから開くことはできますが、対応する.desktopファイルがないため、Dashはできません。

$PATHに関する追加資料を検索する場合は、Linuxシェルスクリプトに関する本を文字通り選んでください。これは、コマンドラインを使用したいLinuxユーザーの基礎知識項目の1つです。

いくつかの最後の考え:Linuxのソフトウェアインストールの複雑さは、WindowsまたはMacの世界から来た新しいユーザーに衝撃を与えることがあります。実際には、それは同じ原則です-それが属するすべてのものを投げると、それは動作します。プログラムへのショートカットが見つかりませんか?作成してください-それは単なるテキストファイルです!コンピューターは機械であり、操作するためのものです。 Windowsにはコマンドライン用の%PATH%変数もありますが、WindowsコマンドラインはLinuxに比べて汎用性が低く、使用頻度も低いため、それについては知りません。要するに、あなたが目にするかもしれないものすべてに脅されることはありません。なぜなら、それは毎日最も頻繁に使用されるコマンドまたはアクションの約20%であり、仕事の80%を与えるからです。

9
  1. Ubuntuソフトウェアセンターとコマンドラインにソフトウェアをインストールすることの違いは何ですか?

howソフトウェアのインストールに違いはありません。しかし、以前はwhichソフトウェアを15.10より前にインストールすることができましたTrustyのUbuntu Software Centerは、ユーザーがそれを介してアプリケーションを購入できるようにするもので、これらのアプリケーションは通常apt-getでインストールできません。

  1. コマンドラインでインストールした一部のソフトウェアがソフトウェアセンターで検索できないのはなぜですか(ウィンドウキーを押します)。

ここで(スーパーキーを使用して)ダッシュを使用した検索を参照していると思います。 Dashは通常、グラフィカルユーザーインターフェイスを備え、何らかのアイコン(より具体的には 。desktop ファイル)を備えたプログラムのみを表示します。これらは日常の使用に適しており、ダッシュ検索で表示されます。しかし、これらはすべてのインストール済みアプリケーションではありません。 Ubuntuには、Dashには表示されないコマンドラインアプリケーションがたくさんあります。これらは、グラフィカルなスタンドアロンアプリケーションとしての使用には適していないためです(通常、.desktopファイルが付属していないため)。たとえば、Dashにはtarプログラムは表示されません。

そのため、コマンドラインアプリケーションをインストールした場合、通常はダッシュ(Windowsキー)検索に表示されません。表示されていないアプリケーションを指定していないため、これが一般的な答えになる可能性があります。

注:Sergがコメントで指摘したように、Dashのアイコンの外観は.desktopファイルに依存します。コマンドラインアプリケーションに.desktopファイルが付属している場合、それもダッシュで表示されます。私は彼に同意します。しかし、コマンドラインアプリケーションには通常には 。desktop ファイルが付属していません。

  1. ソフトウェアを検索できるようにコマンドラインからソフトウェアをインストールする正しいコマンドは何ですか?

すでに述べたように、コマンドラインからソフトウェアをインストールして、Dash検索に強制的に表示するコマンドはありません。一部のソフトウェアは自動的に表示され、一部は表示されません。コマンドラインからatom-text-editorをインストールすると、表示されます。 p7Zipパッケージをインストールした場合、ダッシュ検索には表示されません。ソフトウェアのグラフィカルアイコンの可用性(およびUnity、Xfceなどのデスクトップ環境でのランチャーアイコンの構成)に依存します。インストール方法に依存しません。

  1. システムを一度バックアップして復元しましたが、以前は機能していたコマンド(「subl」など)がシステムの復元後に機能しません。

バックアップと復元の方法によって異なります。 sublは、Sublime Text Editorのプログラム名です。まだインストールしていない場合は、インストールします。 sublコマンドが機能し始めます。

5
Anwar

コマンドラインからaptまたはapt-getのいずれかを使用していると推測しています。 aptは、GUIソフトウェアセンターが依存するパッケージマネージャーです。たとえば、パッケージ「gimp」をインストールするとします。あなたが使用するコマンドライン経由でそれを行うには

Sudo apt install gimp

Software Centerは、インストールするGIMPを選択すると、そのコマンドをバックグラウンドで実行するため、入力する必要はありません。

コマンドラインからインストール可能なプログラムを検索するには、次のコマンドを使用します。

apt search {search term}
3
Edgy1