Add tun device to LXC Proxmox

  • administrators

    Add tun device to LXC

    Shutdown container:

    Where 100 is the container ID

    pct shutdown 100

    Move into your container config file:

    vi /etc/pve/lxc/100.conf

    Add the following to the end of the file:

    Type lthe letter i to edit in vi


    Add the following into the file:

    lxc.hook.autodev: /var/lib/lxc/100/tuntap
    lxc.cgroup.devices.allow = c 10:200 rwm

    Save changes and exit:

    Tap esc key to leave edit mode:

    Then,Write andQuit saving the changes


    Create the tun device:

    vi /var/lib/lxc/100/tuntap

    Enter the following into the new file:

    cd ${LXC_ROOTFS_MOUNT}/dev
    mkdir net
    mknod net/tun c 10 200
    chmod 0666 net/tun

    Save and quit

    You are good to restart the container.

    Type :

    ip a

    To view the devices, remembering the tun device will not be available until you start a script such as openvpn. Or manually start the device for whatever reason.


  • Make ISO from DVD

    In this case I had an OS install disk which was required to be on a virtual node with no optical drive, so I needed to transfer an image to the server to create a VM

    Find out which device the DVD is:



    NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 465.8G 0 disk ├─sda1 8:1 0 1G 0 part /boot └─sda2 8:2 0 464.8G 0 part ├─centos-root 253:0 0 50G 0 lvm / ├─centos-swap 253:1 0 11.8G 0 lvm [SWAP] └─centos-home 253:2 0 403G 0 lvm /home sdb 8:16 1 14.5G 0 disk /mnt sr0 11:0 1 4.1G 0 rom /run/media/rick/CCSA_X64FRE_EN-US_DV5

    Therefore /dev/sr0 is the location , or disk to be made into an ISO

    I prefer simplicity, and sometimes deal with the fallout after the fact, however Ive repeated this countless times with success.

    dd if=/dev/sr0 of=win10.iso

    Where if=Input file and of=output file

    I chill out and do something else while the image is being copied/created, and the final output:

    8555456+0 records in 8555456+0 records out 4380393472 bytes (4.4 GB) copied, 331.937 s, 13.2 MB/s


    read more
  • Recreate postrgresql database template encode to ASCII

    UPDATE pg_database SET datistemplate = FALSE WHERE datname = 'template1';

    Now we can drop it:

    DROP DATABASE template1;

    Create database from template0, with a new default encoding:

    CREATE DATABASE template1 WITH TEMPLATE = template0 ENCODING = 'UNICODE'; UPDATE pg_database SET datistemplate = TRUE WHERE datname = 'template1'; \c template1 VACUUM FREEZE;

    read more