- Merge the following from the English version:

r39362 -> r41037	head/ja_JP.eucJP/books/handbook/users/chapter.xml
This commit is contained in:
Ryusuke SUZUKI 2013-05-12 07:10:24 +00:00
parent a0f44093e0
commit 82774201e9
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/head/; revision=41605

View file

@ -3,7 +3,7 @@
The FreeBSD Documentation Project The FreeBSD Documentation Project
The FreeBSD Japanese Documentation Project The FreeBSD Japanese Documentation Project
Original revision: r39362 Original revision: r41037
$FreeBSD$ $FreeBSD$
--> -->
@ -24,15 +24,9 @@
<sect1 id="users-synopsis"> <sect1 id="users-synopsis">
<title>この章では</title> <title>この章では</title>
<para>FreeBSD は、複数のユーザが同時にコンピュータを使えるようにします。 <para>&os; は、複数のユーザが同時にコンピュータを使えるようにします。
もちろん、
スクリーンとキーボードの前に一度に座れるのはその中の一人だけですが スクリーンとキーボードの前に一度に座れるのはその中の一人だけですが
<footnote> ユーザは何人でもネットワークを通してログインできます。
<para>複数の端末を接続しない限りはですが、
それは <xref linkend="serialcomms"/>
にとっておきましょう。</para>
</footnote>
ユーザは何人でもネットワークを通してログインして作業できます。
システムを使うためには、 システムを使うためには、
どのユーザもアカウントがなければなりません。</para> どのユーザもアカウントがなければなりません。</para>
@ -40,15 +34,11 @@
<itemizedlist> <itemizedlist>
<listitem> <listitem>
<para>FreeBSD のさまざまなユーザアカウントの違い</para> <para>&os; のさまざまなユーザアカウントの違い</para>
</listitem> </listitem>
<listitem> <listitem>
<para>ユーザアカウントの追加方法</para> <para>ユーザアカウントを追加したり削除する方法</para>
</listitem>
<listitem>
<para>ユーザアカウントの削除方法</para>
</listitem> </listitem>
<listitem> <listitem>
@ -69,7 +59,7 @@
<itemizedlist> <itemizedlist>
<listitem> <listitem>
<para>&unix; FreeBSD の基礎知識 (<xref linkend="basics"/>) <para><link linkend="basics">&unix;&os; の基礎知識</link>
を理解しておいてください。</para> を理解しておいてください。</para>
</listitem> </listitem>
</itemizedlist> </itemizedlist>
@ -78,14 +68,13 @@
<sect1 id="users-introduction"> <sect1 id="users-introduction">
<title>はじめに</title> <title>はじめに</title>
<para> <para>&os; システムへアクセスするには、
システムへアクセスするには、かならずユーザアカウントが使われます。 かならずアカウントが使われ、
また、プロセスもすべてユーザによって実行されますので、 また、プロセスもすべてユーザによって実行されるので、
ユーザとアカウントの管理は FreeBSD ユーザとアカウントの管理は、重要なものです。
システムにおいて欠かすことのできない重要なものです。
</para> </para>
<para>FreeBSD 上のどのアカウントにも、 <para>&os; システム上のどのアカウントにも、
そのアカウントを識別するための情報がなにかしら結び付けられています。</para> そのアカウントを識別するための情報がなにかしら結び付けられています。</para>
<variablelist> <variablelist>
@ -95,10 +84,11 @@
<listitem> <listitem>
<para><prompt>login:</prompt> <para><prompt>login:</prompt>
プロンプトに対して入力するユーザの名前です。 プロンプトに対して入力するユーザの名前です。
ユーザ名はそのコンピュータ内で一意でなければならず、 ユーザ名はそのシステムで一意でなければならず、
2 名のユーザに同じユーザ名をつけることはできません。 2 名のユーザに同じユーザ名をつけることはできません。
有効なユーザ名を作成するには &man.passwd.5; 有効なユーザ名を作成するには &man.passwd.5;
に記載されているいくつもの規則があります。 に記載されているいくつもの規則があります。
アプリケーションの上位互換性を保つために、
8 文字以下の小文字からなるユーザ名が一般的です。</para> 8 文字以下の小文字からなるユーザ名が一般的です。</para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -108,41 +98,44 @@
<listitem> <listitem>
<para>それぞれのアカウントにはパスワードがあります。 <para>それぞれのアカウントにはパスワードがあります。
パスワードは空白にもでき、 パスワードは空白にもできますが、
その場合はシステムにアクセスするのにパスワードは不要です。 行うべきではありません。
これは通常はとても悪い考えです。
すべてのアカウントにはパスワードをつけるべきです。</para> すべてのアカウントにはパスワードをつけるべきです。</para>
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>ユーザ ID (UID)</term> <term>ユーザ ID (<acronym>UID</acronym>)</term>
<listitem> <listitem>
<para>UID は、システムがユーザを一意に識別するための、 <para>ユーザ ID (<acronym>UID</acronym>) は、
伝統的には 0 から 65535<footnote id="users-largeuidgid"> システムがユーザを一意に識別するための、
<para>UID や GID には 4294967295 までの数を使えますが、 伝統的には 0 から 65535<footnote
id="users-largeuidgid">
<para><acronym>UID</acronym><acronym>GID</acronym>
には 4294967295 までの数を使えますが、
そのような ID は、ID そのような ID は、ID
の値に対して仮定を置いているソフトウェアで問題を起こす可能性があります。</para> の値に対して仮定を置いているソフトウェアで問題を起こす可能性があります。</para>
</footnote>の間の数値です。内部的には、FreeBSD はユーザの識別に UID </footnote>の間の数値です。内部的には、&os; はユーザの識別に
を使っています。ユーザ名を指定できる FreeBSD のコマンドは、 <acronym>UID</acronym> を使っています。
どれもユーザ名を UID に変換してから扱っています。 ユーザ名を指定できるコマンドは、
これは、同じ UID ユーザ名を <acronym>UID</acronym> に変換してから扱っています。
好ましくありませんが、同じ <acronym>UID</acronym>
を持つ異なるユーザ名のアカウントがいくつあってもよいということになります。 を持つ異なるユーザ名のアカウントがいくつあってもよいということになります。
FreeBSD に限っていうと、 &os; に限っていうと、
これらのアカウントはひとりのユーザとして扱われます。 これらのアカウントはひとりのユーザとして扱われます。</para>
そうする必要があるとは思えませんが。</para>
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>グループ ID (GID)</term> <term>グループ ID (<acronym>GID</acronym>)</term>
<listitem> <listitem>
<para>GID は、ユーザが属する第一グループを一意に識別するための、 <para>グループ ID (<acronym>GID</acronym>) は、
ユーザが属する第一グループを一意に識別するための、
伝統的には 0 から 65535<footnoteref linkend="users-largeuidgid"/> 伝統的には 0 から 65535<footnoteref linkend="users-largeuidgid"/>
の間の数値です。グループは、UID ではなく、 の間の数値です。グループは、<acronym>UID</acronym> ではなく、
ユーザの GID に基づいて資源へのアクセスを制御する仕組みです。 ユーザの <acronym>GID</acronym> に基づいて資源へのアクセスを制御する仕組みです。
これは、ある種の設定ファイルのサイズを大幅に小さくします。 これは、ある種の設定ファイルのサイズを大幅に小さくします。
ユーザは、複数のグループに所属できます。</para> ユーザは、複数のグループに所属できます。</para>
</listitem> </listitem>
@ -162,7 +155,7 @@
<term>パスワード変更時間</term> <term>パスワード変更時間</term>
<listitem> <listitem>
<para>デフォルトでは、FreeBSD <para>デフォルトでは、&os;
は定期的にパスワードを変更することをユーザに強制しません。 は定期的にパスワードを変更することをユーザに強制しません。
これをユーザごとに設定して、一部またはすべてのユーザに、 これをユーザごとに設定して、一部またはすべてのユーザに、
一定の時間がたったらパスワードを強制的に変更させることができます。</para> 一定の時間がたったらパスワードを強制的に変更させることができます。</para>
@ -173,7 +166,7 @@
<term>アカウント失効時間</term> <term>アカウント失効時間</term>
<listitem> <listitem>
<para>デフォルトでは、FreeBSD はアカウントを失効させません。 <para>デフォルトでは、&os; はアカウントを失効させません。
たとえば学校で生徒のアカウントがある場合など、 たとえば学校で生徒のアカウントがある場合など、
限られた期間だけのアカウントを作成するなら、 限られた期間だけのアカウントを作成するなら、
そのアカウントがいつ失効するか指定できます。 そのアカウントがいつ失効するか指定できます。
@ -187,7 +180,7 @@
<term>ユーザの氏名</term> <term>ユーザの氏名</term>
<listitem> <listitem>
<para>FreeBSD ではユーザ名でアカウントを一意に識別しますが、 <para>&os; ではユーザ名でアカウントを一意に識別しますが、
必ずしもユーザの本名を反映したものではありません。 必ずしもユーザの本名を反映したものではありません。
この情報をアカウントに関連付けることもできます。</para> この情報をアカウントに関連付けることもできます。</para>
</listitem> </listitem>
@ -197,16 +190,15 @@
<term>ホームディレクトリ</term> <term>ホームディレクトリ</term>
<listitem> <listitem>
<para>ホームディレクトリは、 <para>ホームディレクトリは、システム中のディレクトリへのフルパスです。
ユーザがログインした時に作業を開始する、 これはユーザがログインした時に作業を開始するディレクトリです。
システム中のディレクトリへのフルパスです。 一般的な慣習は、すべてのユーザのホームディレクトリを <filename
一般的な慣習は、すべてのユーザのホームディレクトリを class="directory">/home/<replaceable>username</replaceable></filename>
<filename>/home/<replaceable>username</replaceable></filename> <filename
class="directory">/usr/home/<replaceable>username</replaceable></filename>
<filename>/usr/home/<replaceable>username</replaceable></filename>
の下に置くことです。 の下に置くことです。
ユーザは、個人のファイルをホームディレクトリや 各ユーザは、個人のファイルやサブディレクトリを
その下に作成するディレクトリに保存します。</para> ユーザのホームディレクトリに保存します。</para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -225,18 +217,16 @@
<para> <para>
アカウントには大きく分けて三種類のものがあります。それは、 アカウントには大きく分けて三種類のものがあります。それは、
<link linkend="users-superuser">スーパーユーザ (Superuser)</link> <link linkend="users-superuser">スーパーユーザ (superuser)</link>
<link linkend="users-system">システムユーザ (system users)</link> <link linkend="users-system">システムアカウント (system accounts)</link>
そして<link linkend="users-user">ユーザアカウント (user accounts)</link> です。 そして<link linkend="users-user">ユーザアカウント (user accounts)</link> です。
スーパーユーザのアカウントは通常 <username>root</username> と呼ばれ、 スーパーユーザのアカウントは通常 <username>root</username> と呼ばれ、
無制限の特権を持つためにシステムの管理に用いられます。 無制限の特権を持つためにシステムの管理に用いられます。
また、システムユーザはサービスの運用に用いられ、 また、システムアカウントはサービスの運用に用いられ、
最後のユーザアカウントは、 ユーザアカウントは、
実際にログインしてメールを読むといった作業を行なう利用者のためのものです。 実際のユーザに割り当てられ、ログインしてシステムを利用するために使われます。</para>
</para>
</sect1>
<sect1 id="users-superuser"> <sect2 id="users-superuser">
<title>スーパーユーザアカウント</title> <title>スーパーユーザアカウント</title>
<indexterm> <indexterm>
@ -245,52 +235,45 @@
</indexterm> </indexterm>
<para>スーパーユーザアカウントは通常 <para>スーパーユーザアカウントは通常
<username>root</username> と呼ばれ、 <username>root</username> と呼ばれ、
システム管理を行なうために最初から設定済みです。 システム管理を行なうために使われます。
このアカウントはメールのやりとり、システムの調査、 このアカウントはメールのやりとり、システムの調査、
プログラミングといった日常的な作業を行なうために使われるべきものではありません。 プログラミングといった日常的な作業を行なうために使われるべきものではありません。</para>
</para>
<para> <para>その理由は、スーパーユーザが通常のユーザアカウントと異なり、
その理由は、スーパーユーザが通常のユーザアカウントと異なり、
操作にまったく制限を受けないことによります。 操作にまったく制限を受けないことによります。
そのためスーパーユーザアカウントで操作を間違えると、 そのためスーパーユーザアカウントで操作を間違えると、
システムに重大な影響を与えてしまう恐れがあるのです。 システムに重大な影響を与えてしまう恐れがあるのです。
ユーザアカウントでは、仮に操作を間違えてもシステムを壊してしまうようなことは ユーザアカウントでは、
できないようになっています。したがって特権を必要としていないのであれば、 仮に操作を間違えてもシステムを壊してしまうようなことはできないようになっています。
できるだけいつもユーザアカウントを利用する方が望ましいと言えるでしょう。 したがって特権を必要としていないのであれば、
</para> できるだけいつもユーザアカウントを利用する方が望ましいと言えるでしょう。</para>
<para>スーパーユーザで実行するコマンドはいつでも、 <para>スーパーユーザで実行するコマンドはいつでも、
二回、三回と確認してください。 二回、三回と確認してください。
なぜならスペースが多かったり、文字が欠けていたりするだけで、 なぜならスペースが多かったり、文字が欠けていたりするだけで、
取り返しのつかないデータの破壊につながる可能性があるからです。</para> 取り返しのつかないデータの破壊につながる可能性があるからです。</para>
<para> <para>常にシステム管理者用にユーザアカウントを作成し、
ですから、この章を読んでからあなたが最初にすべきなのは、 一般的な使用においては、そのアカウントを使ってください。
もし用意していないなら、日常的に利用するための
あなた自身のユーザアカウントを作成することです。
これはマルチユーザモード、シングルユーザモードを問わず、 これはマルチユーザモード、シングルユーザモードを問わず、
同様にあてはまります。 同様にあてはまります。
この章のうしろの方では、アカウントの追加と通常のユーザから この章のうしろの方では、アカウントの追加と通常のユーザから
スーパーユーザへと移行する手順について扱います。 スーパーユーザへと移行する手順について扱います。</para>
</para> </sect2>
</sect1>
<sect1 id="users-system"> <sect2 id="users-system">
<title>システムアカウント</title> <title>システムアカウント</title>
<indexterm> <indexterm>
<primary>アカウント</primary> <primary>アカウント</primary>
<secondary>システム</secondary> <secondary>システム</secondary>
</indexterm> </indexterm>
<para> <para>システムアカウントとは、DNS、メール、
システムユーザとは、DNS、メール、
ウェブサーバといった各種サービスを運用するために使われます。 ウェブサーバといった各種サービスを運用するために使われます。
この目的は、セキュリティを確保するためです。 この目的は、セキュリティを確保するためです。
もしサービスがスーパーユーザで実行されていると、 もしサービスがスーパーユーザで実行されていると、
それらのサービスは (本来意図しないような) それらのサービスは (本来意図しないような)
どんな動作でも可能となり、適切な制限を適用することができません。 どんな動作でも可能となり、適切な制限を適用することができません。</para>
</para>
<indexterm> <indexterm>
<primary>アカウント</primary> <primary>アカウント</primary>
@ -300,56 +283,47 @@
<primary>アカウント</primary> <primary>アカウント</primary>
<secondary><username>operator</username></secondary> <secondary><username>operator</username></secondary>
</indexterm> </indexterm>
<para> <para>システムアカウントの具体例として、
システムユーザの具体例として、 <username>daemon</username>, <username>operator</username>,
<username>daemon</username>, <username>bind</username>, <username>news</username> および
<username>operator</username>, <username>www</username>
<username>bind</username> (DNS; Domain Name Service 用), といったものがあります。</para>
<username>news</username> および <username>www</username>
といったものがあります。
またシステム管理者はよく、
インストールしたウェブサーバを運用するために
<username>httpd</username>
というユーザを作成しています。
</para>
<indexterm> <indexterm>
<primary>アカウント</primary> <primary>アカウント</primary>
<secondary><username>nobody</username></secondary> <secondary><username>nobody</username></secondary>
</indexterm> </indexterm>
<para> <para><username>nobody</username>
<username>nobody</username>
ユーザは通常の特権を持たないシステムユーザです。 ユーザは通常の特権を持たないシステムユーザです。
しかし、<username>nobody</username> しかし、<username>nobody</username>
を利用するサービスが増えれば増えるほど、 を利用するサービスが増えれば増えるほど、
それに所属するファイルやプロセスも増え、 それに所属するファイルやプロセスも増え、
その特権も大きくなるということを忘れないようにしてください。</para> その特権も大きくなるということを忘れないようにしてください。</para>
</sect1> </sect2>
<sect1 id="users-user"> <sect2 id="users-user">
<title>ユーザアカウント</title> <title>ユーザアカウント</title>
<indexterm> <indexterm>
<primary>アカウント</primary> <primary>アカウント</primary>
<secondary>user</secondary> <secondary>user</secondary>
</indexterm> </indexterm>
<para> <para>ユーザアカウントは、
ユーザアカウントは、
主に現実のユーザがシステムにアクセスする手段として用いられるものです。 主に現実のユーザがシステムにアクセスする手段として用いられるものです。
このアカウントは利用するユーザとシステム環境を分離します。 このアカウントは利用するユーザとシステム環境を分離します。
そのため、システムや他のユーザに危害をおよぼす危険性をなくし、また、 そのため、システムや他のユーザに危害をおよぼす危険性をなくし、また、
他に影響を与えることなくユーザ自身の環境をカスタマイズすることを可能にしています。 他に影響を与えることなくユーザ自身の環境をカスタマイズすることを可能にしています。</para>
</para>
<para>システムにアクセスするすべてのユーザは、 <para>システムにアクセスするすべてのユーザは、
それぞれ唯一のユーザアカウントを持つべきです。 それぞれ唯一のユーザアカウントを持つべきです。
こうすることで誰が何を行なっているかがわかりますし、 こうすることで管理者は誰が何を行なっているかがわかりますし、
他の人の設定を壊してしまったり、 他の人の設定を壊してしまったり、
他人のメールを読んでしまうようなことを避けることができます。</para> 他人のメールを読んでしまうようなことを避けることができます。</para>
<para>それぞれのユーザは快適にシステムを利用するため、 <para>それぞれのユーザは快適にシステムを利用するため、
シェル、エディタ、キー設定、言語など、 シェル、エディタ、キー設定、言語など、
各自の環境をセットアップすることができます。</para> 各自の環境をセットアップすることができます。</para>
</sect2>
</sect1> </sect1>
<sect1 id="users-modifying"> <sect1 id="users-modifying">
@ -360,8 +334,8 @@
<secondary>変更</secondary> <secondary>変更</secondary>
</indexterm> </indexterm>
<para>&unix; 環境では、 <para>&os; には、
ユーザアカウントを操作するのにさまざまなコマンドが使えます。 ユーザアカウントを操作するのにさまざまなコマンドが用意されています。
もっとも一般的なコマンドを以下に示し、 もっとも一般的なコマンドを以下に示し、
それに続いて詳しい使用例を示します。</para> それに続いて詳しい使用例を示します。</para>
@ -381,18 +355,22 @@
<entry>&man.adduser.8;</entry> <entry>&man.adduser.8;</entry>
<entry>コマンドラインからユーザを追加するための推奨アプリケーション</entry> <entry>コマンドラインからユーザを追加するための推奨アプリケーション</entry>
</row> </row>
<row> <row>
<entry>&man.rmuser.8;</entry> <entry>&man.rmuser.8;</entry>
<entry>コマンドラインからユーザを削除するための推奨アプリケーション</entry> <entry>コマンドラインからユーザを削除するための推奨アプリケーション</entry>
</row> </row>
<row> <row>
<entry>&man.chpass.1;</entry> <entry>&man.chpass.1;</entry>
<entry>ユーザデータベースの情報を変更するための柔軟なツール</entry> <entry>ユーザデータベースの情報を変更するための柔軟なツール</entry>
</row> </row>
<row> <row>
<entry>&man.passwd.1;</entry> <entry>&man.passwd.1;</entry>
<entry>ユーザのパスワードを変更する簡単なコマンドラインツール</entry> <entry>ユーザのパスワードを変更する簡単なコマンドラインツール</entry>
</row> </row>
<row> <row>
<entry>&man.pw.8;</entry> <entry>&man.pw.8;</entry>
<entry>ユーザアカウントのあらゆる箇所を変更する強力で柔軟なツール</entry> <entry>ユーザアカウントのあらゆる箇所を変更する強力で柔軟なツール</entry>
@ -412,20 +390,20 @@
<primary><command>adduser</command></primary> <primary><command>adduser</command></primary>
</indexterm> </indexterm>
<indexterm> <indexterm>
<primary><filename class="directory">/usr/share/skel</filename></primary> <primary><filename
class="directory">/usr/share/skel</filename></primary>
</indexterm> </indexterm>
<indexterm><primary>スケルトンディレクトリ</primary></indexterm> <indexterm><primary>スケルトンディレクトリ</primary></indexterm>
<para>&man.adduser.8; は、 <para>&man.adduser.8; は、
新しいユーザを登録するためのシンプルなプログラムです。 新しいユーザを登録するためのシンプルなプログラムです。
このプログラムは、システムの <filename>passwd</filename> ユーザを追加すると、
<filename>group</filename> ファイルに新しい項目を作成します。 このプログラムは、<filename>/etc/passwd</filename>
<filename>/etc/group</filename> を自動的に更新します。
また、新規ユーザのホームディレクトリを作成し、 また、新規ユーザのホームディレクトリを作成し、
<filename>/usr/share/skel</filename> <filename class="directory">/usr/share/skel</filename>
から、デフォルトで使用される設定ファイル から、デフォルトで使用される設定ファイルをコピーします。
(<quote>ドットファイル</quote>) また、新しく作成されたユーザに対して、
をコピーします。また、新しく作成されたユーザに対して、 ウェルカムメッセージをメールで送信することも可能です。</para>
ウェルカムメッセージをメールで送信することも可能です。
</para>
<example> <example>
<title>&os; におけるユーザの追加</title> <title>&os; におけるユーザの追加</title>
@ -463,8 +441,8 @@ Goodbye!
</example> </example>
<note> <note>
<para>入力したパスワードは画面に表示されません <para>入力したパスワードは画面に表示されませんので、
アスタリスク記号も表示されませんので ユーザアカウントを作成する際には
パスワードを間違えて入力してしまわないように注意してください。</para> パスワードを間違えて入力してしまわないように注意してください。</para>
</note> </note>
</sect2> </sect2>
@ -478,14 +456,14 @@ Goodbye!
<secondary>削除</secondary> <secondary>削除</secondary>
</indexterm> </indexterm>
<para>&man.rmuser.8; を使えば <para>システムから完全にユーザを削除するには
システムから完全にユーザを削除できます。 &man.rmuser.8; を使います。
&man.rmuser.8; は、次の手順を実行します。</para> このコマンドは、次の手順を実行します。</para>
<procedure> <procedure>
<step> <step>
<para>指定されたユーザの &man.crontab.1; エントリを削除 <para>指定されたユーザの &man.crontab.1;
(存在する場合)</para> エントリが存在する場合には削除</para>
</step> </step>
<step> <step>
@ -507,12 +485,12 @@ Goodbye!
</step> </step>
<step> <step>
<para><filename>/var/mail</filename> <para><filename class="directory">/var/mail</filename>
から、指定されたユーザの到着メールファイルを削除。</para> から、指定されたユーザの到着メールファイルを削除。</para>
</step> </step>
<step> <step>
<para><filename>/tmp</filename> <para><filename class="directory">/tmp</filename>
のような一時ファイル保存領域から、 のような一時ファイル保存領域から、
指定されたユーザの所有するファイルを削除。</para> 指定されたユーザの所有するファイルを削除。</para>
</step> </step>
@ -523,8 +501,7 @@ Goodbye!
すべてのグループから、指定されたユーザを削除します。</para> すべてのグループから、指定されたユーザを削除します。</para>
<note> <note>
<para> <para>指定されたユーザと同じ名前のグループで、
指定されたユーザと同じ名前のグループで、
そのユーザが削除されると空のグループとなる場合は、 そのユーザが削除されると空のグループとなる場合は、
そのグループ自体が削除されます。 そのグループ自体が削除されます。
これは &man.adduser.8; によってユーザごとに作成される、 これは &man.adduser.8; によってユーザごとに作成される、
@ -536,12 +513,9 @@ Goodbye!
<para>スーパユーザアカウントの削除に <para>スーパユーザアカウントの削除に
&man.rmuser.8; を利用することはできません。 &man.rmuser.8; を利用することはできません。
スーパユーザアカウントの削除はほとんどすべての場合、 スーパユーザアカウントの削除はほとんどすべての場合、
大規模なシステムの破壊を意味するからです。 大規模なシステムの破壊を意味するからです。</para>
</para>
<para>デフォルトでは、 <para>デフォルトでは、以下の例のような対話モードが使われます。</para>
どういう操作を行なっているか確認できる対話モードが使われます。
</para>
<example> <example>
<title><command>rmuser</command> による対話的なアカウントの削除</title> <title><command>rmuser</command> による対話的なアカウントの削除</title>
@ -565,12 +539,11 @@ Removing files belonging to jru from /var/tmp/vi.recover: done.
<title><command>chpass</command></title> <title><command>chpass</command></title>
<indexterm><primary><command>chpass</command></primary></indexterm> <indexterm><primary><command>chpass</command></primary></indexterm>
<para>&man.chpass.1; <para>&man.chpass.1; を用いて
パスワード、シェル、その他の個人情報といった、 パスワード、シェル、その他の個人情報といった、
ユーザデータベース情報を変更します。 ユーザデータベース情報を変更できます。</para>
</para>
<para>システム管理者に限りスーパユーザ権限で <para>スーパユーザ権限に限り、
&man.chpass.1; を用い、 &man.chpass.1; を用い、
他のユーザの情報やパスワードを変更できます。</para> 他のユーザの情報やパスワードを変更できます。</para>
@ -604,8 +577,8 @@ Home Phone:
Other information:</screen> Other information:</screen>
</example> </example>
<para>通常のユーザは、この情報の限られた部分のみ変更が可能です。 <para>ユーザは、この情報の限られた部分のみ変更が可能です。
また、変更できるのはそのユーザ自身の情報のみです。 また、変更できるのはそのユーザ自身のアカウント情報のみです。
</para> </para>
<example> <example>
@ -621,14 +594,13 @@ Other information:</screen>
</example> </example>
<note> <note>
<para>&man.chfn.1;, &man.chsh.1; はいずれも、単に &man.chpass.1; <para>&man.chfn.1; および &man.chsh.1; はいずれも、 &man.chpass.1;
へのハードリンクになっています。 へのリンクです。
また、&man.ypchpass.1;, &man.ypchfn.1; および &man.ypchsh.1; も同様です。 また、&man.ypchpass.1;, &man.ypchfn.1; および &man.ypchsh.1; も同様です。
NIS のサポートは自動的に行なわれますので、 <acronym>NIS</acronym> のサポートは自動的に行なわれますので、
コマンドの先頭に <literal>yp</literal> コマンドの先頭に <literal>yp</literal>
をつける必要はありません。 をつける必要はありません。
もし、混乱しても心配しないでください。 NIS の設定については、
NIS については、<xref linkend="advanced-networking"/>
<!-- <xref linkend="network-servers"/> (cf. rev.1.48) --> <!-- <xref linkend="network-servers"/> (cf. rev.1.48) -->
で説明されています。</para> で説明されています。</para>
</note> </note>
@ -645,13 +617,14 @@ Other information:</screen>
<para>&man.passwd.1; は、 <para>&man.passwd.1; は、
ユーザが自分のパスワードを変更する通常の方法です。 ユーザが自分のパスワードを変更する通常の方法です。
スーパユーザ権限では、 スーパユーザ権限では、
他のユーザのパスワードを変更するのに使われます。 他のユーザのパスワードを変更するのに使われます。</para>
</para>
<note> <note>
<para>誤って、または不正なパスワードの変更を避けるため、 <para>誤って、または不正なパスワードの変更を避けるため、
新しいパスワードを設定する前に、 新しいパスワードを設定する前に、
もとのパスワードを入力しなければなりません。</para> もとのパスワードを入力しなければなりません。
スーパーユーザの権限でユーザのパスワードを変更する際には、
もとのパスワードを入力する必要はありません。</para>
</note> </note>
<example> <example>
@ -678,14 +651,15 @@ passwd: done</screen>
</example> </example>
<note> <note>
<para>&man.chpass.1; 同様、&man.yppasswd.1; は、単に <para>&man.chpass.1; 同様、&man.yppasswd.1; は、
&man.passwd.1; へのハードリンクになっていますので、 &man.passwd.1; へのリンクになっていますので、
NIS はどちらのコマンドでも動作します。</para> NIS はどちらのコマンドでも動作します。</para>
</note> </note>
</sect2> </sect2>
<sect2 id="users-pw"> <sect2 id="users-pw">
<title><command>pw</command></title> <title><command>pw</command></title>
<indexterm><primary><command>pw</command></primary></indexterm> <indexterm><primary><command>pw</command></primary></indexterm>
<para>&man.pw.8; は、ユーザやグループの作成、削除、 <para>&man.pw.8; は、ユーザやグループの作成、削除、
@ -694,7 +668,7 @@ passwd: done</screen>
フロントエンドとして働きます。&man.pw.8; フロントエンドとして働きます。&man.pw.8;
はとても強力な一連のコマンドラインオプションを有しており、 はとても強力な一連のコマンドラインオプションを有しており、
シェルスクリプトで使うのに向いていますが、新しいユーザは、 シェルスクリプトで使うのに向いていますが、新しいユーザは、
で紹介されている他のコマンドに比べて難しいと感じるかもしれません。</para> の章で紹介されている他のコマンドに比べて難しいと感じるかもしれません。</para>
</sect2> </sect2>
</sect1> </sect1>
@ -707,12 +681,10 @@ passwd: done</screen>
<primary>アカウント</primary> <primary>アカウント</primary>
<secondary>制限</secondary> <secondary>制限</secondary>
</indexterm> </indexterm>
<para>ユーザがいるなら、 <para>&os; は、
彼らに対してシステムの利用を制限できないか考えたことがあるのではないでしょうか。
FreeBSD は、
個々のユーザが利用できるシステム資源の量を管理者が制限できる方法をいくつも用意しています。 個々のユーザが利用できるシステム資源の量を管理者が制限できる方法をいくつも用意しています。
その種の制限は、ディスククォータ (quota) とその他の資源の制限の その種の制限は、ディスククォータ (quota)
とその他のリソースの制限の 2 つに分けられます。</para> とその他の資源の制限の 2 つの章で説明します。</para>
<indexterm><primary>クォータ (quotas)</primary></indexterm> <indexterm><primary>クォータ (quotas)</primary></indexterm>
<indexterm> <indexterm>
@ -720,9 +692,9 @@ passwd: done</screen>
<secondary>クォータ</secondary> <secondary>クォータ</secondary>
</indexterm> </indexterm>
<indexterm><primary>ディスククォータ</primary></indexterm> <indexterm><primary>ディスククォータ</primary></indexterm>
<para>ディスククォータは、ユーザのディスクの利用を制限し、 <para>ディスククォータは、ユーザが利用できるディスク容量を制限し、
その都度計算しなくてもユーザのディスク使用量を簡単に確認できる手段も提供しています。 その都度計算しなくてもディスク使用量を簡単に確認できる手段も提供しています。
クォータについては、<xref linkend="quotas"/> で解説しています。</para> クォータについては、<link linkend="quotas"></link> で解説しています。</para>
<para>その他のリソースの制限とは、ユーザが消費できる <para>その他のリソースの制限とは、ユーザが消費できる
CPU、メモリなどのリソースを制限する手段のことです。 CPU、メモリなどのリソースを制限する手段のことです。
@ -733,27 +705,27 @@ passwd: done</screen>
<primary><filename>/etc/login.conf</filename></primary> <primary><filename>/etc/login.conf</filename></primary>
</indexterm> </indexterm>
<para>ログインクラスは <filename>/etc/login.conf</filename> <para>ログインクラスは <filename>/etc/login.conf</filename>
で定義します。詳細な働きの説明はこの節の範囲を超えますが、 で定義します。詳細な説明は
&man.login.conf.5; のマニュアルに詳しく記載されています。 &man.login.conf.5; に詳しく記載されています。
各ユーザにはログインクラスが割り当てられていて 各ユーザアカウントにはログインクラスが割り当てられていて
(デフォルトでは <literal>default</literal> です)、 (デフォルトでは <literal>default</literal> です)、
それぞれのログインクラスにはログインケーパビリティの集合が割り当てられているといえば十分でしょう それぞれのログインクラスにはログインケーパビリティの集合が割り当てられています
ログインケーパビリティとは、 ログインケーパビリティとは、
<literal><replaceable>名称</replaceable>=<replaceable></replaceable></literal> <literal><replaceable>名称</replaceable>=<replaceable></replaceable></literal>
の組のことで、<replaceable>名称</replaceable> の組のことで、<replaceable>名称</replaceable>
は周知の識別子、<replaceable></replaceable> は周知の識別子、<replaceable></replaceable>
は、名称に応じて処理される任意の文字列です。 は、<replaceable>名称</replaceable> に応じて処理される任意の文字列です。
ログインクラスとケーパビリティを設定するのはどちらかといえば簡単なことで、 ログインクラスとケーパビリティを設定するのはどちらかといえば簡単なことで、
&man.login.conf.5; でも説明されています。</para> &man.login.conf.5; でも説明されています。</para>
<note> <note>
<para>システムは普通は、直接 <filename>/etc/login.conf</filename> <para>&os; は通常、直接 <filename>/etc/login.conf</filename>
ファイルから設定を読み込まず、 から設定を読み込まず、
より速く検索できるデータベースファイル より速く検索できる
<filename>/etc/login.conf.db</filename> <filename>/etc/login.conf.db</filename>
から読み込みます。<filename>/etc/login.conf</filename> データベースから読み込みます。<filename>/etc/login.conf</filename>
から <filename>/etc/login.conf.db</filename> を生成するには、 を編集する時には <filename>/etc/login.conf.db</filename>
次のコマンドを実行してください</para> を次のコマンドを実行してアップデートする必要があります</para>
<screen>&prompt.root; <userinput>cap_mkdb /etc/login.conf</userinput></screen> <screen>&prompt.root; <userinput>cap_mkdb /etc/login.conf</userinput></screen>
</note> </note>
@ -764,18 +736,16 @@ passwd: done</screen>
リミットとハードリミットがあります。 リミットとハードリミットがあります。
ソフトリミットは、ユーザやアプリケーションが調整できますが、 ソフトリミットは、ユーザやアプリケーションが調整できますが、
ハードリミットを超えることはできません。 ハードリミットを超えることはできません。
ユーザはハードリミットを下げることはできますが、上げることはできません。 ユーザはハードリミットを下げることはできますが、
上げることはスーパユーザのみができます。
第二に、ほとんどのリソースの制限は特定のユーザに対してプロセス毎に適用されるもので、 第二に、ほとんどのリソースの制限は特定のユーザに対してプロセス毎に適用されるもので、
そのユーザが利用するリソースの総量を制限するものではありません。 そのユーザが利用するリソースの総量を制限するものではありません。
ただし、この違いは制限を特別扱いすることで実現されるものであり、 ただし、この違いは制限を特別扱いすることで実現されるものであり、
ログインケーパビリティフレームワークの実装によるものではありません ログインケーパビリティフレームワークの実装によるものではありません。</para>
(つまり、リソースの制限は、
<emphasis>実際には</emphasis>ログインケーパビリティの特別な場合ではないのです)。</para>
<para>難しい話はこのくらいにしておいて、 <para>以下が最もよく使われるリソースの制限になります。
以下が最もよく使われるリソースの制限になります 残りは、他のすべてのログインケーパビリティと並んで
(残りは、他のすべてのログインケーパビリティと並んで &man.login.conf.5; に書かれています。</para>
&man.login.conf.5; に書かれています)。</para>
<variablelist> <variablelist>
<varlistentry> <varlistentry>
@ -783,19 +753,17 @@ passwd: done</screen>
<listitem> <listitem>
<indexterm><primary>coredumpsize</primary></indexterm> <indexterm><primary>coredumpsize</primary></indexterm>
<indexterm> <indexterm><primary>ユーザに対する制限</primary>
<primary>ユーザに対する制限</primary>
<secondary>coredumpsize</secondary> <secondary>coredumpsize</secondary>
</indexterm> </indexterm>
<para>プログラムが生成する core <para>プログラムが生成する core
ファイルのサイズにかかる制限は、 ファイルのサイズにかかる制限は、
自明な理由でほかのディスク使用に関する制限に従属します <literal>filesize</literal> やディスククォータなどの、
(例: <literal>filesize</literal> やディスククォータ)。それでも、 ほかのディスク使用に関する制限に従属します。
ディスク領域の消費を制御するあまり厳しくない手段としてよく使われています。 この制限は、ディスク領域の消費を制御するあまり厳しくない手段としてよく使われています。
ユーザは core ファイルを自分で生成するわけではなく、 ユーザは core ファイルを自分で生成するわけではなく、
削除しないことも多いので、これを設定すれば大きなプログラム 削除しないことも多いので、
(たとえば <application>Emacs</application>) これを設定すれば大きなプログラムが異常終了してもディスクの空きがなくならずに済みます。</para>
が異常終了してもディスクの空きがなくならずに済みます。</para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -814,13 +782,8 @@ passwd: done</screen>
<note> <note>
<para>これは、消費される CPU <emphasis>時間</emphasis> <para>これは、消費される CPU <emphasis>時間</emphasis>
についての制限であって、&man.top.1;&man.ps.1; についての制限であって、&man.top.1;&man.ps.1;
の項目のどれかに表示される のフィールドで表示される
CPU の割合に関するものではありません。 CPU の割合に関するものではありません。</para>
これを書いている時点では後者の制限はかけられませんし、
役にたたないでしょう。たとえば
(正当なタスクである可能性が高い)
コンパイラはたやすく一定時間
CPU を 100% 近く使ってしまいます。</para>
</note> </note>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -851,18 +814,16 @@ passwd: done</screen>
<secondary>maxproc</secondary> <secondary>maxproc</secondary>
</indexterm> </indexterm>
<para>ユーザが実行できるプロセス数の上限です。 <para>ユーザが実行できるプロセス数の上限です。
フォアグラウンドプロセスとバックグラウンドプロセスの両方を平等に扱います。 フォアグラウンドプロセスとバックグラウンドプロセスの両方を扱います。
自明な理由から&man.sysctl.8; 変数 この上限は&man.sysctl.8; 変数
<varname>kern.maxproc</varname> <varname>kern.maxproc</varname>
で指定されたシステムの制限を超えることはできません。 で指定されたシステムの制限を超えることはできません。
また、同時に複数ログインすることや、 同時に複数ログインすることや、
パイプライン実行することは便利なことが多いので、 パイプライン実行することは便利なことが多いので、
この値をあまり小さな値に設定すると、 この値をあまり小さな値に設定すると、
そのユーザの生産性が悪化することにも注意してください そのユーザの生産性が悪化する可能性があります
大きなプログラムをコンパイルする場合のように、 大きなプログラムをコンパイルする場合のように、
タスクによっては複数のプロセスが実行されます (たとえば タスクによっては複数のプロセスやプリプロセッサが実行されます。</para>
&man.make.1;, &man.cc.1;
や、その他仲立ちとなるプリプロセッサ)。</para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -875,12 +836,11 @@ passwd: done</screen>
<primary>ユーザに対する制限</primary> <primary>ユーザに対する制限</primary>
<secondary>memorylocked</secondary> <secondary>memorylocked</secondary>
</indexterm> </indexterm>
<para>これは、 <para>これは、1 つのプロセスが &man.mlock.2;
1 つのプロセスがメインメモリにロックされることを要求できるメモリの最大容量です によりメインメモリにロックされることを要求できるメモリの最大容量です
(&man.mlock.2; をご覧ください)。&man.amd.8; &man.amd.8; のようなシステムで重要なプログラムは、
のようなシステムで重要なプログラムは、 メインメモリへロックして、システムがスワップする際に、
メインメモリへロックして、スワップアウトイベントにおいて、 ディスクのスラッシングを引き起こさないようにします。</para>
問題発生時にシステムのスラッシングを引き起こさないようにします。</para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -889,8 +849,7 @@ passwd: done</screen>
<listitem> <listitem>
<indexterm><primary>memoryuse</primary></indexterm> <indexterm><primary>memoryuse</primary></indexterm>
<indexterm> <indexterm><primary>ユーザに対する制限</primary>
<primary>ユーザに対する制限</primary>
<secondary>memoryuse</secondary> <secondary>memoryuse</secondary>
</indexterm> </indexterm>
<para>これは、どの時点かを問わず、 <para>これは、どの時点かを問わず、
@ -906,16 +865,15 @@ passwd: done</screen>
<listitem> <listitem>
<indexterm><primary>openfiles</primary></indexterm> <indexterm><primary>openfiles</primary></indexterm>
<indexterm> <indexterm><primary>ユーザに対する制限</primary>
<primary>ユーザに対する制限</primary>
<secondary>openfiles</secondary> <secondary>openfiles</secondary>
</indexterm> </indexterm>
<para>これは、あるプロセスが開いておける最大のファイル数です。 <para>これは、あるプロセスが開いておける最大のファイル数です。
FreeBSD では、ファイルはまた、ソケットや &os; では、ファイルはまた、ソケットや
IPC チャンネルを表わすのにも使われています。 IPC チャンネルを表わすのにも使われています。
ですから、あまり低い値に設定しないよう注意してください。 ですから、あまり低い値に設定しないよう注意してください。
これに対応するシステム全体の制限は これに対応するシステム全体の制限は
&man.sysctl.8; 変数 &man.sysctl.8;
<varname>kern.maxfiles</varname> で定義されています。</para> <varname>kern.maxfiles</varname> で定義されています。</para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -925,14 +883,12 @@ passwd: done</screen>
<listitem> <listitem>
<indexterm><primary>sbsize</primary></indexterm> <indexterm><primary>sbsize</primary></indexterm>
<indexterm> <indexterm><primary>ユーザに対する制限</primary>
<primary>ユーザに対する制限</primary>
<secondary>sbsize</secondary> <secondary>sbsize</secondary>
</indexterm> </indexterm>
<para>これは、あるユーザが消費できるネットワークメモリ <para>これは、あるユーザが消費できるネットワークメモリ
(つまり mbuf) の上限の量です。これは、 (つまり mbuf) の上限の量です。ユーザは、
大量のソケットを生成する古いサービス拒否攻撃に対応するものとして作られましたが、 ネットワーク通信を制限するのに使えます。</para>
一般的にはネットワーク通信を制限するのに使えます。</para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -941,8 +897,7 @@ passwd: done</screen>
<listitem> <listitem>
<indexterm><primary>stacksize</primary></indexterm> <indexterm><primary>stacksize</primary></indexterm>
<indexterm> <indexterm><primary>ユーザに対する制限</primary>
<primary>ユーザに対する制限</primary>
<secondary>stacksize</secondary> <secondary>stacksize</secondary>
</indexterm> </indexterm>
<para>これは、プロセスのスタックサイズの上限です。 <para>これは、プロセスのスタックサイズの上限です。
@ -968,26 +923,26 @@ passwd: done</screen>
<para>システムに付属していた <para>システムに付属していた
<filename>/etc/login.conf</filename> <filename>/etc/login.conf</filename>
はほとんどの制限について妥当な値になっていますが、 はほとんどの制限について妥当な値になっていますが、
あなたのシステムに何がふさわしいか分かるのは、 すべてのシステムにおいてふさわしいというわけではありません。
管理者であるあなただけです。
制限をあまり緩くするとシステムを悪用しやすくしてしまいますし、 制限をあまり緩くするとシステムを悪用しやすくしてしまいますし、
厳しくしすぎると生産性を悪化させてしまいます。</para> 厳しくしすぎると生産性を悪化させてしまいます。</para>
</listitem> </listitem>
<listitem> <listitem>
<para>X Window System (X11) のユーザには、 <para><application>&xorg;</application> のユーザには、
他のユーザより多くのリソースを与えるべきかもしれません。 他のユーザより多くのリソースを与えるべきかもしれません。
X11 そのものが多くのリソースを使うだけでなく、 <application>&xorg;</application>
そのものが多くのリソースを使うだけでなく、
より多くのプログラムを並行して使うことをユーザに促します。</para> より多くのプログラムを並行して使うことをユーザに促します。</para>
</listitem> </listitem>
<listitem> <listitem>
<para>多くの制限は個々のプロセスにかかるもので、 <para>多くの制限は個々のプロセスにかかるもので、
一人のユーザにまとめてかかるものではないことを忘れないでください 一人のユーザにまとめてかかるものではありません
例えば、<varname>openfiles</varname> を 50 に設定することは、 例えば、<varname>openfiles</varname> を 50 に設定することは、
ユーザが動かすそれぞれのプロセスが最大 ユーザが動かすそれぞれのプロセスが最大
50 個のファイルを開けるということです。 50 個のファイルを開けるということです。
したがって、あるユーザが開けられるファイルの総数は、 あるユーザが開けるファイルの総数は、
<literal>openfiles</literal> の値に <literal>maxproc</literal> <literal>openfiles</literal> の値に <literal>maxproc</literal>
をかけたものになります。 をかけたものになります。
同じことがメモリ消費量にもあてはまります。</para> 同じことがメモリ消費量にもあてはまります。</para>
@ -996,8 +951,7 @@ passwd: done</screen>
<para>リソースの制限と、ログインクラス、 <para>リソースの制限と、ログインクラス、
ログインケーパビリティ一般についての詳しい情報は、 ログインケーパビリティ一般についての詳しい情報は、
それぞれのマニュアルページ、 &man.cap.mkdb.1;, &man.getrlimit.2; および &man.login.conf.5;
&man.cap.mkdb.1;, &man.getrlimit.2;, &man.login.conf.5;
をご覧ください。</para> をご覧ください。</para>
</sect1> </sect1>
@ -1012,31 +966,30 @@ passwd: done</screen>
<primary>アカウント</primary> <primary>アカウント</primary>
<secondary>グループ</secondary> <secondary>グループ</secondary>
</indexterm> </indexterm>
<para>グループとは、単にユーザを羅列したものです。 <para>グループとは、ユーザを羅列したものです。
グループは、グループ名と GID (グループ ID) で識別されます。 グループは、グループ名と <acronym>GID</acronym> で識別されます。
FreeBSD (と他の &unix; システムのほとんど) では、 &os; では、
あるプロセスが何かするのを許可するかどうかをカーネルが判断する際に利用する あるプロセスが何かするのを許可するかどうかをカーネルが判断する際に
2 つの因子は、ユーザ ID とそのユーザが所属するグループの一覧です。 プロセスの <acronym>UID</acronym>
ユーザ ID と異なり、プロセスはそのプロセスに関係付けられたグループの一覧を持ちます。 とそのユーザが所属するグループの一覧を利用します。
どこかで <quote>グループ ID</quote> に触れているのを聞くことがあるでしょうが、 ほとんどの場合、ユーザもしくはプロセスの <acronym>GID</acronym>
ほとんどの場合は、これは単に一覧の最初のグループを指しています。</para> 一覧の最初のグループを指しています。</para>
<para>グループ名からグループ ID への写像は <para>グループ名から <acronym>GID</acronym> への写像は
<filename>/etc/group</filename> にあります。 <filename>/etc/group</filename> にあります。
これは、コロンで区切られた 4 項目からなるテキストファイルです。 これは、コロンで区切られた 4 項目からなるテキストファイルです。
1 番目の項目はグループ名、 1 番目の項目はグループ名、
2 番目は暗号化されたパスワード、 2 番目は暗号化されたパスワード、
3 番目がグループ ID 3 番目が <acronym>GID</acronym>
4 番目がカンマで区切られたメンバの一覧です。 4 番目がカンマで区切られたメンバの一覧です。
これは手で編集して問題ありません
(もちろん、文法をまったく間違えない限りはですが)。
文法についての完全な説明は、&man.group.5; をご覧ください。</para> 文法についての完全な説明は、&man.group.5; をご覧ください。</para>
<para><filename>/etc/group</filename> を手で編集したくなければ、 <para>スーパーユーザは、<filename>/etc/group</filename>
&man.pw.8; コマンドを使ってグループの追加や編集をできます。 をテキストエディタで編集できます。
もしくは、&man.pw.8; を使ってグループの追加や編集をできます。
たとえば、<groupname>teamtwo</groupname> たとえば、<groupname>teamtwo</groupname>
というグループを追加して、その存在を確認するには、 というグループを追加して、その存在を確認するには、
次のように使えばできます。</para> 次のように使ます。</para>
<example> <example>
<title>&man.pw.8; によるグループの追加</title> <title>&man.pw.8; によるグループの追加</title>
@ -1046,32 +999,31 @@ passwd: done</screen>
teamtwo:*:1100:</screen> teamtwo:*:1100:</screen>
</example> </example>
<para>上記の <literal>1100</literal> という番号は、 <para>この例では、<literal>1100</literal> という番号は、
<groupname>teamtwo</groupname> グループのグループ ID です。 <groupname>teamtwo</groupname> <acronym>GID</acronym> です。
この時点では、<groupname>teamtwo</groupname> この時点では、<groupname>teamtwo</groupname>
にはメンバがおらず、あまり意味がありません。 にメンバはいません。
以下のコマンドは、
<username>jru</username><groupname>teamtwo</groupname> <username>jru</username><groupname>teamtwo</groupname>
に参加させて、この状況を変えましょう</para> のメンバに追加します</para>
<example> <example>
<title>&man.pw.8; によるグループメンバ一覧の設定</title> <title>&man.pw.8; により新しいグループにメンバを追加する</title>
<screen>&prompt.root; <userinput>pw groupmod teamtwo -M jru</userinput> <screen>&prompt.root; <userinput>pw groupmod teamtwo -M jru</userinput>
&prompt.root; <userinput>pw groupshow teamtwo</userinput> &prompt.root; <userinput>pw groupshow teamtwo</userinput>
teamtwo:*:1100:jru</screen> teamtwo:*:1100:jru</screen>
</example> </example>
<para><option>-M</option> オプションの引数は、 <para><option>-M</option> の引数は、
カンマで区切られたグループに所属するユーザの一覧です。 カンマで区切られた新しい (空の) グループに追加するもしくは存在するグループのメンバを置き換えるユーザの一覧です。
前の節から、 ユーザにとっては、このグループのメンバーシップはパスワードファイルに記載されているプライマリのグループとは異なります。
パスワードファイルに各ユーザのグループが記載されていることがわかります。
前者 (ユーザ) は、システムが自動的にグループ一覧に追加します。
&man.pw.8;<option>groupshow</option> コマンドを使った時は、 &man.pw.8;<option>groupshow</option> コマンドを使った時は、
そのユーザはグループの一員として表示されませんが、&man.id.1; そのユーザはグループの一員として表示されませんが、&man.id.1;
などのツールを使って情報を問い合わせれば、 などのツールを使って情報を問い合わせれば、
その情報を引き出せます。つまり&man.pw.8; その情報を引き出せます。ユーザをグループに追加をする際に&man.pw.8;
<filename>/etc/group</filename> しか扱わず、 <filename>/etc/group</filename> しか扱わず、
<filename>/etc/passwd</filename> のデータを読んだりはしません。</para> <filename>/etc/passwd</filename> から追加のデータを読んだりはしません。</para>
<example> <example>
<title>&man.pw.8; によるグループへのユーザ追加</title> <title>&man.pw.8; によるグループへのユーザ追加</title>
@ -1081,9 +1033,9 @@ teamtwo:*:1100:jru</screen>
teamtwo:*:1100:jru,db</screen> teamtwo:*:1100:jru,db</screen>
</example> </example>
<para><option>-m</option> オプションの引数は、 <para>この例では、<option>-m</option> の引数は、
カンマで区切られたグループに追加するユーザの一覧です。 カンマで区切られたグループに追加するユーザの一覧です。
前の例と異なり、これらのユーザはグループに追加され、 前の例と異なり、これらのユーザはグループ一覧に追加され、
グループのユーザ一覧を置き換えることはありません。</para> グループのユーザ一覧を置き換えることはありません。</para>
<example> <example>
@ -1093,12 +1045,12 @@ teamtwo:*:1100:jru,db</screen>
uid=1001(jru) gid=1001(jru) groups=1001(jru), 1100(teamtwo)</screen> uid=1001(jru) gid=1001(jru) groups=1001(jru), 1100(teamtwo)</screen>
</example> </example>
<para>見れば分かりますが<username>jru</username> <para>この例では<username>jru</username>
<groupname>jru</groupname> グループと <groupname>jru</groupname> グループと
<groupname>teamtwo</groupname> グループのメンバです。</para> <groupname>teamtwo</groupname> グループのメンバです。</para>
<para>&man.pw.8; について詳しくはマニュアルページをご覧ください。 <para>このコマンドや <filename>/etc/group</filename>
<filename>/etc/group</filename> のフォーマットの詳細については、 のフォーマットの詳細については、
&man.group.5; マニュアルページをご覧ください。</para> &man.pw.8; および &man.group.5; をご覧ください。</para>
</sect1> </sect1>
</chapter> </chapter>