カテゴリ: Linuxコマンド集 更新日: 2026/01/04

cp -sオプションの使い方を完全ガイド!初心者でもわかるシンボリックリンク作成法

cp -sオプション|シンボリックリンクを作成するコピー方法
cp -sオプション|シンボリックリンクを作成するコピー方法

先生と生徒の会話形式で理解しよう

生徒

「Linuxでコピーすると、同じファイルが2つできますけど、ディスク容量が心配です…」

先生

「そんなときは cp -s オプションを使うと、シンボリックリンク(ショートカット)を作れるよ。容量を使わずにコピーみたいに扱えるんだ。」

生徒

「ショートカット?それってWindowsのアイコンみたいなやつですか?」

先生

「その通り!中身はコピーしないけど、元のファイルを指し示すリンクを作るんだ。実際に使ってみようか!」

1. cpコマンドとは?

1. cpコマンドとは?
1. cpコマンドとは?

cpコマンドは、Linuxでファイルやディレクトリをコピーする基本コマンドです。通常はファイルの内容をそのまま別名で複製します。


cp photo.jpg backup_photo.jpg

このように書くと、元ファイルのphoto.jpgを複製してbackup_photo.jpgを作成します。

2. cp -sオプションとは?(シンボリックリンクを作る)

2. cp -sオプションとは?(シンボリックリンクを作る)
2. cp -sオプションとは?(シンボリックリンクを作る)

-ssymbolic(シンボリック)の略で、シンボリックリンクを作成するためのオプションです。

通常のコピーと違って、ファイルの中身はコピーせず、参照用のリンク(ショートカット)を新しく作るだけなので、ディスク容量を節約できます。

実行例はこちら:


cp -s original.txt shortcut.txt

このコマンドで、shortcut.txtoriginal.txtを指し示すシンボリックリンクになります。

3. シンボリックリンクの仕組みを例えで理解

3. シンボリックリンクの仕組みを例えで理解
3. シンボリックリンクの仕組みを例えで理解

シンボリックリンクは、住所メモのようなものです。たとえば「Aさんの家」という場所をコピーする代わりに、「Aさんの住所が書かれた紙」を渡すイメージです。

つまり、リンクを開けば元のファイルを見られますが、実体は元ファイルにしかありません。

だから、元ファイルが消えるとリンクも機能しなくなります。

4. シンボリックリンクの確認方法(ls -l)

4. シンボリックリンクの確認方法(ls -l)
4. シンボリックリンクの確認方法(ls -l)

作成されたシンボリックリンクが正しく動作しているかは、ls -lコマンドで確認できます。


ls -l shortcut.txt
lrwxrwxrwx 1 user user 13 Sep 16 10:00 shortcut.txt -> original.txt

このように、shortcut.txtoriginal.txt を指していることがわかります。「→」で示されるのがシンボリックリンクの特徴です。

5. cp -sの活用例

5. cp -sの活用例
5. cp -sの活用例
  • 容量を節約したいとき(同じファイルを複数の場所に置きたいけど中身は1つでいい)
  • 設定ファイルの切り替え(リンク先を変更するだけで済む)
  • 開発環境で別名を使いたいとき

たとえば、~/config/main.confを別フォルダにリンクしたいときはこうします。


cp -s ~/config/main.conf ~/backup/link.conf

6. シンボリックリンクとハードリンクの違い

6. シンボリックリンクとハードリンクの違い
6. シンボリックリンクとハードリンクの違い

cp -l(ハードリンク)とcp -s(シンボリックリンク)の違いは非常に重要です。

項目 ハードリンク(-l) シンボリックリンク(-s)
中身の実体 共有(実体は同じ) 別(参照するだけ)
ファイルシステムをまたげるか × 不可 ○ 可能
元ファイルが消えたとき リンク先も保持 リンク切れになる

柔軟性を重視するならシンボリックリンク完全なコピー代替にしたいならハードリンクが向いています。

7. -sオプションを使う際の注意点

7. -sオプションを使う際の注意点
7. -sオプションを使う際の注意点
  • リンク切れに注意(元ファイルを削除するとリンクが無効に)
  • 複数のリンク名で同じファイルを指すと混乱しやすい
  • シンボリックリンクは実行ファイルの代替に使うと便利だが、パスが通っている必要がある

安全に使うには、ls -lなどでリンク先の確認をこまめに行うのがおすすめです。

関連記事:
カテゴリの一覧へ
新着記事
New1
ファイル・ディレクトリ操作
stat -Lオプションの使い方を解説|シンボリックリンクをたどってファイル情報を確認しよう
New2
ファイル・ディレクトリ操作
realpath -eオプションの使い方を解説!Linuxで存在するファイルのみ絶対パスを取得する方法
New3
ファイル・ディレクトリ操作
findコマンドの使い方を完全ガイド!初心者でもわかるLinuxのファイル検索の基本
New4
ファイル・ディレクトリ操作
touch --referenceオプションの使い方を完全ガイド!初心者でもわかるタイムスタンプのコピー方法
人気記事
No.1
Java&Spring記事人気No1
ファイル・ディレクトリ操作
findコマンドの使い方を完全ガイド!初心者でもわかるLinuxのファイル検索の基本
No.2
Java&Spring記事人気No2
ファイル・ディレクトリ操作
rmコマンドとは?Linuxでファイルやディレクトリを削除する基本
No.3
Java&Spring記事人気No3
ファイル・ディレクトリ操作
cpコマンドとは?Linuxでファイルやディレクトリをコピーする基本操作を初心者向けに解説
No.4
Java&Spring記事人気No4
ファイル・ディレクトリ操作
Linuxのls --full-timeオプションを完全ガイド!初心者でもわかるタイムスタンプのフル表示方法