この初心者は Windows 陣営のプログラマーです。サーバーとクライアントの両方が Windows を使用しています。最近仮想マシンに Ubuntu16.04LTS をインストールしました。プレイするのが簡単ではないと感じたので、最初に記録します。新しいことを学ぶとき、初心者は類推をしたり、新しい知識を以前に理解した概念と比較したりすることを好みます。比較することで、より具体的で曖昧な概念の意味を理解することができます。
今回はpycharmのインストールと設定が必要なので、ついでにUbuntu16.04LTSの環境変数を設定する過程での理解を記録しておきます。最初のステップは jdk 環境を構成することです。Pycharm は Jetbrains の製品の 1 つであり、同社の他の製品には Webstorm や PHPStorm などがあります。 Windows での JDK のインストールとデプロイは非常に簡単です。インストーラーをダブルクリックし、環境変数を設定します。 Unix システムのファイル システムを拡張子なしで実行する方法 (正確には、Unix および Unix に似たオペレーティング システム キャンプ、インストールプログラムが全く分からなかったので、Ubuntuにjdkをインストールする方法をネットで調べてみると、apt-getコマンドを使ってppaソースのインストールを追加するか、インストールパッケージをダウンロードするかの2通りの方法がありました。公式 Web サイトから Linux プラットフォーム用に apt -get コマンドを使用してインストールすることを推奨しているブログ投稿の 1 つで、手動で更新できると書かれていましたが、意味が理解できなかったので、これらの方法を使用してインストールしました。手動で更新できます。それでは、apt-get ソースと ppa ソースが何であるかを調べてみましょう。
apt-get は、システムに統合されたツールとして理解できます。Windows の ping や Telnet に似ており、その機能はソフトウェア パッケージを管理することです。実際のところ、これより優れたツールがあるかどうかについては研究を続けていませんし、当然他の類似ツールと比較したメリット・デメリットも分かりませんが、ただ使っているだけです。
PPA ソース Linux によるユーザー環境変数の変更 については、Unix 陣営の精神はオープンソースです。実際にはソフトウェア基盤があります。ここではそれを公式のソフトウェア ライブラリとみなします。そしてこのソフトウェアライブラリはUnix陣営とされる公式によってメンテナンスされています。このソフトウェア ライブラリでリリースできるすべてのソフトウェアは、公式の検査に合格する必要があります。簡単に理解すると、品質検査に合格した新しいソフトウェアまたは新しいバージョンをリリースできるということです。アルファ バージョンとベータ バージョンは直接リリースできません。一般に、次のバージョンはリリースできます。安定したらリリースします。そこで、ppaソースという概念があり、ppaソースはプライベートなソフトウェアライブラリとも言えますが、ここで公開されているソフトウェアの敷居は公式ほど高くありません。多くのソフトウェアの最新バージョンが存在しますが、そのほとんどはアルファ版やベータ版などです。
apt-get と ppa を理解した後、jdk のインストールを続けました。Ubuntu には既に jdk、openjdk が付属していますが、理解した後、oraclejdk もあります。おそらく Mi UI とネイティブ Android の関係ですが、幸いなことにopenjdk と oraclejdk の違いを確認した後、Ubuntu の一部の機能やコンポーネントが openjdk に依存しており、アンインストールすると予期せぬ結果が生じる可能性があるため、Ubuntu に付属の openjdk を削除しない方がよいという意見があることに偶然気づきました。具体的な悪影響については詳しく説明しなかったので、oraclejdk をアンインストールせずに喜んでインストールを続けました。
sudoadd-apt-repositoryppa:webupd8team/java#webupd8team/java ソフトウェア ライブラリを追加します。この後で縮小されたソフトウェア ライブラリは、パス /etc/apt/sources.list.d に追加されます。このコマンドを実行した後、ソースで.list.d は、webupd8team-ubuntu-java-xenial.list と webupd8team-ubuntu-java-xenial.list.save の 2 つのファイルを生成します。これら 2 つのファイルを削除すると、ソフトウェア ライブラリが削除されます
sudoapt-getupdate#最新の変更を再読み込みするのと同等
sudoapt-getinstalloracle-java8-installer#oraclejdkをインストールする
ここで行き詰まっています。操作上の問題なのか、他の理由なのかはわかりません。実際、oraclejdk はまだインストールできませんが、Java を実行すると、「default-jdk、openjdk があります」というプロンプトが表示されます。など、apt-getinstall" "インストール" を試してみると、リストに oraclejava8 などの関連ワードがなかったので、ネットで検索したところ、どこで見たか忘れてしまいました。Ubuntu 14 は、ppa ソースのインストールをサポートしていないようです。信頼性が検証されていないため、この oraclejdk はインストールされていないと思いました。そこで私は、ppa ソース インストールの使用を断念し、自分でインストール パッケージをダウンロードすることに切り替えました。
oracle の公式 Web サイトにアクセスして、Linux バージョンの jdk を見つけます。tar 圧縮パッケージと rpm サフィックスがあります。rpm は見たことがないので、これは、によってコンパイルする必要があるソース コードを含むパッケージであると理解しています。パッケージ、300MB以上、ダウンロード、誰が使うか分からない、長時間待ってもダウンロードされない、専用線は200m、Firefoxのダウンロード非常に遅いです。その後、仕方なく uget aria2 を設定したのですが、期待していたペリカンのような速度は得られませんでした。最終的に考えられる理由は、uget aria2 が Thunder ほど自然に人間に適していないためであることがわかりました。(Xunlei)インターネット上の他のノード上のリソースを手動で検索します。おそらく uget aria2 は、万里の長城の外にある遺伝子linuxがユーザー環境変数を変更するであるため、Thunder エクスペリエンスをもたらすことはできません)。最後に、ホスト マシンでそれをダウンロードし、USB フラッシュ ドライブで仮想マシンにコピーします。幸いなことに、Unix 陣営は ntfs および fat32 形式のストレージ メディアをサポートできます。逆に、Windows はそれほどフレンドリーではありません。Windows 自体はサポートします。 ext2/ext3 はサポートしていません (まだわかりません?)。
最後に、oraclejdk のインストール パッケージを入手し、インストールを開始しました。これらの方法でのインストールは非常に簡単です。指定したディレクトリに解凍するだけです。重要なのは、構成メカニズムを理解することです。私はたくさんの意味のない話をしました以上、ようやく本題に入りました。
Unix 陣営のファイル システムは Windows とは異なります。Windows には c、d、e、f ディスクなどの異なるパーティションがありますが、Unix 陣営は Android と似ています。Android はそうであるはずです。 Linuxカーネルをベースにしています 主に/home、/bin、/boot、/etc、/lib、/root、/usr、/varなどがあります 理解した上でoraclejdkを/usr/lib/jvmパスに解凍しました、主にこのパスのせいで、上記の openjdk を含め、元々 Ubuntu に付属していたさまざまな jdk バージョンもあるため、oraclejdk もここに配置されます。次に、環境変数を変更する必要があります。Unix 陣営では環境変数を構成する方法がいくつかあります。これらの記述は厳密ではありませんが、Ubuntu 環境変数の原理は Windows の環境変数とそれほど変わらないためです。それらは次のように分類されます。システム変数とユーザー変数すべてについて言及されていますが、いくつかの Linux シェル メソッドがありますが、各メソッドは異なるファイルで構成されており、このファイルは異なる段階でロードされます。たとえば、/etc/profile はすべてのユーザーの変数です。ログインするたびにロードされるか、bash インスタンスが開始されるたびにロードされます。~/.bashrc は現在のユーザー変数で、ユーザーがログインするたびにロードされるか、bash インスタンスが開始されるたびにロードされます。 ~/.bash_profile と ~/.profile はログイン時にのみロードされます。ロード時の違いは、~/.bash_profile は bash の読み取り用にのみ提供されるのに対し、~/.profile は csh などのさまざまなシェルの読み取り用に提供されることです。 、tcsh、ダッシュなど。
ここでは、環境変数を /etc/profile ファイルに設定しました。Ubuntu は独自の gedit を使用して編集できます。実際、vim や emacs も使用できます。これらは Windows のメモ帳プログラムと同等ですが、それよりも強力ですメモ帳. 、私はメモ帳の使用に慣れているので、このテキスト エディターには少し慣れないかもしれません。
sudogedit/etc/profile#gedit でプロファイル ファイルを開きます
#次の内容をファイルの最後に追加します
exportJAVA_HOME=/usr/lib/jvm/jdk1.8.0_121#ここに記載されているoraclejdk解凍パス
exportJRE_HOME=${JAVA_HOME}/jre#javaruntimeenvironment
exportCLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib#classpath、これは Windows と同じです。ドットを追加する必要があります
exportPATH=${JAVA_HOME}/bin:$PATH#path
#Windows とほぼ同じですが、;
の代わりに複数の用途で区別されているだけです。#環境変数を再読み込み
ソース/etc/プロファイル
Windows であれば jdk のインストールと設定が完了しており、dos で java や javac を実行する際に「java は内部コマンドではありません」などということはなくなりましたが、Ubuntu はまだ完了していません。デフォルトの jdk バージョンがまだ設定されていない場合、用語に java を入力すると、「default-jdk、openjdk などがあり、apt-getinstall をインストールしてみてください。」というプロンプトが表示されることがあります。まだ設定を続ける必要がありますが、これは設定コマンドのマッピングであると理解しています。
sudoupdate-alternatives--configjava#システムにすでに jdk がインストールされているかどうかを確認します
update-alternatives: エラー: java の候補がありません #出力 jdk がインストールされていない場合、システムは java コマンドを認識できません。つまり、コマンド マッピングが構成されていません
#java、javac、jar、javah、javap コマンド マッピングを作成する
sudoupdate-alternatives--install/usr/bin/javajava/usr/lib/jvm/jdk1.7.0_60/bin/java1
sudoupdate-alternatives--install/usr/bin/javacjavac/usr/lib/jvm/jdk1.7.0_60/bin/javac1
sudoupdate-alternatives--install/usr/bin/jarjar/usr/lib/jvm/jdk1.7.0_60/bin/jar1
sudoupdate-alternatives--install/usr/bin/javahjavah/usr/lib/jvm/jdk1.7.0_60/bin/javah1
sudoupdate-alternatives--install/usr/bin/javapjavap/usr/lib/jvm/jdk1.7.0_60/bin/javap1
sudoupdate-alternatives--install/usr/bin/javajava/usr/lib/jvm/jdk1.8.0_121/bin/java2
sudoupdate-alternatives--install/usr/bin/javacjavac/usr/lib/jvm/jdk1.8.0_121/bin/javac2
sudoupdate-alternatives--install/usr/bin/jarjar/usr/lib/jvm/jdk1.8.0_121/bin/jar2
sudoupdate-alternatives--install/usr/bin/javahjavah/usr/lib/jvm/jdk1.8.0_121/bin/javah2
sudoupdate-alternatives--install/usr/bin/javapjavap/usr/lib/jvm/jdk1.8.0_121/bin/javap2
update-alternatives コマンドは、上記の各コマンドのマッピングを作成するために使用されます。 --install はインストールを意味します。install の次のパスは、Windows ではショートカット メソッドと見なされます。Linux では、実際にはソフト リンクと呼ばれます。真ん中の Java は私たちのものです。コマンド ラインで Java を使用する場合、Java の隣のパスは、ショートカット メソッドが実際に接続されているソース プログラムです。ここでのショートカット メソッドの 2 つのバージョンは同じものを指しますが、実際のソースプログラムは異なります. 最後の数字は優先順位であり、値が大きいほど Linux コマンド vi の優先順位が高くなります. 用語に対して java-version コマンドを実行します. Bash は、次のコマンドを実行して、応答ソース プログラムの異なるバージョンを切り替えることができます
sudoupdate-alternatives--configjava
Java を置き換える候補は 2 つあります (/usr/bin/java で提供)。
パス優先ステータスの選択
------------------------------------------------- --- -------------
0/usr/lib/jvm/jdk1.8.0_121/bin/java301手動モード
1/usr/lib/jvm/java-8-openjdk-i386/jre/bin/java300自動モード
*2/usr/lib/jvm/jdk1.8.0_121/bin/java301自動モード
現在の値を維持するには、[*] を押すか、選択した番号を入力します: 1
update-alternatives: /usr/lib/jvm/java-8-openjdk-i386/jre/bin/java を使用して /usr/bin/java(java) を自動モードで提供します
プロンプトに従って、別の番号を入力して切り替えます。もちろん、java_home 環境変数を変更して切り替えることもできます。
最後に、デフォルトの Python コンパイラも anaconda2 に変更しました。これにより、さまざまな科学的推定パッケージをダウンロードする手間が省けますty@Ubuntu:/$sudoupdate-alternatives--configpython
Python を置き換える候補は 3 つあります (/usr/bin/python で提供)。
パス優先ステータスの選択
------------------------------------------------- --- -------------
0/home/ty/anaconda2/bin/python2.7302手動モード
*1/home/ty/anaconda2/bin/python2.7302自動モード
2/usr/bin/python2.7301自動モード
3/usr/bin/python3.5300自動モード
現在の値を維持するには、[*] を押すか、選択した番号を入力します: 1
Python コマンドを用語で実行すると、numpy を直接インポートできます
Python
Python2.7.13|Anaconda4.3.0(32 ビット)|(デフォルト、202016 年 12 月、23:08:16)
[GCC4.4.720120313(RedHat4.4.7-1)]onlinux2
以上がapt-get および ppa ソースとは何ですか? apt-get ソースとの違いの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。