シンボリックリンクの名前を理解する

シンボリックリンクの名前を理解する

ディレクトリには/etc/rc3.d/すべてシンボリックリンクであり、ディレクトリ内/etc/init.d/のファイルを指すシンボリックリンクを使用するように指示するファイルがたくさんあります../init.d/。たとえば、ディレクトリS18rsyslog内のファイルは/etc/rc3.d/ファイルへのシンボリックリンクですが、/etc/init.d/rsyslog次のことを指していません。ls -l/etc/rc3.d/S18rsyslog/etc/init.d/rsyslog../init.d/rsyslog

# ls -l /etc/rc3.d/S18rsyslog
lrwxrwxrwx 1 root root 17 30. jun 15:05 /etc/rc3.d/S18rsyslog -> ../init.d/rsyslog
# 

ディレクトリに関連付けられたシンボリックリンクを維持すると、どのような利点がありますか?これは、人々がシンボリックリンクを壊さずにディレクトリ自体を移動できるからですか?また、..ディレクトリに存在せずにパスに(親ディレクトリ)へのシンボリックリンクを作成できますか?ln -sv '/etc/init.d/rsyslog' '/etc/rc3.d/../init.d/rsyslog'明らかに機能しないのは、シンボリックリンクがディレクトリに作成され、ディレクトリにシンボリックリンクの名前を付けたい/etc/init.d/からです../init.d/rsyslog/etc/rc3.d/

答え1

ディレクトリに関連付けられたシンボリックリンクを維持すると、どのような利点がありますか?これは、人々がシンボリックリンクを壊さずにディレクトリ自体を移動できるからですか?

まさに。

..また、ディレクトリに存在せずにパスに(親ディレクトリ)へのシンボリックリンクを作成できますか?ln -sv '/etc/init.d/rsyslog' '/etc/rc3.d/../init.d/rsyslog'明らかに機能しないのは、シンボリックリンクがディレクトリに作成され、ディレクトリにシンボリックリンクの名前を付けたい/etc/init.d/からです../init.d/rsyslog/etc/rc3.d/

だから表現しようとしているんだln -s ../init.d/rsyslog /etc/rc3.d

シンボリックリンクを見落とさないようにするには、シンボリックリンクのln意味を覚えておくのが最善です。シンボリックln TARGET LINKリンクは、本質的にLINKのTARGETを含むファイルです。 TARGETが相対パス名の場合、TARGETは埋め込みディレクトリに関連付けられているシンボリックリンクを置き換えます。それゆえにln -s X/Y A/B/なるA/B/X/Y

関連情報