ウェブサイト検索

Linux でフォルダーとファイルのアクセス許可を簡単に変更する方法


ファイル権限を使用すると、Linux 搭載コンピュータ上のファイルを他のユーザーが表示できるようにしたり、禁止したりすることができます。コマンド ラインからファイルのアクセス許可を設定する簡単な方法を次に示します。

ファイルのアクセス許可は、Linux オペレーティング システムのセキュリティとプライバシーにとって重要な側面です。 Linux はマルチユーザー オペレーティング システムです。つまり、同時に複数の人がシステムにログオンできます。 

たとえば、自宅のドキュメント ディレクトリ (つまり ~/Documents) に private.txt というファイルがあるとします。最新の Linux ディストリビューションのデフォルトでは、所有者のみがファイルを表示および/または編集できます。したがって、ユーザー olivia がログインしても、ホーム ディレクトリの内容を見ることはできません。 

しかし、家の外に他の人に使用を許可するディレクトリを作成した場合はどうでしょうか?ディレクトリが /user/share/data であるとします。これは次のコマンドで作成できます。

sudo mkdir /usr/share/data

ディレクトリを作成したら、そこに何かを追加するには、管理者権限で sudo を使用するしかありません。これには、システム上の誰でもそのディレクトリへの読み取りと書き込みを許可することが含まれます。 、ファイルを表示および編集できるようになります。これは、必ずしも最も安全なアプローチとは言えません。

したがって、これから行うことは、有効なユーザーがディレクトリ /user/share/data に対して読み取り/書き込みできるようにファイルのアクセス許可を変更する方法を示すことです。次に、スクリプトを作成するときに便利な、ファイルをアプリのように実行できるようにアクセス許可を設定する方法を説明します。

準備ができて?これをやろう。

ファイルとフォルダーのアクセス許可の変更

必要なもの: この機能を使用するには、Linux の実行インスタンスが必要です。これは任意のディストリビューション、デスクトップまたはサーバーのいずれでもかまいません。 sudo 権限を持つユーザーも必要です。それでおしまい。 

1. 新しいディレクトリの権限を設定します。

前に使用した mkdir コマンドを使用して、ディレクトリ /usr/share/data を作成しました。次のコマンドを使用して、このディレクトリ内に作成されたフォルダーまたはファイルが読み取り/書き込み権限を享受できるようにこのディレクトリを設定できます。

sudo chmod -R ugo+rw /usr/share/da

上記のコマンドについて説明します。

  • chmod -- これは、権限を変更するために使用されるコマンドです。
  • -R -- 再帰的に作業していることを chmod に通知します。そのため、すべてのファイルやフォルダーは同じ権限を継承します。
  • ugo -- ユーザー、グループ、その他 (つまり全員) を意味します。
  • rw -- 読み取り/書き込み権限を意味します。

留意すべき点がいくつかあります。まず、3 つのタイプすべてにアクセス許可を与える必要はありません。 u (ユーザー)、g (グループ)、または o (その他) にのみアクセス許可を与えることができます。 r (読み取り)、w (書き込み)、または x (実行可能) 権限のみを与えることもできます。たとえば、次のようにしてすべてのユーザーに書き込み権限を与えることができます。

sudo chmod -R u+w /usr/share/data

また、フォルダーではなくファイルを操作している場合は、コマンドから -R オプションを削除するだけです。

2. コマンドが機能したことを確認します

コマンドを発行したら、別のコマンドを発行してそれが機能したことを確認できます。

touch /usr/share/data/test

上記のコマンドは、test という名前の空のファイルを /usr/share/data に作成します。コマンドが機能した場合は、フォルダーのアクセス許可が正常に変更されました。

3. ファイルに実行権限を与える

~/Documents ディレクトリの内容をバックアップするスクリプトを作成したとします。このスクリプトを実行するには、実行権限が必要です。これは chmod コマンドで実行できます。スクリプトが backup という名前の場合、実行権限を与えるコマンドは次のようになります。

chmod u+x backup

必ずスクリプトが格納されているディレクトリで上記のコマンドを実行してください。スクリプトを実行するには、次のコマンドを発行します。

./backup

4. 権限の削除

chmod コマンドを使用して権限を削除することもできます。先ほどの例にこだわってみましょう。ここで、/usr/share/data ディレクトリの読み取り/書き込み権限を削除したいと考えています。これを行うには、+ を - に置き換えます。つまり、新しいコマンドは次のようになります。

sudo chmod -R ugo-rw /usr/share/data

この時点では、誰もディレクトリにデータを読み書きすることはできません。

システム上のすべてのユーザーにディレクトリを変更するためのアクセス権を与えたくはないため、これは Linux で権限を追加または削除する最良の方法ではありません。このタスクを処理するより良い方法は、グループを使用することです。この機能については、今後のチュートリアルで説明します。それまでは、Linux でファイルとフォルダーのアクセス許可を変更するこの簡単な方法を練習してください。

関連記事