
A 回答 (4件)
- 最新から表示
- 回答順に表示
No.4
- 回答日時:
多くのUnixだとroot権限があればディレクトリのハードリンクは作れます。
Linuxだと出来ないようですね。おそらくお書きのように循環ディレクトリの問題だと思います。
Unixも一般ユーザに許していない理由も同じ。
シンボリックリンクというのはファイルシステム上では(シンボリックリンク属性の付いた)単なるファイルです。循環ディレクトリは出来ません。
循環ディレクトリが出来て困るのは、ファイルシステムの管理上の理由なので、シンボリックリンクで循環を作っても別にOSは困りません。
No.2
- 回答日時:
実際、"."や".."は内部的にハードリンクで実装されていることから
分かるようにファイルシステム的には実装可能であるはずだと思うのですが、
以下のような理由により禁止されているのだと思います。
(ちなみに参考URLからたどれるスレッドではsolarisでは可能だという記述が見られます。)
(1)利用者の混乱を避けるため
仮にディレクトリに対するハードリンクを作成した場合、
作成者以外の人(作成者がその存在を忘れた場合を含む)が、
その存在を直感的に認識するのは大変だと思います。
(2)コマンドのコーディング負担の軽減のため
ぱっと思いつくものでは、
chroot(サンドボックスの外側のディレクトリとハードリンクされるとchrootの意味がない)
find,df等ディレクトリを再帰検索するコマンド(循環参照の検知が面倒くさそう)
find(ディレクトリのハードリンクの存在を調べたりする様な機能の追加)
などが挙げられます。
シンボリックリンクがほとんどの場合に代替の手段となる以上、
ディレクトリのハードリンクの対応にこだわる必要はないと個人的には思います。
参考URL:http://search.luky.org/linux-users.6/msg05762.html
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
拡張子.dどういう意味
-
2TBのUSBメモリを2000円ほどで...
-
ホームページのディレクトリを...
-
7zを使うとフォルダの中身がす...
-
FTPでPUTできない原因は何?
-
ファイル名で / (スラッシュ...
-
ftpのmgetコマンドの自分の格納...
-
zorin os lite 15 のデスクトッ...
-
etcは何の略?
-
make時に出てきたエラーメッセ...
-
バッチファルの置き場所
-
ディレクトリを削除するシェル...
-
ディレクトリの作り方
-
シンボリックリンクについて
-
Linuxコマンドについて
-
指定したファイルを任意の範囲...
-
tarでディレクトリのみをアーカ...
-
1ディレクトリに作れるファイル...
-
"cp -a"と"cp -r"の違い
-
xcodeのResources ディレクトリ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ファイル名で / (スラッシュ...
-
ftpのmgetコマンドの自分の格納...
-
7zを使うとフォルダの中身がす...
-
拡張子.dどういう意味
-
「照合パターンに合いません」...
-
make時に出てきたエラーメッセ...
-
"cp -a"と"cp -r"の違い
-
FTPコマンドのCDについて
-
linuxコマンド mkdirでディレ...
-
バッチファルの置き場所
-
scpによるデータ転送後、ディレ...
-
Linuxコマンドについて
-
シンボリックリンクについて
-
FTPでPUTできない原因は何?
-
zorin os lite 15 のデスクトッ...
-
ホームページのディレクトリを...
-
「ドット(.)」と「¥」の意味...
-
2TBのUSBメモリを2000円ほどで...
-
/(スラッシュ)で区切ったフル...
-
Minecraftにforgeを入れたら、...
おすすめ情報