\r\n\r\n

mac ディスクパーミッションの説明: macosのパーミッションを修正する方法

Macでディスクパーミッションに問題がありますか? ここでは、ディスクパーミッションの仕組みと、macosでそれを修正する方法について説明します...

"パーミッションの修正を試したか?"は、Macのトラブルシューティングの定番として、Web上で話題になっているものです。多くのユーザーにとって、多くの希少な問題を解決してくれたようです。しかし、OSX El Capitan(10.11)がリリースされると、ディスクアプリのディスクパーミッションを修復するオプションが突然消えてしまったのです。

これは、AppleがmacOSのパーミッションに関連する問題を解決したということなのでしょうか、それとも別のことなのでしょうか?その謎を解き明かし、Macのディスクパーミッションの使い方を紹介します。

macosのパーミッションの仕組み

ファイルやフォルダなど、Mac上のすべてのアイテムには、一連のアクセス権が設定されています。これらのコントロールは、どのユーザー・アカウントがアクセスできるか、またどのようなアクセス権を持っているかを制御します。パーミッションは、3種類のユーザー(オーナー、グループ、プロパティー)が実行する3つのアクティビティー(読み取り、書き込み、実行)で構成されています。

所有権層ごとに個別の権限ルールを定義することができます。アカウントと所有権を組み合わせた特権は、セキュリティ、制御された共有のサポート、ファイルへのアクセスの制限または禁止を設定する機能、およびシステムの整合性の維持を提供します。

ファイルシステムのパーミッションの表示

Finderの情報ウィンドウやターミナルを使えば、誰でもファイルやフォルダーのアクセス権を確認することができます。Finderでファイルまたはフォルダーを右クリックし、関連付けメニューから「情報を見る」を選択します。共有権限」の三角形をクリックすると、項目の権限が展開されます。

ターミナルでこの情報を表示するには、次のように入力します。

ls -l "path to your file"

ダッシュの後の文字は、小文字のLで、ファイルの所有権とパーミッションを示します。コマンドラインでは、読み取り権限をr、書き込み権限をw、実行権限をxと略記する。

オーナー、グループ、プロパテント

Macのアクセス権欄に表示されるユーザーを3種類に分類してみましょう。

  • 所有者:プロジェクトの所有者は、プロジェクトを作成した、またはMacにコピーしたユーザーです。通常、ユーザーは自分のホームフォルダ内のプロジェクトのほとんどを所有しています。
  • グループ:各プロジェクトは、ユーザーアカウントをリンクしたグループにも属し、メンバー全員にパーミッションを適用できるようにします。
  • Everyone:この権限設定は、ローカルユーザー、共有ユーザー、ゲストユーザーなど、誰に対してもアクセス権を定義するために使用します。

読み出し、書き込み、実行

次に、これらのユーザーが持つことができる3種類の権限について見てみましょう。

  • 読み込み:ユーザーまたはグループのメンバーは、ファイルを開くことはできますが、変更を保存することはできません。フォルダーの場合は、アイテムのリストを参照することができます。
  • 書き込み:ユーザーまたはグループのメンバーは、ファイルを変更または削除することができます。フォルダーの場合は、フォルダーの内容を変更することができます。
  • 実行:実行権限を持つファイルは、プログラムやスクリプトとして使用することができます。フォルダーの場合、実行とは、読み取り権限がある限り、その内容を一覧できることを意味します。

パーミッション問題の発生要因

OS X Yosemiteおよびそれ以前のバージョンでは、ディスクユーティリティで特定のファイルやフォルダのアクセス権を確認し、修復することができます。しかし、このアプリケーションは実際にパーミッションを修復するわけではありません。リセットされるだけです。

さらに、ディスクユーティリティの修復の権限があると言われると、時間の経過とともに権限が破損している可能性がありそうですね。しかし、これは事実ではありません。パーミッションは、誰かや何かがやってきて変更されるまで、そのままの形で残ります。このようなことが起こるのは、さまざまな理由が考えられます。

  1. アプリケーションインストーラ: 一部のインストーラは、インストール中に既存のアイテムのパーミッションを変更しますが、正しい設定に戻すことができない場合があります。
  2. ユーザーエラー:ターミナルやサードパーティアプリケーションでパーミッションをいじっている場合、エラーによって問題が発生することがあります。例えば、chmodコマンドを誤って使用すると、プロジェクトのパーミッション設定が変更されることがあります。
  3. 共有フォルダー:コンピューター上のすべてのユーザーが、共有フォルダー内のアイテムにアクセスできます。このフォルダを転送中のファイルの保存場所として使用する場合、パーミッションの問題は発生しにくいでしょう。しかし、複数の人が使うものを永続的に保管する場合、問題が発生することがあります。
  4. コピーされたアイテムのパーミッション:外部ボリューム、SMB、FTP経由でファイルをコピーする場合、macOSがどのようなパーミッションを割り当てるかを予測するのは難しい場合があります。この問題を解決するためには、ちょっとした試行錯誤が必要かもしれません。

オスカー・ピットンのその後は?

OSX El Capitanでは、Appleはすべてのシステムファイル、フォルダ、さらにバンドルアプリケーションにSIP(System Integrity Protection)を導入しています。sipは、デフォルトのパーミッション設定を維持しながら、意図的および非意図的な改ざんからシステムのコンテンツを保護します:/System、/usr、/bin、/**inのディレクトリを保護します。

Appleのアプリケーションをアップデートしたり、macOSをアップグレードする際、インストーラはあらゆる項目の権限を確認し、必要であればリセットします。SIPを無効にしない限り、サードパーティのアプリケーションは(その動作の悪さにかかわらず)パーミッションを変更することはできません。気になる方は、SIPの機能を深く掘り下げてみてください。

ユーザーとホームフォルダーについてはどうですか?

System Integrity Protectionは、/Libraryフォルダー内のアイテム、/Applicati***内のアプリケーション、およびホームフォルダー内のすべてを保護するものではありません。特に ~/Library フォルダは、コアシステムの環境設定ファイル、サードパーティのアプリケーション環境設定、Keychain データなどで構成されているため、重要なフォルダです。

これらのファイルやフォルダのパーミッションが変更されると、Mac上で多くの奇妙な問題が発生する可能性があります。不正なパーミッションにより発生する可能性のある問題は以下の通りです。

  • Finder、システム環境設定、Dockに加えた変更は保存されません。
  • 最後にログアウトしたときに開いていたウィンドウ、またはログイン後にアプリケーションからログアウトしたときに再度開いたウィンドウ。
  • ホームフォルダー内の特定の項目を移動する場合、管理者パスワードの入力が必要になります。
  • "macOSはアプリケーションを実行するためにライブラリを修正する必要があります。"というメッセージが繰り返し表示されます。
  • ファイルを保存する際、「ファイルがロックされているか、必要な権限がありません」というメッセージが表示されます。この現象は、Microsoft Officeの文書で頻繁に発生します。
  • デフォルトまたはサードパーティ製のアプリケーションが起動時にクラッシュすることがあります。一部のアプリケーションでは、アップデートに失敗することもあります。
  • FirefoxまたはChromeが環境設定を読み込まず、"Unable to load your profile "と表示される。
  • 写真に取り込んだ写真やビデオがアプリに表示されない。または、アプリを開くたびにデフォルトのフォトライブラリを選択するよう求めるメッセージが表示されます。

ホームフォルダのアクセス権をリセットする

Finderのサイドバーで、ホームフォルダーを右クリックし、「情報を見る」を選択します。共有と権限」ドロップダウンの三角形をクリックして、その権限を表示します。

ウィンドウ下部の「ロック」ボタンをクリックし、管理者パスワードを入力した後、「アクション」メニューボタンを選択し、「含まれる項目に適用」を選択します。

更新されたパーミッションは、メインフォルダーを通じて伝搬されます。

次に、ターミナルアプリケーションを開き、次のように入力します。

diskutil resetUserPermissi*** / `id -u`

このオプションは、ルートボリューム(/)のユーザー権限を現在のユーザーIDにリセットします。

ただし、エラー69841が発生した場合は、以下の手順を実行してください。

macos high sierra以前では

  1. ターミナル・アプリケーションを開き、次のように入力します: chflags-R nouchg~
  2. 次に、このコマンドを再度入力します: diskutil resetUserPermissi***/`id-u`.
  3. Macを再起動する。

マルコス・モハーヴェ以降の場合

Mojave以降のバージョンは上記と同じ手順ですが、事前に端末をフルディスクアクセスに追加しておく必要があります。これを行うには、システム環境設定> セキュリティとプライバシーに移動し、プライバシータブをクリックします。ロックアイコンをクリックし、管理者パスワードを入力すると変更できます。

次に、「フルディスクアクセス」タブを選択し、プラスボタンをクリックし、ターミナルアプリケーションを追加します。

これが完了したら、High Sierra以前のバージョンでは、上記のTerminalコマンドを続行してください。

macのユーザーアカウントを理解する

ディスクのアクセス権を修復するオプションがディスクユーティリティ・アプリケーションから消えたとき、トラブルシューティングの重要なステップではなかったので、あまり深く考えませんでした。しかし、不正なアクセス権によって発生する可能性のある問題の種類を見ると、これらの問題が発生した場合、ホームフォルダーのアクセス権をリセットすることは最後の手段であることは明らかです。

意外なことに、Appleはこのオプションを搭載しなくなりました。ただし、これらの手順は必要なときだけ適用することを忘れないでください。パーミッションを理解することは複雑な課題です。macOSのユーザーアカウントの仕組みを理解すれば、かなり楽になります。詳しくは、Macで複数のユーザーアカウントを設定するためのガイドをお読みください。

  • 2021-03-20 05:34 に公開
  • 閲覧 ( 18 )
  • 分類:IT

あなたが興味を持っているかもしれない記事

匿名者
匿名者

0 件の投稿

作家リスト

  1. admin 0 投稿
  2. 匿名者 0 投稿

おすすめ