17

外部ドライブを共有し、すべてのユーザーにフル コントロールを割り当てるために、Vista Ultimate で実行するスクリプトが必要です。を使用して共有を作成するためのバッチ ファイルnet shareがありますが、アクセス許可を変更する方法がないようです。これは PowerShell で可能に違いないと思いますが、どこから始めればよいかわかりません。

4

4 に答える 4

16

この質問に対する答えを探していて、私がそうであったように (Vista ではなく) Windows 7 を実行している場合は、アクセス許可を NET SHARE コマンドで直接設定できることに興味があるかもしれません。 .

例えば、

NET SHARE Movies=M:\Movies /GRANT:Everyone`,READ

共有を作成し、Everyone に読み取り専用のアクセス許可を付与します。

READ の代わりに、CHANGE または FULL も使用できます。

于 2011-10-07T00:30:08.760 に答える
16

WMF 4 以降:

New-SmbShare –Name ShareName –Path C:\LocalFolder –FullAccess Username

http://technet.microsoft.com/en-us/library/jj635722.aspx

于 2014-12-15T15:47:27.247 に答える
13

2つの答え。

PowerShell では、Get-ACL コマンドレットが既存のアクセス許可を取得します。次に、.NET コマンドを使用してそれらを変更し、Set-ACL を実行してそれをフォルダーに適用します。これら 2 つのコマンドレットのヘルプには例が含まれており、www.sapienpress.com から「Windows PowerShell: TFM」の書籍の例をダウンロードできます。 " = 本には明示的な例も含まれています。

ただし、時間の価値はありません。実際には、ファイル ACL は対処するのが非常に面倒であり、信じられないほど複雑です。マイクロソフトは、Cacls など、これを行うための優れたツールを既に作成しており、それらを使用するだけではるかに簡単になります。

FILE パーミッションはこれですべてです。SHARE 自体のパーミッションを変更することにも興味があるかもしれません。そのためのツールが SUBINACL で、Microsoft からダウンロードできます。http://cwashington.netreach.net/depo/view.asp?Index=1127&ScriptType=vbscriptも参照してください。

于 2008-12-30T14:56:54.123 に答える
4

Carbon PowerShell モジュールには、 Install-SmbShareGrant-Permissionという2 つの関数があり、これを実行します 。ダウンロードして試してみます。

Install-SmbShare -Name MyShare -Path X:\ -FullAccess 'Everybody' `
                 -Description 'My super-awesome file share!' 
Grant-Permission -Identity Everyone -Permission FullControl -Path X:\

免責事項: 私は Carbon の著者であり作成者です。このモジュールを使用することをお勧めします。これは、共有をインストールしてアクセス許可を付与する際に注意すべき注意事項や落とし穴がたくさんあるためです。これらの 2 つの関数がそれを処理します。

于 2012-08-28T20:15:35.863 に答える