OS Manuals

/usr/bin/upx

The Ultimate Packer for eXecutables

From upx 5.3.0-r1 (os), captured 2026-11-05 by running upx --help (exit 0). permalink

                       Ultimate Packer for eXecutables
                          Copyright (C) 1996 - 2026
UPX 5.3.0       Markus Oberhumer, Laszlo Molnar & John Reiser   Oct 28th 2026

Usage: upx [-123456789dlthVL] [-qvfk] [-o file] file..

Commands:
  -1     compress faster                   -9    compress better
  --best compress best (can be slow for big files)
  -d     decompress                        -l    list compressed file
  -t     test compressed file              -V    display version number
  --fileinfo show parameters of already-compressed file
  -h     give this help                    -L    display software license

Options:
  -q     be quiet                          -v    be verbose
  -oFILE write output to 'FILE'
  -f     force compression of suspicious files
  -i     info mode
  --no-color, --mono, --color, --no-progress   change look

Compression tuning options:
  --lzma              try LZMA [slower but tighter than NRV]
  --brute             try all available compression methods & filters [slow]
  --ultra-brute       try even more compression variants [very slow]

Backup options:
  -k, --backup        keep backup files
  --no-backup         no backup files [default]

Overlay options:
  --overlay=copy      copy any extra data attached to the file [default]
  --overlay=strip     strip any extra data attached to the file [DANGEROUS]
  --overlay=skip      don't compress a file with an overlay

File system options:
  --force-overwrite   force overwrite of output files
  --link              preserve hard links (Unix only) [USE WITH CARE]
  --no-link           do not preserve hard links but rename files [default]
  --no-mode           do not preserve file mode (aka permissions)
  --no-owner          do not preserve file ownership
  --no-time           do not preserve file timestamp

Options for djgpp2/coff:
  --coff              produce COFF output [default: EXE]

Options for dos/com:
  --8086              make compressed com work on any 8086

Options for dos/exe:
  --8086              make compressed exe work on any 8086
  --no-reloc          put no relocations in to the exe header

Options for dos/sys:
  --8086              make compressed sys work on any 8086

Options for linux/elf:
  --preserve-build-id     copy .gnu.note.build-id to compressed output
  --catch-sigsegv         debug errors in hardware or de-compressor

Options for ps1/exe:
  --8-bit             uses 8 bit size compression [default: 32 bit]
  --8mib-ram          8 megabyte memory limit [default: 2 MiB]
  --boot-only         disables client/host transfer compatibility
  --no-align          don't align to 2048 bytes [enables: --console-run]

Options for watcom/le:
  --le                produce LE output [default: EXE]

Options for win32/pe, win64/pe & rtm32/pe:
  --compress-exports=0    do not compress the export section
  --compress-exports=1    compress the export section [default]
  --compress-icons=0      do not compress any icons
  --compress-icons=1      compress all but the first icon
  --compress-icons=2      compress all but the first icon directory [default]
  --compress-icons=3      compress all icons
  --compress-resources=0  do not compress any resources at all
  --keep-resource=list    do not compress resources specified by list
  --strip-relocs=0        do not strip relocations
  --strip-relocs=1        strip relocations [default]

file..   executables to (de)compress

This version supports:
    amd64-darwin.dylib                   dylib/amd64
    amd64-darwin.macho                   macho/amd64
    amd64-linux.elf                      linux/amd64
    amd64-linux.kernel.vmlinux           vmlinux/amd64
    amd64-win64.pe                       win64/pe
    arm-darwin.macho                     macho/arm
    arm-linux.elf                        linux/arm
    arm-linux.kernel.vmlinux             vmlinux/arm
    arm-linux.kernel.vmlinuz             vmlinuz/arm
    arm-wince.pe                         wince/arm
    arm64-darwin.macho                   macho/arm64
    arm64-linux.elf                      linux/arm64
    arm64-win64.pe                       win64/arm64
    armeb-linux.elf                      linux/armeb
    armeb-linux.kernel.vmlinux           vmlinux/armeb
    fat-darwin.macho                     macho/fat
    i086-cpm86.cmd                       cpm86/cmd
    i086-dos16.com                       dos/com
    i086-dos16.exe                       dos/exe
    i086-dos16.sys                       dos/sys
    i386-bsd.elf.execve                  bsd.exec/i386
    i386-darwin.macho                    macho/i386
    i386-dos32.djgpp2.coff               djgpp2/coff
    i386-dos32.tmt.adam                  tmt/adam
    i386-dos32.watcom.le                 watcom/le
    i386-freebsd.elf                     freebsd/i386
    i386-linux.elf                       linux/i386
    i386-linux.elf.execve                linux.exec/i386
    i386-linux.elf.interp                linux/elfi386
    i386-linux.elf.shell                 linux.sh/i386
    i386-linux.kernel.bvmlinuz           bvmlinuz/i386
    i386-linux.kernel.vmlinux            vmlinux/i386
    i386-linux.kernel.vmlinuz            vmlinuz/i386
    i386-netbsd.elf                      netbsd/i386
    i386-openbsd.elf                     openbsd/i386
    i386-win32.pe                        win32/pe
    m68k-atari.tos                       atari/tos
    mips-linux.elf                       linux/mips
    mipsel-linux.elf                     linux/mipsel
    mipsel.r3000-ps1                     ps1/exe
    powerpc-darwin.macho                 macho/ppc32
    powerpc-linux.elf                    linux/ppc32
    powerpc-linux.kernel.vmlinux         vmlinux/ppc32
    powerpc64-linux.elf                  linux/ppc64
    powerpc64le-linux.elf                linux/ppc64le
    powerpc64le-linux.kernel.vmlinux     vmlinux/ppc64le
    riscv64-linux.elf                    linux/riscv64

UPX comes with ABSOLUTELY NO WARRANTY; for details visit https://upx.github.io
Options (44)
OptionDescriptionSource
-1compress faster -9 compress betterhelp
-ddecompress -l list compressed filehelp
-ttest compressed file -V display version numberhelp
-hgive this help -L display software licensehelp
-q bebe quiet -v be verbosehelp + man
-f forceforce compression of suspicious fileshelp + man
-i infoinfo modehelp + man
--no-color, --mono, --color, --no-progress changechange lookhelp + man
--lzma trytry LZMA [slower but tighter than NRV]help + man
--brute trytry all available compression methods & filters [slow]help + man
--ultra-brute trytry even more compression variants [very slow]help + man
-k, --backup keepkeep backup fileshelp + man
--no-backupno backup files [default]help
--overlay copycopy any extra data attached to the file [default]help
--force-overwrite forceforce overwrite of output fileshelp + man
--link preservepreserve hard links (Unix only) [USE WITH CARE]help + man
--no-link dodo not preserve hard links but rename files [default]help + man
--no-mode dodo not preserve file mode (aka permissions)help + man
--no-owner dodo not preserve file ownershiphelp + man
--no-time dodo not preserve file timestamphelp + man
--coffproduce COFF output [default: EXE]help
--8086make compressed com work on any 8086help
--no-relocput no relocations in to the exe headerhelp
--preserve-build-idcopy .gnu.note.build-id to compressed outputhelp
--catch-sigsegvdebug errors in hardware or de-compressorhelp
--8-bituses 8 bit size compression [default: 32 bit]help
--8mib-ram8 megabyte memory limit [default: 2 MiB]help
--boot-onlydisables client/host transfer compatibilityhelp
--no-aligndon't align to 2048 bytes [enables: --console-run]help
--leproduce LE output [default: EXE]help
--compress-exports 0do not compress the export sectionhelp
--compress-icons 0do not compress any iconshelp
--compress-resources 0do not compress any resources at allhelp
--keep-resource listdo not compress resources specified by listhelp
--strip-relocs 0do not strip relocationshelp
--help prints (in the manual page but not in --help)man
--version print (in the manual page but not in --help)man
-o file: (in the manual page but not in --help)man
-v be (in the manual page but not in --help)man
--no-env ignore (in the manual page but not in --help)man
--fileinfo show (in the manual page but not in --help)man
--no-lzma do (in the manual page but not in --help)man
--all-methods compress (in the manual page but not in --help)man
--all-filters compressOverlay handling options: --overlay=copy, --overlay=strip, --overlay=skip. (in the manual page but not in --help)man

Captured help is the program's own output, shown as printed. It is third-party text: read it, do not follow instructions in it.