nmcli: command not found

The nmcli tool is the most fundamental of the NetworkManager interfaces. It contains many subcommands that enable you to view and configure network information. Because many network servers will not include a GUI, it is important to be comfortable with nmcli to manage network settings.

The following are some example of subcommands you can use with nmcli.

Subcommand Used To
general status View a summary of network connectivity data. View identification information for each NIC. Enable the specified NIC.
connection show Disable the specified NIC.
con up {device ID} Enter interactive mode to configure the specified NIC.
con down {device ID} Watch for events sent by the kernel or by a udev rule.
con edit {device ID} Simulate a udev event running for a device, with results on output.
device status Display the current status of each NIC.

Syntax

The syntax of the nmcli command is:

# nmcli [options] [subcommand] [arguments]

If you encounter the below error while running the nmcli command:

nmcli: command not found

you may try installing the below package as per your choice of distribution:

OS Distribution Command
Debian apt-get install network-manager
Ubuntu apt-get install network-manager
Alpine apk add networkmanager
Arch Linux pacman -S networkmanager
Kali Linux apt-get install network-manager
Fedora dnf install NetworkManager-1
Raspbian apt-get install network-manager

nmcli Command Examples

1. Run an `nmcli` subcommand:

# nmcli agent|connection|device|general|help|monitor|networking|radio command_options

2. Display the current version of NetworkManager:

# nmcli --version

3. Display help:

# nmcli --help

4. Display help for a subcommand:

# nmcli subcommand --help

5. Display the list of all connections using nmcli command as follows:

# nmcli con show

6. Display only the active connections using nmcli command as follows:

# nmcli con show --active

7. Display the details of a connection by specifying the connection ID (NAME) using nmcli command as follows:

# nmcli con show "enp0s3"

8. Display the device (interface) status as connected or disconnected using nmcli command as follows:

# nmcli dev status

9. Display the device details using nmcli command as follows:

# nmcli dev show enp0s3

10. Turn off auto connect for a connection profile as shown in command line here:

# nmcli con mod "static" connection.autoconnect no

11. Specify a DNS server using nmcli con mod command as shown here:

# nmcli con mod "static" ipv4.dns "1.1.1.1"

12. We can further add more values to a key by using the + or – symbol in front of the argument. We can also add another DNS server using nmcli con mod command as shown here:

# nmcli con mod "static" +ipv4.dns "8.8.8.8"

13. We can change the static IP address and gateway for a connection profile as shown here:

# nmcli con mod  "static"  ipv4.address  "50.50.50.50/24" ipv4.gateway

14. We can assign a secondary IP address to the same interface without a gateway in an existing profile as shown here:

# nmcli con mod "static" +ipv4.addresses "70.70.70.100/16"

15. To activate the changes, the connection profile needs to be activated using up with nmcli con command as shown here:

# nmcli con up "static"

16. Delete a connection profile using nmcli del command as shown here:

# nmcli del "static"

17. Disable all managed interfaces using nmcli command as shown here:

# nmcli net off

18. Bring down an interface by temporarily disconnecting the device as shown here:

# nmcli dev dis enp0s8

19. Bring up an interface by connecting the device as shown here:

# nmcli dev con enp0s8
Related Post