Linux で環境変数を構成する手順を共有する (写真)
Linux の環境変数には、システム レベルとユーザー レベルが含まれます。システム レベルの環境変数は、システムにログインするすべてのユーザーが読み取る必要があるシステム変数ですが、ユーザー レベルの環境変数は、システム レベルの環境変数です。ユーザーはシステムを使用します。したがって、次の記事では、Linux の環境変数設定に関する関連情報を主に紹介します。必要な方は参考にしてください。
はじめに
私たちが普段 Linux を使用するとき、いくつかの環境変数を設定する必要があることがよくありますが、このとき、通常はネットで検索するだけで、誰かがその経験を紹介します。しかし、問題は、設定が /etc/profile にあるという人もいれば、/etc/environment に設定されているという人も、~/.bash_profile に設定されているという人も、~ に設定されているという人もいます。 /.bashrc で構成されているという人もいますが、~/.bash_login で構成されているという人もいます。また、~/.profile で構成されているという人もいます。 。 。これは実に公平かつ合理的です。 。 。そこで問題は、Linux が設定ファイルをどのように読み取るのか、そしてその根拠は何なのかということです。以下の記事で詳しく紹介していますので、見ていきましょう。
Documentation
私は、出典を言わずに結論だけを言うという、「なぜ信じなければならないのか」という印象を与える行為がいつも大嫌いです。そして実際、ソースのない何気ない議論から導き出される結論は、基本的に他人の発言に基づいています。実際、他の人に質問するのではなく、ドキュメントに質問してください。 しばらく検索したところ、環境変数の設定に関する関連ドキュメントが実際には bash コマンドの man ドキュメントにあることがわかりました。結局のところ、これは私たちがよく使用するシェルです。
$man bash で、次のテキストを見つけました:
INVOCATION A login shell is one whose first character of argument zero is a -, or one started with the --login option. An interactive shell is one started without non-option arguments and without the -c option whose standard input and error are both connected to terminals (as determined by isatty(3)), or one started with the -i option. PS1 is set and $- includes i if bash is interactive, allowing a shell script or a startup file to test this state. The following paragraphs describe how bash executes its startup files. If any of the files exist but cannot be read, bash reports an error. Tildes are expanded in filenames as described below under Tilde Expan‐ sion in the EXPANSION section. When bash is invoked as an interactive login shell, or as a non-inter‐ active shell with the --login option, it first reads and executes com‐ mands from the file /etc/profile, if that file exists. After reading that file, it looks for ~/.bash_profile, ~/.bash_login, and ~/.profile, in that order, and reads and executes commands from the first one that exists and is readable. The --noprofile option may be used when the shell is started to inhibit this behavior. When a login shell exits, bash reads and executes commands from the file ~/.bash_logout, if it exists. When an interactive shell that is not a login shell is started, bash reads and executes commands from /etc/bash.bashrc and ~/.bashrc, if these files exist. This may be inhibited by using the --norc option. The --rcfile file option will force bash to read and execute commands from file instead of /etc/bash.bashrc and ~/.bashrc. When bash is started non-interactively, to run a shell script, for example, it looks for the variable BASH_ENV in the environment, expands its value if it appears there, and uses the expanded value as the name of a file to read and execute. Bash behaves as if the following com‐ mand were executed: if [ -n "$BASH_ENV" ]; then . "$BASH_ENV"; fi but the value of the PATH variable is not used to search for the file‐ name.
このテキストを通じて、いわゆる環境変数設定ファイルは、シェルのログイン時に自動的にロードされるファイルであることがわかりました。ただし、彼が定義したログインは、
ログイン シェル ログインの 2 つのタイプに分類されます。
対話型シェルログイン。
ログインシェルログイン
いわゆるログインシェルログインは、実際にはパスワードの入力を必要とするログインを指します。具体的には、起動、ssh ログイン、bash --login と入力して「パスワードを入力してログインするふり」をすることが含まれます。 このログイン方法では、システムは最初に /etc/profile ファイルを読み取り、次に 3 つのファイル ~/.bash_profile、~/.bash_login、および ~/.profile を順番に検索し、最初のファイルのみを実行します。そのうちの 1 つが存在します。 特に、最後の 3 つのファイル間の「論理 OR」関係に注意する必要があります。多くの場合、~/.profile ファイルが変更されていることがわかりますが、再度ログインしても設定が有効にならないのはなぜですか?これは、最初の 2 つのファイルのうち 1 つがシステムに存在し、残りのファイルが読み取られない可能性があるためです。
以下の 3 つの図は、この問題を非常によく示しています:
対話型シェル ログイン
いわゆる対話型シェル ログインは、実際にはログイン シェル ログインに関連しています。の条件。通常、ログイン後に右クリックしてターミナルを開くか、CTRL+ALT+T を押してターミナルを開きます (対話型シェル ログイン)。 このログイン方法では、システムは /etc/bash.bashrc と ~/.bashrc を順番に読み込んで実行します。 通常の状況では、一部の定数と一部のエイリアスは、デフォルトで ~/.bashrc ファイルに記録されます。特に $PS1 変数は、bash プロンプトの形式、スタイル、色を決定します。
注:
これら 2 つのログイン方法は異なる設定ファイルを読み取り、相互に重複がないことに注意してください。したがって、環境変数を設定する必要がある場合は、独自の環境変数に従って設定する必要があります。ログイン メソッドは、必要な変数を別のファイルに設定します。 たとえば、次のような古典的な質問です。
典型的な問題
異常な環境設定ファイルの設定の例としては、SSH を使用してサーバーにログインすると、次のようなプロンプトが表示されることが挙げられます:
bash-4.3$
はい、3 番目と同じです。上の画像 画像の bash と同様に、プロンプトは非常に奇妙で、ls を入力したときにファイルとフォルダーの色の区別がありません。 この問題は明らかに、$PS1 環境変数が設定されていないためにデフォルト値が使用されていることが原因ですが、.bashrc ファイルをチェックすると、$PS1 変数が定義されていることがわかります。 , しかし、sshはログインシェルに属しているため、ログイン時に読み込む設定ファイルは/etc/profileなどのファイルであり、.bashrcは読み込まれません。 この問題の原因は通常、/etc/profile 内のデフォルト設定ファイルを誤って削除したことであるため、解決策も非常に簡単です。 。 。 .bashrc 内のいくつかのファイルを /etc/profile にコピーするだけです。
この質問が私たちに与える啓発は、サーバーの変数を構成するときは、/etc/profile または ~/.bash_profile で構成するようにしてください。ssh を使用してサーバーにログインする場合、.bashrc ファイルは基本的に使用されないためです。自分のコンピュータの環境変数を構成するときは、.bashrc で環境変数を構成するようにしてください。そうすれば、ターミナルを開いている限りこのファイルが読み取られるため、ログアウトせずに構成を適用できます (/etc/ はログアウトして再度ログインしたプロファイルに適用されます)。
概要
以上がLinux で環境変数を構成する手順を共有する (写真)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









ルートとしてMySQLにログインできない主な理由は、許可の問題、構成ファイルエラー、一貫性のないパスワード、ソケットファイルの問題、またはファイアウォール傍受です。解決策には、構成ファイルのBind-Addressパラメーターが正しく構成されているかどうかを確認します。ルートユーザー許可が変更されているか削除されてリセットされているかを確認します。ケースや特殊文字を含むパスワードが正確であることを確認します。ソケットファイルの許可設定とパスを確認します。ファイアウォールがMySQLサーバーへの接続をブロックすることを確認します。

MySQLのインストールエラーのソリューションは次のとおりです。1。システム環境を慎重に確認して、MySQL依存関係ライブラリの要件が満たされていることを確認します。異なるオペレーティングシステムとバージョンの要件は異なります。 2.エラーメッセージを慎重に読み取り、依存関係のインストールやSUDOコマンドの使用など、プロンプト(ライブラリファイルの欠落やアクセス許可など)に従って対応する測定値を取得します。 3.必要に応じて、ソースコードをインストールし、コンパイルログを慎重に確認してみてください。これには、一定量のLinuxの知識と経験が必要です。最終的に問題を解決する鍵は、システム環境とエラー情報を慎重に確認し、公式の文書を参照することです。

MySQLの起動が失敗する理由はたくさんあり、エラーログをチェックすることで診断できます。一般的な原因には、ポートの競合(ポート占有率をチェックして構成の変更)、許可の問題(ユーザー許可を実行するサービスを確認)、構成ファイルエラー(パラメーター設定のチェック)、データディレクトリの破損(テーブルスペースの復元)、INNODBテーブルスペースの問題(IBDATA1ファイルのチェック)、プラグインロード障害(エラーログのチェック)が含まれます。問題を解決するときは、エラーログに基づいてそれらを分析し、問題の根本原因を見つけ、問題を防ぐために定期的にデータをバックアップする習慣を開発する必要があります。

MySQLはAndroidで直接実行できませんが、次の方法を使用して間接的に実装できます。Androidシステムに構築されたLightWeight Database SQLiteを使用して、別のサーバーを必要とせず、モバイルデバイスアプリケーションに非常に適したリソース使用量が少ない。 MySQLサーバーにリモートで接続し、データの読み取りと書き込みのためにネットワークを介してリモートサーバー上のMySQLデータベースに接続しますが、強力なネットワーク依存関係、セキュリティの問題、サーバーコストなどの短所があります。

端末からmysqlにアクセスできない場合は、次の理由があります。MySQLサービスが実行されていません。接続コマンドエラー;許可が不十分です。ファイアウォールは接続をブロックします。 mysql構成ファイルエラー。

Linuxは、サーバー、組み込みシステム、デスクトップ環境で広く使用されています。 1)サーバーフィールドでは、Linuxは、その安定性とセキュリティにより、Webサイト、データベース、アプリケーションをホストするための理想的な選択肢となっています。 2)埋め込みシステムでは、Linuxは高いカスタマイズと効率で人気があります。 3)デスクトップ環境では、Linuxはさまざまなユーザーのニーズを満たすために、さまざまなデスクトップ環境を提供します。

MySQLおよびMariaDBデータベースの効果的な監視は、最適なパフォーマンスを維持し、潜在的なボトルネックを特定し、システム全体の信頼性を確保するために重要です。 Prometheus MySQL Exporterは、プロアクティブな管理とトラブルシューティングに重要なデータベースメトリックに関する詳細な洞察を提供する強力なツールです。

MySQLのインストール障害は、通常、依存関係の欠如によって引き起こされます。解決策:1。システムパッケージマネージャー(Linux APT、YUM、DNF、Windows VisualC Redistributableなど)を使用して、sudoaptinStalllibmysqlclient-devなどの欠落している依存関係ライブラリをインストールします。 2.エラー情報を慎重に確認し、複雑な依存関係を1つずつ解決します。 3.パッケージマネージャーのソースが正しく構成され、ネットワークにアクセスできることを確認します。 4. Windowsの場合は、必要なランタイムライブラリをダウンロードしてインストールします。公式文書を読んで検索エンジンを適切に使用する習慣を開発することは、問題を効果的に解決することができます。
