Provided by: pseudo_1.9.0+git20230301+ec6151a2b057-1_amd64 bug


       fakeroot - run a command in an environment faking root privileges for file manipulation


       fakeroot [-i|-s local-state-dir] [-h|--help ] [-v|--version ] [--] [command]


       fakeroot  runs  a command in an environment wherein it appears to have root privileges for
       file manipulation.  This is useful for  allowing  users  to  create  file  system  images,
       archives   and   packages   (tar,   ar,   .deb   etc.)   with  files  in  them  with  root
       permissions/ownership. Without fakeroot one would need to have root privileges  to  create
       the constituent files of the archives with the correct permissions and ownership, and then
       pack them up, or one would have to construct the  archives  directly,  without  using  the
       archiver.   This  version  of  fakeroot  uses  pseudo(1)  to replace the file manipulation
       library functions (chmod(2), stat(2) etc.) by ones  that  simulate  the  effect  the  real
       library functions would have had, had the user really been root.


       -l arg, --lib arg
              Does nothing, accepted for compatibility only.

       --faked arg
              Does nothing, accepted for compatibility only.

       [--] command
              Any  command  you  want  to be ran as fakeroot. Use ‘--’ if in the command you have
              other options that may confuse fakeroot's option parsing.

       -s local-state-dir
              Keep the pseudo state directory on exit. This directory holds the  pseudo  database
              files  and  log  files.  See  the  pseudo  documentation on the details on how this
              directory can be reused.

       -i local-state-dir
              Load a pseudo environment previously saved using -s from the  specified  directory.
              Note  that  this  does  not  implicitly save the direcotry, use -s instead for that
              behaviour. Using the same file for both -i and -s in a single  fakeroot  invocation
              is safe.

       -u,    --unknown-is-real Does nothing, accepted for compatibility only.

       -b fd  Does nothing, accepted for compatibility only.

       -h     Display help.

       -v     Display version.


       Here  is  an  example session with fakeroot.  Notice that inside the fake root environment
       file manipulation that requires root privileges succeeds, but is not really happening.

       $  whoami
       $ fakeroot /bin/bash
       #  whoami
       # mknod hda3 b 3 1
       # ls -ld hda3
       brw-r--r--   1 root     root       3,   1 Jul  2 22:58 hda3
       # chown joost:root hda3
       # ls -ld hda3
       brw-r--r--   1 joost    root       3,   1 Jul  2 22:58 hda3
       # ls -ld /
       drwxr-xr-x  20 root     root         1024 Jun 17 21:50 /
       # chown joost:users /
       # chmod a+w /
       # ls -ld /
       drwxrwxrwx  20 joost    users        1024 Jun 17 21:50 /
       # exit
       $ ls -ld /
       drwxr-xr-x  20 root     root         1024 Jun 17 21:50 //
       $ ls -ld hda3
       -rw-r--r--   1 joost    users           0 Jul  2 22:58 hda3

       Only the effects that user joost could do anyway happen for real.

       fakeroot was specifically written to enable users to create Debian GNU/Linux packages  (in
       the deb(5) format) without giving them root privileges.  This can be done by commands like
       dpkg-buildpackage -rfakeroot or debuild -rfakeroot (actually,  -rfakeroot  is  default  in
       debuild nowadays, so you don't need that argument).


       fakeroot  is  a  regular,  non-setuid program. It does not enhance a user's privileges, or
       decrease the system's security.


       See pseudo(1) for the details on the bugs of the underlying fakeroot implementation.


       fakeroot wrapper for pseudo is distributed under the GNU General  Public  License  version
       3.0  or  later.   pseudo itself is distributed under the GNU Lesser General Public License
       version 2.1 or later.


       The  original  fakeroot  manual  page  has  mostly   been   written   by   J.H.M.   Dassen
       <> with rather a lot modifications and additions by joost and Clint.  It
       was later modified by Andrew Shadura for this fakeroot wrapper for pseudo.


       pseudo(1), fakeroot(1), dpkg-buildpackage(1), debuild(1)