Administratorでスタンドアロンなコンソール環境でログオンしているのですが、
消すことの出来ないファイルがいくつかあるです。
なぜかリネームは出来るのですが、移動、削除、アトリビュートの変更が出
来ません。
消したいファイルはソースコードとかのただのテキストファイルで、普段の
運用プロセスで使用しているようなものじゃないのです。
私的に思いつく範囲で考えられること・・・
1. 何者かがファイルをロックしている?!
→Windowsファイルを開いているプロセスを知る方法はないでしょうか?
2. ファイルロックのフラグがゾンビ化している?!
→フラグを是が非でも寝かす方法ないかしら?
3. 他の要因・・・・
→う~む~ぅ。
うまい解決方法を何かご存知でしたらフォローをお願いいたします。
あなたの協力に感謝いたします。
--
Masaya Ootsuki. (大槻昌弥)
WWW; http://www.asahi-net.or.jp/~JC5M-OOTK/
|Subject: ファイルが削除できない問題
|From: Masaya Ootuki <jc5m...@asahi-net.or.jp>
|Date: Wed, 22 Oct 2003 18:07:11 +0900
|Message-Id: <3f9648c0$0$19846$44c9...@news2.asahi-net.or.jp>
|X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1165
|User-Agent: Microsoft Outlook Express 6.00.2800.1158
| Administratorでスタンドアロンなコンソール環境でログオンしているのですが、
| 消すことの出来ないファイルがいくつかあるです。
| なぜかリネームは出来るのですが、移動、削除、アトリビュートの変更が出
| 来ません。
過去、類似の現象を見かけました。で、結局解決できなかったので、そ
のときはさくっとフォーマットしなおしました。
データドライブを別途、新規で何か使えるなら、一時的にそこにデータ
を退避した上でフォーマットしなおしの形がよいのかな、と思います。
以上
山本謙次 [MVP]
--
JWNTUG TechNote http://www.jwntug.or.jp/tech/technote/index-j.html
JWNTUG NT-FAQ-J http://www.jwntug.or.jp/tech/ntfaqj/index.html
Kenji Yamamoto, Microsoft MVP (Security; Windows Server Systems), MCP+I, MCSE (TCP/IP, IIS4, IEAK4)
mailto:ethe...@jcom.home.ne.jp
"Kenji Yamamoto [Security MVP]" <ethe...@mvps.org> wrote in message
news:wxvlb.258$vR3....@news1.rdc1.ky.home.ne.jp...
|Subject: Re: ファイルが削除できない問題
|From: Lovehikki <Love...@e.email.ne.jp>
|Date: Fri, 24 Oct 2003 00:31:24 +0900
|Message-Id: <3f97f434$0$604$44c9...@news3.asahi-net.or.jp>
|X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1165
|User-Agent: Microsoft Outlook Express 6.00.2800.1158
| 以前そのようなときがありましたが
| (OSはWin98SEだったかもしれませんが)
| Dosからデリートしてあげました。
私が体験したのは、Windows 2000 以降で NTFS を使う場面で数度、で
した。で、毎度、コマンドプロンプトを経由しても、コピー、移動、削
除、属性変更、なにやってもエラーになってたりしました。Chkdsk で
ディスクエラーを調べても正常と出る一方。そういうところで、前述の
ようにフォーマットしなおすということになったわけでした。
とりあえずのご参考まで。
以上
山本謙次 [MVP]
--
JWNTUG TechNote http://www.jwntug.or.jp/tech/technote/index-j.html
JWNTUG NT-FAQ-J http://www.jwntug.or.jp/tech/ntfaqj/index.html
Kenji Yamamoto, Microsoft MVP (Security; Windows Server Systems), MCP+I, MCSE (TCP/IP, IIS4, IEAK4)
http://mvp.support.microsoft.com/?id=fh;en-us;mvpaward&style=toc#Security0-0Windows0Server0Systems
mailto:ethe...@jcom.home.ne.jp
# The fj chronicle を読んでやってきました。
At Thu, 23 Oct 2003 17:50:39 GMT,
Kenji Yamamoto [Security MVP] <ethe...@mvps.org> wrote:
> 私が体験したのは、Windows 2000 以降で NTFS を使う場面で数度、で
> した。で、毎度、コマンドプロンプトを経由しても、コピー、移動、削
> 除、属性変更、なにやってもエラーになってたりしました。Chkdsk で
> ディスクエラーを調べても正常と出る一方。そういうところで、前述の
> ようにフォーマットしなおすということになったわけでした。
僕は Adobe Illustrator の AI形式ファイルにおいて似たような事象が
現れました。ファイルが消せない他に、ゴミ箱から完全に消去出来ない
という問題も同時に生じて頭を悩ませたものです。
解決策は山本さんと似たようなものですが、
1. スキャンディスクしてから消去
2. デフラグしてから消去(全く意味がないがおまじない程度に)
3. Safeモードで起動してから消去
4. 諦める。
といったところです。
--
柏崎 礼生 (Hiroki Kashiwazaki)@HUIIC
Ph.D candidate in the Division of Electronics & Information
Engineering, Hokkaido University
mailto:r...@cc.hokudai.ac.jp
Tel:+81-11-706-2998
霜月です。
> Administratorでスタンドアロンなコンソール環境でログオンしているのですが、
> 消すことの出来ないファイルがいくつかあるです。
NTFSで時々できたりしますね。
私の対処法は以下の通り。
1. 同一パーティションにクリーンインストールしたがために所有権関係
の問題で削除できない場合
ファイルのプロパティ→セキュリティ→詳細からなんかてきとーに弄る
2. なんかよくわからんが削除できない場合
Safe Mode Command Prompt Only・修復モードで削除してみる
3. それでもどーしても削除できない場合
DiskProbeを使う(キケン)か、フォーマットするか、あきらめる
って感じですかね。
では。
--
Kissui Shimotsuki
<shimo...@ikushimo.com> http://www.ikushimo.com/
In article <20031024175541....@ikushimo.com>
Kissui Shimotsuki <shimo...@ikushimo.com> writes:
> 霜月です。
> > Administratorでスタンドアロンなコンソール環境でログオンしているのですが、
> > 消すことの出来ないファイルがいくつかあるです。
> 1. 同一パーティションにクリーンインストールしたがために所有権関係
> の問題で削除できない場合
> ファイルのプロパティ→セキュリティ→詳細からなんかてきとーに弄る
ファイルの所有者に run as したらなんとかなることはないでしょ
うか。Backup とか別のユーザでやってみるとか。
Windwos は、難しいので日常的使っているわけではないのですが、
NTFS の ACL (Access Control List) の仕組みからすると、消せな
いファイルが原理的に誰でも作れそうな気がします。まず、他のユー
ザやグループ(管理者含む)や自分自身からの削除もできないよう
にして、さらに、そのような属性の変更もできないようにします。
本当にそうなんでしょうか。(本当だったら試したくありません。)
ディレクトリに放り込んで、ディレクトリごと削除しても、ゴミ箱
を空にできないという話なんですよね。
\\ 新城 靖 (しんじょう やすし) \\
\\ 筑波大学 電子・情報 \\
|Subject: Re: ファイルが削除できない問題
|From: Yasushi Shinjo <y...@is.tsukuba.ac.jp>
|Date: 24 Oct 2003 21:24:49 GMT
|Message-Id: <YAS.03Oc...@kirk.is.tsukuba.ac.jp>
| NTFS の ACL (Access Control List) の仕組みからすると、消せな
| いファイルが原理的に誰でも作れそうな気がします。まず、他のユー
| ザやグループ(管理者含む)や自分自身からの削除もできないよう
| にして、さらに、そのような属性の変更もできないようにします。
所有権(Ownership) の操作で、それに近いことは、できます。
但し、多くの場合 Admninistrators に所属するアカウントで
ownership を取り直せば ACL を操作できますので、操作可能な権限を
適宜付与することで、復旧します。
"Masaya Ootuki" <jc5m...@asahi-net.or.jp> wrote in message
news:3f9648c0$0$19846$44c9...@news2.asahi-net.or.jp...
> Administratorでスタンドアロンなコンソール環境でログオンしているのですが、
> 消すことの出来ないファイルがいくつかあるです。
> なぜかリネームは出来るのですが、移動、削除、アトリビュートの変更が出
> 来ません。
> 消したいファイルはソースコードとかのただのテキストファイルで、普段の
> 運用プロセスで使用しているようなものじゃないのです。
(中略)
>
> うまい解決方法を何かご存知でしたらフォローをお願いいたします。
> あなたの協力に感謝いたします。
この場合、相手が普通のファイルのようなので
通用するかどうか、非常にあやしいのですが
以前、自分が何をやっても消せなかったフォルダが出来てしまい
その時、ニュースグループで教えていただいた削除方法をご紹介します
コマンドラインから
rd /s "\\?\C:\Documents and Settings\hogehoge\My Documents\My "
このように、パスの前に \\?\ と付ける事でパスの解析をしなくなる
・・・とかなんとからしいです(^^;
実際の所はあまり知りませんが、とりあえずこの方法で
奇妙な消せないフォルダを削除できました
ただこの時のフォルダと言うのは、削除や移動等はもちろん
リネームも不可能でしたので、今回のケースにはあまり関係がないかもしれません
役立たずかもしれませんが、参考までにいかがでしょうか・・・
--
___________________________________________________________
Writing by Watatyan(m_w...@ta2.so-net.ne.jp)
"Watatyan" <m_w...@ta2.so-net.ne.jp> wrote in message
news:bnd4nk$3pg$1...@caraway.media.kyoto-u.ac.jp...
> コマンドラインから
> rd /s "\\?\C:\Documents and Settings\hogehoge\My Documents\My "
> このように、パスの前に \\?\ と付ける事でパスの解析をしなくなる
> ・・・とかなんとからしいです(^^;
> 実際の所はあまり知りませんが、とりあえずこの方法で
> 奇妙な消せないフォルダを削除できました
~~~~~~~~
ファイルの場合、コマンドは rd ではなく del ですね(^^;
In article <lxjmb.288$vR3....@news1.rdc1.ky.home.ne.jp>
Kenji Yamamoto [Security MVP] <ethe...@mvps.org> writes:
> | NTFS の ACL (Access Control List) の仕組みからすると、消せな
> | いファイルが原理的に誰でも作れそうな気がします。
> 所有権(Ownership) の操作で、それに近いことは、できます。
> 但し、多くの場合 Admninistrators に所属するアカウントで
> ownership を取り直せば ACL を操作できますので、操作可能な権限を
> 適宜付与することで、復旧します。
所有者を変更するアクセス権(0x00080000)が、はがされていても、
Admninistrators グループの権限があれば、所有権を変更できるの
でしょうか?
ACL で、「Admninistrators グループは、その操作禁止」と書いて
おいた場合はどうなるでしょうか?
In article <bngkm4$bt2$1...@pin3.tky.plala.or.jp>
"Ito Masanori(伊藤 正則)" <i...@t-and-a.co.jp> writes:
> ファイルのパーミッションは、unix でおぼえたので
> Windows2000 では、あまりよく知りません。
Unix と Windows 2000 (Windows NT, NTFS) では、アクセス権の扱
いが全然違います。手元の資料だと、NTFS だとこんな感じです。
------------------------------------------------------------
***プロセスの属性(アクセス・トークン)
Windows NT のプロセスには、次の情報を含むアクセス・トークンが作られる。
ユーザを表す SID
グループを表す SID
***オブジェクトの属性
オブジェクトには、次のような属性がある。
所有者(ユーザ)を表す SID
グループを表す SID
ACL (ACE の並び。順番も重要。)
ACL -- Access Control List
ACE -- Access Control Entry
各 ACE は、次の3つ組からなる
ヘッダ(種類を含む)
アクセス・マスク(32ビット)
SID(ユーザかグループを表す)
ACE の種類
随意
許可
拒否
システム
監査
警告(Windows 4.0 では未実装)
***Windows NTのアクセス制御のアルゴリズム
ACL がなければ、許可。
ACL があるが、長さが 0 なら禁止。
ACL があり、長さが 0 でない時:
ACL の先頭から順に ACE を調べる。
プロセスに関連する SID を持つ ACE があれば、それに従う。
最後まで行っても見付からない時には、禁止。
***アクセス・マスク(アクセス権)
アクセス・マスクは、32ビットある。ただし、32種類の許可・禁止ができ
るわけではなく、依存している部分がある。各ビットが直交しているわけでは
ない。
アクセス・マスク(アクセス権)には、次の3種類ある。
汎用(generic) どんなオブジェクトにも有効
標準(standard) どんなオブジェクトにも有効
固有(specific) 個々のオブジェクトごとに決まる
汎用と標準の違いは、今一つ不明。
汎用のアクセス権は、最終的には、オブジェクトごとに固有のアクセス権に翻
訳されて解釈される(こともある)。翻訳方法は、システムで決まっている。
次の4つは、どんなオブジェクトにも有効である。
0x10000000 全て(フルコントロール)
0x20000000 実行 (X)
0x40000000 書き込み (W)
0x80000000 読み取り (R)
0x02000000 最大アクセス権
0x01000000 システムACLへのアクセス
0x00010000 削除 (D)
0x00020000 SIDの所有者、グループ属性、随意ACLの読み込み
0x00040000 随意ACLの書き込み
0x00080000 所有者変更
0x00100000 同期アクセス
オブジェクトに固有のアクセス権には次のようなものがある。
ファイル・オブジェクト
0x00000001 ファイルの読み取り
0x00000002 ファイルの書き込み
0x00000004 ファイルの追加
0x00000008 ファイルの拡張属性を読み出せる
0x00000010 ファイルの拡張属性を書き込める
0x00000020 ファイルの実行形式ファイルの実行
0x00000040 ?
0x00000080 ファイルの属性の読み取り
0x00000100 ファイルの属性の書き込み
ディレクトリ・オブジェクト
0x00000001 ディレクトリの一覧を取る
0x00000002 ディレクトリにファイルを作成する
0x00000004 ディレクトリにサブディレクトリを作成する
0x00000008 ディレクトリの拡張属性を読み出せる
0x00000010 ディレクトリの拡張属性を書き込める
0x00000020 カレント・ディレクトリを変更する
0x00000040 サブディレクトリ中のファイルを削除する
0x00000080 ディレクトリのファイル属性を読み込む
0x00000100 ディレクトリのファイル属性を書き込む
汎用のアクセス権は、個々のオブジェクトのアクセス権に翻訳されて解釈される。
たとえば、ファイルに対する汎用書き込み(0x40000000)は、ファイルの書き込
み(0x00000002)、ファイルの属性の書き込み(0x00000100)、ファイルの拡張属
性を書き込める(0x00000010)、同期アクセス(0x00100000)として解釈される。
****フルコントロールの意味
ACE として、次のようなエントリを作る。
ヘッダ(許可)
アクセス・マスク 0x80000000
SID(ユーザかグループ)
このアクセスマスクは、最終的に、ファイルならオブジェクトごとのアクセス
権が全部立った0x000001ff に化ける。ディレクトリなら、0x000001ff に化け
る。ファイルとディレクトリでは、個々のビットは比較できない。
****「アクセス権なし」の意味
ACE として、次のようなエントリを作る。
ヘッダ(禁止)
アクセス・マスク 0x80000000
SID(ユーザかグループ)
ACE として許可ではなくて禁止の機能を使う。
**個別のアクセス権
次のようなアクセス権のビットがあるように見える。
----------------------------------------------------------------------
表示 ビット
----------------------------------------------------------------------
R 読み取り 0x80000000
W 書き込み 0x40000000
X 実行 0x20000000
D 削除 0x00010000
P アクセス権の変更 0x00040000+0x00020000
O 所有権の取得 0x00080000
----------------------------------------------------------------------
作成者が所有者になる。Administrators グループは、ファイルとディレクト
リの所有権を取得できる。と書いてあるが、実際にはそのように設定したディ
レクトリでうまく継承させないと、こうはならない。
Windows NT では、2組の文字で表されるが、内部的に2つのビットがあるわ
けではなさそうである。実際、Windows 2000 では、表示が全く異なる。
**標準アクセス権
アクセス権の設定(各ACEで、許可/禁止、32ビットの設定)は、非常に繁雑
である。よく使われる設定の組み合わせに名前を付けてある。
ディレクトリのアクセス権
アクセス権無し (禁止、マスク 0x80000000)
一覧 (許可、マスク 0x60000000 == 0x00000021)
読み取り 説明の意味がわからない
追加 (許可、マスク 0x00000002)
追加と読み取り (許可、マスク 0x00000023)
変更 (許可、マスク 0x00000063)
フルコントロール(許可、マスク 0x80000000)
ファイルのアクセス権
アクセス権無し (禁止、マスク 0x80000000)
読み取り (許可、マスク 0x60000000 == 0x0000089)
変更 (許可、マスク 0x0000019f)
フルコントロール(許可、マスク 0x80000000 == 0x000001ff)
------------------------------------------------------------
ACL というと、まず、パケット・フィルタを思い出したのですが、
Windows NT のファイル・システム(NTFS)の中身を調べると、本当
にパケット・フィルタのような ACL でした。ウインドウに表示さ
れるアクセス権は、本当のものではなくて、単に分かりやすいよう
に名前を付けたものです。
> Administrator で消せないファイルがあるというのは、OS として、不完全である
> と思うのですが、いかがなものでしょうか。
Unix の root と Windows の Administrator は、別の概念なので、
root に出きることを Administrator しても、できないことはあり
ます。
> なんか最近、仕事以外で、Windowsが正常に動作するために裂く時間がとても多い
> ので、すこしすねてます。
私は、Windows は、難しいので普段は使っていません。
Win2k の場合しか確認していませんが、
セキュリティポリシーのユーザー権利の割り当ての、
「ファイルとその他のオブジェクトの所有権の取得」の権利を割り当てられて
いるユーザ(デフォルトでは administrators グループ)は、
ACL での規定に関わらず、所有権を奪取できるはず。
http://www.microsoft.com/windows2000/ja/server/help/sag_ADgroups_9builtin_intro.htm
によると、
[ユーザー権利]
ファイルとその他のオブジェクトの所有権の取得
[許可する操作]
コンピュータ上の (またはコンピュータに接続した) ファイル、フォルダ、
プリンタ、およびその他のオブジェクトの所有権を取得します。この権利
は、オブジェクトを保護するアクセス許可より優先されます。ファイルと
フォルダのアクセス許可については、「共有フォルダのアクセス許可」を参
照してください。
[既定の設定でこの権利が割り当てられるグループ]
Administrators
--
OMATSU Yuichiro mailto:y_om...@hotmail.com
|Subject: Re: ファイルが削除できない問題
|From: Yasushi Shinjo <y...@is.tsukuba.ac.jp>
|Date: 27 Oct 2003 06:02:02 GMT
|Message-Id: <YAS.03Oc...@kirk.is.tsukuba.ac.jp>
| 所有者を変更するアクセス権(0x00080000)が、はがされていても、
| Admninistrators グループの権限があれば、所有権を変更できるの
| でしょうか?
| ACL で、「Admninistrators グループは、その操作禁止」と書いて
| おいた場合はどうなるでしょうか?
この辺の仕組みの Generic な部分については、以下の文書が参考にな
るかと。
http://www.microsoft.com/windows2000/server/evaluation/news/bulletins/novellresponse3.asp
実際やってみましたが、以下のようになりました。
0) md c:\acltest で、acltest というフォルダ(ディレクトリ)を C:\
に作成。
1) 右クリック、「セキュリティ」タブから「詳細設定」で 親フォルダ
から継承している ACL を全削除、「フルコントロール」 及び 最下部
の三つのチェックボックスにチェックを入れることで、
Administrators の C:\acltest のプロパティへのアクセスを全面禁止
2) 右クリック、「セキュリティ」タブから同様に「詳細設定」で ACL 閲覧
-> 未設定の際と同様、閲覧も編集も可能。ただし閲覧やファイル移動
などの操作は不可能。