Linuxでディレクトリの削除を行うには?
Linuxで不要になったファイルやディレクトリを削除するには、どうすればいいのでしょうか?ディレクトリの削除には「rm」コマンドを用います。この記事では、Linuxでディレクトリを安全に削除するために、「rm」コマンドを適切に扱う方法を、初心者にもわかりやすく解説していきます。
【参考】:実行してはいけないLinuxコマンド Ubuntu Desktopで『rm -rf /』を実行 | マイナビニュース
ディレクトリとは?
ディレクトリという言葉に慣れない方がいるかもしれませんが、ディレクトリはWindowsやMacでいう「フォルダ」に相当し、ファイルを整理して保存するための「入れ物」です。
Linuxでは、「/(ルート)」を起点にして階層構造でファイルが管理され、ディレクトリの中にファイルや他のディレクトリを含めることができます。ディレクトリをうまく整理することで、ファイルが散乱せず管理しやすくなります。
ディレクトリは削除する必要がある?
ディレクトリは使わなくなったら、必ず削除しなければならないのでしょうか?不要なディレクトリが増えると、システムが無駄にストレージを消費し、データの整理が困難になるため削除しましょう。
開発環境の一時ファイルやログが溜まった場合、ディレクトリごと削除することでストレージの効率が上がります。ただし、削除時に誤って重要なディレクトリを削除しないように注意が必要です。
削除する際の注意点
Linuxの削除コマンド「rm」コマンドは強力なコマンドです。誤操作による削除は取り消せず、重要なデータが失われる恐れがあります。例えば、システムディレクトリ(/etc や /home)を削除してしまうと、システムの動作に重大な影響を与えるため、慎重に操作する必要があります。
Windows環境でLinuxコマンドを使う
Windows11でLinuxコマンドを使うには、主に「Windows Subsystem for Linux(WSL)」を利用する方法が一般的です。WSLを有効化すると、Windows環境内でLinuxディストリビューションを実行でき、Linuxコマンドが使えるようになります。ここでは、WSLのセットアップ方法について解説します。
【参考】:Linux 用 Windows サブシステムとは | Microsoft Learn
WSLの概要
WSL(Windows Subsystem for Linux)は、Windows上でLinuxのディストリビューション(UbuntuやDebianなど)を直接実行できる機能です。WSLはWindowsの一部として組み込まれており、LinuxコマンドやツールをWindows環境で使えるようにします。
WSLにはバージョン1と2があり、特にWSL2はLinuxカーネルを直接動かせるため、より高速で互換性が高いです。それでは、WSLを有効にする方法を紹介します。
WSLの有効化
WSLを有効にするには、PowerShellを管理者権限で起動し、WSLをインストールするコマンド「wsl --install」を実行するだけです。WSLの起動方法はいくつかありますが、Windows Terminalを使うのが最も効率的で快適です。
1. PowerShellを管理者権限で起動 「スタート」メニューを右クリックし、「Windows PowerShell(管理者)」または「Windowsターミナル(管理者)」を選びます。
2. WSLのインストールコマンドを実行 以下のコマンドをターミナル(PowerShell)で実行すると、WSLとLinuxカーネルが自動でインストールされます。ユーザー名とパスワードを設定しますが、英数小文字で設定しましょう。大文字はエラーになります。
wsl --install
このコマンドを実行するだけで、WSL2が有効化され、UbuntuがデフォルトのLinuxディストリビューションとしてインストールされます。Ubuntuをインストールしてターミナルでbashと入力すると、BashでLinuxコマンドの入力、ファイル操作、プログラムの実行などを行えるようになります。
3. 再起動 インストール後、システムを再起動するように求められるので、指示に従い再起動します。
4. Linuxコマンドを試す PowerShellを起動してwslと入力すると、次のような状態になります。
PS C:> wsl
Windowsマシンのホスト名:/mnt/host/c#
#の後にLinuxコマンドを入力できます。
カレントディレクトリの内容を表示したい時は、 "ls" と入力します。
rmコマンドの基本
Linux環境が出来ましたので、次に削除コマンドの「rmコマンド」について、役割や基本的な使い方、ファイル削除やディレクトリ削除の方法について見ていきましょう。
rmコマンドの役割
「rm」コマンドは、Linuxでファイルやディレクトリを削除するためのコマンドです。rmは「remove」の略で、特定ファイルの削除や、オプションを使うことでディレクトリ全体を削除することもできます。
基本的な使い方
rmコマンドの基本的な使用方法は、削除対象のファイル名またはディレクトリ名を引数に指定するだけです。ディレクトリを削除するには、-rオプションを使用します。-rオプションは指定したディレクトリとその中の全てのファイル、サブディレクトリを削除します。
rm ファイル名
ファイルの削除
単一のファイルを削除するには、次のように入力します。このコマンドは、example.txt というファイルを削除します。Windowsなどの削除とは異なり、一旦ゴミ箱に送られるのではなく、一括削除となりますので注意が必要です。
rm example.txt
ディレクトリの削除(-rオプション)
rmコマンドだけでは削除できない場合には、ディレクトリ内にファイルが存在しています。これを削除するには、再帰的に削除するオプション -r(または --recursive)を指定します。
例えば、rm -r my_directory は、my_directory とその中に含まれるすべてのファイル・サブディレクトリを中身ごと、確認なしに削除します。
※「再帰的に削除する」 とは、あるディレクトリとその中に含まれるすべてのファイル、そしてさらにその中のディレクトリとファイル、といった具合に、入れ子になった構造をすべて1度に削除する ことを意味します。
rm -r ディレクトリ名
オプションの解説
rmコマンドには-f(強制削除)、-i(確認メッセージ表示)、-r(再帰削除)など、いくつかの起動オプションがあり、削除方法によってオプションを使い分けます。rmコマンドとペアで覚えておくようにしましょう。
◼︎-f(強制削除) -f(--force)オプションは、確認メッセージなしで削除を実行します。
rm -rf ディレクトリ名
例:rm -rf /tmp/test は、testディレクトリ内のすべてを強制的に削除します。
◼︎-i(確認メッセージ表示) 削除する前に確認のメッセージを表示します。
rm -ri ディレクトリ名
例:rm -ri my_directory では、各ファイルごとに「削除しますか?」と確認メッセージが表示されます。
◼︎-r(再帰削除) ディレクトリとその中のすべてのファイルを再帰的に削除します。極めて強力なオプションなので、誤って実行するとデータが失われる可能性があります。
ディレクトリ削除の注意点
ディレクトリやファイルの削除方法を理解したところで、実際に削除操作を行う前に、ディレクトリ削除を行う際の注意点について確認しておきましょう。
間違ってディレクトリを削除してしまうと?
Linuxで削除操作を取り消すのは非常に難しいです。誤って重要なディレクトリを削除すると、システムが正常に動作しなくなり、取り返しのつかないデータ喪失につながる可能性があります。削除操作には細心の注意が必要です。
データ復元の難しさ
Linuxの削除は通常、即座にファイルを完全に消去するため、元に戻すことができません。重要なファイルが含まれるディレクトリを削除してしまうと、そのデータは消失し、復元が困難です。バックアップを取っていない場合、データ復元ソフトを使用しても完全には回復できないことがあります。
削除前に必ず確認すること
削除するディレクトリのパスが間違っていないか確認しましょう。特にルートディレクトリにいる状態で削除コマンドを実行する場合、誤ってシステムの重要なファイルを削除しないように、注意が必要です。
安全な削除方法
ディレクトリの重要性と、削除時の注意点については理解できました。注意点を守っていても操作ミスは完全にゼロとはなりません。そこで、次の方法を徹底して安全な削除を心がけましょう。
■ 削除前にバックアップを取る 削除するデータに重要な情報が含まれている場合、事前にバックアップを取りましょう。コピーコマンドcpを使って、別の場所にバックアップを作成しておくことが推奨されます。
■ 削除対象のディレクトリを確認する lsコマンドで削除対象のディレクトリの内容を確認します。誤って削除しないよう、対象ディレクトリの構成をしっかりと把握しましょう。
■ rmコマンドの実行前に再度確認する 実行するコマンドの内容を再度確認し、特に-fオプションなどの強制削除が必要かどうかを検討します。また、-iオプションを使うことで、削除前に都度確認をするのも安全対策として有効です。
rmdirコマンドは空のディレクトリのみ削除することができます。rmdirを使用すれば、誤ってファイルが残るディレクトリを削除するリスクを減らすことができます。
rmdir ディレクトリ名
例:rmdir empty_directory
ディレクトリを削除してみよう
それでは実際にディレクトリを削除してみましょう。実際に利用しているディレクトリを削除するリスクを避けるため、ここではテスト用のディレクトリを「mkdir」コマンドを用いて作成し、削除コマンドを試してみましょう。
1.mkdirでテストディレクトリを作成 ディレクトリを作成する「mkdir」コマンドを用いて、テスト用のディレクトリを作成します。
mkdir my_testfolder
2. rm -rでディレクトリを削除 ディレクトリを再帰的に削除する「-r」オプションを付けてrmコマンドを実行してみましょう。
rm -r my_testfolder
このコマンドで my_testfolder のディレクトリとその中身を削除します。
複雑なディレクトリ構造の削除
階層構造が深いディレクトリを削除する場合、確認メッセージを追加しながら安全に削除します。rm -ri my_testfolder を実行すると、階層内の各ファイルやサブディレクトリについて、「rm: remove directory 'my_testfolder'?」といった確認メッセージが表示され、ミスを防ぐことができます。
rm -ri my_testfolder
rmコマンドをマスターして安全かつ効率的なディレクトリ管理を
ここまで、Linuxにおけるディレクトリ削除をテーマに、Windows環境でのLinux環境構築、削除コマンド「rm」の基本やディレクトリ削除の方法、ディレクトリ削除の注意点などを紹介しました。
rmコマンドは非常に便利ですが、誤操作によるデータ喪失のリスクが伴います。削除対象の確認やバックアップを怠らないことが重要です。安全な削除を心がけると、Linux操作に慣れるにつれて、効率的にディレクトリを管理できるようになるので、ぜひ習得して活用してみましょう。
その他の関連記事
その他に関連する内容は、下記の記事でもご紹介しています。ぜひ参考にご覧ください。
編集部オススメコンテンツ
アンドエンジニアへの取材依頼、情報提供などはこちらから