ホームページ  >  記事  >  運用・保守  >  Linuxシェルとはどういう意味ですか?

Linuxシェルとはどういう意味ですか?

青灯夜游
青灯夜游オリジナル
2022-11-11 11:18:572002ブラウズ

Linux では、シェルとは、オペレーティング システム上に存在する「コマンド ライン インタプリタ」である「シェル」を指します。これは、次のような形式で表現される、ユーザー指向のコマンド インターフェイスを指します。ユーザーが入力したインターフェースに加えて、このインターフェースは走行情報をフィードバックすることもできます。シェルの機能: 1. ユーザーのコマンドを処理のためにカーネルに変換します; 2. コア (カーネル) の処理結果をユーザーに変換します。

Linuxシェルとはどういう意味ですか?

#このチュートリアルの動作環境: linux7.3 システム、Dell G3 コンピューター。

Linux のシェルプログラムはシェル (コマンドラインインタプリタ) と呼ばれ、ユーザー指向のコマンドインターフェイスを指します。フォームはユーザーが入力できるインターフェイスであり、実行中のフィードバックも可能です。情報

シェルの機能は次のとおりです。

  • コマンドをカーネルに変換します。

  • カーネル処理結果を変換します。ユーザーへ

通常、使用するシェルは bash です。

コマンドを解釈するとき、bash は解釈に直接参加しませんが、コマンドを解釈するための新しいプロセスを作成します。bash は結果を待つだけでよいため、bash プロセスのセキュリティが確保されます。

1. シェル

1. 理由

Linux を使用するとき、私たちは皆、 Windows、linux にはグラフィカル インターフェイスがなく、操作には コマンド ラインを使用します。ただし、コマンドラインによる方法はコンピュータを直接操作するものではありません。 コンピュータの最下層は実際には

0 と 1

で構成されていることがわかっています。各コマンドの送信は最終的に 0,1 信号に変換されてコンピュータに送信され、コンピュータが対応する命令を実行します。しかし、もし誰もがこのようにコンピュータを使うとしたら、それは間違いなく非常に困難になるでしょう。

2. 機能Linux オペレーティング システムは、

コア (カーネル)

として機能し、ユーザー として機能します。その操作を直接行うことはできません。代わりに、shell を通じてコン​​ピュータと通信します。 「シェル」の英語の意味は "shell" です。これはオペレーティング システム上に存在する "コマンド ライン インタプリタ" であり、 ユーザー コマンドを変換するために使用されます。コア (カーネル)、コア (カーネル) は処理結果をユーザーに翻訳します#シェルは実際にはユーザーとオペレーティング システムの間のトランスレーター##とみなすことができます #,ユーザーとオペレーティング システムの間には言語の壁があります 直接通信することはできません

しかし、会話はシェルを介した翻訳を通じて行われます

3. Windows および Linux シェル

(1)windows

Windowsを使用する場合、ユーザーはWindowsのカーネルを直接操作することはできませんが、シェルを形成します。シェル グラフィカル インターフェイス をクリックして関連操作を実行します

(2) linux

Linux では、シェルis命令を解析します、解析命令をLinuxカーネルに渡し、結果をフィードバックしてから、結果をカーネルを通じて実行します

、結果を解析し、結果をユーザーに渡します。シェル

4. 存在意義

(1) ユーザーとオペレーティングシステム間のコミュニケーションを促進する

シェルを使用すると、ユーザーはよりシンプルな方法でオペレーティング システムを使用できるようになり、学習コストも大幅に削減されます。 (2) オペレーティング システムの保護

シェルのもう 1 つの目的は、オペレーティング システムを保護することです。

違法または無効なユーザー指示を傍受することで、

オペレーティング システムによる無用または有害な操作の実行を回避します。たとえば、Linux で文字化けした文字列を入力すると、シェルがコマンドをインターセプトして

5 を返します。 シェルがコマンドを実行するとき、シェルは子プロセスを

フォークすることによってユーザーの命令

を実行します。通常、Linuxシェルとはどういう意味ですか?シェル自体は対応する命令を実行しません ## #。

shell 自体は、翻訳派遣会社の社長と考えることができます。ユーザーは翻訳の必要があるとき、シェルにリクエストを出し、派遣会社社長様 多数かつ複雑なニーズに対応するため、原則として個人による訪問サービスは行わず、当社の指揮下にある他の翻訳者を派遣してサービスを提供させていただきます。これらの

海外駐在員翻訳者は子プロセス

です。

2. Linux 権限

##1. Linux 権限の概念

権限とは、次のユーザーに対する権限です。オペレーティング システムの制約

(1) ユーザーの分類

Linux では、ユーザーは 2 つのタイプに分類されます。 1 つは

superuser、つまり root です。もう 1 つは 一般ユーザー です。

1. スーパー ユーザー (root)

root ユーザーは 1 人だけです。 同時に、root ユーザーはオペレーティング システム上で最高の権限を持ちます。

OS における root ユーザーは古代国の皇帝のようなものであり、法的規定に拘束されないと考えられます。 root ユーザーでは、

どのコマンドの実行も権限によって制限されません他の一般ユーザーのファイルにアクセスして、ファイルを変更および削除できます オペレーティング システム、データベースのルート ディレクトリの削除、およびオペレーティング システムに深刻な損傷を与えたり、場合によってはクラッシュを引き起こすその他の操作を実行する可能性があります。

したがって、root アカウントのパスワードは次のとおりです。複雑なものに設定されており、良好に保たれています。

root ユーザー のコマンド プロンプトは “#”

##2. 一般ユーザー

一般ユーザーは複数の

を持つことができます。一般のユーザーには権限の制限が適用されます。これらの権限の制約は、システム ユーザーと root ユーザーによって決まります。 #一般ユーザーのコマンドプロンプト

”$”## (2) ユーザーの切り替え

Linux では、「su」コマンドを使用してユーザーを切り替えることができます

ここでは、ログに記録するアカウントのパスワードを入力する必要がありますの中へ。 。したがって、アカウントごとに異なるパスワードを設定するようにしてください。

Linuxシェルとはどういう意味ですか?アカウントを終了するには、

exit

と入力するか、ショートカット キー

"ctrl d"

を使用してください。

注:

一般ユーザーとして「su」を使用する場合、対応するユーザーのパスワードを入力する必要があります。ただし、root ユーザー以下の Linuxシェルとはどういう意味ですか? "su" については、対応するユーザーのパスワードを入力する必要はありません。

(3)通信を実行するためにユーザーを切り替えないでください。 コマンドLinuxシェルとはどういう意味ですか?

通常のユーザーの場合、現時点では、root権限が必要な命令を実行する必要があります。

、そして私たち

を実行するユーザーを切り替えたくない場合は、この時点で "sudo" コマンドを使用できます。このコマンドは、一般ユーザーの権限を一時的に昇格させることができます注: パスワードを入力するときは、root ユーザーのパスワードではなく、このユーザーのパスワードを入力してください。

ただし、この時点では次のエラーが発生します。

これは、

一般ユーザーが root の信頼できるユーザーではないためです。

また、一般ユーザーが root の対応するファイルに存在しないため、結果として、 「sudo」コマンドを実行できない場合Linuxシェルとはどういう意味ですか?

2.linux 権限管理

Linux では、権限は "人によって決定されます。 「」 「モノの属性」

で構成されます。

は操作を実行するユーザーを指します。Thing属性ファイルの属性を指します (1) ファイル訪問者 (人) の分類

Linux では、ファイル訪問者は 所有者 (所有者) グループの 3 つのカテゴリに分類されます。 ###、###他の###。 特定の人々

である root ユーザーや通常のユーザーとは異なり、3 種類のファイル訪問者は比較的

抽象的な概念であり、役割 と見なすことができます。それは このファイル内の他のユーザーの ID です。 たとえば、通常のユーザーは自分のディレクトリ内のファイルの所有者およびグループであるように見えますが、他のユーザーのファイルは他の人であるように見える場合があります。1.グループが属するファイルの所有者 存在理由 混乱する人もいるかもしれませんが、ファイルの所有者は他の人にとって理解しやすいです。 所有者はファイルの作成者です、そしてother は作成者を除きます。外部ユーザーの場合

、ファイルが属するグループの重要性は何ですか?

チーム Aチーム B が同じ Linux マシン上で製品を開発しているとします。この時点で、チーム A のメンバーがモジュールを実装しており、チーム リーダーはそのモジュールを表示したいと考えています。モジュールの内容。 Linux に所有者と他者が存在する場合、所有者は私たち自身であるため、リーダーがコードを表示したいときは、 他者の権限を解放する必要があります。ただし、このドキュメントでは別のチームも other とみなされます。other を手放すと、リーダーだけでなく、他のチームにもコードが見えることになり、コード漏洩が容易に発生する可能性があります。この状況を回避するには、グループに所属する必要があります。 ファイルが属するグループにリーダーを追加し、そのグループの権限を解放するだけで済みます。#これにより、他の権限を開かなくてもリーダーに対してコードを開くことができます#(2) モノの属性

##上記の test.c ファイルができました。 、ファイル名の前に属性の長いリストがあります。以前は、最大 "10 月 25 日 16:43"

最終更新時刻 Linuxシェルとはどういう意味ですか?

100

バイト単位のファイルであることがわかっていました。 。しかし、以前の属性はわかりません。 1. ファイル訪問者

ファイル訪問者の分類についても上で説明しました。実際、上の図では 最初のルートは所有者を表します

2 番目のルートは、それが属するグループを参照します Linuxシェルとはどういう意味ですか?。この 2 人のユーザー以外の

ユーザーは other

に属しており、2 を表示する必要がないため、Other は表示されません。 #Linux では、ファイルのサフィックスは無意味であることは誰もが知っています

。 linux

はファイル接尾辞によってファイルの種類 を区別しないためです。しかし、それは Linux にファイルタイプが存在しないという意味ではありません。 Linux ファイル タイプ

は、

"ll" Linuxシェルとはどういう意味ですか? で表示される

属性列の最初の列の最初の文字

によって区別されます。上の図からわかるように、test と test.c の最初の文字は、それぞれ "d""-" という文字です。これら 2 つの文字は実際にはファイルの種類です。 1) Linux の一般的なファイル タイプ-: 通常のファイル主にソース コード、ライブラリ ファイル、実行可能ファイルが含まれますプログラム、ドキュメント圧縮パッケージなど。

d: ディレクトリ ファイル

c: キャラクター デバイス ファイル

主にハードウェア、キーボード、モニターなど。

#b: ブロック デバイス ファイル##例: ディスク

##l: リンク ファイル

Windows を例にとると、デスクトップ上のショートカットは実際にはリンク ファイルです。ショートカットは、対応するソフトウェアのスタートアッププログラムにリンクします。 Linux では、

"ln -s a.out test"

コマンドを実行します。

この時点で、a に対して # が作成されます。 out file ##Link file test

で、実際のファイルの先頭は

"l" で、これは Link file

を表します。 a.out ファイルでは、テストを使用できます:

Linuxシェルとはどういう意味ですか?

p: パイプ ファイル パイプ ファイルには プロセス間が含まれます通信 、ここでは詳細には触れませんが、そのようなファイルが存在することを知っておく必要があります。

3. ファイルのアクセス許可

Linuxシェルとはどういう意味ですか?

ここでは、ファイルの種類である最初の文字を除いて、9 文字が残っていることがわかります。同時に、 ファイル訪問者は 3 つのカテゴリ

に分類され、これら 9 文字のうち、

の 3 文字ごとが訪問者のアクセス権のタイプ を表していることがわかります。

(1) ファイル権限の分類

ファイル権限は

"r"、"w"、"x" 1Linuxシェルとはどういう意味ですか? の 3 つのカテゴリに分類されます。 。

"r"read を表し、

ファイル

を読み取ります。 "w"

書き込み

、つまり ファイルの内容の変更を表します。

'"x"

execution を表します。つまり、対応するファイルを実行します

各ファイルの訪問者権限は、次の 3 つの権限で構成されます。 "rwx"のように並べ替えます。 対応する権限が "-" の場合、つまり権限

1Linuxシェルとはどういう意味ですか?

上の図に示すように、権限 "rwx -xr r-x" , は、 所有者が読み取り、書き込み、および実行権限を持っていることを意味します; が属するグループには読み取りおよび書き込み権限がありますが、実行権限はありません;訪問者は読み取りおよび実行権限を持っていますが、書き込み権限はありません。区別しやすくするためにスペースを入れていますが、実際の表示にはスペースは入りません

(2) 権限変更

1. # を変更します。 ## 1 つずつ Linux のアクセス許可は変更もサポートされており、変更する場合は

"chomd"

コマンドを使用します。たとえば、下の図の実行権限を「-wx」に変更したい場合は、"chomd u-r test":

1Linuxシェルとはどういう意味ですか? を実行できます。 #This この形式では、

"u"

所有者 を表し、 "-" は対応する権限 を削除する を表します。そして、 "g" が属するグループ を表し、 "o" 他の人 を表します。他の訪問者の権限を 変更したい場合は、それに応じて "u" を変更するだけです。 何らかの権限を追加したい場合は、「-」を「」に変更します。 もちろん、権限を追加または削除するときは、"chmod u-rwx,g-rwx test" など、

複数の訪問者と複数の権限

の形式を使用することもできます。 :

すべての訪問者の権限を 1Linuxシェルとはどういう意味ですか? 変更したい場合は、

"u、g、o" を変更することもできます。

から "a '' 対応する権限を取得します。ここでは説明しません。 2. ファイル所有者とグループを変更します

ファイル所有者を変更するには、対応する権限が必要です。そうでない場合は、 "sudo を使用する必要があります。 " 権利を高めます。ファイル所有者を変更するコマンドは

"chown 対応するユーザー ファイル名":

所属するグループを変更したい場合は

1Linuxシェルとはどういう意味ですか?,

"chgrp"

コマンドを使用します。 使用方法は "chown" と同じです 、ここでは説明しません 次の場合は 所有者とグループを同時に変更します

"chown username:username file name"

コマンドを使用するだけです。使用方法は同じです:

ここでは root ユーザーが使用されています。sudo を使用する必要はありません。通常のユーザーには sudo が必要です。

1Linuxシェルとはどういう意味ですか?other については、所有者とその所属グループ以外のユーザーは other

3 であるため、

を変更する必要はありません。権限が変更されます。同時に

コンピュータでは、すべてのコマンドが 0,1 信号の形式で送信されると述べました。

権限には 2 つの状態がある場合とない場合が存在し、

これも

0 と 1

で構成されます。

"rwx""111" として認識され、"---""000" として認識されます。そして、これらの binaryoctal に変換すると、「7」と「0」になります。したがって、アクセス許可の 8 進数の範囲は "[0, 7]" と見なすことができます。 8 進数では、"r"4 を表し、"w"2 を表し、"x" は # を表します##1したがって、アクセス許可を変更するときは、「u-」を使用してアクセス許可を変更するだけでなく、8 進形式で modify を使用することもできます。それは「chmod 3人の訪問者のファイル名を8進数で組み合わせたもの」です。たとえば、

"chmod 777 test"

:この変更方法は、複数の訪問者の権限を 1 つずつ変更する最初の方法よりも優れています。便宜上、

注:

"7"1Linuxシェルとはどういう意味ですか?

"35"

のように、この方法で整数を記述しない場合、システムは 2 番目から動作します。つまり、

other->group->owner

の方向から変更します (現時点では other 権限はデフォルトで 0 に設定されており、 は表示されません)。以下に示すように:

3. 権限マスク

実際、新しい ディレクトリ 開始権限 777 であり、新しい フォルダー 開始権限 666 です。しかし、私たちが実際に見ているものはこのようなものではありません。その理由は、ファイルまたはディレクトリの作成が umask (許可マスク) の影響を受けるためです。

(1) 権限マスクの役割

umask 値、つまり 権限マスクに存在する権限 を使用すると、システムは自動的に設定されます。 ファイルまたはディレクトリを生成するときは、アクセス許可マスクのアクセス許可を削除します

(2) umask の表示

umask 値を表示するには、"umask" コマンドを直接入力します。

1Linuxシェルとはどういう意味ですか?

ここでは最初の 0 について心配する必要はありません。最初の 0 に続くのは、各訪問者が削除する必要がある権限 です。つまり、システムのデフォルトでは、新しく作成された各ファイルまたはディレクトリの 所有者はアクセス許可 を削除する必要はなく、 が属するグループは 2 を削除する必要があります。 、書き込み権限;他の人は2、つまり書き込み権限

Linuxシェルとはどういう意味ですか?

022を削除する必要がありますファイルの開始パーミッション 666、ディレクトリの先頭からパーミッション 777 から 022 を削除して、上の図のパーミッションを取得します。

一般ユーザーとrootユーザーではumaskの値が異なることに注意してください。 通常ユーザーのumask値は002rootユーザー022

(3) umask 値の変更

umask 値はデフォルトでシステムによって生成されますが、手動で変更することもできます。

修正方法は「umask 0対応権限」です。たとえば、"umask 0444":

2Linuxシェルとはどういう意味ですか?

umask 値を変更すると、新しく作成されたオブジェクトのデフォルトの権限に対応する権限が追加されることがわかります。

注: umask 値は、初期権限を使用して権限値を下げるのではなく、対応する権限 を削除します。たとえば、ファイルの初期パーミッションは 666 です。このとき、umask 値を 0111 に変更します。引き算を使用すると、"r-xr-xr-x" となり、555 になります。しかし、実際には、1 に対応する "x" 権限を削除する 必要があります。つまり、"666" 権限のままです。つまり、"rw-rw-rw-" です。 :

2Linuxシェルとはどういう意味ですか?

なぜディレクトリの開始権限が 777 であるのに、ファイルの開始権限が 666 なのか疑問に思う人もいるかもしれません。その理由は、ディレクトリに入るには、実行権限、つまり「x」権限が必要であるためです。

2Linuxシェルとはどういう意味ですか?

## にいる場合#root ユーザー# 上記の操作が ## で実行される場合、root ユーザーは権限によって制限されていないため、 は "x" 権限なしでディレクトリに入ることができます。 #関連する推奨事項: 「 Linux ビデオ チュートリアル >>

以上がLinuxシェルとはどういう意味ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。