net — Samba およびリモート CIFS サーバの管理ツール
net
{<ads|rap|rpc>} [-h] [-w workgroup] [-W myworkgroup] [-U user] [-I ip-address] [-p port] [-n myname] [-s conffile] [-S server] [-l] [-P] [-d debuglevel] [-V] [--request-timeout seconds]
このツールは、samba(7)システムの一部である。
Samba の net ユーティリティは Windows や DOS に存在する NET コマンドと同様の位置づけのものである。 先頭の引数は、コマンドを実行する際に使用するプロトコルを指定するために用いられる。 ADS は Active Directory によって、RAP は従来の (Windows 9x / Windows NT 3.x) クライアントによって、 RPC は Windows NT 4.0 および Windows 2000 によって使用されている。 この引数が省略された場合、 net コマンドはプロトコルを自動判別しようとする。 すべてのコマンドがすべてのプロトコル上で使用できるわけではない。
Print a summary of command line options.
操作対象とするワークグループやドメインを指定する。 このオプションか、サーバの IP アドレスもしくは名前のいずれかは指定する必要がある。
クライアントのワークグループやドメインを指定する。
アクセスを行なうユーザ名を指定する。
操作対象のサーバの IP アドレスを指定する。 このオプションか、 操作対象のワークグループもしくは対象のサーバ名のいずれかを指定する必要がある。
操作対象のサーバに接続する際に用いるポート番号 (通常 139 か 445) を指定する。 既定値ではまず 445 を試行し、ついで 139 を試行する。
This option allows you to override
the NetBIOS name that Samba uses for itself. This is identical
to setting the parameter in the smb.conf
file.
However, a command
line setting will take precedence over settings in
smb.conf
.
The file specified contains the
configuration details required by the server. The
information in this file includes server-specific
information such as what printcap file to use, as well
as descriptions of all the services that the server is
to provide. See smb.conf
for more information.
The default configuration file name is determined at
compile time.
操作対象のサーバ名を指定する。 このオプションか、操作対象のワークグループもしくは IP アドレスのいずれかを指定する必要がある。
情報を表示する際に、各項目の詳細情報を表示する。
ローカルサーバのコンピュータアカウントを用いて別のサーバに対する問い合わせを行なう。
クライアントの要求を30秒後にタイムアウトさせる。既定値は10秒。
level
is an integer
from 0 to 10. The default value if this parameter is
not specified is 0.
The higher this value, the more detail will be logged to the log files about the activities of the server. At level 0, only critical errors and serious warnings will be logged. Level 1 is a reasonable level for day-to-day running - it generates a small amount of information about operations carried out.
Levels above 1 will generate considerable amounts of log data, and should only be used when investigating a problem. Levels above 3 are designed for use only by developers and generate HUGE amounts of log data, most of which is extremely cryptic.
Note that specifying this parameter here will
override the parameter
in the smb.conf
file.
このコマンドにより、Samba のコンピュータアカウントのパスワードを外部アプリケーションが Active Directory に格納済のものに(手動で)設定することが可能となる。 何が行なわれるかを理解しない限り、このコマンドを用いないこと。 このコマンドを用いるには、強制フラグ (-f) を併せて設定する必要がある。 コマンドプロンプトのインタフェースは存在しない。 情報は全て、コマンドラインなどを経由して標準入力経由で引き渡され、コンピュータアカウントのパスワードとして格納される。 警告無しに以前のコンピュータアカウントのパスワードが上書きされてしまうため、このコマンドは注意して用いること。
ドメインに参加する。サーバ上にコンピュータアカウントがすでに存在しており、 [TYPE] が MEMBER の場合、マシンの参加は自動的に行なわれる (コンピュータアカウントがサーバマネージャで作成済の場合)。 それ以外の場合は、パスワードの入力が求められ、新しいコンピュータアカウントが作成される。
[TYPE] は、ドメインに参加するコンピュータのタイプを指定するもので、 PDC, BDC, MEMBER のいずれかの値をとる。
[UPN] (ADSのみ)ドメインに参加する時のプリンシパル名属性を設定する。既定値の形式は host/netbiosname@REALMである。
[OU] (ADSのみ)指定したOU中にあらかじめコンピュータアカウントを作成する。 OU文字列はRDNなしで、'/'をデリミタとして、初めから最後まで読まれる。 シェルとLDAPの両方で'\'がエスケープとして使われるため、その文字その物を 渡すためには、二重に書くか、4重に書く必要があり、デリミタとしては扱われない。
ドメインに参加する。従来の方式によるドメイン参加を行なう場合は、 OLDJOIN オプションを使用すること。 参加を行なうには、事前にサーバマネージャでコンピュータアカウントを作成しておくことが必要である。
user
[password
]指定したユーザがリモートサーバにログオン可能かどうかを確認する。 コマンドラインでパスワードが指定されなかった場合は、入力を求められる。
Currently NOT implemented.
Samba は「gencache」という汎用のキャッシュインタフェースを用いている。 これは 'NET CACHE' コマンドにより制御可能である。
タイムアウトに関するパラメータはすべて、以下のサフィックスをサポートしている:
s - 秒 |
m - 分 |
h - 時 |
d - 日 |
w - 週 |
Windows のグループ ID と UNIX のグループ ID との対応づけを行なう。 共通のオプションを以下に示す:
unixgroup - UNIX のグループ名
ntgroup - Windows NT のグループ名 (SID が解決可能である必要がある。)
rid - 符号なし 32 ビット整数
sid - 「S-1-...」形式の完全な SID
type - グループのタイプ。「domain」、「local」もしくは「builtin」のいずれか。
comment - 任意の文字列によるグループの説明
新しいグループマップのエントリを追加する:
net groupmap add {rid=int|sid=string} unixgroup=string \ [type={domain|local}] [ntgroup=string] [comment=string]
グループマップのエントリを削除する。 複数のエントリがマッチした場合、最初にマッチしたエントリが削除される。
net groupmap delete {ntgroup=string|sid=SID}
リモートサーバをシャットダウンする。
シャットダウン後に再起動する。
全てのアプリケーションを強制的に終了させる。
システムをシャットダウンさせる前のタイムアウト時間を指定する。システムに対話的ログオンしているユーザは、この期間にシャットダウンをキャンセルすることができる。
シャットダウンの通知を行なう際に、指定したメッセージを画面上に表示する。
Active Directory 環境において、ローカルマシンのコンピュータアカウントの状態を表示する。
表示内容は、デバッグ情報のようなものであり、開発者向けのものである。
一般のユーザは NET ADS TESTJOIN
を使うべきである。
EXPRESSION
ATTRIBUTES...
Active Directory のサーバに対して低レベルな LDAP 検索を行ない、その結果を表示する。 EXPRESSION は標準の LDAP 検索表記で行ない、 ATTRIBUTES は結果中に表示する LDAP 属性型の一覧である。
設定例: net ads search '(objectCategory=group)' sAMAccountName
DN
(attributes)
Active Directory のサーバに対して低レベルな LDAP 検索を行ない、その結果を表示する。 DN は標準の LDAP DN であり、 attributes は結果中に表示する LDAP属性型の一覧である。
設定例: net ads dn 'CN=administrator,CN=Users,DC=my,DC=domain' SAMAccountName
BUILTINグループを(再)作成する。 このコマンドでは通常使われるBUILTINグループのみ作成出来る。以下は、現在設定されるグループ名である: Administrators, Users, Guests, Power Users, Account Operators, Server Operators, Print Operators, Backup Operators, Replicator, RAS Servers, Pre-Windows 2000 compatible Access. このコマンドはidmapの割り当てが適切に構成されているWinbinddが動いている事を要求する。グループのgidはwinbinddのレンジの範囲外に割り当てられる。
ローカルグループを作成する(別名である)。 このコマンドはidmapの割り当てが適切に構成されているWinbinddが動いている事を要求する。グループのgidはwinbinddのレンジの範囲外に割り当てられる。
名前による一まとまりのアカウントを表示する。もしもverboseが指定されていたら、 ridとdescriptionも各々のアカウントに対して提供される。
もしも、ldapsam:editposixが設定されて、winbinddが動作中の時有効である。 ldapのDIT上の、基本的なアカウント(Administrator)とグループ(Domain Users, Domain Admins, Domain Guests)とともに、ldap DITを 適切にpopulateする。
指定したローカルのtdbファイル中にあるマッピングをダンプする。このコマンドは、 idmap_tdbバックエンドによって生成されたマップのダンプにのみ有用である。
指定したドメインのために、secretを格納し、おおむね、idmap_ldapをバックエンドとして使うドメインのために使われる。このケースの場合、secretはldapサーバに対してバインドするユーザDNのパスワードとして使われる。
Samba 3.0.23 より、root 以外のユーザが「net usershare」コマンドを用いてユーザ定義共有を公開する機能が追加された。
これを行なうには、まず smb.conf の [global] セクションに以下を追加する必要がある: usershare path = /usr/local/samba/lib/usershares ついで /usr/local/samba/lib/usershares ディレクトリを作成し、所有者を root に、所有グループをユーザ定義共有の作成を許可したい UNIX グループ、例えば「serverops」とする。 /usr/local/samba/lib/usershares のパーミッションは 01770 に設定する。 (所有者と所有グループには完全なアクセス権があり、その他にはアクセス権が全くない。さらにスティッキービットにより、ディレクトリ中のファイルについて、名前の変更や削除が行なえるのはファイルの所有者のみとなる) 最後に、smb.conf の [global] セクションに以下のような行を追加することで、作成可能なユーザ定義共有の最大数を smbd に設定する: usershare max shares = 100 これにより、最大 100 のユーザ定義共有を設定可能となる。 これにより、「serverops」という UNIX グループのメンバは必要に応じて以下のコマンドを実行することで、ユーザ定義共有を作成することが可能となる。
ユーザ定義共有に関するコマンドを以下に示す:
net usershare add sharename path [comment [acl] [guest_ok=[y|n]]] - ユーザ定義の共有の追加または変更 |
net usershare delete sharename - ユーザ定義の共有の削除 |
net usershare info [-l|--long] [wildcard sharename] - ユーザ定義の共有の情報の出力 |
net usershare list [-l|--long] [wildcard sharename] - ユーザ定義の共有の一覧出力 |
sharename
path
[comment]
[acl]
[guest_ok=[y|n]]
sharename というユーザ定義共有の新規作成もしくは修正(上書き)を行なう。
「path」には、公開するディレクトリのシステム上での絶対パス名を指定する。 公開可能なディレクトリには幾つかの制約がある。 グローバルな smb.conf のパラメータである「usershare owner only」、「usershare prefix allow list」、「usershare prefix deny list」を参照のこと。
オプションの「comment」パラメータは、クライアントから共有を参照した際に表示されるコメント文字列を指定する。
オプションの「acl」フィールドは、共有単位でどのユーザに読み取りや書き込みのアクセス許可を与えるかを指定する。 ゲストアクセスは、 smb.conf の「usershare allow guests」パラメータを有効にしない限り行なえない。 ユーザ定義共有の ACL の指定は「user:permission」という形式で行なわれる。user はシステムで有効なユーザ名であり、permission は「F」、「R」、「D」のいずれかである。 「F」は「フルコントロール」、すなわち読み取りと書き込み権を示す。「D」は「拒否」を示し、ユーザの共有へのアクセスを許可しない。「R」は「読み取り専用」、すなわちこの共有への読み取りアクセスのみの許可を示す (ファイルへの書き込みやファイルやディレクトリの新規作成は行なえない)。
「acl」オプションが指定されなかった場合のデフォルトは「Everyone:R」である。これは、認証された全てのユーザが読み取り専用のアクセス権を有することを意味する。
オプションの「guest_ok」パラメータは、smb.conf 中の同名のパラメータと同じ意味を持ち、該当のユーザ定義共有に対するゲストアクセスを許可する。 このパラメータは、 smb.conf 中でグローバルパラメータの「usershare allow guests」が有効になっている時のみ設定できる。
既存のユーザ定義共有を修正するコマンドは個別に用意されておらず、 「net usershare add [sharename]」コマンドを用いて、sharename 共有を新規のオプションを指定して上書き変更することになる。 Samba の smbd デーモンは、接続のあったタイミングでユーザ定義共有の変更を検知するのため、変更は即座に反映される。ユーザ定義共有の追加、削除、変更により、smbd の再起動を行なう必要はない。sharename
指定されたユーザ定義共有を削除する。 Samba smbd デーモンは即座にこの変更を検知するが、削除された共有にその時点で接続中のユーザが切断されることはない。
[-l|--long]
[wildcard sharename]
指定されたパターンに合致するユーザによって所有されている、もしくは全てのユーザ定義共有の情報が表示される。
net usershare info は、実行したユーザが作成したユーザ定義共有の詳細情報を表示するが、ワイルドカード情報 (「*」は1文字以上の文字にマッチし、「?」は1文字のみにマッチする) が指定されている場合は、それにマッチした共有のみを表示する。 「-l」もしくは「--long」オプションが指定されていた場合、他のユーザが作成したユーザ定義共有の情報も表示する。
各共有についての情報は以下のような形式で設定される: [foobar] path=/home/jeremy comment=testme usershare_acl=Everyone:F guest_ok=n これは、「net usershare add」コマンドで現状設定可能なユーザ定義共有の設定一覧である。
バージョン 3.2.0から、Sambaサーバはレジストリにデータを格納することにより設定する事が出来るようになった。この設定データは新しい"net conf"コマンドで編集できる。
この設定データの配布は
smb.confファイルから2つのレベルで有効にできる。
レジストリからの共有定義は[global]セクション中でregistry shares
を“yes”にすることで有効にでき、
グローバルオプションは、複合設定の場合、[global]セクション中でinclude = registryを設定することで、
レジストリのみの設定の場合は、[global]セクション中で、config backend = registryを設定することで有効になる。
詳細はsmb.conf(5)マニュアルページを参照のこと。
conf コマンドは以下のとおり:
net conf list - smb.conf風の形式で完全な設定をダンプ |
net conf import - smb.conf形式で設定をインポート |
net conf listshares - レジストリ共有のリスト |
net conf drop - レジストリから全部の設定を削除 |
net conf showshare - レジストリ共有の定義を表示 |
net conf addshare - 新しいレジストリ共有を作成 |
net conf delshare - レジストリ共有を削除 |
net conf setparm - パラメータを格納 |
net conf getparm - パラメータの値を検索 |
net conf delparm - パラメータを削除 |
net conf getincludes - 共有定義のインクルードを表示 |
net conf setincludes - 共有のためのインクルードを設定 |
net conf delincludes - 共有定義からインクルードを削除 |
[--test|-T]
filename
[section]
このコマンドは、smb.conf形式で、ファイルから設定情報をインポートする。もしも、 レジストリ中に存在するセクションが入力ファイル中に存在するならば、その内容は 置き換えられる。入力ファイル中に対となるものがない、レジストリ中のセクションは 何ら影響はない。もしも、それらを削除したいならば、"net conf drop" か "net conf delshare"を使うこと。 任意ではあるが、その、指定したセクションに対するimportコマンドの影響を避けるためにあるセクションを指定してもよい。テストモードはパラメータ"-T"をコマンド行に 指定することで有効に出来る。テストモードでは、レジストリに対する変更は行われず、 設定の結果が代わりに標準出力に出力される。
sharename
指定したセクションまたは共有の定義を表示する。レジストリから、global設定オプションを検索するために、"global"を共有名として指定するのは有効である。
sharename
path
[writeable={y|N}
[guest_ok={y|N}
[comment
]]] レジストリ中に新しい共有定義を作成する。 共有名とパス両方が必要である。共有名は"global"としてはいけない 。 そのほか、とても一般的なオプション、"writeable", "guest ok" と "comment" も指定出来る。同じ結果は、一連の"net conf setparm"コマンドによって得てもよい。
section
parameter
value
パラメータをレジストリに格納する。セクションはglobalか共有名である。 セクションは、模試も存在しないならば、作成される。
section
(globalまたは共有の)提供されたセクションの、includeのリストを得る。
データベースとincludeディレクティブの種類により、includeは特別の扱いが必要である。パラメータ名が値の名前として、パラメータがレジストリに格納されるので、 共有ごとにパラメータのインスタンスは1つだけである。 また、テキストファイル中の指定したような順番は認められない。すべての真の パラメータに対して、これは完全に問題がないが、includeディレクティブは smb.confテキストファイル中では、むしろメタパラメータであるので、他のパラメータ との間での場所の指定はとても重要である。これは単純なsmbconfデータモデルによって は実現できないので、共有後とに1つの順番のリストがあり、このリストはすべての 共有パラメータの後に評価される。
さらに、現在、レジストリ構成からファイルのみインクルード出来る。将来は、 他のレジストリキーから設定データをインクルード出来る予定である。
Samba 3.4.3 から、net コマンドはネイティブな WIN32 イベントログファイル (通常 *.evt) の読み取り、ダンプ、インポート、エクスポートが可能となった。 evt ファイルはネイティブな Windows のイベントビューワツールによって使われる。
evtファイルのインポートとエクスポートは、smb.conf
ファイル中でeventlog list
が定義されている時のみ
行える。詳細は smb.conf(5) マニュアルページを参照のこと。
eventlog のサブコマンドは以下の通り:
net eventlog dump - イベントログファイル *.evt の内容を画面上にダンプする。 |
net eventlog import - イベントログファイル *.evt を、イベントログを保持する Samba 内部の tdb ファイルにインポートする。 |
net eventlog export - Samba内部の tdb 形式によるイベントログをイベントログファイル *.evt にエクスポートする。 |
filename
eventlog
filename
によって定義されたイベントログファイル *.evt
を、eventlog
で定義した Samba 内部の tdb 形式によるイベン
トログファイルにインポートする。
eventlog
には smb.conf 中で定義されている
eventlog list
が一部必要となる。詳細は、
smb.conf(5)
マニュアルページを参照のこと。
filename
eventlog
eventlog
で定義されている、Samba内部のtdb形式によるイベントログを
filename
で定義されているイベントログファイル *.evt にエクスポートする。
eventlog
はsmb.conf中で定義されている
eventlog list
の一部を必要とする。詳細は、
smb.conf(5)
マニュアルページを参照のこと。
バージョン 3.2.0 から、Sambaではクライアントもしくはサーバサイドから、リモートでマシンをドメインに参加・削除させるAPIがサポートされた。Windowsでは、リモートでマシンをメンバに参加させる機能はWindows 2000からサポートされていた。
Sambaでリモートでマシンをドメインに追加するには、操作するアカウントが「Domain Admins」グループのメンバか、「Administrators group」グループのメンバか、もしくは「SeMachineAccountPrivilege 権限が付与されている」のいずれかでなければならない。
クライアント側でリモートでマシンをドメインに参加させるnet domコマンドは以下の通り:
net dom join - リモートでマシンをドメインに参加させる |
net dom unjoin -リモートでマシンをドメインから削除する |
net dom renamecomputer - ドメインに参加しているリモートコンピュータの名前を変更する。 |
domain=DOMAIN
ou=OU
account=ACCOUNT
password=PASSWORD
reboot
リモートでマシンをドメインに参加させる。このコマンドがサポートするパラメータは以下のとおり:
DOMAIN
には、NetBIOS名(ショートドメイン名とも言う)又はActiveDirectoryのDNSドメイン名を指定する。Windows の場合、使用するドメインコントローラを選択できる。その場合「\」で区切ってドメインコントローラの名前を指定する(例:MYDOM\MYDC)。DOMAIN
に空白は指定できない。
OU
には、既定値ではないLDAPコンテナにマシンアカウントを作成する場合、RFC 1779のLDAP DN(例:ou=mymachines,cn=Users,dc=example,dc=com)で指定する。この、任意のパラメータは、リモートマシンをActiveDirectoryドメインに参加する場合のみサポートされる。
ACCOUNT
には、参加させるマシンのドメインアカウントを指定する。このドメインアカウントには、マシンを追加できる適切な権限が付与されている必要がある。
PASSWORD
には、ACCOUNT
で指定されたドメインアカウントのパスワードを指定する。
REBOOT
は任意のオプションで、マシンが正しくドメインに参加できたときに再起動させたいときに指定する。
ドメインに参加させたいマシンに接続して認証を行う場合、-S コンピュータ や-U ユーザ のように net で標準的に使用されるパラメータを別途指定する必要があることに注意。
例: net dom join -S xp -U XP\\administrator%secret domain=MYDOM account=MYDOM\\administrator password=topsecret reboot.
この例では、XPというマシンにローカル管理者としてパスワード「secret」で接続し、ドメイン「MYDOM」にドメイン管理者としてパスワード「topsecret」でドメインに参加させている。ドメインに参加した後にマシンは再起動する。
account=ACCOUNT
password=PASSWORD
reboot
ドメインからマシンを削除する。このコマンドでは次のパラメータを指定する。
ACCOUNT
には、削除するマシンのドメインアカウント名を指定する。このドメインアカウントには、マシンを削除できる権限が付与されている必要がある。
PASSWORD
には、ACCOUNT
で指定したドメインアカウントのパスワードを指定する。
REBOOT
は任意のオプションで、マシンがドメインから削除されたときに再起動させたいときに指定する。
ドメインから削除したいマシンに接続して認証を行う場合、-S コンピュータ や-U ユーザ のようにnetで標準的に使用されるパラメータを別途指定する必要があることに注意。
例: net dom unjoin -S xp -U XP\\administrator%secret account=MYDOM\\administrator password=topsecret reboot.
この例では、XPというマシンにローカル管理者としてパスワード「secret」で接続し、ドメイン「MYDOM」にドメイン管理者としてパスワード「topsecret」でドメインから削除している。ドメインから削除された後にマシンは再起動する。
newname=NEWNAME
account=ACCOUNT
password=PASSWORD
reboot
ドメインに参加しているコンピュータの名前を変更する。このコマンドは以下のサブパ ラメータをサポートする:
NEWNAME
ドメイン中の新しいマシンの名前を定義する。
ACCOUNT
ドメイン中でマシンの名前を変
更する時に使うドメインアカウントを定義する。このドメインアカウントはマシン名を
変更するために必要な権限を持つ必要がある。
PASSWORD
ACCOUNT
で定義されるドメインアカウントのパスワードを定義する。
REBOOT
はオプションのパラメータで、ドメイン中で名前の変更が成功した後にマシンをリブートするように設定する。
ドメイン中で名前を変更したいリモートマシンに、標準のnetパラメータを使って接続と 認証を行う必要があることに注意。それらの追加のパラメータには -S コンピュータ名 と-U ユーザ名を含む。
例: net dom renamecomputer -S xp -U XP\\administrator%secret newname=XPNEW account=MYDOM\\administrator password=topsecret reboot.
この例では、XPという名前のコンピュータに、パスワードがsecretのローカルの Administratorとして接続し、ドメインに参加しているコンピュータの名前を、 MYDOMというドメインの管理者のアカウントとパスワード topsecretを使って、 XPNEWに変更している。変更が成功したら、コンピュータをリブートする。