• 締切済み

ユーザごとのフォルダの設定について

お世話になります。 NTサーバ上にユーザIDごとのフォルダを設定しようと考えています。 \\NTSERVER\SHAREFLD\(ユーザID) というようにユーザIDをフォルダ名として フォルダが無かったら作成し それをS:ドライブとしてマップするように ログインスクリプトで処理したいのですが どのように記述すればよいでしょうか? よろしくお願いします。 青柳

みんなの回答

  • nta
  • ベストアンサー率78% (1525/1942)
回答No.2

(t:は\\NTSERVER\SHAREFLDにマップ済) とかやって、フォルダはできているのですがs:で共有できませんでした。  mdで作られたフォルダはSHAREFLDのサブフォルダになりますから、Windows9xでは割り当てができません。NT,2000,XPであれば可能ですが、tドライブが割り当てられているということはすでにログインが完了しているのですね。  基本的にログインバッチが実行されているときにはシステムアカウントで動作しているため、共有時には共有ユーザ名とパスワードが必須です。また、ログインしているユーザ名と共有しようとしているユーザ名は完全に一致している必要があります。 (1)の方法が確実なのですが、もし共有フォルダのサブフォルダの共有であるならば、Win9x では無理です。別にそのサブフォルダを共有する必要があります。

  • nta
  • ベストアンサー率78% (1525/1942)
回答No.1

NTドメインに参加しており、NTドメインにユーザ登録されていればできますが、ワークグループだと困難です。 (1)ドメインユーザーマネージャでユーザプロファイルを作成し、ホームディレクトリのところを ドライブ S: ディレクトリ \\NTSERVER\SHAREFLD\(ユーザ名) としておく。 (2)もしくはログインスクリプトのところに login.bat  (これは適当なファイル名) を書き込み、 login.bat は NT/2000/XPの場合は net use S: \\NTSERVER\SHAEFLD\%USERNAME% (パスワード) /user:(ユーザ名) win9x net use S: \\NTSERVER\SHAEFLD\%USERNAME%  としておく。パスワードが表に出るためセキュリティが低下する上変更が手間です。(1)の方がいいでしょう。また、if exit を用いてフォルダが無いときは作成するという動作をさせたいところですが、意外にトラブルが多いのでユーザ名が分かっておりユーザ登録するのであればフォルダくらいは作成しておいた方がいいでしょう。 ワークグループの場合は(2)の方法は使えますが、セキュリティの確保を考えると厄介だと思います。

参考URL:
http://gearbox.maem.umr.edu/~batch/intrin1.htm
HiroBlue
質問者

お礼

情報ありがとうございます。 (1)のようにしてみたのですが、クライアントでログインしてみてもS:ドライブが見えませんでした。 その際は、ログインスクリプトで if exist \\NTSERVER\SHAREFLD\(ユーザ名) goto jump1 t: cd / md (ユーザ名) :jump1 (t:は\\NTSERVER\SHAREFLDにマップ済) とかやって、フォルダはできているのですがs:で共有できませんでした。 サーバ側で、\\NTSERVER\SHAREFLD\(ユーザ名)を共有設定しなければいかないかなぁと思って諦めたのです。 クライアントを再起動とかして、起動時に\\NTSERVER\SHAREFLD\(ユーザ名)が存在していればいいのかもしれないので、また現場でやってみます。

関連するQ&A