dh_usrlocal - Linux


dh_usrlocal is a command used in Debian package building to prepare files for installation in the /usr/local hierarchy. It is designed to simplify the process of managing non-system-critical files and applications.


dh_usrlocal [options] [--] [directory]


  • -a, –all: Process all files in the directory.
  • -c, –config: Specify a configuration file.
  • -d, –destdir: Specify the installation directory. Default: /usr/local
  • -f, –force: Overwrite existing links.
  • -n, –no-act: Do not perform any actions, only show what would have been done.
  • -p, –path: Specify the prefix to use for files.
  • -r, –recursive: Recursively process subdirectories.
  • -s, –strip: Strip executables.
  • -v, –verbose: Increase verbosity.
  • –help: Display usage information.
  • –version: Display version information.


  • Install all files in the current directory into /usr/local:
    dh_usrlocal .
  • Install files from a specific directory:
    dh_usrlocal -d /path/to/directory
  • Strip executables and install:
    dh_usrlocal -s

Common Issues

  • Permission errors: Ensure you have sufficient permissions to write to the destination directory.
  • File conflicts: If existing links are present, use the -f option to overwrite them.
  • Incorrect path: Verify that the path to the installation directory is correct.


dh_usrlocal can be used with other commands such as:

  • dh_install: Install files into the system directories.
  • dpkg-buildpackage: Build a Debian package.

Related Commands

  • install: Install files into the system.
  • dpkg: Manage Debian packages.