Linux Lunとは何ですか
linux lun は論理ユニット番号を指します。英語の完全な名前は「Logical Unit Number」です。実際には SCSI-3 で定義されており、ストレージ カテゴリでのみ使用されるだけではありません。 SCSI プロトコルの使用、テープ ドライブ、SCSI プリンタなどのすべての周辺機器。
#このチュートリアルの動作環境: linux5.9.8 システム、Dell G3 コンピューター。
Linux LUN とは何ですか?
1. LUN の概念
LUN の正式名称は Logical Unit Number であり、論理ユニット番号です。 SCSI バスに接続できるデバイスの数は制限されており、通常は 6 または 15 であることがわかっています。これらのデバイスを説明するには、ターゲット ID (SCSI ID とも呼ばれます) を使用できます。デバイスがシステムに追加されるとすぐに、コードネームがあり、装備を区別する場合は番号を言うだけでOKです。
実際には、記述する必要があるオブジェクトはこの数をはるかに超えているため、LUN の概念を導入しました。これは、LUN ID の機能がターゲット ID を拡張することを意味します。各ターゲットの下には複数の LUN デバイスが存在できます。通常、LUN デバイスを LUN と呼びます。このようにして、各デバイスの説明が元のターゲット x からターゲット x LUN y に変更されたと言えます。デバイスの機能が強化されます。
コンピュータに物理ハードディスクがあるのと同じように、C ドライブ、D ドライブ、E ドライブなどの論理ディスクにパーティション分割する必要があります。まとめると、LUN は、より多くのデバイスやオブジェクトを使用および記述するために導入されたメソッドにすぎず、特別なことは何もありません。
LUN ID は特定のデバイスと等しくありません。これは単なる数値であり、物理的な属性を表しません。実際の環境では、LUN はディスク領域、テープ ドライブ、またはメディア チェンジャーである可能性があります。等々。
2.LUN とは何ですか?
(一部の初心者にとって) LUN の謎は、LUN が目に見えるエンティティではなく、仮想オブジェクトであることが多いということです。たとえば、アレイ キャビネットはホストによってターゲット デバイスとみなされますが、特別なニーズがある場合は、ホストが使用できるようにディスク アレイ キャビネットのディスク領域をいくつかの小さなユニットに分割する必要があるため、いくつかのロジックが生成されます。ドライブに関しては、ターゲット デバイスよりも下位レベルの論理オブジェクトであり、これらの小さなディスク リソースを LUN0、LUN1、LUN2... などと呼ぶことに慣れています。オペレーティング システムの仕組み上、オペレーティング システムが認識する最小のストレージ オブジェクト レベルは LUN デバイスであり、これは論理的なオブジェクトであるため、論理デバイスと呼ばれることがよくあります。
私の Windows ではディスクだけが認識され、LUN については何も表示されないという人がいますが、これは LUN=物理ディスクという意味でしょうか?答えは「いいえ」です。注意していれば、ディスクのプロパティに LUN 値が表示されます。これは、ディスクが複数のストレージ リソース オブジェクトに分割されておらず、ディスク全体が LUN として使用されているためです。 ID のデフォルトはゼロです。それだけです。
私たちはこのような問題に遭遇しました。たとえば、誰かが尋ねたように、2 つのホストに接続されたディスク アレイがあります。2 つのホストが認識できるように LUN を分割しました。そして、最初にオペレーティング システムが分割するのではないかと考えました。ディスクを 2 つのパーティションに分割し、2 つのホストでそれぞれ 2 つのパーティションを使用できるようにし、ホストがダウンした場合は、クラスタ ソフトウェアを使用してパーティションを別のホストに切り替えます。これは可能ですか?答えも「いいえ」で、クラスタ ソフトウェアが操作するディスク装置はパーティションではなく LUN であるため、この操作は実行できません。もちろん、一部の環境 (一般的に要件が比較的低い環境) では、異なるディスク パーティションを複数のホストにマウントできますが、この場合、実際にはディスクの切り替えは行われないため、一部の要件の高い環境では、これが行われます。このような状況は単に存在することを許されません。
一部のメーカーおよび一部の製品の概念では、LUN ID が特定のデバイスにバインドされていることにも注意してください。たとえば、IBM の一部のテープ ライブラリでは、テープ ライブラリ全体に対してターゲット ID が 1 つだけあります。 、そして、チェンジャーとテープ ドライブは LUN0、LUN1、LUN2... に割り当てられますが、これは製品の特別な設計にすぎず、まれなケースでもあることに注意してください。
3. LUN とストレージ ボリュームの違いは何ですか?
ストレージ ボリュームと LUN の違いについて話し、延々と議論が続くのはよくあることです。上記から、LUN が何であるかを知ることができます。 LUN は英語の Logical Unit Number (論理ユニット番号) の略語で、実際には SCSI-3 で定義されており、ストレージ カテゴリで使用されるだけでなく、SCSI プロトコルを使用するすべての周辺機器を指すこともあります。テープドライブ、SCSIプリンターなどSCSI-3 の SAM モデルから、SCSI-3 (またはそれ以降のバージョン) のプロトコル層では、16 ビット幅の SCSI バスの場合、アドレス指定範囲は 16 個だけである、つまり、16 個の周辺デバイスのみが使用できると規定されていることがわかります。それぞれのデバイスはターゲットと呼ばれます。バスのアドレス指定機能を向上させるために、各ターゲット上で複数のデバイスを仮想化 (または実際に接続) できることを規定する別のレイヤーが導入されました。たとえば、テープ ドライブをターゲットに接続し、テープ ドライブを 1 つのターゲットに接続することができます。ターゲットに接続されている可能性があります。プリンタはターゲット アドレスを共有していますが、それらを区別するために LUN が使用されます。テープ ドライブは LUN0 であると想定され、プリンタは LUN2 であると想定されます。これにより、次のアドレス指定の問題が解決されます。複数のデバイス。
これは実際のデバイス接続の例であり、ストレージ アレイ (HP leftHand P4000 SAN など) が仮想デバイスの最良の例です。ストレージ ディスク アレイは、SCSI バスのターゲットとして表示され、SCSI ターゲット アドレスを占有します。しかし、ストレージ アレイのストレージ スペースが大きすぎます。集中ストレージと集中管理を実現するには、アプリケーションごとにストレージ アレイを異なる部分に分割する必要があります。の目標。したがって、分割された各記憶領域(領域)を区別するために、LUN1 はアドレス ブロック 0 ~ 1023、LUN2 はアドレス ブロック 1024 ~ 65535 というように区別します。上記からわかるように、コンピュータが SCSI 規格 (ここで使用する規格という言葉は SAM モデルの 4 つの層を表しており、インターフェイス、プロトコル、コマンドなどの言葉は使用していないことに注意してください) を使用して外部接続に接続する場合、ストレージ、使用これは、BUS-ターゲット-LUN の 3 値アドレス指定スキームです。バスとは、コンピューター上にある SCSI バスと SCSI カードの数を指します。ターゲットとは、バス上のデバイスのターゲット アドレスを指します。これは、SCSI アドレスと呼ばれることがよくあります。 LUN は、ターゲット上のデバイスによって割り当てられた論理アドレスと論理ユニット番号を指します。このアドレス指定スキームとデバイス接続方法は、物理的にスター接続され、論理的にバス接続されたネットワーク トポロジに似ています。
それでは、ストレージボリュームとは何でしょうか?これはストレージ ボリューム マネージャーから始まります。ストレージ ボリューム マネージャーはオペレーティング システム内のオブジェクトであり、主にストレージ ブロック デバイスのオンライン管理を担当します。ストレージ LUN の 1 つがコンピュータに接続されており、コンピュータがこのデバイスの存在を検出すると、それをボリューム マネージャに登録する必要があります。ボリューム マネージャは、ストレージ ボリュームに登録済みの仮想インターフェイスを提供し、ストレージ ボリュームの基本情報を取得します。ストレージ LUN (スペース サイズ、3 進アドレス、ブロック サイズ、開始アドレスと終了アドレス、ヘルス ステータスなど) を取得し、対応するデータ構造の抽象化を作成して、コンピュータがリアルタイム情報を動的にキャプチャできるようにします。登録されたストレージ LUN をボリュームマネージャーを通じて管理し、動的な管理を実現します。ストレージ LUN が登録され、ボリューム マネージャーによって抽象化されると、そのストレージ LUN は、ボリューム マネージャーによって悪用できる直接の従属とみなされます。ストレージ LUN は、再び小さな領域に分割することも、もちろん分割しないこともできます。その後、分割するかどうかを選択することもできます。後続のストレージスペースはデータの抽象化に使用され、ファイルシステム層による呼び出し用に関連するデータ構造が確立されます。したがって、ストレージ LUN とボリュームは物理的に同じものである可能性がありますが、私たちはそれを異なる角度やレベルから見て理解しているだけです。もちろん、コンピュータの場合、これらの違いは実際にデータ処理プロセスのニーズであり、それらを明確にする必要があります。
推奨学習: 「Linux ビデオ チュートリアル 」
以上がLinux Lunとは何ですかの詳細内容です。詳細については、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サーバーへの接続をブロックすることを確認します。

c言語条件付きコンパイルは、コンパイル時間条件に基づいてコードブロックを選択的にコンパイルするメカニズムです。導入方法には、#IFおよび#ELSEディレクティブを使用して、条件に基づいてコードブロックを選択します。一般的に使用される条件付き式には、STDC、_WIN32、Linuxが含まれます。実用的なケース:オペレーティングシステムに従って異なるメッセージを印刷します。システムの数字数に応じて異なるデータ型を使用します。コンパイラに応じて、異なるヘッダーファイルがサポートされています。条件付きコンパイルにより、コードの移植性と柔軟性が向上し、コンパイラ、オペレーティングシステム、CPUアーキテクチャの変更に適応できます。

1.0.1序文このプロジェクト(コードとコメントを含む)は、私の独学の錆の間に記録されました。不正確または不明確な声明があるかもしれませんが、謝罪してください。あなたがそれから利益を得るなら、それはさらに良いです。 1.0.2なぜRustrustは信頼性が高く効率的ですか? Rustは、CとCを同様のパフォーマンスであり、セキュリティが高くなり、CやCのようなエラーを確認するために頻繁な再コンパイルを必要としません。主な利点には、メモリセキュリティ(nullポインターの防止、ぶら下がりポインター、およびデータ競合の防止)が含まれます。スレッドセーフ(実行前にマルチスレッドコードが安全であることを確認してください)。未定義の動作を避けてください(例:境界のない配列、未知の変数、または解放されたメモリへのアクセス)。 Rustは、ジェネリックなどの最新の言語機能を提供します

Linuxの5つの基本コンポーネントは次のとおりです。1。カーネル、ハードウェアリソースの管理。 2。機能とサービスを提供するシステムライブラリ。 3.シェル、ユーザーがシステムと対話するインターフェイス。 4.ファイルシステム、データの保存と整理。 5。アプリケーション、システムリソースを使用して機能を実装します。

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

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

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

MySQLのインストール障害の主な理由は次のとおりです。1。許可の問題、管理者として実行するか、SUDOコマンドを使用する必要があります。 2。依存関係が欠落しており、関連する開発パッケージをインストールする必要があります。 3.ポート競合では、ポート3306を占めるプログラムを閉じるか、構成ファイルを変更する必要があります。 4.インストールパッケージが破損しているため、整合性をダウンロードして検証する必要があります。 5.環境変数は誤って構成されており、環境変数はオペレーティングシステムに従って正しく構成する必要があります。これらの問題を解決し、各ステップを慎重に確認して、MySQLを正常にインストールします。
