• ubuntu14.04安装tun/tap网络设备


    14.04的系统默认是没有tun设备的,所以需要通过在内核中编译时勾选此设备。接下来分步来介绍如何安装tun设备。

    一、更新ubuntu桌面版源:

    sudo gedit /etc/apt/sources.list
    
    deb http://mirrors.yun-idc.com/ubuntu/ trusty main restricted universe multiverse 
    deb http://mirrors.yun-idc.com/ubuntu/ trusty-security main restricted universe multiverse 
    deb http://mirrors.yun-idc.com/ubuntu/ trusty-updates main restricted universe multiverse 
    deb http://mirrors.yun-idc.com/ubuntu/ trusty-proposed main restricted universe multiverse 
    deb http://mirrors.yun-idc.com/ubuntu/ trusty-backports main restricted universe multiverse 
    deb-src http://mirrors.yun-idc.com/ubuntu/ trusty main restricted universe multiverse 
    deb-src http://mirrors.yun-idc.com/ubuntu/ trusty-security main restricted universe multiverse 
    deb-src http://mirrors.yun-idc.com/ubuntu/ trusty-updates main restricted universe multiverse 
    deb-src http://mirrors.yun-idc.com/ubuntu/ trusty-proposed main restricted universe multiverse 
    deb-src http://mirrors.yun-idc.com/ubuntu/ trusty-backports main restricted universe multiverse
    
    sudo apt-get update

    二、编译内核源码(保证你的虚拟机存储够大,本文的虚拟机分配80G):

    1、编译前准备,安装必要依赖:

    apt-get install libssl-dev libncurses5-dev
    

    2、通过如下链接下载内核版本:

    https://www.kernel.org/pub/linux/kernel/

    3、将下载好的内核linux-4.12.tar.xz移动到/usr/src/目录下并解压(本文下载的内核版本为4.12):

    xz -d linux-4.12.tar.xz
    tar -xvf linux-4.12.tar
    

    4、内核裁剪(即将tun编译成模块),如下分三步骤,Device Drivers ---->Network Device Support----->Universal TUN/TAP device driver support:

    make menuconfig

     图 1

    图 2

    图 3

    看到图3时,Universal TUN/TAP device driver support选项为<*>,此时按键盘‘m’键,选中此选项然后保存退出。

    5、编译内核

    make -j2
    

    此时make指令分别执行:make bzImage 和 make modules。内核与模块都已经编译好。此指令会生成生成相应内核版本的内核模块和vmlinuz,initrd.img,Symtem.map文件。

    6、安装内核模块

    make modules_install

    指令执行完会在/lib/modules/目录下生成对应版本的内核模块。

    图 4

    7、安装内核

    make install
    

    此指令是把原先make -j2产生的System.map, vmlinux,config,initrd.img文件拷贝到/boot/目录下。

    8、重启即可完成新内核的安装

    图 5

    三、向内核加载tun模块的

    modprobe tun
    lsmod | grep tun

    图 6

    四、过程错误汇总

    1、linux 内核编译时出现scripts/sign-file.c:23:30: fatal error: openssl/opensslv.h错误的解决办法,安装libssl-dev

    apt-get install libssl-dev

    2、fatal error: curses.h: No such file or directory

    apt-get install libncurses5-dev
    

    五、总结

    至此tun模块已加载在ubuntu14.04的内核中,前面做的工作过程中报出了一些问题,本文只提供正确的执行步骤。

  • 相关阅读:
    根据对象中某个元素进行排序
    Bootstrap 弹出框(Popover)插件
    echarts+bmap 去掉地图左下角的logo
    get提交参数中存在空格
    long类型的转换为正常时间格式遇到的问题
    jQuery validate使用过程中遇到的问题
    问题 G: 最长公共子串问题
    1567. 乘积为正数的最长子数组长度(dp)
    C. Parsa's Humongous Tree(树形dp)
    1558. 得到目标数组的最少函数调用次数
  • 原文地址:https://www.cnblogs.com/grglym/p/7891253.html
Copyright © 2020-2023  润新知