Skip to main content

User Manual

Installing the Entware repository on a USB drive

To install OpenWRT packages on Keenetic, you first need to prepare an external USB flash drive and install the Entware repository package system on it.

  1. Connect the flash drive to your PC and prepare its partitions. The disk must be formatted in the EXT file system for the OPKG package manager to work. We recommend using the modern and up-to-date journaled ext4 file system. Format the disk as shown in the article 'Using the ext4 file system on USB drives'.

  2. In your Keenetic router, install the required OPKG components. The primary and mandatory one is the 'Open Package support' component.

    opkg-usb-01-en.png
  3. Now, you need to install the Entware package system repository.

    Note

    For KN-1010/1011, KN-1810, KN-1910, KN-2310, KN-2610, use the mipsel archive for installation — EN_mipsel-installer.tar.gz

  4. In our example, we will install the mipsel archive.

    Plug the USB drive with the ext4 file system into the router's USB port. The drive should appear on the 'Applications' page under 'USB Devices'.

    opkg-usb-02-en.png

    Use a file manager to connect to the drive via the network (in Windows, you can use Explorer). In the router's settings, the SMB server application must be enabled in advance to access USB disks that you connect over the network.

    Create an install directory in the root of the disk partition where you put the file EN_mipsel-installer.tar.gz.

    opkg-usb-03-en.png
  5. Go to the OPKG page and select the ext4 drive you have prepared in the 'Drive' field.

    Click Save.

    opkg-usb-04-en.png
  6. Go to the Diagnostics page and open the router's System Log. You should see the following entries when installing Entware's package system:

    Dec 7 11:48:53 ndm Opkg::Manager: disk is set to: TOSHIBA:/.
    Dec 7 11:48:53 ndm Opkg::Manager: init script reset to default: /opt/etc/initrc.
    Dec 7 11:48:53 ndm Core::System::Configuration: saving (http/rci).
    Dec 7 11:48:53 kernel EXT4-fs (sda1): re-mounted. Opts: (null)
    Dec 7 11:48:53 ndm Opkg::Manager: /tmp/mnt/ee4d809f-d6ac-4f82-b5ef-d6940340ef39 mounted to /tmp/mnt/ee4d809f-d6ac-4f82-b5ef-d6940340ef39.
    Dec 7 11:48:53 ndm Opkg::Manager: /tmp/mnt/ee4d809f-d6ac-4f82-b5ef-d6940340ef39 mounted to /opt/.
    Dec 7 11:48:53 npkg inflating "EN_mipsel-installer.tar.gz".
    Dec 7 11:48:54 ndm Opkg::Manager: /tmp/mnt/ee4d809f-d6ac-4f82-b5ef-d6940340ef39 initialized.
    Dec 7 11:48:54 ndm Opkg::Manager: invalid initrc "/opt/etc/initrc": no such file or directory, trying /opt/etc/init.d/.
    Dec 7 11:48:54 ndm Opkg::Manager: /opt/etc/init.d/doinstall: [1/5] Starting "Entware" deployment...
    Dec 7 11:48:54 ndm Opkg::Manager: /opt/etc/init.d/doinstall: Partition is OK.
    Dec 7 11:48:54 ndm Opkg::Manager: /opt/etc/init.d/doinstall: Info: "ping google.com"...
    Dec 7 11:48:56 ndm Opkg::Manager: /opt/etc/init.d/doinstall: Info: "ping google.com" ..... OK.
    Dec 7 11:48:56 ndm Core::System::Configuration: configuration saved.
    Dec 7 11:48:57 ndm Opkg::Manager: /opt/etc/init.d/doinstall: Info: "ping bin.entware.net"...
    Dec 7 11:48:59 ndm Opkg::Manager: /opt/etc/init.d/doinstall: Info: "ping bin.entware.net" ..... OK.
    Dec 7 11:49:01 ndm Opkg::Manager: /opt/etc/init.d/doinstall: [2/5] Basic packages installation...
    Dec 7 11:49:01 ndm Opkg::Manager: /opt/etc/init.d/doinstall: Info: Installing "libgcc" package...
    Dec 7 11:49:02 ndm Opkg::Manager: /opt/etc/init.d/doinstall: Info: The "libgcc" package has been installed.
    Dec 7 11:49:03 ndm Opkg::Manager: /opt/etc/init.d/doinstall: Info: Installing "libc" package...
    Dec 7 11:49:07 ndm Opkg::Manager: /opt/etc/init.d/doinstall: Info: The "libc" package has been installed.
    Dec 7 11:49:08 ndm Opkg::Manager: /opt/etc/init.d/doinstall: Info: Installing "libpthread" package...
    Dec 7 11:49:09 ndm Opkg::Manager: /opt/etc/init.d/doinstall: Info: The "libpthread" package has been installed.
    Dec 7 11:49:10 ndm Opkg::Manager: /opt/etc/init.d/doinstall: Info: Installing "librt" package...
    Dec 7 11:49:12 ndm Opkg::Manager: /opt/etc/init.d/doinstall: Info: The "librt" package has been installed.
    Dec 7 11:49:13 ndm Opkg::Manager: /opt/etc/init.d/doinstall: Info: Installing "entware-release" package...
    Dec 7 11:49:14 ndm Opkg::Manager: /opt/etc/init.d/doinstall: Info: The "entware-release" package has been installed.
    Dec 7 11:49:15 ndm Opkg::Manager: /opt/etc/init.d/doinstall: Info: Installing "findutils" package...
    Dec 7 11:49:16 ndm Opkg::Manager: /opt/etc/init.d/doinstall: Info: The "findutils" package has been installed.
    Dec 7 11:49:17 ndm Opkg::Manager: /opt/etc/init.d/doinstall: Info: Installing "grep" package...
    Dec 7 11:49:19 ndm Opkg::Manager: /opt/etc/init.d/doinstall: Info: The "grep" package has been installed.
    Dec 7 11:49:20 ndm Opkg::Manager: /opt/etc/init.d/doinstall: Info: Installing "ldconfig" package...
    Dec 7 11:49:22 ndm Opkg::Manager: /opt/etc/init.d/doinstall: Info: The "ldconfig" package has been installed.
    Dec 7 11:49:23 ndm Opkg::Manager: /opt/etc/init.d/doinstall: Info: Installing "locales" package...
    Dec 7 11:49:25 ndm Opkg::Manager: /opt/etc/init.d/doinstall: Info: The "locales" package has been installed.
    Dec 7 11:49:26 ndm Opkg::Manager: /opt/etc/init.d/doinstall: Info: Installing "opkg" package...
    Dec 7 11:49:28 ndm Opkg::Manager: /opt/etc/init.d/doinstall: Info: The "opkg" package has been installed.
    Dec 7 11:49:29 ndm Opkg::Manager: /opt/etc/init.d/doinstall: Info: Installing "zoneinfo-asia" package...
    Dec 7 11:49:31 ndm Opkg::Manager: /opt/etc/init.d/doinstall: Info: The "zoneinfo-asia" package has been installed.
    Dec 7 11:49:32 ndm Opkg::Manager: /opt/etc/init.d/doinstall: Info: Installing "zoneinfo-europe" package...
    Dec 7 11:49:33 ndm Opkg::Manager: /opt/etc/init.d/doinstall: Info: The "zoneinfo-europe" package has been installed.
    Dec 7 11:49:34 ndm Opkg::Manager: /opt/etc/init.d/doinstall: Info: Installing "opt-ndmsv2" package...
    Dec 7 11:49:36 ndm Opkg::Manager: /opt/etc/init.d/doinstall: Info: The "opt-ndmsv2" package has been installed.
    Dec 7 11:49:37 ndm Opkg::Manager: /opt/etc/init.d/doinstall: Info: Installing "dropbear" package...
    Dec 7 11:49:39 ndm Opkg::Manager: /opt/etc/init.d/doinstall: Info: The "dropbear" package has been installed.
    Dec 7 11:49:40 ndm Opkg::Manager: /opt/etc/init.d/doinstall: Info: Installing "poorbox" package...
    Dec 7 11:49:42 ndm Opkg::Manager: /opt/etc/init.d/doinstall: Info: The "poorbox" package has been installed.
    Dec 7 11:49:43 ndm Opkg::Manager: /opt/etc/init.d/doinstall: Info: Installing "busybox" package...
    Dec 7 11:49:49 ndm Opkg::Manager: /opt/etc/init.d/doinstall: Info: The "busybox" package has been installed.
    Dec 7 11:49:50 ndm Opkg::Manager: /opt/etc/init.d/doinstall: Info: All basic packages were installed...
    Dec 7 11:49:50 ndm Opkg::Manager: /opt/etc/init.d/doinstall: [3/5] Generating SSH keys...
    Dec 7 11:49:50 ndm Opkg::Manager: /opt/etc/init.d/doinstall: Info: Generating "rsa" key...
    Dec 7 11:49:58 ndm Opkg::Manager: /opt/etc/init.d/doinstall: Info: "rsa" key was created.
    Dec 7 11:49:59 ndm Opkg::Manager: /opt/etc/init.d/doinstall: Info: Generating "ecdsa" key...
    Dec 7 11:49:59 ndm Opkg::Manager: /opt/etc/init.d/doinstall: Info: "ecdsa" key was created.
    Dec 7 11:50:00 ndm Opkg::Manager: /opt/etc/init.d/doinstall: Info: Generating "ed25519" key...
    Dec 7 11:50:00 ndm Opkg::Manager: /opt/etc/init.d/doinstall: Info: "ed25519" key was created.
    Dec 7 11:50:02 ndm Opkg::Manager: /opt/etc/init.d/doinstall: [4/5] Setting timezone, script initrc and starting "dropbear"...
    Dec 7 11:50:02 dropbear[16931] Running in background
    Dec 7 11:50:02 ndm Opkg::Manager: configured init script: "/opt/etc/init.d/rc.unslung".
    Dec 7 11:50:02 ndm Core::System::Configuration: saving (http/rci).
    Dec 7 11:50:02 ndm Opkg::Manager: /opt/etc/init.d/doinstall: Log on to start an SSH session using login - root, password - keenetic.
    Dec 7 11:50:02 ndm Opkg::Manager: /opt/etc/init.d/doinstall: [5/5] "Entware" installed!
    Dec 7 11:50:05 ndm Core::System::Configuration: configuration saved.
  7. Download the Putty terminal program for SSH and Telnet.

  8. Start Putty, select the SSH connection type, type the router's IP address in the Home segment (192.168.1.1 by default), specify port 222 and click Open.

    opkg-usb-05-en.png

    See the 'Terminal program for Windows' article for more information on working with Putty.

    Important

    Port 222 is used if the 'SSH server' component is installed in the router. If it is not installed, use port 22 to connect to Entware.

    Confirm adding the security key to the Putty cache to establish the connection.

    opkg-usb-06-en.png

    When booting up, confirm login by pressing Yes.

    Then go to the router settings using the Secure Shell (SSH) protocol.

    To log in, enter:

    login as: root
    root@192.168.111.1's password: keenetic
    opkg-usb-07-en.png

    You can set your password. To do this, enter the passwd command:

    New password: enter your password

    Retype password: confirm the password

    ~ # passwd
    Changing password for root
    New password:
    Bad password: too weak
    Retype password:
    passwd: password for root changed by root
    opkg-usb-08-en.png
  9. After successful authorization, you will come to the BusyBox v1.27.2 () built-in shell (ash). Now you need to update the opkg package by entering the command opkg update:

    / # opkg update
    Downloading http://bin.entware.net/mipselsf-k3.4/Packages.gz
    Updated list of available packages in /opt/var/opkg-lists/entware
    Downloading http://bin.entware.net/mipselsf-k3.4/keenetic/Packages.gz
    Updated list of available packages in /opt/var/opkg-lists/keendev
    opkg-usb-09-en.png

    Now you can install the necessary OpenWRT package.

    For example, to install the Midnight Commander file manager, run the command:

    opkg install mc

Tip

You can find the list of packages:

An additional list of packages for Keenetic can be found here:

Important

Our technical support does not provide consulting on configuring and installing external packages. Questions about the router's operations with open packages can be asked on our Community Forum: forum.keenetic.net.

Here is an example of installing a package in our Help Center: 'Installation and configuration of the rTorrent OPKG package'.