FireWolf Pl.

A Place of Freedom

@FireWolf2 years ago

07/17
01:51
macOS Sierra OS X

RepairPermissions V3 – Now supports repairing permissions on macOS Mojave

Howdy! Long time no see. Apple has released macOS Mojave, the next generation of OS for Mac users, and now it’s time to get RepairPermissions updated.

>> Latest Version: 3.9.3225 @ 2018.06.05

>> Prologue

In OS X El Capitan, without `diskutil repairPermissions`, we can use `repair_packages` in /usr/libexec/ to verify and repair permissions. But now this handy command line tool has been removed from the latest macOS Sierra by Apple. Since it may not be safe to force use the `repair_packages` in macOS Sierra, it’s time for me to rewrite my `RepairPermissions` to support the new macOS Sierra.

>> Introduction

RepairPermissions is a command line tool written in Swift language to verify and repair permissions on Apple’s OS X and macOS. With newly designed APIs and data structure, RepairPermissions now supports verifying and repairing permissions on Apple’s latest macOS Mojave!

>> New Key Features

Support Apple’s latest macOS Mojave.

Dynamically optimized for multi-threading.

Support multiple boot environments.

Save results to a local file.

>> Relevant Product Info

RepairPermissions is affiliated to FireWolf’s KCPM Utility Pro and FireWolf OS X PE Maintenance Kits.

Both families will adopt the new features of RepairPermissions V3 in next major releases.

>> Supported OS Version

RepairPermissions supports running on the following macOS versions:

OS X Mavericks (10.9.x)

OS X Yosemite (10.10.x)

OS X El Capitan (10.11.x)

macOS Sierra (10.12.x)

macOS High Sierra (10.13.x) (as of 3.7.2315)

macOS Mojave (10.14.x) (as of 3.9.3225)

>> Supported Boot Environments

RepairPermissions supports running in OS X Normal Mode, OS X Single User Mode, OS X Recovery Mode, OS X Recovery Single User Mode, and FireWolf OS X PE.

>> Recommended Installation Path

It is recommended to install RepairPermissions to /usr/local/bin so that you can directly run RepairPermissions in your terminal.

>> Usage

This usage guide is currently frozen for RepairPermissions 3.0.1105+ (Stable Release).

!!! Make sure that your SIP flag CSR_ALLOW_UNRESTRICTED_FS is enabled. !!!

RepairPermissions /

This is the simplest use of RepairPermissions. By default, this command will help you repair permissions of the root volume, aka the current boot volume. Note that the results will NOT be displayed on the screen but will be saved to your Desktop folder (~/Desktop/RepairPermissionsResults-<time>.txt).

RepairPermissions --output ~/Desktop/Result.txt /

This is a handy command to use RepairPermissions. It will help you repair permissions of the root volume, aka the current boot volume, and will save the results to a plain text file named Result.txt in your Desktop folder.

RepairPermissions --no-output /

This command will help you repair permissions of the root volume, aka the current boot volume, and will prevent RepairPermissions from saving the results on your local disk.

More detailed usages are available via typing RepairPermissions --help.

Usage: RepairPermissions [COMMANDS] <targetVolume>...

Recommended (default) usage:

 Commands: RepairPermissions <targetVolume>

 Description: targetVolume is a valid mount point of an os volume.

 See usage examples below for detailed information.

Available (optional) commands:
    --help              Print this usage guide.
    --verify            Verify permissions of the given volume.
    --repair            Repair permissions of the given volume.
    --output <path>     Print detailed information to the given <path>. <path> must be an absolute path.
    --max-thread <n>    Specify the maximum number of threads. <n> must be an integer.
    --no-output         Prevent RepairPermissions from saving results on your local disk.
    --check-update      Check for updates.
    --update            Update RepairPermissions to the latest version.

>> Reporting Bugs

Feel free to use the comment section to report any issues.

>> Update Logs

V3.9.3225 (2018.06.05) [Stable]

Adopt Swift 4.2.

Supports macOS Mojave (10.14.x)

V3.8.3220 (2018.03.22) [Stable]

Adjust the parser algorithm: Switch to dynamic programming to speed up parsing further.

POSIX permissions are converted to octal number in the report as before.

Adjust the update catalog URL.

Note that previous versions (<= 3.8.3200) may no longer receive the latest update via the `–check-update` option.

It is highly recommended to update to the latest version.

V3.8.3200 (2017.12.24) [Stable]

Happy Holidays! I’m so “excited” to bring the next major release of RepairPermissions!
This new release mainly focuses on improving performance and robustness.

Adopt Swift 4.

Reimplement the underlying parser in pure C.

  • libRepairPermissions now interacts with the parser natively without additional wrappers.
  • The data structure has been redesigned to reduce the memory usage significantly.
  • The algorithm has been improved to speed up parsing and is now compatible with multithreading.

Reimplement the libRepairPermissions API.

  • A better multithreading approach to use multi-core processors more efficiently and equally.
  • Minimize the number of synchronous operations and make multithreading more robust.
  • The procedure to check file permissions has been improved to reduce the memory usage by up to 50%.
    (On my machine: Previous: about 1.5GB; Now: about 700MB)
  • Fix the compatibility under OS X Mavericks and OS X Yosemite.
    (Although you can always use `diskutil repairPermissions` instead. 🙂 )
  • Improve the generated report: Now it can be interpreted and serialized to other formats more easily.

Improve the front-end command line interface.

  • Add a new option “–plist” to save the results in property list format.
  • The update manager becomes a separate module to provide more robust services.
  • Fix an issue that POSIX permissions of the updated binary are falsely set.
  • The owner of the updated binary is no longer `root`: it will be your user name. (UID = 501)
  • The group owner of the updated binary is no longer `wheel`: it will be `admin`. (GID = 080)

Other under-the-hood improvements.

Some changes related to design choices.

  • Remove the real-time progress indicator of verifying/repairing permissions because of consuming unnecessary CPU time.
    Currently, the new libRepairPermissions does not report real-time progress.
    Although it is not difficult for me to add this functionality back, I believe real-time progress slows down the process of checking permissions.
    Maybe I could add a new option like `–with-progress` for you to choose between high efficiency and psychological comfort?
  • Remove the real-time progress bar of downloading updates from the server.
    The update is so small (about 2MB) and do we really need a progress bar for it?
    However, I would probably bring this back after I complete my tiny portable download engine. 🙂

For those who upgrade from 3.6.x/3.7.x using the builtin updater, you may find an error “Illegal instructions: 4” when you are trying to run the new binary.

This is because the updater falsely sets the permissions of the updated binary.

Please manually fix the permissions via sudo chmod 755 /usr/local/bin/RepairPermissions.

Sorry for the inconvenience, and this issue has been addressed in 3.8.3200.

V3.7.2320 (2017.06.22) [Stable]

Fix the auto-update.

V3.7.2315 (2017.06.08) [Stable]

Supports macOS High Sierra (10.13.x)

Reduce the number of file I/Os.

Reduce the memory usage.

Minor improvements in libRepairPermissions.

Known Issue in this version:

RepairPermissions runs very slow under macOS High Sierra. (96s <10.13 DP1> VS 21s <10.12.5>)

This is probably related to the new file system. I will keep an eye on this issue.

V3.6.2171 (2017.03.18) [Stable]

Fix a memory allocation issue.

Add a new command `–update` so that users can directly update RepairPermissions to the latest version.

Improve the error handling in libRepairPermissions.

Other under-the-hood improvements in libRepairPermissions.

(FWRepairPermissions APIs have been renamed to libRepairPermissions.)

V3.5.2050 (2016.10.27) : [Stable]

Minor fixes in FWRepairPermissions APIs.

V3.5.2032 (2016.10.12) : [Stable]

Display the elapsed time.

Minor bugs fixed.

V3.5.2025 (2016.09.25) : [Stable]

Adopt Swift 3, and bump the API version to 3.0.

New algorithm and data structure used in the core layers of FWRepairPermissions APIs boost RepairPermissions up to 20X.

Improve memory management and code structure.

V3.5 Beta 2 (2016.09.25) : [Internal]

Adopt Swift 3.

Adjust the code structure of high-level APIs to support the new core layers.

This is still an internal beta release.

V3.5 Beta 1 (2016.09.23) : [Internal]

Significantly improve the core layers of FWRepairPermissions APIs.

Use new algorithm and data structure in the core layers to speed up verifying and repairing permissions.

This is an internal beta release.

V3.3.1315 (2016.09.02) : [Stable]

Synchronize the internal FWRepairPermissions APIs with KCPM Utility Pro V6.

Improve memory management.

Improve the progress indicator.

V3.2.1276 (2016.08.18) : [Stable]

Optimize the internal code and data structure.

Reconstruct the output results. It is now more easy to read.

RepairPermissions - Verify and repair permissions of an entire volume
Version: 3.2.1276 @ 2016.08.17
Date: 2016.08.18 15:50:18
User: FireWolf

   File: /Volumes/Macintosh HD 10.12/private/var/db/datadetectors
 Reason: POSIX Permissions Mismatched
Current: 701
Correct: 711
    New: N/A
 Status: Verified

   File: /Volumes/Macintosh HD 10.12/private/var/db/displaypolicyd
 Reason: Owner ID Mismatched
Current: 244
Correct: 0
    New: N/A
 Status: Verified

Bump the internal FWRepairPermissions API version to 2.0.

V3.1.1156 (2016.08.16) : [Internal]

Bump the internal FWRootlessKit API version to 2.0.

This is an internal version. Ignore this. : ).

V3.1.1155 (2016.08.09) : [Stable]

Owner of the results file generated by RepairPermissions in Normal Boot environment will no longer be root. Now you can delete the results file without typing your password.

V3.1.1152 (2016.08.08) : [Stable]

Resolve an issue that some directories and files permissions are falsely set. (Thanks to arslan2012)

To fix your home directory permissions, type sudo chown 501:80 ~ in your terminal.

Support verifying and repairing permissions on volumes other than the root volume.

V3.0.1105 (2016.08.07) : [Stable]

Support OS X Mavericks.

Add checking for updates.

Improve SIP flags check.

Minor internal API improvements.

Initial stable release.

V3.0 Beta 9 (2016.08.06) : [RC3]

As of Beta 9, RepairPermissions will check your SIP flags.

If the CSR_ALLOW_UNRESTRICTED_FS flag is not set on your machine, you will receive a warning message, but RepairPermissions will still keep running.

(Probably this will be the last beta.) : )

V3.0 Beta 8 (2016.08.05) :

Add a new option --no-output.

Users can use this new option to prevent RepairPermissions from saving the results on your local disk.

V3.0 Beta 7 (2016.08.03) :

As of Beta 7, RepairPermissions now supports running in OS X Normal Mode, OS X Single User Mode, OS X Recovery Mode, OS X Recovery Single User Mode, and FireWolf OS X PE.

* Results will now by default be saved to the following path:

~/Desktop/RepairPermissionsResults-<timestamp>.txt [OS X Normal Mode]

/RepairPermissionsResults-<timestamp>.txt [Single User Mode]

/targetVolume/RepairPermissionsResult-<timestamp>.txt [OS X Recovery Mode/FireWolf OS X PE/OS X Recovery Single User Mode]

Note that it is recommended to use the default path to save the results, especially in OS X Recovery Mode, OS X Recovery Single User Mode, and FireWolf OS X PE.

Improve boot environment check.

Bump the internal RepairPermissions API to 1.3 to fully support all boot modes.

V3.0 Beta 6 (2016.08.02): [RC2]

RepairPermissions now supports running in Single User mode.

Note that when RepairPermissions is running in Single User mode, you don’t have to type /sbin/fsck -fy and /sbin/mount -uw / by yourself. RepairPermissions will automatically check the current boot environment and do all required stuff for you. Besides, RepairPermissions will also automatically restart your computer. (You have 10 seconds to abort the reboot process by default.)

Minor changes in terminal output format.

V3.0 Beta 5 (2016.08.02):

Bump the internal RepairPermissions API version to 1.2 to support custom thread configurations.

--max-thread option is now compatible with the new API.

V3.0 Beta 4 (2016.08.01): [RC1]

Fix a potential deadlock bug.

Improve code structure and the error handling mechanism.

Results of verifying/repairing permissions will now by default be saved to ~/Desktop/FWPRResult_<time>.txt.

Add a progress indicator to show current progress and status.

Bump the internal RepairPermissions API version to 1.1.

Improve the internal RepairPermissions API to fully support KCPM Utility Pro 6.0 Beta.

Temporarily remove the option --max-thread introduced in Beta 3 as it is currently not compatible with the new API.

V3.0 Beta 3 (2016.07.30):

Add new option --max-thread to specify the maximum number of thread that RepairPermissions can use.

Improve multi-threading stability.

Minor tweaks and fix some typos.

V3.0 Beta 2 (2016.07.17):

Fix a fatal error related to fixing permissions.

V3.0 Beta 1 (2016.07.16):

Initial 3.0 beta release.

>> Screenshots

>> Downloads

Backup Downloads: https://drive.firewolf.science/public/RepairPermissions/

V3.9.3225: RepairPermissions 3.9.3225 (Stable) (1674 downloads) (MD5: 870c5cd76ea7c7f462a33ba574b0693a)

V3.8.3220: RepairPermissions 3.8.3220 (Stable) (812 downloads) (MD5: f5c2c27c3d619565ea452dd894efe58b)

V3.8.3200: RepairPermissions 3.8.3200 (Stable) (889 downloads) (MD5: ae6251a2d7ac9950e915e5b9ef44f0db)

V3.7.2320: RepairPermissions 3.7.2320 (Stable) (11264 downloads) (MD5: 33be7c94879cc48358bb4da406e580c9)

V3.7.2315: <REMOVED> RepairPermissions 3.7.2315 (Stable) (475 downloads) (MD5: b3c403947e80ed7d3ede97bc23fbf482)

V3.6.2171: <REMOVED> RepairPermissions 3.6.2171 (Stable) (618 downloads) (MD5: 9ee01ab35f5f5151c83e39736e83e356)

V3.5.2050: <REMOVED> RepairPermissions 3.5.2050 (Stable) (5150 downloads) (MD5: 14880df3b02c203f6ac58cb6ed62a959.zip)

V3.5.2032: <REMOVED> RepairPermissions 3.5.2032 (Stable) (1476 downloads) (MD5: d042d9a2e3166865d1d29b863381bed2)

V3.5.2025: <REMOVED> RepairPermissions 3.5.2025 (Stable) (3671 downloads) (MD5: d3e16fd44c22603c4bc58fb4917afaab)

V3.3.1315: <REMOVED> RepairPermissions 3.3.1315 (Stable) (1263 downloads) (MD5: dd3a3adbcd3855c0814397a8861608ce)

V3.2.1276: <REMOVED> RepairPermissions 3.2.1276 (Stable) (1418 downloads) (MD5: cdf8a468ac214139d3f41b3a0e425b7c)

V3.1.1155: <REMOVED> RepairPermissions 3.1.1155 (Stable) (1778 downloads) (MD5: 3b9a2307a31e64b7cfb106338b02a685)

V3.1.1152: <REMOVED> RepairPermissions 3.1.1152 (Stable) (3422 downloads) (MD5: e267891091d7dc24f312538621fecf99)

V3.0.1105: <REMOVED> RepairPermissions 3.0.1105 (Stable) (355 downloads) (MD5: e3d679d38ae3867eec608d4647f786b8)

V3.0 Beta 9: <REMOVED> RepairPermissions 3.0b9 (250 downloads) (MD5: 0c2ad2d29b75b7dbec429f44bce2f68d)

V3.0 Beta 8: <REMOVED> RepairPermissions 3.0b8 (224 downloads) (MD5: c0490b78312e09f8248629933f55afd5)

V3.0 Beta 7: <REMOVED> RepairPermissions 3.0b7 (213 downloads) (MD5: 45aa2ed4ba8c6e1c0b761bb1ff360300)

V3.0 Beta 6: <REMOVED> RepairPermissions 3.0b6 (207 downloads) (MD5: 95fda4f8f8da14923ec1b7edb39fdf34)

V3.0 Beta 5: <REMOVED> RepairPermissions 3.0b5 (181 downloads) (MD5: fc3a3fc2899e3dee33fa9182c8f68faa)

V3.0 Beta 4: <REMOVED> RepairPermissions 3.0b4 (245 downloads) (MD5: dbdac70a4e80b131a1c5ef7fc0c39d30)

V3.0 Beta 3: <REMOVED> RepairPermissions 3.0b3 (219 downloads) (MD5: eb3f71da02fceb3e0cd86ccb24514c2d)

V3.0 Beta 2: <REMOVED> RepairPermissions 3.0b2 (401 downloads)

V3.0 Beta 1: <REMOVED>

RepairPermissions V3 – Now supports repairing permissions on macOS Mojave

  1. playmakerx
    UnknownUnknownUnknownUnknown

    Sorry for being stupid, but how can I use this? I downloaded it and double clicked it, then it shows a terminal window that I can’t enter any command. If I drag this utility on a terminal window, I can enter command, but it always says, command not found. Please help, thanks!

    Reply
    1. FireWolf Write
      UnknownUnknownUnknownUnknown

      Hi Playmakerx,

      Don’t be panic. Suppose that you have downloaded RepairPermissions on your Desktop folder, open your terminal and type the following commands.

      cd ~/Desktop // This will change the current directory (in the terminal) to your Desktop folder
      sudo -s // This will ask for your password in order to run RepairPermissions as root.
      ./RepairPermissions / // This will run RepairPermissions as root and help you repair permissions of the your root volume, aka the current boot volume.

      So basically, you have to first change your terminal directory, then login as root, and finally run the RepairPermissions.

      RepairPermissions is recommended to be installed into /usr/local/bin so that you can just type sudo RepairPermissions / in your terminal window to quickly and easily run RepairPermissions.

      Feel free to ask if you have further questions.

      Cheers,
      FireWolf

      Reply
        1. FireWolf Write
          UnknownUnknownUnknownUnknown

          Hi A,

          Suppose that you have downloaded RepairPermissions on your Desktop folder, open your terminal and type the following commands.

          cd ~/Desktop // This will change the current directory (in the terminal) to your Desktop folder
          sudo -s // This will ask for your password in order to run RepairPermissions as root.
          ./RepairPermissions / // This will run RepairPermissions as root and help you repair permissions of the your root volume, aka the current boot volume.

          So basically, you have to first change your terminal directory, then login as root, and finally run the RepairPermissions.

          RepairPermissions is recommended to be installed into /usr/local/bin so that you can just type sudo RepairPermissions / in your terminal window to quickly and easily run RepairPermissions.

          Cheers,
          FireWolf

          Reply
  2. PMheart
    UnknownUnknownUnknownUnknown

    Hi FireWolf,
    The previous question solved 🙂
    And here I encountered an issue that after executing your RP, and try making a directory requires administrator password… It seems that your RP has a bug?

    Reply
    1. FireWolf Write
      UnknownUnknownUnknownUnknown

      Hi PMheart,

      I didn’t quite understand your question. Please avoid using any translation software.

      So where did you try to create a new directory?

      Do you have the text file generated by RepairPermissions?

      Cheers,
      FireWolf

      Reply
      1. jacksonzwang
        UnknownUnknownUnknownUnknown

        Hi, Firewolf.
        I don’t know what are talking about, either.
        But, as you mentioned which the Repairpermissions could generates a file(or clearly say a text file), If so, does Repairpermissions creates a file which has a special properties(775,root:wheel,you know)?

        Reply
  3. UnknownUnknownUnknownUnknown

    hi,firewolf
    i use the V3.1.1155 repair my disk.it show

    RepairPermissions – Verify and repair permissions of an entire volume
    Copyright (C) 2016 FireWolf @ FireWolf Pl. All Rights Reserved.

    Current OS: macOS Sierra 10.12 (16A294a)
    Target OS: macOS Sierra 10.12 (16A294a)

    Info: RepairPermissions is running in Normal Mode.
    Info: Preparing runtime environment…
    Info: SIP Allow Unrestricted File System [DISABLED]
    Info: File permissions on / will probably not be repaired successfully.
    Info: RepairPermissions will verify permissions on /
    Info: This will take some time. Grab a cup of coffee and be patient.
    Info: Intel(R) Core(TM) i7-4870HQ CPU @ 2.50GHz 4C8T
    Info: Available Processors: 8; Will use up to 8 processor(s).
    Status: Doing some wolf’s magics… Progress: 25.0% []
    it stop at 25%,i see SIP Allow Unrestricted File System [DISABLED].but use csrutil status show:System Integrity Protection status: enabled.
    so that ,how can i use it fix my disk?looking forward for your reply,thanks!

    Reply
    1. FireWolf Write
      UnknownUnknownUnknownUnknown

      你好,Scoce!

      csrutil status 返回的结果显示 Apple 系统完整性保护已启用,这与 RepairPermissions 所显示的 SIP Allow Unrestricted File System(即允许不受限制地访问文件系统)的状态为『禁用』是一致的。

      其次终端里是一直卡在 25% 吗?这部分程序会处理一些事情,进度不是实时显示的。请稍等一会看看进度是否继续往下走。

      另外请注意你现在 SIP 是处于开启状态,这个状态下 RepairPermissions 只能帮你验证文件权限,但在尝试修复文件权限时可能会失败。

      还有什么疑问的话欢迎跟帖。

      Reply
      1. UnknownUnknownUnknownUnknown

        Current OS: macOS Sierra 10.12 (16A294a)
        Target OS: macOS Sierra 10.12 (16A294a)

        Info: RepairPermissions is running in Normal Mode.
        Info: Preparing runtime environment…
        Info: SIP Allow Unrestricted File System [ENABLED]
        Info: RepairPermissions will verify permissions on /
        Info: This will take some time. Grab a cup of coffee and be patient.
        Info: Intel(R) Core(TM) i7-4870HQ CPU @ 2.50GHz 4C8T
        Info: Available Processors: 8; Will use up to 8 processor(s).
        Status: Doing some wolf’s magics… Progress: 25.0% []
        早上把sip保护关了,再用修复命令,卡在25%。

        Reply
  4. jacksonzwang
    UnknownUnknownUnknownUnknown

    Hi.Firewolf.
    I have installed and used for a long time.
    However,I really feel puzzled,although the system information shows that SIP has already enabled, actually I disabled the kext and file system restrictions while I type csrutil status in terminal.Unfortunately,your tool using red words to notice that file system restricted is disabled,so I felt something wrong,And finally I cannot understand what does it means.It meant me to enabled file system restriction?
    Thanks
    Jacksonzwang
    (p.s.Recently I have changed email because outlook.com cannot access new email)

    Reply
    1. FireWolf Write
      UnknownUnknownUnknownUnknown

      Hi Jacksonzwang,

      Nice to see you again.

      SIP Allow Unrestricted File System [DISABLED] means that your system directories are being protected by Apple’s System Integrity Protection (SIP) mechanism. That’s why csrutil status showed that System Integrity Protection status: enabled on your computer.

      So please make sure that you have turned off the SIP successfully before using RepairPermissions.
      Also note that if SIP Allow Unrestricted File System is disabled, RepairPermissions can only verify file permissions for you.

      Feel free to ask if you still have any questions.

      Cheers,
      FireWolf

      Reply
  5. PMheart
    UnknownUnknownUnknownUnknown

    Hi FireWolf,
    Sorry about my bad English…
    And today I’d like to post one more issue. After running your RP and I get a null folder named Applications which is located in /Users/`whoami` . I also posted this issue at PCBeta.
    Any idea?
    Thanks

    Reply
    1. FireWolf Write
      UnknownUnknownUnknownUnknown

      Hi PMheart,

      I don’t think your issue is related to RepairPermissions.

      First of all, RepairPermissions will not create or delete any files or directories. It will only verify and repair file permissions for you.

      Secondly, ~/Applications may be created by other applications such as Parallels Desktop.
      ~/Applications is a special directory where Mac users can put their private applications which cannot be accessed by other users.
      Basically, ~/Applications is to /Applications as ~/Library is to /Library, although it is not created by default.

      Therefore, this should not be a bug of RepairPermissions, and if you still have further questions, please let me know.
      Thanks for supporting RepairPermissions.

      Cheers,
      FireWolf

      Reply
      1. PMheart
        UnknownUnknownUnknownUnknown

        I tried to remove ~/Applications and re-run your RP.
        Last login: Mon Aug 29 07:06:22 on ttys000
        Harui:~ Vanilla$ ls ~
        CloverGrowerPro Documents Library Music Public
        Desktop Downloads Movies Pictures
        # Previously I run `sudo rm -rf ~/Applications` therefore no ~/Applications here.
        # Now I run `sudo RP /`.

        Harui:~ Vanilla$ sudo RepairPermissions /
        Password:

        RepairPermissions – Verify and repair permissions of an entire volume
        Copyright (C) 2016 FireWolf @ FireWolf Pl. All Rights Reserved.

        Current OS: OS X El Capitan 10.11.6 (15G31)
        Target OS: OS X El Capitan 10.11.6 (15G31)

        Info: SIP Allow Unrestricted File System [ENABLED]
        Info: RepairPermissions will repair permissions on /
        Info: This will take some time. Grab a cup of coffee and be patient.
        Info: RepairPermissions is running in Normal Mode.
        Info: Preparing runtime environment…
        Info: Runtime environment is now ready.
        Info: Intel(R) Xeon(R) CPU E3-1230 V2 @ 3.30GHz 4C8T
        Info: Available Processors: 8; Will use up to 8 processor(s).
        Status: Doing some wolf’s magics… Progress: 89.65% [|]
        Status: Doing some wolf’s magics… [COMPLETED]
        Status: Repairing permissions on /…
        Status: Permissions on / have been repaired. Progress: 99.0%
        Status: Writing results to /Users/Vanilla/Desktop/RepairPermissionsResults-20160829_121425.txt…
        Status: Results have been saved to /Users/Vanilla/Desktop/RepairPermissionsResults-20160829_121425.txt

        Have a good day. Goodbye~

        # ls again.
        Harui:~ Vanilla$ ls ~
        CloverGrowerPro Documents Library Music Public
        Desktop Downloads Movies Pictures

        Oops. Yes. Maybe it’s created by other apps. Thanks anyway!

        Reply
  6. jean
    UnknownUnknownUnknownUnknown

    Hi
    the zip file of the latest :
    V3.3.1315: RepairPermissions 3.3.1315 (Stable) (29 downloads) (MD5: dd3a3adbcd3855c0814397a8861608ce)
    the zip file seems to be damaged, cant be opened

    !!! Make sure that your SIP flag CSR_ALLOW_UNRESTRICTED_FS is enabled. !!!
    how?

    perhaps a small easy to read and understand user .txt file would be handy

    Reply
  7. Joel
    UnknownUnknownUnknownUnknown

    Any updates for 16A323? I’ve run it on earlier developer builds and it didn’t fix the issues of me constantly being asked to enter credentials to repair Library permissions. I’m trying to avoid completely rebuilding, but it’s looking more and more like that will be my only option.

    Reply
    1. FireWolf Write
      UnknownUnknownUnknownUnknown

      Hi Joel,

      RepairPermissions is working fine on my computer running 16A323.

      What do you mean by constantly asking credentials? Your password is required because RepairPermissions needs to be run as root.

      Cheers,
      FireWolf

      Reply
        1. Joel
          UnknownUnknownUnknownUnknown

          Same result after another attempt of ./RepairPermissions /. Since the first GM seed of macOS Sierra I’ve experienced hundreds of prompts for my credentials to repair Library. Nothing seems to fix it. What logs would you need to figure out what is going on?

          Reply
          1. Joel
            UnknownUnknownUnknownUnknown

            Also as a result almost nothing works. No use of App Store, iTunes, Mail, Preview, or most Apple applications. Safari will open but will eventually stall out when it tries to access something.

          2. FireWolf Write
            UnknownUnknownUnknownUnknown

            Hi Joel,

            Are you a Hackintosh user or a genuine Mac user? Your system probably is corrupted. What happened when you were trying to run RepairPermissions /? I need detailed information.

            Cheers,
            FireWolf

          3. Joel
            UnknownUnknownUnknownUnknown

            Genuine, of course. It runs fine it just doesn’t find much to repair:

            RepairPermissions – Verify and repair permissions of an entire volume
            Version: 3.3.1315 @ 2016.08.18
            Date: 2016.09.25 09:37:10
            User: joel

            File: //private/var/db/datadetectors
            Reason: POSIX Permissions Mismatched
            Current: 701
            Correct: 711
            New: 711
            Status: Fixed

            File: //private/var/db/displaypolicyd
            Reason: Owner ID Mismatched
            Current: 244
            Correct: 0
            New: 0
            Status: Fixed

            File: //private/var/db/displaypolicyd
            Reason: Group ID Mismatched
            Current: 244
            Correct: 0
            New: 0
            Status: Fixed

            File: //private/var/db/lockdown
            Reason: POSIX Permissions Mismatched
            Current: 700
            Correct: 777
            New: 777
            Status: Fixed

            File: //usr/libexec/cups
            Reason: POSIX Permissions Mismatched
            Current: 555
            Correct: 755
            New: 755
            Status: Fixed

            File: //usr/libexec/cups/apple
            Reason: POSIX Permissions Mismatched
            Current: 555
            Correct: 755
            New: 755
            Status: Fixed

            File: //usr/libexec/cups/backend
            Reason: POSIX Permissions Mismatched
            Current: 555
            Correct: 755
            New: 755
            Status: Fixed

            File: //usr/libexec/cups/cgi-bin
            Reason: POSIX Permissions Mismatched
            Current: 555
            Correct: 755
            New: 755
            Status: Fixed

            File: //usr/libexec/cups/daemon
            Reason: POSIX Permissions Mismatched
            Current: 555
            Correct: 755
            New: 755
            Status: Fixed

            File: //usr/libexec/cups/driver
            Reason: POSIX Permissions Mismatched
            Current: 555
            Correct: 755
            New: 755
            Status: Fixed

            File: //usr/libexec/cups/filter
            Reason: POSIX Permissions Mismatched
            Current: 555
            Correct: 755
            New: 755
            Status: Fixed

            File: //usr/libexec/cups/monitor
            Reason: POSIX Permissions Mismatched
            Current: 555
            Correct: 755
            New: 755
            Status: Fixed

            File: //usr/libexec/cups/notifier
            Reason: POSIX Permissions Mismatched
            Current: 555
            Correct: 755
            New: 755
            Status: Fixed

            File: //Library/Java
            Reason: POSIX Permissions Mismatched
            Current: 775
            Correct: 755
            New: 755
            Status: Fixed

            File: //Library/Printers
            Reason: Group ID Mismatched
            Current: 0
            Correct: 80
            New: 80
            Status: Fixed

            File: //Library/Printers
            Reason: POSIX Permissions Mismatched
            Current: 555
            Correct: 755
            New: 755
            Status: Fixed

            File: //Library/Printers/Canon
            Reason: Group ID Mismatched
            Current: 0
            Correct: 80
            New: 80
            Status: Fixed

            … and so on in //Library/Printers

          4. FireWolf Write
            UnknownUnknownUnknownUnknown

            Hi Joel,

            The results you posted look good.

            Since the first GM seed of macOS Sierra I’ve experienced hundreds of prompts for my credentials to repair Library.

            Could you please show me how you are prompted to enter your credentials to repair the /Library folder? You can upload screen shots to Dropbox, Google Drive, etc.

            Cheers,
            FireWolf

          5. FireWolf Write
            UnknownUnknownUnknownUnknown

            Hi Joel,

            I saw your screen shot.

            This is probably because you home directory (~) permissions are not set correctly. The Library in your screen shot probably refers to ~/Library.

            Note that RepairPermissions does not repair permissions of your home directory because they are user-level.

            However, you can try to reboot into Recovery, choose terminal from the Utilities menu, type resetpassword and hit return. Then choose your username in the reset password window and click the Reset Home Folder Permissions and ACLs button. Oh, great. I just find that Apple has removed this feature in macOS Sierra.

            Let me see what I can do.

            Cheers,
            FireWolf

          6. FireWolf Write
            UnknownUnknownUnknownUnknown

            Hi Joel,

            I have good news. I found a binary named repairHomePermissions in /usr/sbin.

            It seems that Apple has separated the repair home permissions function from the resetpassword.

            So I suggest you reboot into Recovery, open the terminal and run repairHomePermissions.

            Cheers,
            FireWolf

          7. Joel
            UnknownUnknownUnknownUnknown

            That loads fine under Recovery Mode. It shows a graphical menu of both users on my system, and when I select my impacted account it immediately errors out with:

            Unable to launch the underlying task process.

            So there’s more to figure out. I might go deep with this as I have contacts with Apple’s Executive Support. Anything else you would suggest I do would be huge to me. I want to fix this. I hate avoiding problems by going clean slate as that’s just avoiding something that will come up again.

    1. FireWolf Write
      UnknownUnknownUnknownUnknown

      Hi Michael,

      Sure, you can use the latest version of RepairPermissions to do that.

      And the answer to your second question is No. RepairPermissions does not rebuild caches, but you can try to use sudo kextcache -i /Volumes/yourElCapitanVolumeName in terminal.

      Cheers,
      FireWolf

      Reply
  8. J
    UnknownUnknownUnknownUnknown

    runnung it from recovery-mode->Terminal… via
    “./RepairPermissions /”…

    it says: “Verifiying/Repairing permissions of the root Volume in Recovery/PE is not allowed.”

    SIP Allow Unresitricted Files Sytem ist enabled.

    Reply
    1. FireWolf Write
      UnknownUnknownUnknownUnknown

      Hi J,

      That’s because / always refers to the root volume or the current boot volume.

      If the volume label of your startup disk is “Macintosh HD”, you should use ./RepairPermissions /Volumes/Macintosh HD instead.

      Cheers,
      FireWolf

      Reply
  9. George Grossman
    UnknownUnknownUnknownUnknown

    Hi FireWolf,

    I’ve loaded and had running the latest RepairPermission on Sierra (10.12.1) and had been able to run the check update successfully. Now that I’ve updated to 10.12.2, I can run the utility but cannot check update. The response that comes up is…

    RepairPermissions –check-update
    Status: Checking for updates…
    Current Version: 3.5.2050 @ 2016.10.27
    2016-12-30 15:54:22.258 RepairPermissions[64234:2913440] NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9802)
    Error: Unable to check for updates.

    Any and all help appreciated.

    Cheers and a happy new year

    Reply
  10. George Grossman
    UnknownUnknownUnknownUnknown

    Hi Firewolf,

    I’ve just had another error when checking for updates. It’s similar to that I experienced before…

    Status: Checking for updates…
    Current Version: 3.6.2171 @ 2017.03.18
    2017-04-15 14:27:21.063 RepairPermissions[47356:1696659] NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9802)
    Error: Unable to check for updates.

    I was hoping that you could look into the problem and let me know if there’s anything that could be done.

    Cheers,
    George

    Reply
  11. George Grossman
    UnknownUnknownUnknownUnknown

    Hi Firewolf,

    I just tried to download the latest version (3.7.2315) of RepairPermissions and only received a file 15 bytes in size which could not be opened. I did this as I could not update via the command line as I received the following response

    Status: Updating the binary…
    Error: Failed to update: Unable to replace the current executable.

    Hope you can help.

    Cheers,
    George

    Reply
  12. Desmond R F Foulger
    UnknownUnknownUnknownUnknown

    I’m trying to download Repair permissions v3 latest but its friday and Im dumb – I cant find the download link either in firefox or safari. Help please sir and earn the cup of coffee I sent you

    Reply
  13. vash15
    UnknownUnknownUnknownUnknown

    Hi, I have a problem with sudo command.
    “sudo: /usr/bin/sudo must be owned by uid 0 and have the setuid bit set”
    Any idea to solve it?

    Thanks so much!

    Reply
  14. acptyl
    UnknownUnknownUnknownUnknown

    Hello, I’m having an issue running this on HighSierra Beta 4. Here is my output:

    RepairPermissions – Verify and repair permissions of an entire volume
    Copyright (C) 2016 FireWolf @ FireWolf Pl. All Rights Reserved.

    Current OS: macOS 10.13 10.13 (17A315i)
    Target OS: macOS 10.13 10.13 (17A315i)

    Info: SIP Allow Unrestricted File System [ENABLED]
    Info: RepairPermissions will repair permissions on /
    Info: This will take some time. Grab a cup of coffee and be patient.
    Info: RepairPermissions is running in Normal Mode.
    Info: Intel(R) Core(TM) i7-7920HQ CPU @ 3.10GHz 4C8T
    Info: Available Processors: 8; Will use up to 8 processor(s).
    Status: [ULTRAFAST] Doing some wolf’s magics… Progress: 0.0% []
    Status: [ULTRAFAST] Doing some wolf’s magics… [COMPLETED]
    Illegal instruction: 4n / are being repaired…. Progress: 40.0% [|]
    …then the command ends

    Any ideas? I’m running the latest version of RepairPermissions

    Reply
  15. George Grossman
    UnknownUnknownUnknownUnknown

    Hi FireWolfe,
    I’ve come across this problem before:

    Status: Checking for updates…
    Current Version: 3.7.2320 @ 2017.06.20
    2017-07-29 15:43:40.225 RepairPermissions[4367:2959446] NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9802)
    Error: Unable to check for updates.

    I eagerly wait for a solution.

    Cheers

    Reply
  16. Nick
    UnknownUnknownUnknownUnknown

    Hello FireWolf,
    I am making a SIMBL plugin that loads into Disk Utility and adds buttons for Verifying and Repairing permissions!

    I though I could use your utility for the Verify / Repair Functionality… Thus I have added some code I found from the internet for running your utility with root permissions!! Though it doesn’t work… It still says that it needs to be run as root even though I give my password…

    Can you check my code or anything and tell me if there is something wrong???
    My project is on GitHub: https://github.com/npyl/EnhanceDiskUtility
    and the file that contains the code is main.m… You will find the code inside the method
    – (void)VerifyPermissions:(id)sender

    Please tell me if you wouldn’t like your application to be used by mine or you would like me to add your name somewhere..

    Thank you in advance…
    Nick

    Reply
    1. Nick
      UnknownUnknownUnknownUnknown

      FireWolf its me again! I may be able to run your utility as root, but need to check something first! I will tell you the results so please wait!

      Thank you!!!

      Reply
  17. ahmo
    UnknownUnknownUnknownUnknown

    I started to write for help. But it now appears you’ve solved my problem! I’ve spent hours searching and trying different ‘fixes’. I had to copy and print the text so I could see beyond the wolf. I’ve now recovered my precious collected notes of 5 years. Very Grateful!!!

    Reply
  18. ahmo
    UnknownUnknownUnknownUnknown

    I spoke too soon. The docs I’m trying to repair are individual notebooks in a Notebook program. For some reason, I found one in the trash after running your program. When I dragged it from trash onto Notebook icon, it worked, no more ‘need permissions’ message. I had to do the same w/ each of the other 3 notebooks, drag to trash and then onto icon. All of them appeared as expected, unchanged from tthe originals.

    Except, when I close the app and reopen, they’re no longer there. I have to drag to trash, then back onto icon for parent notebook, and they’re there again. But again, disappear after quitting and reopening.

    I had a hard time working out the directions, I am a bear of little brain. After downloading your program, I had to open a new terminal window to be able to input any commands. I eventually input what you’ll see on the info I’m posting below. Maybe i was close, but not good enuf???Thanks for helping.

    /bin/bash: //: is a directory
    Iris:Desktop veet$ ./RepairPermissions / //
    -bash: ./RepairPermissions: No such file or directory
    Iris:Desktop veet$ ./RepairPermissions / /
    -bash: ./RepairPermissions: No such file or directory
    Iris:Desktop veet$ /RepairPermissions /
    -bash: /RepairPermissions: No such file or directory
    Iris:Desktop veet$ RepairPermissions –help.
    Error: RepairPermissions requires ROOT privilege.
    Error: Please use `sudo RepairPermissions` to run me again.
    Iris:Desktop veet$ sudo -s //
    /bin/bash: //: is a directory
    Iris:Desktop veet$ `sudo RepairPermissions`
    -bash: : command not found
    Iris:Desktop veet$ ./RepairPermissions / //
    -bash: ./RepairPermissions: No such file or directory
    Iris:Desktop veet$

    Reply
  19. ahmo
    UnknownUnknownUnknownUnknown

    I’ve just spent another hour trying to do this. I’ve gotten a Finder window w/ bin, but there seems no way to copy anything into it. And, what exactly is the `RepairPermissions` binary? Is this the whole program I downloaded? Where do I input it? aaaagh…sorry, please dumb it way down. gratefully your’s. ahmo

    Reply
  20. Safari 11Safari 11Mac OS X 10.13Mac OS X 10.13

    I’m having troubles installing the program. Downloaded it and put the “RepairPermissions” file on the desktop. My OSX High Sierra is in German and I don’t know how to put it to /usr/local/bin

    When I try to run it, I’ll get the following error:

    Mac-Pro:~ Alex$ cd ~/Desktop
    Mac-Pro:Desktop Alex$ sudo -s
    sudo: /etc/sudoers is owned by uid 501, should be 0
    sudo: no valid sudoers sources found, quitting
    sudo: unable to initialize policy plugin
    Mac-Pro:Desktop Alex$ ./RepairPermissions /
    Error: RepairPermissions requires ROOT privilege.
    Error: Please use `sudo RepairPermissions` to run me again.
    Mac-Pro:Desktop Alex$ sudo RepairPermissions
    sudo: /etc/sudoers is owned by uid 501, should be 0
    sudo: no valid sudoers sources found, quitting
    sudo: unable to initialize policy plugin
    Mac-Pro:Desktop Alex$

    Please help me. Really don’t know how to do it. Thx, Alex

    Reply
    1. FireWolf Write
      Firefox 56Firefox 56Mac OS X 10.13Mac OS X 10.13

      Hi Alex,

      Your `sudo` is broken, and you have to first fix this issue.

      Try to boot in the single user mode, and type the following commands to fix it.

      mount -uw /
      chown root:wheel /etc/sudoers
      chmod 440 /etc/sudoers
      reboot

      Reference: https://apple.stackexchange.com/questions/157772/sudo-etc-sudoers-is-owned-by-uid-501-should-be-0

      After you fix the sudoers, copy the `RepairPermissions` to `/usr/local/bin` by typing the following commands in your terminal.

      (Assume that the RepairPermissions is on your desktop.)

      cd ~/Desktop
      mkdir -p /usr/local/bin
      mv RepairPermissions /usr/local/bin/

      Hope this can help you. Feel free to ask me if you still have questions.

      Cheers,
      FireWolf

      Reply
        1. FireWolf Write
          Firefox 56Firefox 56Mac OS X 10.13Mac OS X 10.13

          Hi Alex,

          If you have fixed the “sudoer” issue, you need to use “sudo mkdir -p /usr/local/bin” to create that folder, or directly run the RepairPermissions as root and repair permissions. (via typing sudo RepairPermissions in the terminal)

          Cheers,
          FireWolf

          Reply
          1. Safari 11Safari 11Mac OS X 10.13Mac OS X 10.13

            I did what you said to fix the“sudoer” issue. I did run RepairPermissions as root, but it didn’t fix any permissions in my user folder such like mail. Really need to correct those permissions in order to run mail and to revive my e-mail accounts, mailboxes and e-mails.

      1. Safari 11Safari 11Mac OS X 10.13Mac OS X 10.13

        I always did regular backups with “Deja Vu”, not Time Machine. After my Mac Pro 12-core had a total failure and was repared, they also renewed the SSD. After using the migration assistant I have problems to install updates such like “1 Password” and the Mail app doesn’t find my accounts, mail boxes and mails, only the email signatures.

        I guess this is problem is caused by broken/wrong permissions, and I really need to fix it, cause it’s my main workstation. Hope you can help me. Do you have a WhatsApp, facebook messages or e-mail for faster communication? Guess you know where to look and what to do and need some screenshots.

        Greets from Austria, Alex

        Reply
    1. FireWolf Write
      Firefox 56Firefox 56Mac OS X 10.13Mac OS X 10.13

      Hi lzh,

      Folders that belong to the user will not be checked or repaired, because those folders and files are owned by you. For example, “/Users/YourUserName/”, “/usr/local/”, etc.

      Setting permissions of user folders and files incorrectly will cause lots of problems, so RepairPermissions don’t touch them. It’s user’s responsibility to maintain those folders.

      Cheers,
      FireWolf

      Reply
      1. Safari 11Safari 11Mac OS X 10.13Mac OS X 10.13

        But this seems to be my problem too. My Mac Pro came back from repair with new SSD and I had to install OSX first, including creating a new admin user with the same name and password as last time. After that I was able to migrate the files from a backup, but it seems that the new Alex admin user, besides having the same name and password, is not the same as the old one.

        This causes a permission problem and mail to ignore my previous mal data like accounts, mailboxes and e-mails. I need to correct the permissions inside my user libary. So, can RepairPermission help to solve this problems, or not? Really need help with this!

        Reply
        1. FireWolf Write
          Safari 10Safari 10iPhone iOS 10.3.2iPhone iOS 10.3.2

          Hi Alex,

          RepairPermissions does not repair permissions of folders and files, such as /Users/yourUserName/, /usr/local/, etc., that belong to users. This is a design choice as it is users responsibility to maintain those files, and it is impossible to know what permissions the user want to set.

          I am not familiar with the software you use to backup and restore your files, but if you really think your issue is related to incorrect permissions of your home folder, you can try to type “sudo chown -R 501:80 ~” to reset the owner and group of your home folder.

          Besides, Apple provides an utility named resetHomePermissions in their Recovery. You may also want to try that.

          That’s my suggestion about the permissions, and I hope it clarifies your guess.

          Now my guess is this issue may relate to “database” because you say that softwares like 1-Password and Mail cannot find your account. Basically during the migration process, your files related to Mail.app and 1-Password may not be correctly migrated.
          By saying “correctly migrated”, I mean (1) Are those files placed at the correct location?
          (2) Are those files permissions correctly set?
          (3) Are those files correctly imported by the software?

          If those files permissions are correct, and 1-Password/Mail still cannot find your account, then the issue may be complex and cannot be solved by RepairPermissions.

          RepairPermissions is not a file recovery tool. All it does is to make sure that the operating system can run without permission issue. (System Level) However, I think your issue is probably user level.

          Hope this could help you. I understand the feeling when everything messes up.

          Best Wishes,
          FireWolf

          Reply
  21. Farrukh
    Google Chrome 61Google Chrome 61Mac OS X 10.12.6Mac OS X 10.12.6

    Hey Firewolf,

    I’m on Sierra. To give you some context, I wanted to make my home folder uppercase, so I started changing the naming scheme up in Users & Groups. As a result, I can no longer access a bunch of files in my time machine backup (when i try to access the files it says permission is ‘Fetching’. I tried changing back the naming scheme to my old casing however it still does not change anything. So now I am trying to repair my home permissions back to default and be able to become recognized by my time machine backup once again. Do you have any advice for what I should do to fix this? I tried your RepairPermission command but I’m still having issues

    Reply
  22. xgman
    Firefox 58Firefox 58WindowsWindows

    Many are having issues with finder icon previews for audio files not showing album art. May be somewhat permission related but more likely some sort of bug. Any suggestion as to what section of the OS to work on with regard to permissions to try to workaround this issue? thx.. 10.13.2 beta 3.

    Reply
  23. domneuk
    Google Chrome 62Google Chrome 62Mac OS X 10.13.1Mac OS X 10.13.1

    Hey Firewolf,

    i wanted to download the RepairPremissions program, but only got a 1KB File with following errors:

    Warning: fopen(): SSL operation failed with code 1. OpenSSL Error messages:
    error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed in /data/www/www.firewolf.science/wp-content/plugins/download-monitor/includes/class-dlm-download-handler.php on line 611

    Warning: fopen(): Failed to enable crypto in /data/www/www.firewolf.science/wp-content/plugins/download-monitor/includes/class-dlm-download-handler.php on line 611

    Warning: fopen(https://raw.githubusercontent.com/Austere-J/RepoRepairPermissions/master/RepairPermissions3.7.2320_33be7c94879cc48358bb4da406e580c9.zip): failed to open stream: operation failed in /data/www/www.firewolf.science/wp-content/plugins/download-monitor/includes/class-dlm-download-handler.php on line 611

    Warning: Cannot modify header information – headers already sent by (output started at /data/www/www.firewolf.science/wp-content/plugins/download-monitor/includes/class-dlm-download-handler.php:611) in /data/www/www.firewolf.science/wp-content/plugins/download-monitor/includes/class-dlm-download-handler.php on line 504

    I downloaded the archive from GitHub, but maybe you can fix that on this site for other users.

    I’m using a Mac with 10.13.1 and Chrome 62.0.3202.94.

    Reply
  24. Stefan
    Firefox 57Firefox 57Mac OS X 10.13Mac OS X 10.13

    Hey,

    I would need your tool to repair my OS, as i can’t use the trash bin anymore. Unfortunately I’m not able to unzip the tool. None of my zipping apps (MacOS onboard, Dr. Anarchiver, Keka…) works. Terminal says “no such file or directory”. What can I do? Thank you.

    Reply
  25. Stefan
    Firefox 57Firefox 57Mac OS X 10.13Mac OS X 10.13

    Yeah, that worked. Thanks. But, as you mentioned, the problem still exists. Let me just describe it: since two days everytime I want to move a file to the trash, I get a message from MacOS that the file will be deleted immediately. If I confirm, the file is delted completely and it’s not in the trash. But only for files from Macintosh HD (interntal SSD). With all my other drives the trash works well. Should I reinstall MacOS. Would reinstalling it delete my personal data or only replace the system files? Thanks for your support (if you have time to answer).

    Reply
    1. FireWolf Write
      Firefox 57Firefox 57Mac OS X 10.13Mac OS X 10.13

      Hi Stefan,

      That’s interesting. Please check whether your trash folder permission is correct or not.

      Open the terminal and type the following commands:

      cd ~
      ls -al | grep .Trash

      You should see something like this:
      drwx------ 3 FireWolf staff 96 2 Dec 18:16 .Trash

      The owner of the .Trash folder should be your login name and the group owner should be `stuff`.

      To fix this issue, use sudo chown -R 501:80 .Trash and sudo chmod -R 700 .Trash.

      Cheers,
      FireWolf

      Reply
  26. Dominique
    Safari 11Safari 11Mac OS X 10.13.4Mac OS X 10.13.4

    Hi Firewolf,
    I’m using your new version, and, under MacOs High Sierra, Repairpermissions runs well and corrects several posix permissions. The problem is that, in fact, they are not corrected. If for instance I run again Repairpermissions from the Terminal, the same errors are funded again and “corrected” again… What can I do?
    Best regards,
    Dominique

    Reply
    1. FireWolf Write
      Safari 10Safari 10iPhone iOS 10.3.2iPhone iOS 10.3.2

      Hi Dominique,

      I am aware of this kind of “issues”. RepairPermissions did repair permissions of those files, but the operating system may currently use those files and alter permissions.

      Actually, such situations also exist when in the old days ‘diskutil repairPermissions’ is still available.

      Don’t worry about those files permissions. Just ignore them! 🙂

      Cheers,
      FireWolf

      Reply
  27. Viktor
    Safari 11Safari 11Mac OS X 10.13.4Mac OS X 10.13.4

    Hi,
    many thanks for Your work!

    I tried to fix permissions on High Sierra – went good except a few files (I don’t worry about them), but every time I’m starting repairing an error occurs.
    This is the text showing in Terminal:

    ———————————————————————————————————————–
    RepairPermissions – Verify and repair permissions of an entire volume
    Copyright (C) 2016-2018 FireWolf @ FireWolf Pl. All Rights Reserved.

    Current OS: macOS High Sierra 10.13.4 (17E199)
    Target OS: macOS High Sierra 10.13.4 (17E199)

    Error: Unable to read the current SIP configurations.
    Info: RepairPermissions is running in Normal mode.
    Info: RepairPermissions will repair permissions on /.
    Info: This will take some time. Grab a cup of coffee and be patient.
    Info: Intel(R) Core(TM) i7-3720QM CPU @ 2.60GHz 4C8T
    Info: Available Processors: 8; Will use up to 8 processor(s).
    Status: [ULTRAFAST] Performing some wolf’s magics…
    Status: [ULTRAFAST] Wolf’s magics have been performed.
    Status: Please wait while we are generating the report for you…
    Status: Report has been saved to /Users/viktorstockinger/Desktop/RepairPermissionsReport-20180405_144348.txt.

    Summary: 551590 files have been checked by RepairPermissions in 469.25 seconds.

    Have a good day. Goodbye~
    ———————————————————————————————————————–

    How can I get rid of this error (Error: Unable to read the current SIP configurations.)?

    I’ve checked the SIP status and it is enabled…
    $ csrutil status
    System Integrity Protection status: enabled

    Hope You can help or confirm this has no effect on repairing permissions!

    Thanks again and best regards

    Reply
    1. FireWolf Write
      Firefox 59Firefox 59Mac OS X 10.13Mac OS X 10.13

      Hi Viktor,

      It is recommended to DISABLE the system integrity protection before repairing permissions, because SIP may prevent RepairPermissions from fixing file permissions/user id/group id.

      “Error: Unable to read the current SIP configurations.”
      This error indicates that you are using a Genuine Mac and probably have never used the command `csrutil disable` in Recovery to disable the system integrity protection.

      Cheers,
      FireWolf

      Reply
  28. Frank
    Safari 11Safari 11Mac OS X 10.13.4Mac OS X 10.13.4

    Hi FireWolf,

    I used your tool to repair the permissions a couple of days ago, and it worked fine so far. Now I discovered the issue, that my spotlight is not working correctly anymore. Several Applications (most of them) where not found, so I tried several time to rebuild the spotlight index, unfortunately not successful. As someone mentioned in a mac forum, could be a problem with the disk permissions. Any idea how to solve this issue? Would appreciate any help…

    Reply
      1. FireWolf Write
        Firefox 60Firefox 60Mac OS X 10.13Mac OS X 10.13

        Hi Xavier,

        RepairPermissions does not touch any files in your home folder.

        If you believe that iCloud does not work because of permission issues, check Apple’s support page to reset your home folder permissions.

        Cheers,
        FireWolf

        Reply
  29. Aviosam
    Safari 11Safari 11Mac OS X 10.13.4Mac OS X 10.13.4

    Hi FireWolf, I’m not a programmer but can follow instructions. I’ve just upgraded to OS X High Sierra 10.13.4 – could you kindly give me a step by step procedure of what to do for a repair permissions procedure. I’ll really appreciate it.

    Is it not possible to make a small clickable app that executes the procedure for regular guys like me ?

    Reply
  30. Graham Wong
    Firefox 61Firefox 61Mac OS X 10.13Mac OS X 10.13

    First of all, thanks for creating this.

    I downloaded the latest version and attempted to run it in root on macOS 10.13.6.

    For some reason it’s not working, the last line in the Terminal results says “Illegal instruction: 4lf’s magics… Progress: 0.0% [\]”

    What am I missing?

    Reply