Google PlayストアでUnionpediaアプリを復元するために作業中です
出ていきます入ってきます
🌟ナビゲーションを改善するためにデザインを簡素化しました!
Instagram Facebook X LinkedIn
あなたのロゴとドメインを持つ独自のユニオンペディア、月額9.99 USDから
私のユニオンペディアを作成する

Chroot

索引 Chroot

chrootとは、UNIXオペレーティングシステム (OS) において、現在のプロセスとその子プロセス群に対してルートディレクトリを変更する操作である。ルートディレクトリを別のディレクトリに変更されたプロセスは、その範囲外のファイルにはアクセスできなくなるため、この操作をchroot監獄や模擬ルートなどとも呼ぶ。"chroot" は chroot(2) システムコールおよび chroot(8) コマンドを意味する。 chroot システムコールは、Unix Version 7 (1979) に新機能として加えられ、1982年3月18日(4.2BSDリリースの17ヶ月前)、ビル・ジョイがインストールおよびビルドシステムのテスト用にBSDに導入したのが起源である。

目次

  1. 49 関係: 名前空間帯域幅ハニーポットメール転送エージェントライブラリリンケージエディタルートディレクトリブートパイプ (コンピュータ)ビル・ジョイビルド (ソフトウェア)デバイスファイルファイルシステムファイル記述子アプリケーションバイナリインタフェースオペレーティングシステムシステムコールスーパーユーザーソフトウェアテストサンドボックス (セキュリティ)入出力動的リンクBerkeley Software DistributionCgroupsDebian計算資源File Transfer ProtocolForkFreeBSDFreeBSD jailGoogleLinuxLinux-VServerLive CDLXCNetBSDOpenBSDOpenSSHOpenVZOSレベルの仮想化Parallels Virtuozzo ContainersPostfixSetuidSolarisSUSEUbuntuUNIX1982年3月18日

  2. UNIXのシステムコール
  3. コンピュータセキュリティ手続

名前空間

名前空間(なまえくうかん、namespace / name-space)は、名前の集合を分割することで衝突の可能性を低減しつつ参照を容易にする概念である。 この集合は、全事象の元の全ての組み合わせ可能なものからなる集合全体および物理的な名称を指すことが可能である。つまり英字・数字・記号などを組みあわせて作られる名前全てを含む集合である。名前に結び付けられる実体(型や変数や関数)は、名前がそれぞれどの集合(空間)に属するか指定されることで一意に定まる。名前空間が異なれば同じ名前でも別の実体に対応付けられる。

見る Chrootと名前空間

帯域幅

帯域幅(たいいきはば)または、帯域(たいいき)、周波数帯域(しゅうはすうたいいき)、バンド幅(英: Bandwidth)とは、周波数の範囲を指し、一般にヘルツで示される。帯域幅は、情報理論、電波通信、信号処理、分光法などの分野で重要な概念となっている。 帯域幅と情報伝達における通信路容量とは密接に関連しており、通信路容量のことを指す代名詞のように「帯域幅」の語がしばしば使われる。特に何らかの媒体や機器を経由して情報(データ)を転送する際の転送レートを「帯域幅」あるいは「バンド幅」と呼ぶ。

見る Chrootと帯域幅

ハニーポット

ハニーポット (honeypot) は、コンピュータセキュリティにおいて、悪意のある攻撃を受けやすいように設定した機器を、おとりとしてネットワーク上に公開することにより、サイバー攻撃を誘引し、攻撃者の特定や攻撃手法を分析する手法、あるいは、そのような用途で使用するシステムをいう。 ハニーポットを設置する目的は、ウイルスやワームの検体の入手、不正アクセスを行うクラッカーをおびき寄せ重要なシステムから攻撃をそらしたり、記録された操作ログ・通信ログなどから不正アクセスの手法と傾向の調査を行うなどである。

見る Chrootとハニーポット

メール転送エージェント

メール転送エージェント(メールてんそうエージェント、Mail Transfer AgentまたはMessage Transfer Agent、略称:MTA)は、電子メールを相手方に送信するためのメールサーバ機能における中心的な機能である。 電子メールクライアント(MUA)からSMTPなどでメールを受信する。その後、相手別に振り分け、メール配送エージェント(MDA)へ振り分ける機能を持っている。 MDAとMTAはセットや一体になっている場合も多く、メールサーバ全体のことをMTAという場合もある。 DNSの中で指示する場合には MX(Mail eXchanger)と表記する。

見る Chrootとメール転送エージェント

ライブラリ

ライブラリ()は、汎用性の高い複数のプログラムを再利用可能な形でひとまとまりにしたものである。ライブラリと呼ぶときは、それ単体ではプログラムとして動作させることはできない、つまり実行ファイルではない場合がある。ライブラリは他のプログラムに何らかの機能を提供するコードの集まりと言える。ソースコードの場合と、オブジェクトコード、あるいは専用の形式を用いる場合とがある。たとえば、UNIXのライブラリはオブジェクトコードをarと呼ばれるアーカイブツール(アーカイバ)でひとまとめにして利用する。図書館()と同様にプログラム(算譜)の書庫であるので、索引方法が重要である。 また、ソフトウェア以外の再利用可能なものの集合について使われることもある(音声データなど)。

見る Chrootとライブラリ

リンケージエディタ

リンケージエディタ(linkage editor)またはリンカ(linker)とは、機械語のプログラムの断片を結合し実行可能なプログラムを作成するプログラムのことである。例として、C言語では、ソースファイルをコンパイルするとオブジェクトファイルが生成される。それに他のオブジェクトファイルやライブラリを結合して1つの実行可能なプログラム(実行可能ファイル)が完成する。この結合(リンク)の際リンケージエディタが使われる。 日本語では「連係編集プログラム」とも訳される。

見る Chrootとリンケージエディタ

ルートディレクトリ

ルートディレクトリ ルートディレクトリ (root directory) とは、コンピュータファイルシステムにおいて、ファイル階層における最初または最上位のディレクトリのことである。ルートディレクトリは、全ての枝の開始点である木の幹に例えることができる。ルートファイルシステムは、ルートディレクトリが位置しているのと同じディスクパーティションに含まれるファイルシステムである。ルートファイルシステムは、システムのブート時にマウントされる他の全てのファイルシステムの頂点にあるファイルシステムである。

見る Chrootとルートディレクトリ

ブート

Windows XPをブート中のインターネット公衆電話 ブート(boot)またはブートストラップ(bootstrap)は、コンピュータシステムの電源投入時、あるいはシステムのリセット後、モニタやOSなどなんらかの基本的なシステムソフトウェアを主記憶に展開し、ユーザプログラムを実行できるようにするまでの処理の流れをいう。ブートローダ(boot loader)は、以上のプロセスで使われるローダ、すなわち不揮発性の補助記憶にある目的のプログラムを読み出し、揮発性の主記憶に書き込むプログラムのことである。 電源投入時のブートのことを「コールドブート」、リセットされたことによるブートを「ウォームブート」という。ウォームブートでは、コールドブートにおける最初のほうの手続きのいくつかが必要無い場合もあり、そういった手続きを省略することもある。

見る Chrootとブート

パイプ (コンピュータ)

ある端末上で3つのパイプで繋いだプログラムを実行する際の入出力の流れ Unix系オペレーティングシステムのパイプ(pipe)、もしくはパイプライン (pipeline) とは、複数のプログラムの入出力をつなぐための仕組み(プロセス間通信)の一つである。

見る Chrootとパイプ (コンピュータ)

ビル・ジョイ

ウィリアム・ネルソン・ジョイ(William Nelson Joy, 1954年11月8日 - )、通称ビル・ジョイ(Bill Joy)は、アメリカ合衆国のコンピュータ科学者でありコンピュータ技術者。KPCB パートナー。元サン・マイクロシステムズチーフサイエンティスト。BSD開発の初期にまとめ役として働き、viテキストエディタを開発したことで知られている。 漢字を勉強したことがあり、来日した際のサインなどで、名前を「美流上位」と書いている。

見る Chrootとビル・ジョイ

ビルド (ソフトウェア)

ソフトウェアのビルド(build)は、プログラミング言語で書かれたソースコードファイルや各種リソースファイルを独立したソフトウェア生成物に変換するコンピュータ上で実行されるプロセス、またはその結果を指す。ビルドの最終生成物はバイナリ形式の実行ファイルであったり、再利用可能なライブラリであったり、バイトコードあるいはそれらをまとめたアーカイブであったりすることもある。

見る Chrootとビルド (ソフトウェア)

デバイスファイル

デバイスファイル(Device file)またはスペシャルファイル(Special file)とは、ファイルシステム上であたかも通常のファイルのような形で提示されるデバイスドライバのインタフェースである。これにより、ソフトウェアが入出力システムコールを通してデバイスドライバを使うことができ、作業が単純化される。 デバイスファイルは、プリンターなどの周辺機器への単純なインタフェースを提供する。また、ディスクパーティションなどの機器上の特定のリソースへのアクセスにも使える。さらに、/dev/nullや擬似乱数生成器といった特定の機器とは対応しないリソースへのアクセスにも使われる。

見る Chrootとデバイスファイル

ファイルシステム

ファイルシステム()は、コンピュータのリソースを操作するための、オペレーティングシステム (OS) が持つ機能の一つ。ファイルとは、主に補助記憶装置に格納されたデータを指すが、デバイスやプロセス、カーネル内の情報といったものもファイルとして提供するファイルシステムもある。 より正確に定義すれば、ファイルシステムは抽象データ型の集まりであり、ストレージ、階層構造、データの操作/アクセス/検索のために実装されたものである。ファイルシステムを特殊用途のデータベース管理システム (DBMS) と見なせるかどうかは議論があるが、ファイルシステムとデータベース管理システムには多くの共通点がある。

見る Chrootとファイルシステム

ファイル記述子

標準入力 (stdin)、標準出力 (stdout)、標準エラー出力 (stderr) のファイル記述子の概念図 ファイル記述子(ファイルきじゅつし、file descriptor)とは、コンピュータプログラミングにおいてファイルへの参照を抽象化したキーである。ファイルディスクリプタ/ファイルデスクリプタあるいはFDとも呼ばれる。UNIX系システムでテキストターミナルを含むファイルストリームを参照する際に用いられる。 MS-DOSやMicrosoft Windowsでは、「ファイルハンドル」がほぼ相当するが、技術的には異なるオブジェクトである。

見る Chrootとファイル記述子

アプリケーションバイナリインタフェース

アプリケーションバイナリインタフェース(ABI, Application Binary Interface)とは、アプリケーション(ユーザ)プログラムとシステム(オペレーティングシステムやライブラリ)との間の、バイナリレベルのインタフェースである。また、アプリケーション相互間や、それらの部品(プラグイン等)とのバイナリインタフェースもある。 ABIはアプリケーションプログラミングインタフェース (API) とは異なる。APIはソースコードとライブラリ間のインタフェースを定義したものであり、同じAPIをサポートしたシステム間では同じソースコードをコンパイルして利用できる。一方、ABIはオブジェクトコードレベルのインタフェースであり、互換ABIをサポートするシステム間では同じ実行ファイルを変更無しで動作させることができる。

見る Chrootとアプリケーションバイナリインタフェース

オペレーティングシステム

オペレーティングシステム(operating system、略称:OS、オーエス)とは、コンピュータのオペレーション(操作・運用・運転)を司るシステムソフトウェアである。

見る Chrootとオペレーティングシステム

システムコール

システムコール(system call、accessdate)とは、オペレーティングシステム (OS)(より明確に言えばOSのカーネル)の機能を呼び出すために使用される機構のこと。実際のプログラミングにおいては、OSの機能は関数 (API) 呼び出しによって実現されるので、OSの備える関数 (API) のことを指すこともある。なお、μITRONではサービスコールと呼ばれる。また、OSのことをスーパーバイザとも呼ぶため、スーパーバイザコールともいう。 例えば、C言語で使用できるfopen()やmalloc()などのライブラリ関数は、その関数内においてシステムコール(例えばPOSIX準拠のOSであればopen()やsbrk()など)を呼び出す。

見る Chrootとシステムコール

スーパーユーザー

スーパーユーザー(Superuser)とは、多くのオペレーティングシステム (OS) でシステムアドミニストレータが制御する特殊なユーザーアカウントを指す。オペレーティングシステム (OS) によって実際の呼称は異なり、ルート、アドミニストレータ、アドミン、スーパーバイザ などとも呼ばれる。場合によっては名称は重要ではなく、ユーザーのプロファイルで権限フラグを設定することで特権的機能を実行できることもある(管理者権限などと呼ばれる)。 スーパーユーザーの概念を持つOSでは、一般に多くのアプリケーションは、システム全体を変更できない「通常アカウント」で実行することが推奨される。

見る Chrootとスーパーユーザー

ソフトウェアテスト

ソフトウェアテスト (英) は、コンピュータのプログラムから仕様にない振舞または欠陥(バグ)を見つけ出す作業のことである。ソフトウェアテストで見つかったプログラム中の欠陥を修正する作業をデバッグという。ソフトウェアテストに成功するとは、テストで欠陥が発見されるか、規定した試験項目にすべて合格するか、規定した品質目標に到達することである。目標とした品質には、規定した試験項目にすべて合格することもある。例えば、OS, プログラミング言語では、仕様を満たしているかどうかの適合試験を規定している。ソフトウェアテストでは、欠陥が存在することを示すことはできるが、欠陥が存在しないことは証明できない。ソフトウェアに仕様にない振舞がないことを保証する作業を証明といい、証明用のシステム、証明しやすい言語も多数存在している。本項では動的なソフトウェアテストを中心に扱う。

見る Chrootとソフトウェアテスト

サンドボックス (セキュリティ)

コンピュータセキュリティ技術において、サンドボックス (sandbox) は、外部から受け取ったプログラムを保護された領域で動作させることによって、システムが不正に操作されるのを防ぐセキュリティ機構のことをいう。 実行されるプログラムは保護された領域に入り、ほかのプログラムやデータなどを操作できない状態にされて動作するため、プログラムが暴走したりウイルスを動作させようとしてもシステムに影響が及ばないようになっている。 ウェブページに配置されたJavaアプレットやFlash、JavaScriptなどのプログラムは自動的に実行される。そのため、気づかないうちにコンピュータ上にあるファイルを盗み見られたり書き換えられたり、あるいはコンピュータウイルスに感染させられたりするおそれがある。そこで安心してネットサーフィンを楽しめるように提供されたのが、そういった攻撃のできない安全な「砂場」(サンドボックス)である。

見る Chrootとサンドボックス (セキュリティ)

入出力

入出力(にゅうしゅつりょく、input/output)は、データなどの「ものごと」の流れにおける出入りのことで、入力と出力の2つを総称した概念のことである。input/outputの頭文字をとってと略されることがある。

見る Chrootと入出力

動的リンク

動的リンク(どうてきりんく、dynamic link)とは二つの意味がある。

見る Chrootと動的リンク

Berkeley Software Distribution

Berkeley Software Distributionは、1977年から1995年までカリフォルニア大学バークレー校 (University of California, Berkeley, UCB) の Computer Systems Research Group (CSRG) が開発・配布したソフトウェア群、およびUNIXオペレーティングシステム (OS) を言う。略称はBSD(ビーエスディー)。なお、今日「BSD」という名称は同OSを元に開発されたBSDの子孫の総称として使われることもあるが、この項では主に前述のUCBによるソフトウェア群およびOSについて述べる。 元となったコードベースと設計はAT&TのUNIXと共通であるため、歴史的にはBSDはUNIXの支流 "BSD UNIX" とみなされてきた。1980年代、ワークステーションクラスのシステムベンダーがプロプライエタリなUNIXとしてBSDを広く採用していた。例えば、DECのUltrix、サン・マイクロシステムズのSunOSなどである。これは、ライセンス条件の容易だったためと、当時の多くの技術系企業の創業者がBSDを熟知していたためである。

見る ChrootとBerkeley Software Distribution

Cgroups

cgroups (control groups) とは、プロセスグループのリソース(CPU、メモリ、ディスクI/Oなど)の利用を制限・隔離するLinuxカーネルの機能。"process containers" という名称で Rohit Seth が2006年9月から開発を開始し、2007年に cgroups と名称変更され、2008年1月に Linux カーネル 2.6.24 にマージされた。それ以来、多くの機能とコントローラが追加された。

見る ChrootとCgroups

Debian

Debian( デビアン)またはDebian ProjectはLinuxディストリビューションのひとつであるDebian GNU/Linuxを中心とするプロジェクトである。 GNUプロジェクトの精神の尊重と、同プロジェクトによるプロダクトの積極的な採用などが特徴である。システム全体を単にLinuxと呼ぶ事が多いのに対し、Debianでは「GNU/Linux」という呼称を積極的に使っている。呼称が分かれる経緯についてはGNU/Linux名称論争を参照。 Linuxディストリビューションの他、カーネル(核)をLinuxカーネルからGNU HurdやFreeBSDのカーネルに置き換えた、Debian GNU/HurdやDebian GNU/kFreeBSDなどがある。

見る ChrootとDebian

計算資源

計算資源(けいさんしげん、英語: computational resource)とは、コンピュータ科学などで、計算機(具体的なコンピュータ、そこで動くプロセスやジョブ、あるいは抽象的な計算模型)が「計算量」のために費す、具体的あるいは抽象的な「資源」である。計算機資源と言うこともあるが、その場合はプロセッサ時間や記憶装置などコンピュータのハードウェアの占有量のような具体的なものを指していることが多い。 その他に、アプリケーションプログラムの設定データのような情報をデスクトップ環境などのシステムが保存しているものを「リソース」と呼ぶことがある。詳細は、最後の#その他の節のリンク先を参照のこと。

見る Chrootと計算資源

File Transfer Protocol

File Transfer Protocol(ファイル・トランスファー・プロトコル、FTP、ファイル転送プロトコル)は、コンピュータネットワーク上のクライアントとサーバの間でファイル転送を行うための通信プロトコルの一つである。

見る ChrootとFile Transfer Protocol

Fork

fork(フォーク)とは、プロセスのコピーを生成するものである。UNIXおよびUnix系OSではシステムコールのひとつで、新たに作り出されたプロセスを子プロセス、fork()を呼び出したプロセスを親プロセスと呼び、fork()システムコールの戻り値によって親と子の処理を区別する。子プロセスではfork()の戻り値は0であり、親プロセスの戻り値は新たに生成された子プロセスのプロセス識別子、エラーが起きた場合は-1である。また、マルチスレッド環境でスレッドのコピーを作ることもforkと呼ぶことがある。 forkが呼び出されると、子プロセスのためのアドレス空間が新たに作成される。子プロセスのアドレス空間には親プロセスが持っていた全セグメントのコピーがあるが、コピーオンライト機能によって実際の物理メモリの確保は遅延される(すなわち、一時的に同じ物理メモリセグメント群を親子で共有する)。親プロセスと子プロセスは同じコードセグメントを持つが、独立して実行される。

見る ChrootとFork

FreeBSD

FreeBSD(フリービーエスディー)は、フリーでオープンソースのUnix系オペレーティングシステム (OS) である。Research UnixをベースにしたBerkeley Software Distributionに由来しており、最初のバージョンは1993年にリリースされた。2005年には、FreeBSDは最も人気のあるオープンソースのBSDオペレーティングシステムとなり、単純に寛容にライセンスされたBSDシステムのインストール数の4分の3以上を占めていた。 FreeBSDはLinuxと似ているが、 範囲とライセンスに2つの大きな違いがある。すなわち、Linuxはカーネルとデバイスドライバのみを提供し、システムソフトウェアをサードパーティーに頼っているのに対し、FreeBSDはカーネル 、 デバイスドライバ 、 ユーザーランドユーティリティ、およびドキュメントといった完全なシステムを維持している。FreeBSDのソースコードは通常、寛容なBSDライセンスでリリースされており、Linuxで使われているコピーレフトのGPLとは対照的である。

見る ChrootとFreeBSD

FreeBSD jail

FreeBSD jailはOSレベル仮想化機構実装の一つである。jailを使うと、管理者がFreeBSDベースの計算機システムをjailと呼ばれる独立した小さなシステムに分割できるようになる。 FreeBSD jailは、レンタルサーバ業者が業者の提供するサービスと顧客のサービスとを分離するのによく使われる。 このように分離することで安全性を確保し、管理の手間を軽減できる。 サーバデーモンの設定レベルで分離するのと違い、jailからは自分に割り当てられたファイルシステムおよびプロセス空間しか扱えないようになっている。

見る ChrootとFreeBSD jail

Google

Google LLC(グーグル)は、インターネット関連のサービスと製品に特化したアメリカ合衆国の企業 (LLC) である。持株会社であるAlphabetの子会社。 世界最大の検索エンジン、オンライン広告、クラウドコンピューティング、ソフトウェア、ハードウェア関連の事業がある。アメリカ合衆国の主要なIT企業で、 ビッグ・テックの一つ。

見る ChrootとGoogle

Linux

Linux(リナックス、他の読みは#「Linux」の読み方で後述)とは、狭義にはUnix系オペレーティングシステムカーネルであるLinuxカーネルを指し、広義にはそれをカーネルとして周辺を整備したシステム全体のことをいう(GNU/Linuxも参照)。

見る ChrootとLinux

Linux-VServer

Linux-VServer は、LinuxカーネルにOSレベルの仮想化機能を追加することで実装されたバーチャル・プライベート・サーバ。オープンソースソフトウェアとして開発・配布されており、GNU General Public License (GPL) でライセンスされている。

見る ChrootとLinux-VServer

Live CD

Live CD(ライブCD)あるいはLive DVD(ライブDVD)とは、ハードディスク(HDD)やSSDなどの内部補助記憶装置にインストール(導入)することなく、直接OSを起動させることができるCDやDVDである。

見る ChrootとLive CD

LXC

LXC()は、1つのLinuxカーネルを実行しているコントロールホスト上で、複数の隔離されたLinuxシステム(コンテナ)を走らせる、OSレベル仮想化のソフトウェアである。 Linuxカーネルが提供するcgroupsという機能を利用することで、リソース(CPU、メモリ、ブロックI/O、ネットワークなど)の制限と優先順位付けが可能になっており、そのために仮想マシンを使用する必要がない。また、機能を利用すれば、アプリケーションから見たオペレーティング・システムの環境を完全に隔離することができるため、プロセスツリー、ネットワーク、ユーザー識別子、されたファイルシステムを仮想化することができる。 LXCはカーネルのcgroupsと隔離された名前空間のサポートを組み合わせることで、アプリケーションのために隔離された環境を提供する。初期のバージョンのDockerはLXCをコンテナ実行ドライバとして利用していたが、Docker v0.9ではオプションとなり、Docker v1.10でサポートが終了した。

見る ChrootとLXC

NetBSD

NetBSD(ネットビーエスディー)は、UNIXライクなオープンソースのオペレーティングシステムである。いわゆるBSDの子孫のひとつであるが、そのなかでも、386BSDがフォークされて生まれた公式リリースの中で最初に生まれたものである。1993年5月に最初の公式リリースである0.8が公開された。さまざまなアーキテクチャへの高い移植性、コードの分かりやすさ、などに焦点が置かれて開発されている。→#特徴 互換性の乏しい商用UNIXが多数併存していた1990年代前半当時には、移植性を重視し、多くのハードウエア上で同一のUNIXが動作することを目指したNetBSDの方向性には一定の意味があると思われていた。しかしながら、実際には、商用UNIXを捨ててNetBSDにOSを載せ替える動きはほとんど見られず、NetBSDは事実上x86アーキテクチャーのPC用OSとして使われることになった。このことは、x86を優先的に考えるFreeBSDと比較した場合、移植性を重視するNetBSDはx86対応の開発が遅れがちになるという問題を抱えることとなり、FreeBSDや他のBSD系OSに、利用者数面で徐々に差をつけられることとなった。

見る ChrootとNetBSD

OpenBSD

OpenBSD(オープンビーエスディー)は、セキュリティや正当性(correctness)などを特に重視した、BSDをベースにして開発された、オープンソースの、Unix系オペレーティングシステム (OS)。NetBSDの主要開発者のひとりであるテオ・デ・ラート(Theo de Raadt)が、1995年にNetBSDからフォークさせる形で開発が始まったものであり、BSDの子孫のひとつである。

見る ChrootとOpenBSD

OpenSSH

OpenSSH (OpenBSD Secure Shell) とは、SSHプロトコルを利用するためのソフトウェアで、SSHサーバおよびSSHクライアントを含む。OpenSSHは、OpenBSDプロジェクトにより開発が行われ、BSDライセンスで公開されている。オリジナルのSSH実装であるSSH Tectiaなど、SSHには他にいくつかの実装があるが、2008年の時点でOpenSSHは世界で最も使用されているSSH実装である。

見る ChrootとOpenSSH

OpenVZ

OpenVZ(オープンブイジー)は、Linuxカーネルをベースに開発された Red Hat Enterprise Linux (RHEL) 用のオペレーティングシステム (OS) レベルのサーバ仮想化ソフト。 Parallels Virtuozzo Containers for Linuxのオープンソース版であり、1つの物理サーバ上に複数の独立したLinuxインスタンスを作成することができる。ただし、Linuxカーネルをすべてのインスタンスで共有するため、Linux以外の環境(Windowsなど)を動作させることはできない。

見る ChrootとOpenVZ

OSレベルの仮想化

OSレベルの仮想化(英:OS-level virtualization)とは、オペレーティングシステム(OS)の枠組みで、コンテナ(LXC、Solaris containers、Docker、Podman)、zones(Solaris containers)、virtual private servers(OpenVZ)、パーティション、仮想環境(VEs)、仮想カーネル(DragonFly BSD)、jails(FreeBSD jailまたはchroot jail)と呼ばれる、複数の分離したユーザー空間インスタンスをカーネルによって割り当てる。このようなインスタンスはその中で実行されているプログラムからの視点では実際のコンピュータのように見えることがある。通常のOS上で動作するコンピュータプログラムは、そのコンピュータのすべての資源(接続されているデバイス、ファイルやフォルダ、ネットワーク共有、CPU性能、定量化できるハードウェア能力)を見ることができる。しかし、コンテナ内で動作するプログラムは、コンテナの内部とコンテナに割り当てられたデバイスしか見ることができない。

見る ChrootとOSレベルの仮想化

Parallels Virtuozzo Containers

Parallels Virtuozzo Containers(パラレルス・バーチュオッゾ・コンテナ、パラレルス・コンテナ)は、パラレルスが開発したサーバ仮想化ソフトウェアである。 Windows版、Linux版があり、ホスティング用途を中心に、世界中で利用されている。日本でも、日本法人パラレルス株式会社が設立され、その販売、サポートを行っている。 オープンソースのOpenVZはParallels Virtuozzo Containers(Linux版)のオープンソース版(Windows版はない)。

見る ChrootとParallels Virtuozzo Containers

Postfix

Postfix(ポストフィックス)はフリーソフトウェア・オープンソースソフトウェアのメール転送エージェント(MTA)である。先行して開発されていたSendmailとの操作上の互換性を確保しつつ、管理・設定が容易で、高速・安全であることを指向して開発されている。完全にUNIX用のMTAシステムとして設計されているため、UNIX上の他の多くのソフトウェアと連携が必要となる場合がある。 NetBSD、macOS Serverなど、いくつかのUNIX / Unix系OSで標準のMTAとして採用されている。 ライセンスはIBM Public License 1.0であったが、バージョン3.2.5以降では、Eclipse Public License 2.0も選択できるようになった。

見る ChrootとPostfix

Setuid

setuid と setgid は、UNIXにおけるアクセス権を表すフラグの名称であり、ユーザーが実行ファイルを実行する際にその実行ファイルの所有者やグループの権限で実行できるようにする。それぞれ、set user ID と set group ID の略。一般ユーザーが高い特権レベルでしか実行できないタスクを一時的に実行できるようにする仕組みである。提供されるユーザー識別子やグループ識別子によって必ず特権レベルが高くなるわけではないが、少なくともそれら識別子は特定のものが指定されている。 setuid と setgid は一般ユーザーよりも高い特権レベルが必要とされるタスクの実行に必要である。例えば、そのユーザーのログインパスワードの変更などである。中には意外なタスクで特権レベルを上げる必要があることもある。例えば、ping コマンドはネットワークインタフェース上で制御パケットを送り、応答を待つ必要があり、特権が必要である(なお、現在ではsetuid以外の方法で権限を管理している場合もあるため、pingにsetuid属性が付与されているとは限らない)。

見る ChrootとSetuid

Solaris

Solaris(ソラリス)はサン・マイクロシステムズ(サン)によって開発され、UNIXとして認証を受けたオペレーティングシステム (OS) である。2010年1月27日のオラクルによるサン買収に伴い、現在の開発は同社が担っている。 プロプライエタリソフトウェアであるが、かつてコア部分(ONという:OS+NETの略)はOpenSolarisとしてオープンソース化されたことがある。しかし2010年8月以降、ONのソースコードの公開はされていない。 なお、公開されていたONのソースコードは、有志の手によってillumosプロジェクトとしてオープンソース化されたまま更新が続けられている。

見る ChrootとSolaris

SUSE

SUSE( )はドイツを拠点とし、ビジネス顧客向けのLinux製品を開発・販売する、オープンソースソフトウェア多国籍企業である。1992年に創設され、企業向けに商用Linuxを販売した初の会社となった。SUSEはコミュニティ支援でopenSUSEを開発しているopenSUSEプロジェクトの主要なスポンサーである。

見る ChrootとSUSE

Ubuntu

Ubuntu(ウブントゥ、; oo-BOON-too)はDebian GNU/Linuxを母体としたオペレーティングシステム(OS)である。Linuxディストリビューションの1つであり、フリーソフトウェアとして提供されている。カノニカルから支援を受けて開発されている。開発目標は「誰にでも使いやすい最新かつ安定したOS」を提供することである。

見る ChrootとUbuntu

UNIX

UNIX (ユニックス、Unix、)は、コンピュータ用のマルチタスク・マルチユーザーのオペレーティングシステムの一種である。 公式な商標は「UNIX」だが、商標以外の意味として「Unix」、またはスモールキャピタルを使用して「Unix」などとも書かれる。2007年に、「UNIX」の商標の所有者である標準化団体のThe Open Groupは、Single UNIX Specificationを完全に満たすと認証を受けたシステムのみが「UNIX」の商標を得られるとした。このためそれ以外のシステムは(ずっと以前から、AT&T版およびBSD以外を指して使われていた用語だが)「Unixシステムライク」または「Unixライク(Unix系)」と呼ばれるようになった。ただし The Open Groupはその呼称を気に入っていない。

見る ChrootとUNIX

1982年

この項目では、国際的な視点に基づいた1982年について記載する。

見る Chrootと1982年

3月18日

3月18日(さんがつじゅうはちにち)は、グレゴリオ暦で年始から77日目(閏年では78日目)にあたり、年末まであと288日ある。

見る Chrootと3月18日

参考情報

UNIXのシステムコール

コンピュータセキュリティ手続