miyupaca log

はじめてのシンボリックリンク

2020/08/12

Linux学習中に「シンボリックリンク」という単語を聞いて、
聞き慣れなかったので調べて作成してみるところまでやってみました。


シンボリックリンクとは

特定のファイルやディレクトリを参照するファイルのこと。
Windowsのショートカットのようなイメージで、デスクトップによく使うアプリのショートカットを置くとすぐに使えて便利なのと同じで、アクセスが容易になるというメリットがある。対象のコピーではなくてアクセス手段。


シンボリックリンクの作成

lnコマンドを使ってファイルへのリンクを作成することができる。
-sオプションを使用する。

ln -s 参照するディレクトリorファイルのパス リンク名

例えば/var/www/html/ypsのシンボリックリンクを作成するとする。
ypsというリンク名で呼べるようにしたい場合コマンドは以下になる。

ln -s /var/www/html/yps yps

作成したファイルを確認すると先頭にlがついており、
また、[リンク名]->[参照するディレクトリorファイルのパス] と表示される。

ls -la yps
==========
lrwxrwxrwx. 1 centos centos  17  8月 12 22:12 yps -> /var/www/html/yps

次から/var/www/html/ypsディレクトリを参照したい時には

cd yps

とすればokになる。
ちなみに参照なのでypsの場所はもちろん作成したディレクトリ内になる。

cd yps
pwd // /var/www/html/ypsにはならない

シンボリックリンクの変更

ln -nfs 参照するディレクトリorファイルのパス リンク名

-fオプションは強制上書きを行う。
-nオプションはリンク名がディレクトリを指す場合、通常のファイルとして扱うもので、参照先がディレクトリの場合は変更時に必要になる。

シンボリックリンクの向き先変更(ln -nfs TARGET LINK_NAME) - Qiita


シンボリックリンクの削除

以下のコマンドでシンボリックリンクのファイルを削除することができる。

unlink リンク名

シンボリックリンクの特徴

あくまでも指定されたファイルを示すものなので、ファイルそのものとは別物で、シンボリックリンクを削除しても元のファイルには影響がない。


気づきなど

これまで深い階層のディレクトリもパスを覚えて移動していたので
これからはシンボリックリンクで楽にいろんな場所を参照できるようになりそうです!

参考リンク

シンボリックリンク(ソフトリンク)とは - IT用語辞典 e-Words
シンボリックリンク (symbolic link)とは|「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典
【 ln 】コマンド――ファイルのハードリンクとシンボリックリンクを作る:Linux基本コマンドTips(16) - @IT
シンボリックリンクの作成、更新、削除、権限変更をしました。 - Qiita
シンボリックリンク設定方法 - Qiita


miyupaca

miyupacaの学習記録ブログです。