今回はLinuxのlnコマンドでファイルやディレクトリにリンクを作成する方法をご紹介していきます。また、Linuxのlnコマンドのオプションの効果や使い方についてもそれぞれご説明していますので、是非、この記事を参考にリンクを作成してみて下さい。
Linuxのlnコマンドでファイルやディレクトリにリンクを作成する方法をご紹介していきます。Linuxのlnコマンドとはファイルのリンクを作成するために用意されたコマンドです。Linuxのlnコマンドにファイル名とリンク名を付与して実行すると簡単にハードリンクが作成できます。
その他にもオプションを活用する事で、シンボリックリンクを作成したり、ディレクトリのハードリンクを作成したりできます。「-s」オプションを使ってシンボリックリンクを作成するのが一般的です。
Linuxのlnコマンドの基本的な書式をご説明していきます。
lnコマンドの基本的な書式 | |
ln 【オプション】 ファイル名 リンク名 | ファイルのハードリンク又は シンボリックリンクを作成します |
ln -s ファイル名 リンク名 | ファイルのシンボリックリンクを作成します |
ln -s ディレクトリ名 リンク名 | ディレクトリのシンボリックリンクを作成します |
ln -s ファイル名1 ファイル名2 ... ディレクトリ | 指定したディレクトリの下に シンボリックリンクを作成します |
これらの基本的なLinuxのlnコマンドを使ってハードリンクやシンボリックリンクを作成していきます。
ここからはLinuxのlnコマンドのオプションについて細かくご説明していきます。Linuxのlnコマンドの主なオプションは以下の一覧になります。
オプション | 長いオプション | オプションによる効果 |
-s | --symbolic | ハードリンクに代わってシンボリックリンクを作成します |
-d,-F | --directory | スーパーユーザーのみが利用できるコマンドです ディレクトリのハードリンクを作成します |
-f | -force | リンクファイルと同じ名前のファイル名が 既に作成されていても強制的に上書きします |
-i | --interactive | ファイルを上書きをする前に確認します |
-n | --no-dereference | リンクの作成場所として指定した先のディレクトリが シンボリックリンクであった場合に、 参照先へリンクを作成せずに、シンボリックリンク自体を置き換えます |
-L | --logical | 対象がシンボリックリンクであった場合にリンクを巡ります |
-P | --physical | シンボリックリンクに対してハードリンクを作成します |
-r | --relative | 相対パスのシンボリックリンクを作成します |
-T | --no- target-directory |
リンク先を常時、通常ファイルとして扱います |
-t DIR | --target- directory=DIR |
指定したディレクトリに対してリンクを作成します DIRの部分にディレクトリ名を指定します |
-b | --backup=方法 | 上書きされるファイルに対してバックアップを作成します |
-S 接尾辞 | --suffix=接尾辞 | バックアップファイルを作成する際のファイル名の 末尾に付ける文字を作成します 接尾辞の指定がない場合には『~』が付与されるか、 環境変数に「SIMPLE_BACKUP_SUFFIX」が指定されていれば、それに従って接尾辞を付与します |
-v | --verbose | 経過状況を表示します |
それぞれのlnコマンドについて以下で詳しく説明していきます。
Linuxのlnコマンドにsオプションを付与すると「シンボリックリンク」になります。このlnコマンドのオプションを指定しなければ「ハードリンク」として作成されます。
$ ln -s リンク元 登録名 |
このlnコマンドでシンボリックリンクを作成できます。例えばlocalディレクトリの中のtest.datのシンボリックリンクをtestSymbolとして作成する場合は以下のようになります。
$ ln -s local/test.dat testSymbol |
このlnコマンドでlocalディレクトリの中にtestSymbolという名前でtest.datへのリンクが作成されます。きちんと作成されているか確認するためには以下のlnコマンドを実行してください。
$ ls -l testSymbol |
このlnコマンドでtestSymbolで作成されたシンボリックリンクを表示しますので、これで確認できます。
次のLinuxのlnコマンドのオプションはfオプションです。このfオプションはすでに登録されている名前である場合に、登録内容を上書きして登録をします。通常このfオプションを付与せずにすでに登録されている名前でlnコマンドを実行しようとすると『ハードリンク 'ファイル名' の作成に失敗しました:ファイルが存在します』といったエラーメッセージが表示されます。
これを強制的に上書きするためのlnコマンドがfオプションになります。fオプションを使うことで登録内容の上書き登録が出来ます。fオプションの使い方は以下のようになります。
$ ln -f リンク元 登録名 |
例えばlocalディレクトリ内のtest.datをtestSymbolへのリンクとして登録しています。これをlocalディレクトリ内にあるtest2.datへのリンクとして同じ名前で登録するためにはlnコマンドを以下のように指定します。
1 / 6
続きを読む