How to mount USB Drive in Single User Mode in Mac OS X

I have faced a problem where my Mac is not booting up and throwing messages like this continuously.

process[182] crashed: opendirectoryd. Too many corpses being created.

I tried repairing the Hard Disk and re-installing OS, but that didn't fixed the issue. So before i erase the disk and re-install again, i have to backup my files. So i boot-ed up in Single user mode, but i wasn't able to mount the pen drive, as High Sierra prevents loading unsigned kernel extensions, in this instance msdos kext for mounting my FAT formatted pen drive.

So i eventually fixed it with the help of online forums and i m putting it together so that it can be useful to others as well.


Solution 1:

  1. In order to run un-signed Kernel extensions in Mac, you need to disable Apple Signature check for loading Kernel extensions.

    Reboot Mac in Recovery mode(Command + R), then select the menu item "Utilities / Terminal", then run the command

    csrutil disable
    

    Reboot in Single User mode (Command + S)

  2. Enter the following commands,

    fsck –fy
    
    mount –uw /
    
  3. Create a directory to mount USB Drive

    mkdir /Volumes/usbmnt
    
  4. Before plugging in the USB Drive, get the list of "disk" devices available by running the command

    ls -l /dev/disk*
    
  5. Plug in the USB disk
  6. Identify the new device entry for the USB disk by again running the command

    ls -l /dev/disk*
    

    Usually the disk will be mounted like '/dev/disk2s1'

  7. Identify the file system of the USB disk

    fstyp /dev/disk2s1
    
  8. Based on the file system format, mount the USB Drive; my USB format was "FAT", so I used msdos:

    mount_msdos /dev/disk2s1 /Volumes/usbmnt
    

That's it; now the USB drive is mounted. Use the contents of the drive at the path filesystem "/Volumes/usbmnt".