カテゴリ: Linuxコマンド集 更新日: 2026/03/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などでリンク先の確認をこまめに行うのがおすすめです。

まとめ

まとめ
まとめ

ここまで、cp -sオプションを使ったシンボリックリンクの作成方法について、基本から応用まで順を追って確認してきました。 cpコマンドはLinuxを使う上で最初に覚える基本コマンドの一つですが、-sオプションを理解すると、 ただのコピー作業にとどまらず、ファイル管理や設定管理を効率化する重要な武器になります。

通常のcpコマンドでは、ファイルの中身そのものを複製するため、同じ内容のファイルが増えるほどディスク容量を消費します。 一方でcp -sオプションは、実体をコピーせず、元ファイルへの参照情報だけを持つシンボリックリンクを作成します。 そのため、容量をほとんど使わずに「コピーしたように見せる」ことができます。

シンボリックリンクは、設定ファイルの切り替え、開発環境の構築、複数ディレクトリから同じファイルを参照したい場面など、 Linuxの実務や学習の現場で頻繁に利用されます。 特に、Linuxコマンド操作に慣れてくると、「実体を増やすべきか」「リンクで十分か」を判断できるようになる点が重要です。

cp -sで学んだ重要なポイント

  • cp -sはシンボリックリンクを作成するためのオプション
  • ファイルの中身はコピーされず、参照情報だけが作られる
  • ディスク容量を節約でき、管理がしやすくなる
  • 元ファイルを削除するとリンク切れが発生する
  • ls -lコマンドでリンク先を必ず確認する習慣が大切

実際の現場では、cp -sとln -sのどちらを使うべきか迷うこともありますが、 「コピーの延長としてリンクを作りたい」という場面ではcp -sが直感的でわかりやすい選択になります。 Linux初心者のうちからcp -sに触れておくことで、ファイル構造への理解も自然と深まります。

シンボリックリンクの確認をもう一度

最後に、シンボリックリンクが正しく作成されているかを確認する基本操作を振り返ります。


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

このように、ファイル名の前に「l」が表示され、「->」の右側にリンク先が表示されていれば、 正しくシンボリックリンクが作成されています。 Linuxコマンドを使ったファイル操作では、結果を必ず確認する癖をつけることが、 トラブルを防ぐ近道になります。

先生と生徒の振り返り会話

生徒

「cp -sって、ただのコピーだと思っていましたけど、実体を増やさずに使えるのが便利ですね。 ディスク容量を節約できる理由もよくわかりました。」

先生

「そうだね。Linuxでは、ファイルをどう持つかを考えることがとても大切なんだ。 何でもコピーするより、リンクで済む場面を見極められるようになると、一段レベルが上がるよ。」

生徒

「元ファイルを消すとリンクが切れるのは注意点ですね。 ls -lで確認する癖をつければ、安心して使えそうです。」

先生

「その通り。cp -s、ls -l、そしてリンクの仕組みを理解しておけば、 Linuxのファイル管理が一気に楽になる。 これから他のLinuxコマンドを学ぶときも、今日の考え方が必ず役に立つよ。」

関連記事:
カテゴリの一覧へ
新着記事
New1
テキスト処理とフィルタ
headコマンドの使い方を完全ガイド!初心者でもわかるLinuxでファイルの先頭を表示する方法
New2
ファイル・ディレクトリ操作
mkdirコマンドの--helpオプションを完全ガイド!初心者でも分かるヘルプ表示と使い方確認
New3
ファイル・ディレクトリ操作
dirname --helpオプション|ヘルプを表示してオプション一覧を確認する
New4
テキスト・データ処理
xargs -aオプションの使い方を徹底解説!Linuxでファイルから入力を読み込む方法
人気記事
No.1
Java&Spring記事人気No1
テキスト・データ処理
catコマンドとは?Linuxでファイル内容を表示・連結する基本
No.2
Java&Spring記事人気No2
ファイル・ディレクトリ操作
findコマンドの使い方を完全ガイド!初心者でもわかるLinuxのファイル検索の基本
No.3
Java&Spring記事人気No3
ファイル・ディレクトリ操作
cd ~ の使い方を完全解説!ホームディレクトリへの移動方法と初心者向けLinuxコマンド入門
No.4
Java&Spring記事人気No4
ファイル・ディレクトリ操作
pwdコマンドとは?初心者でもわかる現在の作業ディレクトリの確認方法を解説!