7chars

a2enmod
Enable an Apache module on Debian-based OSes

More information: https://manpages.debian.org/latest/apache2/a2enmod.8.en.html.

- Enable a module: sudo a2enmod module

- Don't show informative messages: sudo a2enmod --quiet module

a2query
Retrieve runtime configuration from Apache on Debian-based OSes

More information: https://manpages.debian.org/buster/apache2/a2query.1.en.html.

- List enabled Apache modules: sudo a2query -m

- Check if a specific module is installed: sudo a2query -m module_name

- List enabled virtual hosts: sudo a2query -s

- Display the currently enabled Multi Processing Module: sudo a2query -M

- Display the Apache version: sudo a2query -v

addpart
Tells the Linux kernel about the existence of the specified partition.The command is a simple wrapper around the add partition ioctl

More information: https://manned.org/addpart.

- Tell the kernel about the existence of the specified partition: addpart device partition start length

adduser
User addition utility

More information: https://manpages.debian.org/latest/adduser/adduser.html.

- Create a new user with a default home directory and prompt the user to set a password: adduser username

- Create a new user without a home directory: adduser --no-create-home username

- Create a new user with a home directory at the specified path: adduser --home path/to/home username

- Create a new user with the specified shell set as the login shell: adduser --shell path/to/shell username

- Create a new user belonging to the specified group: adduser --ingroup group username

- Add an existing user to the specified group: adduser username group

apt-get
Debian and Ubuntu package management utility.Search for packages using apt-cache

More information: https://manpages.debian.org/latest/apt/apt-get.8.html.

- Update the list of available packages and versions (it's recommended to run this before other apt-get commands): apt-get update

- Install a package, or update it to the latest available version: apt-get install package

- Remove a package: apt-get remove package

- Remove a package and its configuration files: apt-get purge package

- Upgrade all installed packages to their newest available versions: apt-get upgrade

- Clean the local repository - removing package files (.deb) from interrupted downloads that can no longer be downloaded: apt-get autoclean

- Remove all packages that are no longer needed: apt-get autoremove

- Upgrade installed packages (like upgrade), but remove obsolete packages and install additional packages to meet new dependencies: apt-get dist-upgrade

apt-key
Key management utility for the APT Package Manager on Debian and Ubuntu.Note: apt-key is now deprecated (except for the use of apt-key del in maintainer scripts)

More information: https://manpages.debian.org/latest/apt/apt-key.8.html.

- List trusted keys: apt-key list

- Add a key to the trusted keystore: apt-key add public_key_file.asc

- Delete a key from the trusted keystore: apt-key del key_id

- Add a remote key to the trusted keystore: wget -qO - https://host.tld/filename.key | apt-key add -

- Add a key from keyserver with only key id: apt-key adv --keyserver pgp.mit.edu --recv KEYID

arecord
Sound recorder for ALSA soundcard driver

More information: https://manned.org/arecord.

- Record a snippet in "CD" quality (finish with Ctrl-C when done): arecord -vv --format=cd path/to/file.wav

- Record a snippet in "CD" quality, with a fixed duration of 10 seconds: arecord -vv --format=cd --duration=10 path/to/file.wav

- Record a snippet and save it as an MP3 (finish with Ctrl-C when done): arecord -vv --format=cd --file-type raw | lame -r - path/to/file.mp3

- List all sound cards and digital audio devices: arecord --list-devices

- Allow interactive interface (e.g. use space-bar or enter to play or pause): arecord --interactive

auracle
Command-line tool used to interact with Arch Linux's User Repository, commonly referred to as the AUR

More information: https://github.com/falconindy/auracle.

- Display AUR packages that match a regular expression: auracle search 'regular_expression'

- Display package information for a space-separated list of AUR packages: auracle info package1 package2

- Display the PKGBUILD file (build information) for a space-separated list of AUR packages: auracle show package1 package2

- Display updates for installed AUR packages: auracle outdated

aurvote
Vote for packages in the Arch User Repository.To be able to vote, the file ~/.config/aurvote must exist and contain your AUR credentials

More information: https://github.com/archlinuxfr/aurvote.

- Interactively create the file ~/.config/aurvote containing your AUR username and password: aurvote --configure

- Vote for one or

More AUR packages: aurvote package1 package2 ...

- Unvote one or

More AUR packages: aurvote --unvote package1 package2 ...

- Check if one or

More AUR packages have already been voted: aurvote --check package1 package2 ...

- Show help for aurvote: aurvote --help

binwalk
Firmware Analysis Tool

More information: https://github.com/ReFirmLabs/binwalk.

- Scan a binary file: binwalk path/to/binary

- Extract files from a binary, specifying the output directory: binwalk --extract --directory output_directory path/to/binary

- Recursively extract files from a binary limiting the recursion depth to 2: binwalk --extract --matryoshka --depth 2 path/to/binary

- Extract files from a binary with the specified file signature: binwalk --dd 'png image:png' path/to/binary

- Analyze the entropy of a binary, saving the plot with the same name as the binary and .png extension appended: binwalk --entropy --save path/to/binary

- Combine entropy, signature and opcodes analysis in a single command: binwalk --entropy --signature --opcodes path/to/binary

bitwise
Multi base interactive calculator supporting dynamic base conversion and bit manipulation

More information: https://github.com/mellowcandle/bitwise.

- Run using interactive mode: bitwise

- Convert from decimal: bitwise 12345

- Convert from hexadecimal: bitwise 0x563d

- Convert a C-style calculation: bitwise "0x123 + 0x20 - 30 / 50"

boltctl
Control thunderbolt devices

More information: https://manned.org/boltctl.

- List connected (and authorized) devices: boltctl

- List connected devices, including unauthorized ones: boltctl list

- Authorize a device temporarily: boltctl authorize device_uuid

- Authorize and remember a device: boltctl enroll device_uuid

- Revoke a previously authorized device: boltctl forget device_uuid

- Show

More information about a device: boltctl info device_uuid

certbot
The Let's Encrypt Agent for automatically obtaining and renewing TLS certificates.Successor to letsencrypt

More information: https://certbot.eff.org/docs/using.html.

- Obtain a new certificate via webroot authorization, but do not install it automatically: sudo certbot certonly --webroot --webroot-path path/to/webroot --domain subdomain.example.com

- Obtain a new certificate via nginx authorization, installing the new certificate automatically: sudo certbot --nginx --domain subdomain.example.com

- Obtain a new certificate via apache authorization, installing the new certificate automatically: sudo certbot --apache --domain subdomain.example.com

- Renew all Let's Encrypt certificates that expire in 30 days or less (don't forget to restart any servers that use them afterwards): sudo certbot renew

- Simulate the obtaining of a new certificate, but don't actually save any new certificates to disk: sudo certbot --webroot --webroot-path path/to/webroot --domain subdomain.example.com --dry-run

- Obtain an untrusted test certificate instead: sudo certbot --webroot --webroot-path path/to/webroot --domain subdomain.example.com --test-cert

chronyc
Query the Chrony NTP daemon

More information: https://chrony.tuxfamily.org/doc/4.0/chronyc.html.

- Start chronyc in interactive mode: chronyc

- Display tracking stats for the Chrony daemon: chronyc tracking

- Print the time sources that Chrony is currently using: chronyc sources

- Display stats for sources currently used by chrony daemon as a time source: chronyc sourcestats

- Step the system clock immediately, bypassing any slewing: chronyc makestep

- Display verbose information about each NTP source: chronyc ntpdata

compgen
A built-in command for auto-completion in Bash, which is called on pressing TAB key twice

More information: https://www.gnu.org/software/bash/manual/bash.html#index-compgen.

- List all commands that you could run: compgen -c

- List all aliases: compgen -a

- List all functions that you could run: compgen -A function

- Show shell reserved keywords: compgen -k

- See all available commands/aliases starting with 'ls': compgen -ac ls

compose
An alias to a run-mailcap's action compose.Originally run-mailcap is used to mime-type/file

More information: https://manned.org/compose.

- Compose action can be used to compose any existing file or new on default mailcap edit tool: compose filename

- With run-mailcap: run-mailcap --action=compose filename

debugfs
An interactive ext2/ext3/ext4 filesystem debugger

More information: https://manned.org/debugfs.

- Open the filesystem in read only mode: debugfs /dev/sdXN

- Open the filesystem in read write mode: debugfs -w /dev/sdXN

- Read commands from a specified file, execute them and then exit: debugfs -f path/to/cmd_file /dev/sdXN

- View the filesystem stats in debugfs console: stats

- Close the filesystem: close -a

- List all available commands: lr

debuild
Tool to build a Debian package from source

More information: https://manpages.debian.org/debuild.

- Build the package in the current directory: debuild

- Build a binary package only: debuild -b

- Do not run lintian after building the package: debuild --no-lintian

deluser
Delete a user from the system.Note: all commands must be executed as root

More information: https://manpages.debian.org/latest/adduser/deluser.html.

- Remove a user: deluser username

- Remove a user and their home directory: deluser --remove-home username

- Remove a user and their home, but backup their files into a .tar.gz file in the specified directory: deluser --backup-to path/to/backup_directory --remove-home username

- Remove a user, and all files owned by them: deluser --remove-all-files username

dockerd
A persistent process to start and manage docker containers

More information: https://docs.docker.com/engine/reference/commandline/dockerd/.

- Run docker daemon: dockerd

- Run docker daemon and config it to listen to specific sockets (UNIX and TCP): dockerd --host unix://path/to/tmp.sock --host tcp://ip

- Run with specific daemon PID file: dockerd --pidfile path/to/pid_file

- Run in debug mode: dockerd --debug

- Run and set a specific log level: dockerd --log-level=debug|info|warn|error|fatal

dolphin
KDE file manager

More information: https://apps.kde.org/dolphin/.

- Launch Dolphin: dolphin

- Launch Dolphin and display a specific directory: dolphin path/to/directory

- Launch Dolphin with a specific file or directory selected: dolphin --select path/to/file_or_directory

- Launch Dolphin in a separated window: dolphin --new-window

- Launch Dolphin in split view: dolphin --split

- Start the Dolphin daemon (only required to use the DBus interface): dolphin --daemon

- Display help: dolphin --help

e2image
Save critical ext2/ext3/ext4 filesystem metadata to a file

More information: https://manned.org/e2image.

- Write metadata located on device to a specific file: e2image /dev/sdXN path/to/image_file

- Print metadata located on device to stdout: e2image /dev/sdXN -

- Restore the filesystem metadata back to the device: e2image -I /dev/sdXN path/to/image_file

- Create a large raw sparse file with metadata at proper offsets: e2image -r /dev/sdXN path/to/image_file

- Create a QCOW2 image file instead of a normal or raw image file: e2image -Q /dev/sdXN path/to/image_file

e2label
Change the label on an ext2/ext3/ext4 filesystem

More information: https://manned.org/e2label.

- Change the volume label on a specific ext partition: e2label /dev/sda1 "label_name"

edquota
Edit quotas for a user or group. By default it operates on all filesystems with quotas.Quota information is stored permanently in the quota.user and quota.group files in the root of the filesystem

More information: https://manned.org/edquota.

- Edit quota of the current user: edquota --user $(whoami)

- Edit quota of a specific user: sudo edquota --user username

- Edit quota for a group: sudo edquota --group group

- Restrict operations to a given filesystem (by default edquota operates on all filesystems with quotas): sudo edquota --file-system filesystem

- Edit the default grace period: sudo edquota -t

- Duplicate a quota to other users: sudo edquota -p reference_user destination_user1 destination_user2

ethtool
Display and modify Network Interface Controller (NIC) parameters

More information: http://man7.org/linux/man-pages/man8/ethtool.8.html.

- Display the current settings for an interface: ethtool eth0

- Display the driver information for an interface: ethtool --driver eth0

- Display the network usage statistics for an interface: ethtool --statistics eth0

- Blink one or

More LEDs on an interface for 10 seconds: ethtool --identify eth0 10

- Set the link speed, duplex mode, and parameter auto-negotiation for a given interface: ethtool -s eth0 speed 10|100|1000 duplex half|full autoneg on|off

extrace
Trace exec calls

More information: https://github.com/chneukirchen/extrace.

- Trace all program executions occurring on the system: sudo extrace

- Run a command and only trace descendants of this command: sudo extrace command

- Print the current working directory of each process: sudo extrace -d

- Resolve the full path of each executable: sudo extrace -l

- Display the user running each process: sudo extrace -u

fc-list
List available fonts installed on the system

More information: https://manned.org/fc-list.

- Return a list of installed fonts in your system: fc-list

- Return a list of installed fonts with given name: fc-list | grep 'DejaVu Serif'

- Return the number of installed fonts in your system: fc-list | wc -l

findmnt
Find your filesystem

More information: https://manned.org/findmnt.

- List all mounted filesystems: findmnt

- Search for a device: findmnt /dev/sdb1

- Search for a mountpoint: findmnt /

- Find filesystems in specific type: findmnt -t ext4

- Find filesystems with specific label: findmnt LABEL=BigStorage

flatpak
Build, install and run flatpak applications and runtimes

More information: https://docs.flatpak.org/en/latest/flatpak-command-reference.html#flatpak.

- Run an installed application: flatpak run name

- Install an application from a remote source: flatpak install remote name

- List all installed applications and runtimes: flatpak list

- Update all installed applications and runtimes: flatpak update

- Add a remote source: flatpak remote-add --if-not-exists remote_name remote_url

- List all configured remote sources: flatpak remote-list

- Remove an installed application: flatpak remove name

- Show information about an installed application: flatpak info name

foreman
Manage Procfile-based applications

More information: https://manned.org/foreman.

- Start an application with the Procfile in the current directory: foreman start

- Start an application with a specified Procfile: foreman start -f Procfile

- Start a specific application: foreman start process

- Validate Procfile format: foreman check

- Run one-off commands with the process's environment: foreman run command

- Start all processes except the one named "worker": foreman start -m all=1,worker=0

getfacl
Get file access control lists

More information: https://manned.org/getfacl.

- Display the file access control list: getfacl path/to/file_or_directory

- Display the file access control list with numeric user and group IDs: getfacl -n path/to/file_or_directory

- Display the file access control list with tabular output format: getfacl -t path/to/file_or_directory

gpasswd
Administer /etc/group and /etc/gshadow

More information: https://manned.org/gpasswd.

- Define group administrators: sudo gpasswd -A user1,user2 group

- Set the list of group members: sudo gpasswd -M user1,user2 group

- Create a password for the named group: gpasswd group

- Add a user to the named group: gpasswd -a user group

- Remove a user from the named group: gpasswd -d user group

hashcat
Fast and advanced password recovery tool

More information: https://manned.org/hashcat.

- Perform a brute-force attack (mode 3) with the default hashcat mask: hashcat --hash-type hash_type_id --attack-mode 3 hash_value

- Perform a brute-force attack (mode 3) with a known pattern of 4 digits: hashcat --hash-type hash_type_id --attack-mode 3 hash_value "?d?d?d?d"

- Perform a brute-force attack (mode 3) using at most 8 of all printable ASCII characters: hashcat --hash-type hash_type_id --attack-mode 3 --increment hash_value "?a?a?a?a?a?a?a?a"

- Perform a dictionary attack (mode 0) using the RockYou wordlist of a Kali Linux box: hashcat --hash-type hash_type_id --attack-mode 0 hash_value /usr/share/wordlists/rockyou.txt

- Perform a rule-based dictionary attack (mode 0) using the RockYou wordlist mutated with common password variations: hashcat --hash-type hash_type_id --attack-mode 0 --rules-file /usr/share/hashcat/rules/best64.rule hash_value /usr/share/wordlists/rockyou.txt

- Perform a combination attack (mode 1) using the concatenation of words from two different custom dictionaries: hashcat --hash-type hash_type_id --attack-mode 1 hash_value /path/to/dictionary1.txt /path/to/dictionary2.txt

- Show result of an already cracked hash: hashcat --show hash_value

hcitool
Monitor, configure connections, and send special commands to Bluetooth devices

More information: https://manned.org/hcitool.

- Scan for Bluetooth devices: hcitool scan

- Output the name of a device, returning its MAC address: hcitool name bdaddr

- Fetch information about a remote Bluetooth device: hcitool info bdaddr

- Check the link quality to a Bluetooth device: hcitool lq bdaddr

- Modify the transmit power level: hcitool tpl bdaddr 0|1

- Display the link policy: hcitool lp

- Request authentication with a specific device: hcitool auth bdaddr

- Display local devices: hcitool dev

hexdump
An ASCII, decimal, hexadecimal, octal dump.

- Print the hexadecimal representation of a file: hexdump file

- Display the input offset in hexadecimal and its ASCII representation in two columns: hexdump -C file

- Display the hexadecimal representation of a file, but interpret only n bytes of the input: hexdump -C -nnumber_of_bytes file

homectl
Create, remove, change or inspect home directories using the systemd-homed service

More information: https://man.archlinux.org/man/homectl.1.

- List user accounts and their associated home directories: homectl list

- Create a user account and their associated home directory: sudo homectl create username

- Remove a specific user and the associated home directory: sudo homectl remove username

- Change the password for a specific user: sudo homectl passwd username

- Run a shell or a command with access to a specific home directory: sudo homectl with username -- command command_arguments

- Lock or unlock a specific home directory: sudo homectl lock|unlock username

- Change the disk space assigned to a specific home directory to 100 GiB: sudo homectl resize username 100G

- Display help: homectl --help

htpdate
Synchronize local date and time via HTTP headers from web servers

More information: http://www.vervest.org/htp/.

- Synchronize date and time: sudo htpdate host

- Perform simulation of synchronization, without any action: htpdate -q host

- Compensate the systematisch clock drift: sudo htpdate -x host

- Set time immediate after the synchronization: sudo htpdate -s host

hwclock
Used for reading or changing the hardware clock. Usually requires root.

- Display the current time as reported by the hardware clock: hwclock

- Write the current software clock time to the hardware clock (sometimes used during system setup): hwclock --systohc

- Write the current hardware clock time to the software clock: hwclock --hctosys

ip link
Manage network interfaces

More information: https://man7.org/linux/man-pages/man8/ip-link.8.html.

- Show information about all network interfaces: ip link

- Show information about a specific network interface: ip link show ethN

- Bring a network interface up or down: ip link set ethN up|down

- Give a meaningful name to a network interface: ip link set ethN alias "LAN Interface"

- Change the MAC address of a network interface: ip link set ethN address ff:ff:ff:ff:ff:ff

- Change the MTU size for a network interface to use jumbo frames: ip link set ethN mtu 9000

isoinfo
Utility programs for dumping and verifying ISO disk images.

- List all the files included in an ISO image: isoinfo -f -i path/to/image.iso

- E[x]tract a specific file from an ISO image and send it out stdout: isoinfo -i path/to/image.iso -x /PATH/TO/FILE/INSIDE/ISO.EXT

- Show header information for an ISO disk image: isoinfo -d -i path/to/image.iso

isosize
Display the size of an ISO file

More information: https://manned.org/isosize.

- Display the size of an ISO file: isosize path/to/file.iso

- Display the block count and block size of an ISO file: isosize --sectors path/to/file.iso

- Display the size of an ISO file divided by a given number (only usable when --sectors is not given): isosize --divisor=number path/to/file.iso

kdocker
Easily dock applications to the system tray

More information: https://github.com/user-none/KDocker.

- Display a cursor to send a window to the system tray when pressing the left mouse button (press any other mouse button to cancel): kdocker

- Open an application and send it to the system tray: kdocker application

- Send focused window to the system tray: kdocker -f

- Display a cursor to send a window to the system tray with a custom icon when pressing the left mouse button: kdocker -i /path/to/icon

- Open an application, send it to the system tray and if focus is lost, minimize it: kdocker -l application

- Print version: kdocker --version

konsole
Konsole: The KDE terminal emulator

More information: https://konsole.kde.org.

- Open a new Konsole in a specific directory: konsole --workdir path/to/directory

- Run a specific command and do not close the window after it exits: konsole --noclose -e command

- Open a new tab: konsole --new-tab

- Open a Konsole in the background and bring to the front when Ctrl+Shift+F12 (by default) is pressed: konsole --background-mode

- Open a Konsole with the emergency FALLBACK profile: konsole --fallback-profile

lastlog
Show the most recent login of all users or of a given user

More information: https://manned.org/lastlog.

- Display the most recent login of all users: lastlog

- Display lastlog record of the specified user: lastlog -u username

- Display records before 7 days ago: lastlog -b 7

- Display records

More recent than 3 days: lastlog -t 3

logsave
Save the output of a command in a logfile

More information: https://manned.org/logsave.

- Execute command with specified argument(s) and save its output to log file: logsave path/to/logfile command

- Take input from standard input and save it in a log file: logsave logfile -

- Append the output to a log file, instead of replacing its current contents: logsave -a logfile command

- Show verbose output: logsave -v logfile command

losetup
Set up and control loop devices

More information: https://manned.org/losetup.

- List loop devices with detailed info: losetup -a

- Attach a file to a given loop device: sudo losetup /dev/loop /path/to/file

- Attach a file to a new free loop device and scan the device for partitions: sudo losetup --show --partscan -f /path/to/file

- Attach a file to a read-only loop device: sudo losetup --read-only /dev/loop /path/to/file

- Detach all loop devices: sudo losetup -D

- Detach a given loop device: sudo losetup -d /dev/loop

lrunzip
A large file decompression program.See also lrzip, lrztar, lrzuntar

More information: https://manned.org/lrunzip.

- Decompress a file: lrunzip filename.lrz

- Decompress a file using a specific number of processor threads: lrunzip -p 8 filename.lrz

- Decompress a file and silently overwrite files if they exist: lrunzip -f filename.lrz

- Keep broken or damaged files instead of deleting them when decompressing: lrunzip -K filename.lrz

- Specify output file name and/or path: lrunzip -o outfilename filename.lrz

lslocks
List local system locks

More information: https://manned.org/lslocks.

- List all local system locks: lslocks

- List locks with defined column headers: lslocks --output PID,COMMAND,PATH

- List locks producing a raw output (no columns), and without column headers: lslocks --raw --noheadings

- List locks by PID input: lslocks --pid PID

- List locks with JSON output to stdout: lslocks --json

makepkg
Creates a package installable with the pacman package manager.Runs the commands from a PKGBUILD file to build the package

More information: https://wiki.archlinux.org/index.php/Makepkg.

- Make a package (run in the same directory as a PKGBUILD): makepkg

- Make a package and install its dependencies: makepkg --syncdeps

- Same as above, but install the package with pacman when done: makepkg --syncdeps --install

- Make a package, but skip source checksums: makepkg --skipchecksums

manpath
Determine the search path for manual pages

More information: https://manned.org/manpath.

- Display the search path used to find man pages: manpath

- Show the entire global manpath: manpath --global

mcookie
Generates random 128-bit hexadecimal numbers

More information: https://manned.org/mcookie.

- Generate a random number: mcookie

- Generate a random number, using the contents of a file as a seed for the randomness: mcookie --file path/to/file

- Generate a random number, using a specific number of bytes from a file as a seed for the randomness: mcookie --file path/to/file --max-size number_of_bytes

- Print the details of the randomness used, such as the origin and seed for each source: mcookie --verbose

mkisofs
Create ISO files from directories.Also aliased as genisoimage

More information: https://manned.org/mkisofs.

- Create an ISO from a directory: mkisofs -o filename.iso path/to/source_directory

- Set the disc label when creating an ISO: mkisofs -o filename.iso -V "label_name" path/to/source_directory

modinfo
Extract information about a Linux kernel module

More information: https://manned.org/modinfo.

- List all attributes of a kernel module: modinfo kernel_module

- List the specified attribute only: modinfo -F author|description|license|parm|filename kernel_module

mullvad
CLI client for Mullvad VPN

More information: https://mullvad.net/.

- Link your mullvad account with the specified account number: mullvad account set account_number

- Enable LAN access while VPN is on: mullvad lan set allow

- Establish the VPN tunnel: mullvad connect

- Check status of VPN tunnel: mullvad status

nethogs
Monitor bandwidth usage per process

More information: https://github.com/raboof/nethogs.

- Start nethogs as root (default device is eth0): sudo nethogs

- Monitor bandwidth on specific device: sudo nethogs device

- Monitor bandwidth on multiple devices: sudo nethogs device1 device2

- Specify refresh rate: sudo nethogs -t seconds

netstat
Displays network-related information such as open connections, open socket ports, etc

More information: https://man7.org/linux/man-pages/man8/netstat.8.html.

- List all ports: netstat --all

- List all listening ports: netstat --listening

- List listening TCP ports: netstat --tcp

- Display PID and program names: netstat --program

- List information continuously: netstat --continuous

- List routes and do not resolve IP addresses to hostnames: netstat --route --numeric

- List listening TCP and UDP ports (+ user and process if you're root): netstat --listening --program --numeric --tcp --udp --extend

nologin
Alternative shell that prevents a user from logging in.

- Set a user's login shell to nologin to prevent the user from logging in: chsh -s user nologin

- Customize message for users with the login shell of nologin: echo "declined_login_message" > /etc/nologin.txt

nordvpn
Command-line interface for NordVPN

More information: https://nordvpn.com/download/linux/.

- Interactively log into a NordVPN account: nordvpn login

- Display the connection status: nordvpn status

- Connect to the nearest NordVPN server: nordvpn connect

- List all available countries: nordvpn countries

- Connect to a NordVPN server in a specific country: nordvpn connect Germany

nsenter
Run a new command in a running process' namespace.Particularly useful for docker images or chroot jails

More information: https://github.com/jpetazzo/nsenter/.

- Run command in existing processes network namespace: nsenter -t pid -n command command_arguments

- Run a new command in an existing processes ps-table namespace: nsenter -t pid -p command command_arguments

- Run command in existing processes IPC namespace: nsenter -t pid -i command command_arguments

ntfsfix
Fix common problems on an NTFS partition.

- Fix a given NTFS partition: sudo ntfsfix /dev/sdXN

numactl
Control NUMA policy for processes or shared memory

More information: https://man7.org/linux/man-pages/man8/numactl.8.html.

- Run a command on node 0 with memory allocated on node 0 and 1: numactl --cpunodebind=0 --membind=0,1 -- command command_arguments

- Run a command on CPUs (cores) 0-4 and 8-12 of the current cpuset: numactl --physcpubind=+0-4,8-12 -- command command_arguments

- Run a command with its memory interleaved on all CPUs: numactl --interleave=all -- command command_arguments

pdfgrep
Search text in PDF files.

- Find lines that match pattern in a PDF: pdfgrep pattern file.pdf

- Include file name and page number for each matched line: pdfgrep --with-filename --page-number pattern file.pdf

- Do a case-insensitive search for lines that begin with "foo" and return the first 3 matches: pdfgrep --max-count 3 --ignore-case '^foo' file.pdf

- Find pattern in files with a .pdf extension in the current directory recursively: pdfgrep --recursive pattern

- Find pattern on files that match a specific glob in the current directory recursively: pdfgrep --recursive --include '*book.pdf' pattern

pidstat
Show system resource usage, including CPU, memory, IO etc.

- Show CPU statistics at a 2 second interval for 10 times: pidstat 2 10

- Show page faults and memory utilization: pidstat -r

- Show input/output usage per process id: pidstat -d

- Show information on a specific PID: pidstat -p PID

- Show memory statistics for all processes whose command name include "fox" or "bird": pidstat -C "fox|bird" -r -p ALL

pkgfile
Tool for searching files from packages in the official repositories on arch-based systems.See also pacman files, describing the usage of pacman --files

More information: https://man.archlinux.org/man/extra/pkgfile/pkgfile.1.

- Synchronize the pkgfile database: sudo pkgfile --update

- Search for a package that owns a specific file: pkgfile filename

- List all files provided by a package: pkgfile --list package_name

- List only files provided by a package located within the bin or sbin directory: pkgfile --list --binaries package_name

- Search for a package that owns a specific file using case-insensitive matching: pkgfile --ignorecase filename

- Search for a package that owns a specific file in the bin or sbin directory: pkgfile --binaries filename

- Search for a package that owns a specific file, displaying the package version: pkgfile --verbose filename

- Search for a package that owns a specific file in a specific repository: pkgfile --repo repository_name filename

pkginfo
Query the package database on a CRUX system.

- List installed packages and their versions: pkginfo -i

- List files owned by a package: pkginfo -l package_name

- List the owner(s) of files matching a pattern: pkginfo -o pattern

- Print the footprint of a file: pkginfo -f file

postfix
Postfix mail transfer agent (MTA) control program.See also dovecot, a mail delivery agent (MDA) that integrates with Postfix

More information: http://www.postfix.org.

- Check the configuration: sudo postfix check

- Check the status of the Postfix daemon: sudo postfix status

- Start Postfix: sudo postfix start

- Gracefully stop Postfix: sudo postfix stop

- Flush the mail queue: sudo postfix flush

- Reload the configuration files: sudo postfix reload rename Rename multiple files.NOTE: this page refers to the command from the prename Fedora package.

- Rename files using a Perl Common Regular Expression (substitute 'foo' with 'bar' wherever found): rename 's/foo/bar/' *

- Dry-run - display which renames would occur without performing them: rename -n 's/foo/bar/' *

- Force renaming even if the operation would remove existing destination files: rename -f 's/foo/bar/' *

- Convert filenames to lower case (use -f in case-insensitive filesystems to prevent "already exists" errors): rename 'y/A-Z/a-z/' *

- Replace whitespace with underscores: rename 's/\s+/_/g' *

prt-get
The CRUX package manager.

- Install a package: prt-get install package_name

- Install a package with dependency handling: prt-get depinst package_name

- Update a package manually: prt-get upgrade package_name

- Remove a package: prt-get remove package_name

- Upgrade the system from the local ports tree: prt-get sysup

- Search the ports tree: prt-get search package_name

- Search for a file in a package: prt-get fsearch file

qjoypad
Translate input from gamepads or joysticks into keyboard strokes or mouse actions

More information: http://qjoypad.sourceforge.net/.

- Start QJoyPad: qjoypad

- Start QJoyPad and look for devices in a specific directory: qjoypad --device=path/to/directory

- Start QJoyPad but don't show a system tray icon: qjoypad --notray

- Start QJoyPad and force the window manager to use a system tray icon: qjoypad --force-tray

- Force a running instance of QJoyPad to update its list of devices and layouts: qjoypad --update

- Load the given layout in an already running instance of QJoyPad, or start QJoyPad using the given layout: qjoypad "layout"

readelf
Displays information about ELF files

More information: http://man7.org/linux/man-pages/man1/readelf.1.html.

- Display all information about the ELF file: readelf -all path/to/binary

- Display all the headers present in the ELF file: readelf --headers path/to/binary

- Display the entries in symbol table section of the ELF file, if it has one: readelf --symbols path/to/binary

- Display the information contained in the ELF header at the start of the file: readelf --file-header path/to/binary

rpcinfo
Makes an RPC call to an RPC server and reports what it finds.

- Show full table of all RPC services registered on localhost: rpcinfo

- Show concise table of all RPC services registered on localhost: rpcinfo -s localhost

- Display table of statistics of rpcbind operations on localhost: rpcinfo -m

- Display list of entries of given service name (mountd) and version number (2) on a remote nfs share: rpcinfo -l remote_nfs_server_ip mountd 2

- Delete the registration for version 1 of the mountd service for all transports: rpcinfo -d mountd 1

rtcwake
Enter a system sleep state until specified wakeup time relative to your BIOS clock.

- Show whether an alarm is set or not: sudo rtcwake -m show -v

- Suspend to RAM and wakeup after 10 seconds: sudo rtcwake -m mem -s 10

- Suspend to disk (higher power saving) and wakeup 15 minutes later: sudo rtcwake -m disk --date +15min

- Freeze the system

More efficient than suspend-to-RAM but version 3.9 or newer of the Linux kernel is required) and wakeup at a given date and time:  sudo rtcwake -m freeze --date YYYYMMDDhhmm

- Disable a previously set alarm: sudo rtcwake -m disable

- Perform a dry run to wakeup the computer at a given time. (Press Ctrl + C to abort): sudo rtcwake -m on --date hh:ss

runuser
Run commands as a specific user and group without asking for password (needs root privileges).

- Run command as a different user: runuser user -c 'command'

- Run command as a different user and group: runuser user -g group -c 'command'

- Start a login shell as a specific user: runuser user -l

- Specify a shell for running instead of the default shell (also works for login): runuser user -s /bin/sh

- Preserve the entire environment of root (only if --login is not specified): runuser user --preserve-environment -c 'command'

scancel
Cancel a Slurm job

More information: https://slurm.schedmd.com/scancel.html.

- Cancel a job using its ID: scancel job_id

- Cancel all jobs from a user: scancel user_name

schroot
Run command or start an interactive shell with a different root directory.

More customizable than chroot

More information: https://wiki.debian.org/Schroot.

- Run a command in a specific chroot: schroot --chroot chroot command

- Run a command with options in a specific chroot: schroot --chroot chroot command -- command_options

- Run a command in all available chroots: schroot --all command

- Start an interactive shell within a specific chroot as a specific user: schroot --chroot chroot --user user

- List available chroots: schroot --list

sensors
Report sensors information.

- Show the current readings of all sensor chips: sensors

- Show temperatures in degrees Fahrenheit: sensors --fahrenheit

service
Manage services by running init scripts.The full script path should be omitted (/etc/init.d/ is assumed).

- List the name and status of all services: service --status-all

- Start/Stop/Restart/Reload service (start/stop should always be available): service service_name start|stop|restart|reload

- Do a full restart (runs script twice with start and stop): service service_name --full-restart

- Show the current status of a service: service service_name status

setfacl
Set file access control lists (ACL).

- Modify ACL of a file for user with read and write access: setfacl -m u:username:rw file

- Modify default ACL of a file for all users: setfacl -d -m u::rw file

- Remove ACL of a file for a user: setfacl -x u:username file

- Remove all ACL entries of a file: setfacl -b file

snapper
Filesystem snapshot management tool

More information: http://snapper.io/manpages/snapper.html.

- List snapshot configs: snapper list-configs

- Create snapper config: snapper -c config create-config path/to/directory

- Create a snapshot with a description: snapper -c config create -d "snapshot_description"

- List snapshots for a config: snapper -c config list

- Delete a snapshot: snapper -c config delete snapshot_number

- Delete a range of snapshots: snapper -c config delete snapshot_X-snapshot_Y

sreport
Generate reports on jobs, users, and clusters from accounting data

More information: https://slurm.schedmd.com/sreport.html.

- Show pipe delimited cluster utilization data: sreport --parsable cluster utilization

- Show number of jobs run: sreport job sizes printjobcount

- Show users with the highest CPU time use: sreport user topuser

ssh-add
Manage loaded ssh keys in the ssh-agent.Ensure that ssh-agent is up and running for the keys to be loaded in it.

- Add the default ssh keys in ~/.ssh to the ssh-agent: ssh-add

- Add a specific key to the ssh-agent: ssh-add path/to/private_key

- List fingerprints of currently loaded keys: ssh-add -l

- Delete a key from the ssh-agent: ssh-add -d path/to/private_key

- Delete all currently loaded keys from the ssh-agent: ssh-add -D

swapoff
Disables device or file for swapping.

- Disable a given swap partition: swapoff /dev/sdb7

- Disable a given swap file: swapoff path/to/file

- Disable all swap areas: swapoff -a

- Disable swap by label of a device or file: swapoff -L swap1

synopkg
Package management utility for Synology DiskStation Manager

More information: https://www.synology.com/dsm.

- List the names of installed packages: synopkg list --name

- List packages which depend on a specific package: synopkg list --depend-on package

- Start/Stop a package: sudo synopkg start|stop package

- Print the status of a package: synopkg status package

- Uninstall a package: sudo synopkg uninstall package

- Check if updates are available for a package: synopkg checkupdate package

- Upgrade all packages to the latest version: sudo synopkg upgradeall

- Install a package from a synopkg file: sudo synopkg install path/to/package.spk

taskset
Get or set a process' CPU affinity or start a new process with a defined CPU affinity.

- Get a running process' CPU affinity by PID: taskset --pid --cpu-list pid

- Set a running process' CPU affinity by PID: taskset --pid --cpu-list cpu_id pid

- Start a new process with affinity for a single CPU: taskset --cpu-list cpu_id command

- Start a new process with affinity for multiple non-sequential CPUs: taskset --cpu-list cpu_id_1 cpu_id_2 cpu_id_3

- Start a new process with affinity for CPUs 1 through 4: taskset --cpu-list cpu_id_1,cpu_id_4

tcpflow
Capture TCP traffic for debugging and analysis.

- Show all data on the given interface and port: tcpflow -c -i eth0 port 80

tcpkill
Kills specified in-progress TCP connections.

- Kill in-progress connections at a specified interface, host and port: tcpkill -i eth1 host 192.95.4.27 and port 2266

tune2fs
Adjust parameters of an ext2, ext3 or ext4 filesystem.May be used on mounted filesystems

More information: https://manned.org/tune2fs.

- Set the max number of counts before a filesystem is checked to 2: tune2fs -c 2 /dev/sdXN

- Set the filesystem label to MY_LABEL: tune2fs -L 'MY_LABEL' /dev/sdXN

- Enable discard and user-specified extended attributes for a filesystem: tune2fs -o discard,user_xattr /dev/sdXN

- Enable journaling for a filesystem: tune2fs -o^nobarrier /dev/sdXN

useradd
Create a new user

More information: https://manned.org/useradd.

- Create new user: useradd name

- Create new user with a default home directory: useradd --create-home name

- Create new user with specified shell: useradd --shell path/to/shell name

- Create new user belonging to additional groups (mind the lack of whitespace): useradd --groups group1,group2 name

- Create new system user without a home directory: useradd --no-create-home --system name

userdel
Remove a user account or remove a user from a group.Note: all commands must be executed as root

More information: https://manned.org/userdel.

- Remove a user: userdel name

- Remove a user along with their home directory and mail spool: userdel --remove name

- Remove a user from a group: userdel name group

- Remove a user in other root directory: userdel --root path/to/other/root name

usermod
Modifies a user account

More information: https://manned.org/usermod.

- Change a user's name: usermod -l newname user

- Add user to supplementary groups (mind the whitespace): usermod -a -G group1,group2 user

- Create a new home directory for a user and move their files to it: usermod -m -d path/to/home user

uuidgen
Generate unique identifiers (UUIDs).See also uuid

More information: https://manned.org/uuidgen.

- Create a random UUIDv4: uuidgen --random

- Create a UUIDv1 based on the current time: uuidgen --time

- Create a UUIDv5 of the name with a specified namespace prefix: uuidgen --sha1 --namespace @dns|@url|@oid|@x500 --name object_name

vnstati
PNG image output support for vnStat

More information: https://manned.org/vnstati.

- Output a summary of the last 2: months, days, and all-time: vnstati --summary --iface network_interface --output path/to/output.png

- Output the 10 most traffic-intensive days of all time: vnstati --top10 --iface network_interface --output path/to/output.png

- Output monthly traffic statistics from the last 12 months: vnstati --months --iface network_interface --output path/to/output.png

- Output hourly traffic statistics from the last 24 hours: vnstati --hours --iface network_interface --output path/to/output.png

whereis
Locate the binary, source, and manual page files for a command.

- Locate binary, source and man pages for ssh: whereis ssh

- Locate binary and man pages for ls: whereis -bm ls

- Locate source of gcc and man pages for Git: whereis -s gcc -m git

- Locate binaries for gcc in /usr/bin/ only: whereis -b -B /usr/bin/ -f gcc

- Locate unusual binaries (those that have

More or less than one binary on the system):  whereis -u *

- Locate binaries that have unusual manual entries (binaries that have

More or less than one manual installed):  whereis -u -m *

wpa_cli
Add and configure wlan interfaces.

- Scan for available networks: wpa_cli scan

- Show scan results: wpa_cli scan_results

- Add a network: wpa_cli add_network number

- Set a network's SSID: wpa_cli set_network number ssid "SSID"

- Enable network: wpa_cli enable_network number

- Save config: wpa_cli save_config

xdotool
Command-line automation for X11.

- Retrieve the X-Windows window ID of the running Firefox window(s): xdotool search --onlyvisible --name firefox

- Click the right mouse button: xdotool click 3

- Get the ID of the currently active window: xdotool getactivewindow

- Focus on the window with ID of 12345: xdotool windowfocus --sync 12345

- Type a message, with a 500ms delay for each letter: xdotool type --delay 500 "Hello world"

- Press the enter key: xdotool key KP_Enter

xtrlock
Lock the X display until the user supplies their password.

- Lock the display and show a padlock instead of the cursor: xtrlock

- Display a blank screen as well as the padlock cursor: xtrlock -b

- Fork the xtrlock process and return immediately: xtrlock -f

zramctl
Setup and control zram devices.Use mkfs or mkswap to format zram devices to partitions.

- Check if zram is enabled: lsmod | grep -i zram

- Enable zram with a dynamic number of devices (use zramctl to configure devices further): sudo modprobe zram

- Enable zram with exactly 2 devices: sudo modprobe zram num_devices=2

- Find and initialise the next free zram device to a 2 GB virtual drive using LZ4 compression: sudo zramctl --find --size 2GB --algorithm lz4

- List currently initialised devices: zramctl