X
この記事の共著者 : Nicole Levine, MFA. ニコール・レヴィンはwikiHowに勤務するテクノロジーライター兼編集者です。技術文章の作成に関し20年以上の経験があり、現在まで大手のウェブホスティング会社やソフトウェア開発会社のチームリーダーを務めてきました。ポートランド州立大学にてクリエイティブライティングの修士号を取得し、様々な教育施設にて作文、小説創作、Zine(個人制作の冊子)の作り方について講義を行っています。
Linuxで読み取り専用になっているファイルを削除したい場合は、いくつかの方法があります。そのファイルが自分のものであれば、そのファイルのパーミッションを変更するか、sudoコマンドを使ってrootでファイルを削除することができます。しかし、書き込み権限のあるファイルを削除しようとしても削除できない場合、または「Read-only file system(読み込み専用ファイルシステムです)」エラーが表示される場合は、ドライブを適切なパーミッションで再マウントする必要があるかもしれません。この記事では、UbuntuやLinuxMintを含むあらゆるLinuxディストリビューションで読み取り専用ファイルを削除する方法を紹介します。
ステップ
方法 1
方法 1 の 3:ファイルパーミッションを変更する
方法 1
-
1ターミナルウィンドウを開く 自分が所有するファイルが読み取り専用の場合、そのファイルへの書き込み権限を自分に与えない限り、そのファイルを削除することはできません。ウィンドウマネージャを使う場合は、Ctrl+Alt+Tキーを押してターミナルウィンドウを開きます。
- この方法は、自分が所有するファイル(例:自分が所有者である、またはそのファイルの読み取り権限を持つグループに属している)を削除しようとしているが、そのファイルの削除権限を持っていない場合に使います。
- リモートでサインインし、すでにコマンドプロンプトを開いている場合は、そのまま次のステップに進みましょう。
-
2cdコマンドを使って削除したいファイルのディレクトリを入力する 例えば、削除したいファイルがホームディレクトリの「ドキュメント」というフォルダの中にある場合は、cd ドキュメントまたはcd /home/ユーザー名/ドキュメントとします。
-
3ls -alコマンドを使ってディレクトリ内のファイルのファイルパーミッションを表示する ls -lコマンドを使うと、ディレクトリ内のファイルの一覧が、各ファイルの所有者とそのパーミッションとともに表示されます。また、ls -lコマンドにaを付けると、ディレクトリ内の隠しファイルとフォルダも表示されます。
-
4削除したいファイルのパーミッションを調べる ファイルのパーミッションは、r--r--r--のようにファイル名の前に表示されます。所有者の名前はその後に表示され、その後にグループ名が表示されます。
- rは読み取り権限、wは書き込み権限、xは実行権限です。
- パーミッションの最初の3文字(この例ではr--)は、ファイル所有者のパーミッションです。つまり、この例では、ファイルの所有者は読み取り権限しか持っておらず、そのファイルへの書き込み、実行、削除ができないということです。
- 次の3文字はグループ権限です。あるグループに属しており、そのグループがファイルへの書き込み権限を持っている場合は、所有者でなくてもファイルを削除することができます。
- 最後の3文字はグローバル権限で、他のすべての人が対象です。
-
5chmod -v u+rw ファイル名コマンドを使って読み書き権限を自分に与える すでに読み取り権限を持っている場合は、「r」を省略することができます。書き込み権限が与えられると、そのファイルを削除できるようになります。
- ファイル所有者ではないが、システムへのroot権限を持っている場合は、sudo chmod -v u+rw ファイル名コマンドを使って適切なパーミッションを自分に与えることができます。
- ファイルの新しいパーミッションを確認するには、もう一度ls -alコマンドを実行します。
-
6rm ファイル名コマンドを使ってファイルを削除する これで、ファイルへの書き込み権限が与えられたので、そのファイルを簡単に削除することができます。
- ファイルを書き込み可能にしても削除できない場合は、そのパーティションが読み取り専用でマウントされているかもしれません。トラブルシューティングについては、「 Read-only file systemエラーを修正する」を参照してください。
広告
方法 2
方法 2 の 3:sudoコマンドを使う
方法 2
-
1ターミナルウィンドウを開く sudoコマンドを使うと、自分のユーザーアカウントでは削除できない読み取り専用ファイルを削除することができます。ウィンドウマネージャを使う場合は、Ctrl+Alt+Tキーを押してターミナルウィンドウを開きます。
- この方法は、削除したいファイルの所有者ではないが、パーミッションを変更せずにファイルを削除したい場合に使います。
- リモートでサインインし、すでにコマンドプロンプトを開いている場合は、そのまま次のステップに進みましょう。
-
2cdコマンドを使って削除したいファイルのディレクトリを入力する 例えば、削除したいファイルがホームディレクトリの「ドキュメント」というフォルダの中にある場合は、cd ドキュメントまたはcd /home/ユーザー名/ドキュメントとします。
-
3ls -alコマンドを使ってディレクトリの内容を表示する このコマンドを使うと、カレントディレクトリ内のすべてのファイルが、各ファイルの所有者とパーミッションとともに表示されます。
-
4sudo rm ファイル名コマンドを使ってファイルを削除する root権限を得るためのパスワードの入力を求められます。パスワードが承認されると、読み取り専用ファイルが削除されます。
- sudoコマンドを使ってファイルを削除できない場合は、そのパーティションが読み取り専用でマウントされているかもしれません。トラブルシューティングについては、「 Read-only file systemエラーを修正する」を参照してください。
広告
方法 3
方法 3 の 3:Read-only file systemエラーを修正する
方法 3
-
1ターミナルウィンドウを開く ファイルを削除しようとしてrm: cannot remove '(ファイル名)' : Read only file systemというエラーが表示される場合は、いくつかの原因が考えられます。ウィンドウマネージャを使う場合は、Ctrl+Alt+Tキーを押してターミナルウィンドウを開きます。
- リモートでサインインしている場合は、そのまま次のステップに進みましょう。
-
2df -hコマンドを実行してマウントされているすべてのデバイスを表示する 問題の原因となっているドライブの正確なマウントポイントを知っておく必要があります。これで、マウントされているすべてのドライブが表示されます。
-
3mount|grep マウントポイントコマンドを実行する マウントポイントは、実際のマウントポイントに置き換えましょう(例:/media/usbdisk)。古いバックアップなど、リムーバブルディスクまたはネットワークドライブ上のファイルを削除しようとしている場合は、そのファイルが保存されているディスクが読み取り専用としてマウントされているかもしれません。
- 実行結果にroと表示される場合は、ファイルシステムが読み取り専用になっています。ドライブを再マウントすると、エラーが修正されるはずです。これを行うには、mount -o remount,rw マウントポイントコマンドを使います。その後、ファイルを削除することができます。
- パーミッションがrwの場合、ディスクは読み書き権限でマウントされています。つまり、問題なくファイルを削除できるはずです。これは通常、ドライブ上のファイルシステムに問題があるということです。次のステップに進みましょう。
- remount-roと表示される場合は、ファイルシステムに問題があり、被害を最小限に抑えるためにドライブが読み取り専用として再マウントされたということです。また、これはドライブ上のファイルシステムに問題があるということでもあります。次のステップに進みましょう。
-
4パーミッションが正しい場合は、ドライブをアンマウントする これを行うには、sudo umount デバイス名 コマンドを実行します。デバイス名は、デバイス名に置き換えましょう(例:/dev/sdd1)。
- rootファイルシステムをアンマウントすることはできないので、リカバリモードで起動しない限り、rootパーティションのファイルシステムをチェックすることはできません。rootファイルシステムにエラーがある場合は、まずリカバリモードで起動しましょう。
-
5sudo fsck -n デバイス名コマンドを実行してドライブをチェックする これで、変更を加えることなくドライブの整合性がチェックされます。ドライブに問題がない場合は、実行結果に「clean」と表示されます。エラーがある場合は、それが表示されます。
- エラーがある場合は、ファイルシステムを修復できない場合に備えてドライブをバックアップしてから次のステップに進みましょう。
-
6sudo fsck デバイス名コマンドを実行してエラーを修正する エラーがある場合は、エラーの修正を求められます。
- エラーを修正できたとしても、ドライブが故障した場合に備えてバックアップを取っておきましょう。
-
7修正が完了したら、ドライブを再マウントする エラーを修正できた場合は、ドライブを再マウントするとファイルが削除できるようになります。mount -o remount,rw マウントポイントコマンドを使ってドライブが読み書き権限で再マウントされるようにしましょう。これで、ドライブ上のファイルを変更および削除できるようになるはずです。広告
このwikiHow記事について
他言語版
English:Delete Read Only Files in Linux
Bahasa Indonesia:Menghapus Berkas dengan Izin Baca Saja pada Komputer Linux
Português:Excluir Arquivos Apenas Leitura no Linux
Tiếng Việt:Xóa tập tin chỉ đọc trên Linux
Nederlands:Alleen lezen bestanden verwijderen in Linux
このページは 488 回アクセスされました。
この記事は役に立ちましたか?
広告