制作基于 grub 的 linux liveCD

目录

1. 简介
2. 工作环境以及工具3. 安装 grub, 创建 menu.lst, 安装 kernel
4. 创建 initrd.img
5. 复制需要的命令及其库文件
6. 创建/复制一些配置文件, 复制一些系统脚本
7. 这就是我们所要做的一切了
附录 I. Kernel config



1. 简介

一个 linux 系统是由内核, 程序以及程序所依赖的库组成的. 本文介绍一种直接从现有系统里复制所需的文件来制作一个 linux livecd 的方法.

基本的步骤是:

  • 计算机启动时需要 boot loader, 于是我们会先安装 grub;
  • grub 会加载内核, 所以我们会复制一个内核;
  • 这时 linux 应该已经可以运行了, 但并不友好(实际上根本没有人机界面). 我们需要最终把控制权交给 bash, 所以我们会复制 bash 及其他的程序和他们所依赖的库文件;
  • 当然, 还需要调整一些配置文件.

本文标识

需要执行的命令
- 可以直接复制到终端执行
格式化提示
或文件内容



2. 工作环境以及工具

2.1 系统

系统是 lfs-6.3

当然也可以使用其它系统, 基本原理是一样的, 只需要作微调

2.2 工作目录及文件

/livecd/             => 所有工作将在这里完成
/livecd/iso/ => livecd 的文件系统
/livecd/initrd/ => initrd.img 将加载到这个目录
/livecd/livecd.iso => 这是我们的成品
/livecd/lddfiles.dat => 我们需要用到的内部文件列表
/livecd/mkiso => 用来制作 iso 文件的 bash 脚本
/livecd/ldlib.pl => 用来提取库文件的脚本
mkdir -p /livecd/iso
mkdir -p /livecd/initrd

2.3 软件包

需要cdrtools支持

2.4 一些为方便操作而准备的脚本

  • /livecd/mkiso

    这个脚本完成卸载 initrd.img => 生成 livecd.iso => 上传 livecd.iso 以便测试.

    增加上传这个步骤是考虑到每前进一步都可以生成 iso, 方便测试, 看看进展.

    cat > /livecd/mkiso << EOF
    #!/bin/sh
    cd /livecd/
    #umount /livecd/initrd.img
    umount initrd
    #compress initrd.img 到 /livecd/iso/boot/initrd.img
    gzip -9 -c initrd.img > iso/boot/initrd.img
    #create livecd.iso
    mkisofs -R \
    -b boot/grub/stage2_eltorito \
    -no-emul-boot \
    -boot-load-size 4 \
    -boot-info-table \
    -o /livecd/livecd.iso \
    /livecd/iso
    #upload livecd.iso
    ftp 10.25.129.157
    #mount /livecd/initrd.img
    mount -o loop initrd.img initrd
    EOF
    chmod +x /livecd/mkiso
  • ~/.netrc

    这个是为了 ftp 非交互自动运行.

    cat > ~/.netrc << EOF
    machine 10.25.129.157 login yourftpusername password yourftppassword
    macdef init
    binary
    put livecd.iso
    bye
    EOF
  • /livecd/gld.pl(感谢 DawnFantasy 提供的这个 perl 脚本! )

    这个脚本复制文件以及所依赖的库到指定位置.

    由于这个脚本中包含一些特殊字符, 在使用 cat 生成时会有一定困难, 所以请自己创建这个文件.

    vi /livecd/gld.pl
    ...
    chmod +x /livecd/gld.pl
    #!/usr/bin/perl 
    #===============================================================================
    #
    # DESCRIPTION: Get library
    #
    # AUTHOR: DawnFantasy, <goldenshore999 # gmail # com>
    # VERSION: 1.1
    # DATE: 2008-02-04
    #
    #===============================================================================
    use strict;
    use warnings;
    use Getopt::Long;
    my %opts;
    $opts{target} = 'initrd';
    usage(), exit -1
    if ( not GetOptions( \%opts, 'import=s', 'verbose', 'target|t=s' ) );
    usage(), exit -1
    if ( ( not @ARGV ) xor ( defined $opts{import} ) );
    sub usage {
    print <<EOU;
    Usage:
    $0 file1 [file2...fileX] [-t DIR] [-v]
    or
    $0 -i list [-t DIR] [-v]
    Options:
    -i, --import=FILE Process files listed in FILE
    -t, --target=DIR Use DIR as root. (Default ./initrd)
    -v, --verbose Be verbose.
    EOU
    return;
    }

    ## files to process
    my @files;
    {
    my @filess;
    {
    ## files in @ARGV
    if ( not defined $opts{import} ) {
    push @filess, @ARGV;
    last;
    }
    ## import list
    open my $fh, '<', $opts{import}
    or die "$!\n";
    @filess = (<$fh>);
    @filess = map { chomp; $_ } @filess;
    close $fh;
    }
    print "File to process: (! means file NOT found.)\n";
    foreach (@filess) {
    print " ! $_ \n" and next if not -f $_;
    push @files, $_;
    print " $_\n";
    }
    }
    ## parse libs to copy
    my @libs;
    {
    print "\n";
    foreach (@files) {
    my $ldd = qx{/usr/bin/ldd $_};
    chomp $ldd;
    print "$ldd\n\n" if defined $opts{verbose};
    my @files = split /\s+/, $ldd;
    push @libs, grep { -f $_ } @files; ## check for existence
    }
    ## Unified them
    my %h = map { ( $_, 1 ) } @libs;
    @libs = sort keys %h;
    if ( defined $opts{verbose} ) {
    print "Libraries to copy:\n";
    print " $_ => $opts{target}$_\n" foreach @libs;
    }
    }
    ## Do the real work
    print "\n";
    {
    print "Copying files, please wait...\n";
    ## Add those files in the original list
    push @libs, @files;
    if ( not -d $opts{target} ) {
    print "Creating directory $opts{target}\n";
    system qq{ mkdir -p $opts{target} };
    }
    my $v = $opts{verbose} ? 'v' : '';
    foreach (@libs) {
    if (/^\//) {
    ## 绝对目录
    s/^\///;
    system
    qq{ tar -C / -hpmcf - $_ | tar -C $opts{target} -pmx$v -f - };
    } else {
    ## 相对目录
    system
    qq{ tar -hpmcf - $_ | tar -C $opts{target} -pmx$v -f - };
    }
    }
    }

    好了, 万事具备, 让我们开始吧!


    3. 安装 grub, 创建 menu.lst, 安装 kernel

    cd /livecd
    #install grub
    mkdir iso/boot/grub -p
    cp /usr/lib/grub/i386-pc/stage2_eltorito iso/boot/grub
    #create menu.lst
    cat > iso/boot/grub/menu.lst << EOF
    default 0
    timeout 3
    color green/black light-green/black
    title grub livecd
    root(cd)
    kernel /boot/kernel root=/dev/ram0 rw init=/bin/bash --rcfile /etc/profile
    initrd /boot/initrd.img
    EOF
    #install kernel
    cp /boot/lfskernel-2.6.22.5 iso/boot/kernel
    #create livecd and upload
    ./mkiso

    因为还没有 initrd.img, mkiso 会出一些错误提示, 不过没关系, 不会影响正常运行




    4. 创建 initrd.img

    cd /livecd
    #create initrd.img, size is 8M
    dd if=/dev/zero of=initrd.img bs=400k count=20
    mke2fs -F -m0 initrd.img
    mount -o loop initrd.img initrd
    mkdir initrd/dev
    mknod initrd/dev/console c 5 1
    ./mkiso



    5. 复制需要的命令及其库文件

    我们都需要些什么呢?
    • bash
    • 一些简单命令如: ls, cat, tar, rm, bzip2 等
    • 加载分区需要的命令如: mount, umount, mountpoint, udev 等
    • 分区需要的命令如: fdisk, mkfs, mkswap 等
    以下这个列表应该足够了:
    /bin/bash
    /bin/bzip2
    /bin/cat
    /bin/cp
    /bin/echo
    /bin/grep
    /bin/ls
    /bin/mount
    /bin/mountpoint
    /bin/rm
    /bin/stty
    /bin/tar
    /bin/umount
    /sbin/fdisk
    /sbin/mkfs
    /sbin/mkfs.ext2
    /sbin/mkfs.ext3
    /sbin/mkswap
    /sbin/swapon
    /sbin/udevd
    /sbin/udevsettle
    /sbin/udevtrigger
    /usr/sbin/chroot

    我们复制它们(以及它们所依赖的库文件)

    cat > /livecd/lddfiles.dat << EOF
    /bin/bash
    /bin/bzip2
    /bin/cat
    /bin/cp
    /bin/echo
    /bin/grep
    /bin/ls
    /bin/mount
    /bin/mountpoint
    /bin/rm
    /bin/stty
    /bin/tar
    /bin/umount
    /sbin/fdisk
    /sbin/mkfs
    /sbin/mkfs.ext2
    /sbin/mkfs.ext3
    /sbin/mkswap
    /sbin/swapon
    /sbin/udevd
    /sbin/udevsettle
    /sbin/udevtrigger
    /usr/sbin/chroot
    EOF
    cd /livecd
    ./gld.pl -i lddfiles.dat
    cd initrd/bin
    ln -s bash sh



    6. 创建/复制一些配置文件, 复制一些系统脚本

    /etc/profile

    mkdir /livecd/initrd/etc
    cat > /livecd/initrd/etc/profile << EOF
    /etc/rc.d/init.d/rc sysinit
    export PATH=/bin:/usr/bin:/sbin:/usr/sbin
    export HISTSIZE=1000
    export PS1="\w# "
    alias ls="ls -l --color"
    # End /etc/profile
    EOF

    /etc/fstab

    cat > /livecd/initrd/etc/fstab << EOF
    /dev/root / ext2 defaults 0 0
    /dev/cdrom /mnt/cdrom iso9660 defaults 0 0
    proc /proc proc defaults 0 0
    sysfs /sys sysfs defaults 0 0
    devpts /dev/pts devpts defaults 0 0
    EOF

    udev 相关的文件

    cd /livecd
    cp /etc/udev /livecd/initrd/etc/ -a
    mkdir -p initrd/etc/rc.d
    mkdir -p initrd/etc/rc.d/init.d
    cp -a /etc/rc.d/init.d/functions initrd/etc/rc.d/init.d/functions
    cp -a /etc/rc.d/init.d/mountfs initrd/etc/rc.d/init.d/mountfs
    cp -a /etc/rc.d/init.d/mountkernfs initrd/etc/rc.d/init.d/mountkernfs
    cp -a /etc/rc.d/init.d/rc initrd/etc/rc.d/init.d/rc
    cp -a /etc/rc.d/init.d/udev initrd/etc/rc.d/init.d/udev
    cp -a /etc/rc.d/init.d/udev_retry initrd/etc/rc.d/init.d/udev_retry
    mkdir -p initrd/etc/rc.d/rcsysinit.d
    cp -a /etc/rc.d/rcsysinit.d/S40mountfs initrd/etc/rc.d/rcsysinit.d/S40mountfs
    cp -a /etc/rc.d/rcsysinit.d/S45udev_retry initrd/etc/rc.d/rcsysinit.d/S45udev_retry
    cp -a /etc/rc.d/rcsysinit.d/S00mountkernfs initrd/etc/rc.d/rcsysinit.d/S00mountkernfs
    cp -a /etc/rc.d/rcsysinit.d/S10udev initrd/etc/rc.d/rcsysinit.d/S10udev
    mkdir -p initrd/etc/sysconfig
    cp -a /etc/sysconfig/rc initrd/etc/sysconfig/rc
    mkdir -p initrd/lib/udev
    cp -a /lib/udev/devices initrd/lib/udev/

    让 udev 自动创建 cdrom 链接

    cat > /livecd/initrd/etc/udev/rules.d/75-cd-aliases-generator.rules << EOF
    SYSFS{device/media}=="cdrom", SYMLINK+="cdrom"
    EOF

    创建 /proc, /sys, /mnt/cdrom

    mkdir /livecd/initrd/proc
    mkdir /livecd/initrd/sys
    mkdir -p /livecd/initrd/mnt/cdrom



    7. 这就是我们所要做的一切了

    cd /livecd
    ./mkiso
    cd /livecd
    ls -l
    total 11917
    drwxr-xr-x 2 root root 4096 Feb 5 06:05 doc
    -rwxr-xr-x 1 root root 2408 Feb 5 06:05 gld.pl
    drwxr-xr-x 9 root root 1024 Feb 5 06:10 initrd
    -rw-r--r-- 1 root root 8192000 Feb 5 05:41 initrd.img
    drwxr-xr-x 3 root root 4096 Feb 5 05:35 iso
    -rw-r--r-- 1 root root 277 Feb 5 06:08 lddfiles.dat
    -rw-r--r-- 1 root root 3973120 Feb 5 06:16 livecd.iso
    -rwxr-xr-x 1 root root 450 Feb 5 05:33 mkiso
    root@lfs:/livecd#



  • 附录 I. Kernel config

    需要 kernel 支持 ram disk, disk size, scsi disk 等, 以下是编译内核所需配置, 此配置可以无障碍完成本文工作 .config
    #
    # Automatically generated make config: don't edit
    # Linux kernel version: 2.6.22.5
    # Wed Feb 13 15:32:17 2008
    #
    CONFIG_X86_32=y
    CONFIG_GENERIC_TIME=y
    CONFIG_CLOCKSOURCE_WATCHDOG=y
    CONFIG_GENERIC_CLOCKEVENTS=y
    CONFIG_LOCKDEP_SUPPORT=y
    CONFIG_STACKTRACE_SUPPORT=y
    CONFIG_SEMAPHORE_SLEEPERS=y
    CONFIG_X86=y
    CONFIG_MMU=y
    CONFIG_ZONE_DMA=y
    CONFIG_QUICKLIST=y
    CONFIG_GENERIC_ISA_DMA=y
    CONFIG_GENERIC_IOMAP=y
    CONFIG_GENERIC_BUG=y
    CONFIG_GENERIC_HWEIGHT=y
    CONFIG_ARCH_MAY_HAVE_PC_FDC=y
    CONFIG_DMI=y
    CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
    #
    # Code maturity level options
    #
    # CONFIG_EXPERIMENTAL is not set
    CONFIG_BROKEN_ON_SMP=y
    CONFIG_INIT_ENV_ARG_LIMIT=32
    #
    # General setup
    #
    CONFIG_LOCALVERSION=""
    CONFIG_LOCALVERSION_AUTO=y
    CONFIG_SWAP=y
    CONFIG_SYSVIPC=y
    # CONFIG_IPC_NS is not set
    CONFIG_SYSVIPC_SYSCTL=y
    # CONFIG_BSD_PROCESS_ACCT is not set
    # CONFIG_TASKSTATS is not set
    # CONFIG_UTS_NS is not set
    # CONFIG_AUDIT is not set
    # CONFIG_IKCONFIG is not set
    CONFIG_LOG_BUF_SHIFT=14
    CONFIG_SYSFS_DEPRECATED=y
    # CONFIG_RELAY is not set
    CONFIG_BLK_DEV_INITRD=y
    CONFIG_INITRAMFS_SOURCE=""
    CONFIG_SYSCTL=y
    # CONFIG_EMBEDDED is not set
    CONFIG_UID16=y
    CONFIG_SYSCTL_SYSCALL=y
    CONFIG_KALLSYMS=y
    # CONFIG_KALLSYMS_EXTRA_PASS is not set
    CONFIG_HOTPLUG=y
    CONFIG_PRINTK=y
    CONFIG_BUG=y
    CONFIG_ELF_CORE=y
    CONFIG_BASE_FULL=y
    CONFIG_FUTEX=y
    CONFIG_ANON_INODES=y
    CONFIG_EPOLL=y
    CONFIG_SIGNALFD=y
    CONFIG_TIMERFD=y
    CONFIG_EVENTFD=y
    CONFIG_SHMEM=y
    CONFIG_VM_EVENT_COUNTERS=y
    CONFIG_SLAB=y
    # CONFIG_SLUB is not set
    # CONFIG_SLOB is not set
    CONFIG_RT_MUTEXES=y
    # CONFIG_TINY_SHMEM is not set
    CONFIG_BASE_SMALL=0
    #
    # Loadable module support
    #
    CONFIG_MODULES=y
    # CONFIG_MODULE_UNLOAD is not set
    # CONFIG_MODVERSIONS is not set
    # CONFIG_MODULE_SRCVERSION_ALL is not set
    CONFIG_KMOD=y
    #
    # Block layer
    #
    CONFIG_BLOCK=y
    # CONFIG_LBD is not set
    # CONFIG_BLK_DEV_IO_TRACE is not set
    # CONFIG_LSF is not set
    #
    # IO Schedulers
    #
    CONFIG_IOSCHED_NOOP=y
    CONFIG_IOSCHED_AS=y
    CONFIG_IOSCHED_DEADLINE=y
    CONFIG_IOSCHED_CFQ=y
    # CONFIG_DEFAULT_AS is not set
    # CONFIG_DEFAULT_DEADLINE is not set
    CONFIG_DEFAULT_CFQ=y
    # CONFIG_DEFAULT_NOOP is not set
    CONFIG_DEFAULT_IOSCHED="cfq"
    #
    # Processor type and features
    #
    # CONFIG_TICK_ONESHOT is not set
    # CONFIG_NO_HZ is not set
    # CONFIG_HIGH_RES_TIMERS is not set
    # CONFIG_SMP is not set
    CONFIG_X86_PC=y
    # CONFIG_X86_ELAN is not set
    # CONFIG_X86_VOYAGER is not set
    # CONFIG_X86_NUMAQ is not set
    # CONFIG_X86_SUMMIT is not set
    # CONFIG_X86_BIGSMP is not set
    # CONFIG_X86_VISWS is not set
    # CONFIG_X86_GENERICARCH is not set
    # CONFIG_X86_ES7000 is not set
    # CONFIG_M386 is not set
    # CONFIG_M486 is not set
    # CONFIG_M586 is not set
    # CONFIG_M586TSC is not set
    # CONFIG_M586MMX is not set
    # CONFIG_M686 is not set
    # CONFIG_MPENTIUMII is not set
    CONFIG_MPENTIUMIII=y
    # CONFIG_MPENTIUMM is not set
    # CONFIG_MCORE2 is not set
    # CONFIG_MPENTIUM4 is not set
    # CONFIG_MK6 is not set
    # CONFIG_MK7 is not set
    # CONFIG_MK8 is not set
    # CONFIG_MCRUSOE is not set
    # CONFIG_MEFFICEON is not set
    # CONFIG_MWINCHIPC6 is not set
    # CONFIG_MWINCHIP2 is not set
    # CONFIG_MWINCHIP3D is not set
    # CONFIG_MGEODEGX1 is not set
    # CONFIG_MGEODE_LX is not set
    # CONFIG_MCYRIXIII is not set
    # CONFIG_MVIAC3_2 is not set
    # CONFIG_MVIAC7 is not set
    # CONFIG_X86_GENERIC is not set
    CONFIG_X86_CMPXCHG=y
    CONFIG_X86_L1_CACHE_SHIFT=5
    CONFIG_X86_XADD=y
    CONFIG_RWSEM_XCHGADD_ALGORITHM=y
    # CONFIG_ARCH_HAS_ILOG2_U32 is not set
    # CONFIG_ARCH_HAS_ILOG2_U64 is not set
    CONFIG_GENERIC_CALIBRATE_DELAY=y
    CONFIG_X86_WP_WORKS_OK=y
    CONFIG_X86_INVLPG=y
    CONFIG_X86_BSWAP=y
    CONFIG_X86_POPAD_OK=y
    CONFIG_X86_GOOD_APIC=y
    CONFIG_X86_INTEL_USERCOPY=y
    CONFIG_X86_USE_PPRO_CHECKSUM=y
    CONFIG_X86_TSC=y
    CONFIG_X86_CMOV=y
    CONFIG_X86_MINIMUM_CPU_MODEL=4
    # CONFIG_HPET_TIMER is not set
    CONFIG_PREEMPT_NONE=y
    # CONFIG_PREEMPT_VOLUNTARY is not set
    # CONFIG_PREEMPT is not set
    # CONFIG_X86_UP_APIC is not set
    CONFIG_X86_MCE=y
    # CONFIG_X86_MCE_NONFATAL is not set
    CONFIG_VM86=y
    # CONFIG_TOSHIBA is not set
    # CONFIG_I8K is not set
    # CONFIG_X86_REBOOTFIXUPS is not set
    CONFIG_MICROCODE=m
    CONFIG_MICROCODE_OLD_INTERFACE=y
    # CONFIG_X86_MSR is not set
    # CONFIG_X86_CPUID is not set
    #
    # Firmware Drivers
    #
    # CONFIG_EDD is not set
    # CONFIG_DELL_RBU is not set
    # CONFIG_DCDBAS is not set
    CONFIG_NOHIGHMEM=y
    # CONFIG_HIGHMEM4G is not set
    # CONFIG_HIGHMEM64G is not set
    CONFIG_PAGE_OFFSET=0xC0000000
    CONFIG_ARCH_POPULATES_NODE_MAP=y
    CONFIG_FLATMEM=y
    CONFIG_FLAT_NODE_MEM_MAP=y
    # CONFIG_SPARSEMEM_STATIC is not set
    CONFIG_SPLIT_PTLOCK_CPUS=4
    # CONFIG_RESOURCES_64BIT is not set
    CONFIG_ZONE_DMA_FLAG=1
    CONFIG_NR_QUICK=1
    # CONFIG_MATH_EMULATION is not set
    CONFIG_MTRR=y
    CONFIG_SECCOMP=y
    # CONFIG_HZ_100 is not set
    CONFIG_HZ_250=y
    # CONFIG_HZ_300 is not set
    # CONFIG_HZ_1000 is not set
    CONFIG_HZ=250
    # CONFIG_KEXEC is not set
    CONFIG_PHYSICAL_START=0x100000
    CONFIG_PHYSICAL_ALIGN=0x100000
    CONFIG_COMPAT_VDSO=y
    #
    # Power management options (ACPI, APM)
    #
    # CONFIG_PM is not set
    #
    # CPU Frequency scaling
    #
    # CONFIG_CPU_FREQ is not set
    #
    # Bus options (PCI, PCMCIA, EISA, MCA, ISA)
    #
    CONFIG_PCI=y
    # CONFIG_PCI_GOBIOS is not set
    # CONFIG_PCI_GOMMCONFIG is not set
    # CONFIG_PCI_GODIRECT is not set
    CONFIG_PCI_GOANY=y
    CONFIG_PCI_BIOS=y
    CONFIG_PCI_DIRECT=y
    # CONFIG_PCIEPORTBUS is not set
    # CONFIG_ARCH_SUPPORTS_MSI is not set
    CONFIG_ISA_DMA_API=y
    CONFIG_ISA=y
    # CONFIG_EISA is not set
    # CONFIG_MCA is not set
    # CONFIG_SCx200 is not set
    #
    # PCCARD (PCMCIA/CardBus) support
    #
    # CONFIG_PCCARD is not set
    #
    # Executable file formats
    #
    CONFIG_BINFMT_ELF=y
    CONFIG_BINFMT_AOUT=y
    CONFIG_BINFMT_MISC=y
    #
    # Networking
    #
    CONFIG_NET=y
    #
    # Networking options
    #
    CONFIG_PACKET=y
    # CONFIG_PACKET_MMAP is not set
    CONFIG_UNIX=y
    CONFIG_XFRM=y
    # CONFIG_XFRM_USER is not set
    # CONFIG_NET_KEY is not set
    CONFIG_INET=y
    CONFIG_IP_MULTICAST=y
    CONFIG_IP_ADVANCED_ROUTER=y
    CONFIG_ASK_IP_FIB_HASH=y
    # CONFIG_IP_FIB_TRIE is not set
    CONFIG_IP_FIB_HASH=y
    CONFIG_IP_MULTIPLE_TABLES=y
    CONFIG_IP_ROUTE_MULTIPATH=y
    # CONFIG_IP_ROUTE_MULTIPATH_CACHED is not set
    CONFIG_IP_ROUTE_VERBOSE=y
    # CONFIG_IP_PNP is not set
    # CONFIG_NET_IPIP is not set
    # CONFIG_NET_IPGRE is not set
    # CONFIG_IP_MROUTE is not set
    # CONFIG_SYN_COOKIES is not set
    # CONFIG_INET_AH is not set
    # CONFIG_INET_ESP is not set
    # CONFIG_INET_IPCOMP is not set
    # CONFIG_INET_XFRM_TUNNEL is not set
    CONFIG_INET_TUNNEL=m
    CONFIG_INET_XFRM_MODE_TRANSPORT=y
    CONFIG_INET_XFRM_MODE_TUNNEL=y
    CONFIG_INET_XFRM_MODE_BEET=y
    CONFIG_INET_DIAG=y
    CONFIG_INET_TCP_DIAG=y
    # CONFIG_TCP_CONG_ADVANCED is not set
    CONFIG_TCP_CONG_CUBIC=y
    CONFIG_DEFAULT_TCP_CONG="cubic"
    # CONFIG_IP_VS is not set
    CONFIG_IPV6=m
    # CONFIG_IPV6_PRIVACY is not set
    # CONFIG_IPV6_ROUTER_PREF is not set
    # CONFIG_INET6_AH is not set
    # CONFIG_INET6_ESP is not set
    # CONFIG_INET6_IPCOMP is not set
    # CONFIG_INET6_XFRM_TUNNEL is not set
    # CONFIG_INET6_TUNNEL is not set
    CONFIG_INET6_XFRM_MODE_TRANSPORT=m
    CONFIG_INET6_XFRM_MODE_TUNNEL=m
    CONFIG_INET6_XFRM_MODE_BEET=m
    CONFIG_IPV6_SIT=m
    # CONFIG_IPV6_TUNNEL is not set
    # CONFIG_NETWORK_SECMARK is not set
    CONFIG_NETFILTER=y
    # CONFIG_NETFILTER_DEBUG is not set
    #
    # Core Netfilter Configuration
    #
    # CONFIG_NETFILTER_NETLINK is not set
    # CONFIG_NF_CONNTRACK_ENABLED is not set
    # CONFIG_NF_CONNTRACK is not set
    CONFIG_NETFILTER_XTABLES=m
    # CONFIG_NETFILTER_XT_TARGET_CLASSIFY is not set
    # CONFIG_NETFILTER_XT_TARGET_DSCP is not set
    # CONFIG_NETFILTER_XT_TARGET_MARK is not set
    # CONFIG_NETFILTER_XT_TARGET_NFQUEUE is not set
    # CONFIG_NETFILTER_XT_TARGET_NFLOG is not set
    # CONFIG_NETFILTER_XT_TARGET_TCPMSS is not set
    # CONFIG_NETFILTER_XT_MATCH_COMMENT is not set
    # CONFIG_NETFILTER_XT_MATCH_DCCP is not set
    # CONFIG_NETFILTER_XT_MATCH_DSCP is not set
    # CONFIG_NETFILTER_XT_MATCH_ESP is not set
    # CONFIG_NETFILTER_XT_MATCH_LENGTH is not set
    # CONFIG_NETFILTER_XT_MATCH_LIMIT is not set
    # CONFIG_NETFILTER_XT_MATCH_MAC is not set
    # CONFIG_NETFILTER_XT_MATCH_MARK is not set
    # CONFIG_NETFILTER_XT_MATCH_POLICY is not set
    # CONFIG_NETFILTER_XT_MATCH_MULTIPORT is not set
    # CONFIG_NETFILTER_XT_MATCH_PKTTYPE is not set
    # CONFIG_NETFILTER_XT_MATCH_QUOTA is not set
    # CONFIG_NETFILTER_XT_MATCH_REALM is not set
    # CONFIG_NETFILTER_XT_MATCH_STATISTIC is not set
    # CONFIG_NETFILTER_XT_MATCH_STRING is not set
    # CONFIG_NETFILTER_XT_MATCH_TCPMSS is not set
    # CONFIG_NETFILTER_XT_MATCH_HASHLIMIT is not set
    #
    # IP: Netfilter Configuration
    #
    CONFIG_IP_NF_QUEUE=m
    CONFIG_IP_NF_IPTABLES=m
    CONFIG_IP_NF_MATCH_IPRANGE=m
    CONFIG_IP_NF_MATCH_TOS=m
    CONFIG_IP_NF_MATCH_RECENT=m
    CONFIG_IP_NF_MATCH_ECN=m
    # CONFIG_IP_NF_MATCH_AH is not set
    CONFIG_IP_NF_MATCH_TTL=m
    CONFIG_IP_NF_MATCH_OWNER=m
    # CONFIG_IP_NF_MATCH_ADDRTYPE is not set
    CONFIG_IP_NF_FILTER=m
    CONFIG_IP_NF_TARGET_REJECT=m
    CONFIG_IP_NF_TARGET_LOG=m
    CONFIG_IP_NF_TARGET_ULOG=m
    CONFIG_IP_NF_MANGLE=m
    CONFIG_IP_NF_TARGET_TOS=m
    CONFIG_IP_NF_TARGET_ECN=m
    # CONFIG_IP_NF_TARGET_TTL is not set
    CONFIG_IP_NF_RAW=m
    CONFIG_IP_NF_ARPTABLES=m
    CONFIG_IP_NF_ARPFILTER=m
    CONFIG_IP_NF_ARP_MANGLE=m
    # CONFIG_BRIDGE is not set
    # CONFIG_VLAN_8021Q is not set
    # CONFIG_DECNET is not set
    # CONFIG_LLC2 is not set
    # CONFIG_IPX is not set
    # CONFIG_ATALK is not set
    #
    # QoS and/or fair queueing
    #
    # CONFIG_NET_SCHED is not set
    #
    # Network testing
    #
    # CONFIG_NET_PKTGEN is not set
    # CONFIG_HAMRADIO is not set
    # CONFIG_IRDA is not set
    # CONFIG_BT is not set
    CONFIG_FIB_RULES=y
    #
    # Wireless
    #
    # CONFIG_CFG80211 is not set
    # CONFIG_WIRELESS_EXT is not set
    # CONFIG_IEEE80211 is not set
    # CONFIG_RFKILL is not set
    #
    # Device Drivers
    #
    #
    # Generic Driver Options
    #
    CONFIG_STANDALONE=y
    CONFIG_PREVENT_FIRMWARE_BUILD=y
    CONFIG_FW_LOADER=m
    # CONFIG_SYS_HYPERVISOR is not set
    #
    # Connector - unified userspace <-> kernelspace linker
    #
    # CONFIG_CONNECTOR is not set
    # CONFIG_MTD is not set
    #
    # Parallel port support
    #
    CONFIG_PARPORT=m
    # CONFIG_PARPORT_PC is not set
    # CONFIG_PARPORT_GSC is not set
    # CONFIG_PARPORT_AX88796 is not set
    # CONFIG_PARPORT_1284 is not set
    CONFIG_PARPORT_NOT_PC=y
    #
    # Plug and Play support
    #
    CONFIG_PNP=y
    # CONFIG_PNP_DEBUG is not set
    #
    # Protocols
    #
    CONFIG_ISAPNP=y
    # CONFIG_PNPACPI is not set
    #
    # Block devices
    #
    # CONFIG_BLK_DEV_FD is not set
    # CONFIG_BLK_DEV_XD is not set
    # CONFIG_BLK_CPQ_DA is not set
    # CONFIG_BLK_CPQ_CISS_DA is not set
    # CONFIG_BLK_DEV_DAC960 is not set
    # CONFIG_BLK_DEV_COW_COMMON is not set
    CONFIG_BLK_DEV_LOOP=y
    # CONFIG_BLK_DEV_CRYPTOLOOP is not set
    # CONFIG_BLK_DEV_NBD is not set
    # CONFIG_BLK_DEV_SX8 is not set
    # CONFIG_BLK_DEV_UB is not set
    CONFIG_BLK_DEV_RAM=y
    CONFIG_BLK_DEV_RAM_COUNT=16
    CONFIG_BLK_DEV_RAM_SIZE=8192
    CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024
    # CONFIG_CDROM_PKTCDVD is not set
    # CONFIG_ATA_OVER_ETH is not set
    #
    # Misc devices
    #
    # CONFIG_PHANTOM is not set
    # CONFIG_SGI_IOC4 is not set
    CONFIG_IDE=y
    CONFIG_BLK_DEV_IDE=y
    #
    # Please see Documentation/ide.txt for help/info on IDE drives
    #
    # CONFIG_BLK_DEV_IDE_SATA is not set
    # CONFIG_BLK_DEV_HD_IDE is not set
    CONFIG_BLK_DEV_IDEDISK=y
    CONFIG_IDEDISK_MULTI_MODE=y
    CONFIG_BLK_DEV_IDECD=y
    # CONFIG_BLK_DEV_IDEFLOPPY is not set
    # CONFIG_BLK_DEV_IDESCSI is not set
    # CONFIG_IDE_TASK_IOCTL is not set
    CONFIG_IDE_PROC_FS=y
    #
    # IDE chipset support/bugfixes
    #
    CONFIG_IDE_GENERIC=y
    CONFIG_BLK_DEV_CMD640=y
    # CONFIG_BLK_DEV_CMD640_ENHANCED is not set
    # CONFIG_BLK_DEV_IDEPNP is not set
    CONFIG_BLK_DEV_IDEPCI=y
    CONFIG_IDEPCI_SHARE_IRQ=y
    CONFIG_IDEPCI_PCIBUS_ORDER=y
    # CONFIG_BLK_DEV_OFFBOARD is not set
    # CONFIG_BLK_DEV_GENERIC is not set
    CONFIG_BLK_DEV_RZ1000=y
    CONFIG_BLK_DEV_IDEDMA_PCI=y
    # CONFIG_BLK_DEV_IDEDMA_FORCED is not set
    # CONFIG_IDEDMA_ONLYDISK is not set
    # CONFIG_BLK_DEV_AEC62XX is not set
    # CONFIG_BLK_DEV_ALI15X3 is not set
    # CONFIG_BLK_DEV_AMD74XX is not set
    # CONFIG_BLK_DEV_ATIIXP is not set
    # CONFIG_BLK_DEV_CMD64X is not set
    # CONFIG_BLK_DEV_TRIFLEX is not set
    # CONFIG_BLK_DEV_CY82C693 is not set
    # CONFIG_BLK_DEV_CS5530 is not set
    # CONFIG_BLK_DEV_CS5535 is not set
    # CONFIG_BLK_DEV_HPT34X is not set
    # CONFIG_BLK_DEV_HPT366 is not set
    # CONFIG_BLK_DEV_JMICRON is not set
    # CONFIG_BLK_DEV_SC1200 is not set
    CONFIG_BLK_DEV_PIIX=y
    # CONFIG_BLK_DEV_IT8213 is not set
    # CONFIG_BLK_DEV_IT821X is not set
    # CONFIG_BLK_DEV_NS87415 is not set
    # CONFIG_BLK_DEV_PDC202XX_OLD is not set
    # CONFIG_BLK_DEV_PDC202XX_NEW is not set
    # CONFIG_BLK_DEV_SVWKS is not set
    # CONFIG_BLK_DEV_SIIMAGE is not set
    # CONFIG_BLK_DEV_SIS5513 is not set
    # CONFIG_BLK_DEV_SLC90E66 is not set
    # CONFIG_BLK_DEV_TRM290 is not set
    # CONFIG_BLK_DEV_VIA82CXXX is not set
    # CONFIG_BLK_DEV_TC86C001 is not set
    # CONFIG_IDE_ARM is not set
    # CONFIG_IDE_CHIPSETS is not set
    CONFIG_BLK_DEV_IDEDMA=y
    # CONFIG_IDEDMA_IVB is not set
    # CONFIG_BLK_DEV_HD is not set
    #
    # SCSI device support
    #
    # CONFIG_RAID_ATTRS is not set
    CONFIG_SCSI=y
    CONFIG_SCSI_NETLINK=y
    CONFIG_SCSI_PROC_FS=y
    #
    # SCSI support type (disk, tape, CD-ROM)
    #
    CONFIG_BLK_DEV_SD=y
    # CONFIG_CHR_DEV_ST is not set
    # CONFIG_CHR_DEV_OSST is not set
    # CONFIG_BLK_DEV_SR is not set
    # CONFIG_CHR_DEV_SG is not set
    # CONFIG_CHR_DEV_SCH is not set
    #
    # Some SCSI devices (e.g. CD jukebox) support multiple LUNs
    #
    # CONFIG_SCSI_MULTI_LUN is not set
    # CONFIG_SCSI_CONSTANTS is not set
    # CONFIG_SCSI_LOGGING is not set
    # CONFIG_SCSI_SCAN_ASYNC is not set
    CONFIG_SCSI_WAIT_SCAN=m
    #
    # SCSI Transports
    #
    CONFIG_SCSI_SPI_ATTRS=y
    CONFIG_SCSI_FC_ATTRS=y
    # CONFIG_SCSI_ISCSI_ATTRS is not set
    CONFIG_SCSI_SAS_ATTRS=y
    # CONFIG_SCSI_SAS_LIBSAS is not set
    #
    # SCSI low-level drivers
    #
    # CONFIG_ISCSI_TCP is not set
    # CONFIG_BLK_DEV_3W_XXXX_RAID is not set
    # CONFIG_SCSI_3W_9XXX is not set
    # CONFIG_SCSI_7000FASST is not set
    # CONFIG_SCSI_ACARD is not set
    # CONFIG_SCSI_AHA152X is not set
    # CONFIG_SCSI_AHA1542 is not set
    # CONFIG_SCSI_AACRAID is not set
    # CONFIG_SCSI_AIC7XXX is not set
    # CONFIG_SCSI_AIC7XXX_OLD is not set
    # CONFIG_SCSI_AIC79XX is not set
    # CONFIG_SCSI_AIC94XX is not set
    # CONFIG_SCSI_DPT_I2O is not set
    # CONFIG_SCSI_ADVANSYS is not set
    # CONFIG_SCSI_IN2000 is not set
    # CONFIG_SCSI_ARCMSR is not set
    # CONFIG_MEGARAID_NEWGEN is not set
    # CONFIG_MEGARAID_LEGACY is not set
    # CONFIG_MEGARAID_SAS is not set
    # CONFIG_SCSI_HPTIOP is not set
    CONFIG_SCSI_BUSLOGIC=y
    # CONFIG_SCSI_OMIT_FLASHPOINT is not set
    # CONFIG_SCSI_DMX3191D is not set
    # CONFIG_SCSI_DTC3280 is not set
    # CONFIG_SCSI_EATA is not set
    # CONFIG_SCSI_FUTURE_DOMAIN is not set
    # CONFIG_SCSI_GDTH is not set
    # CONFIG_SCSI_GENERIC_NCR5380 is not set
    # CONFIG_SCSI_GENERIC_NCR5380_MMIO is not set
    # CONFIG_SCSI_IPS is not set
    # CONFIG_SCSI_INITIO is not set
    # CONFIG_SCSI_INIA100 is not set
    # CONFIG_SCSI_NCR53C406A is not set
    # CONFIG_SCSI_STEX is not set
    # CONFIG_SCSI_SYM53C8XX_2 is not set
    # CONFIG_SCSI_PAS16 is not set
    # CONFIG_SCSI_PSI240I is not set
    # CONFIG_SCSI_QLOGIC_FAS is not set
    # CONFIG_SCSI_QLOGIC_1280 is not set
    # CONFIG_SCSI_QLA_FC is not set
    # CONFIG_SCSI_QLA_ISCSI is not set
    # CONFIG_SCSI_LPFC is not set
    # CONFIG_SCSI_SEAGATE is not set
    # CONFIG_SCSI_SYM53C416 is not set
    # CONFIG_SCSI_DC390T is not set
    # CONFIG_SCSI_T128 is not set
    # CONFIG_SCSI_U14_34F is not set
    # CONFIG_SCSI_ULTRASTOR is not set
    # CONFIG_SCSI_NSP32 is not set
    # CONFIG_SCSI_DEBUG is not set
    # CONFIG_SCSI_SRP is not set
    # CONFIG_ATA is not set
    #
    # Old CD-ROM drivers (not SCSI, not IDE)
    #
    # CONFIG_CD_NO_IDESCSI is not set
    #
    # Multi-device support (RAID and LVM)
    #
    # CONFIG_MD is not set
    #
    # Fusion MPT device support
    #
    CONFIG_FUSION=y
    CONFIG_FUSION_SPI=y
    # CONFIG_FUSION_FC is not set
    # CONFIG_FUSION_SAS is not set
    CONFIG_FUSION_MAX_SGE=128
    # CONFIG_FUSION_CTL is not set
    #
    # IEEE 1394 (FireWire) support
    #
    #
    # An alternative FireWire stack is available with EXPERIMENTAL=y
    #
    # CONFIG_IEEE1394 is not set
    #
    # I2O device support
    #
    # CONFIG_I2O is not set
    # CONFIG_MACINTOSH_DRIVERS is not set
    #
    # Network device support
    #
    CONFIG_NETDEVICES=y
    # CONFIG_DUMMY is not set
    # CONFIG_BONDING is not set
    # CONFIG_EQUALIZER is not set
    # CONFIG_TUN is not set
    # CONFIG_NET_SB1000 is not set
    # CONFIG_ARCNET is not set
    # CONFIG_PHYLIB is not set
    #
    # Ethernet (10 or 100Mbit)
    #
    CONFIG_NET_ETHERNET=y
    CONFIG_MII=m
    CONFIG_HAPPYMEAL=m
    CONFIG_SUNGEM=m
    # CONFIG_CASSINI is not set
    CONFIG_NET_VENDOR_3COM=y
    CONFIG_EL1=m
    CONFIG_EL2=m
    CONFIG_ELPLUS=m
    CONFIG_EL3=m
    CONFIG_3C515=m
    CONFIG_VORTEX=m
    CONFIG_TYPHOON=m
    CONFIG_LANCE=m
    CONFIG_NET_VENDOR_SMC=y
    CONFIG_WD80x3=m
    CONFIG_ULTRA=m
    CONFIG_SMC9194=m
    CONFIG_NET_VENDOR_RACAL=y
    CONFIG_NI52=m
    CONFIG_NI65=m
    #
    # Tulip family network device support
    #
    CONFIG_NET_TULIP=y
    CONFIG_TULIP=m
    # CONFIG_TULIP_MMIO is not set
    # CONFIG_TULIP_NAPI is not set
    CONFIG_DE4X5=m
    CONFIG_WINBOND_840=m
    CONFIG_DM9102=m
    # CONFIG_ULI526X is not set
    CONFIG_DEPCA=m
    CONFIG_HP100=m
    CONFIG_NET_ISA=y
    CONFIG_E2100=m
    CONFIG_EWRK3=m
    CONFIG_EEXPRESS=m
    CONFIG_EEXPRESS_PRO=m
    CONFIG_HPLAN_PLUS=m
    CONFIG_HPLAN=m
    CONFIG_LP486E=m
    CONFIG_ETH16I=m
    CONFIG_NE2000=m
    CONFIG_NET_PCI=y
    CONFIG_PCNET32=m
    # CONFIG_PCNET32_NAPI is not set
    CONFIG_AMD8111_ETH=m
    # CONFIG_AMD8111E_NAPI is not set
    CONFIG_ADAPTEC_STARFIRE=m
    CONFIG_APRICOT=m
    # CONFIG_B44 is not set
    # CONFIG_FORCEDETH is not set
    CONFIG_CS89x0=m
    CONFIG_DGRS=m
    CONFIG_EEPRO100=m
    CONFIG_E100=m
    CONFIG_FEALNX=m
    CONFIG_NATSEMI=m
    CONFIG_NE2K_PCI=m
    CONFIG_8139TOO=m
    # CONFIG_8139TOO_PIO is not set
    # CONFIG_8139TOO_TUNE_TWISTER is not set
    # CONFIG_8139TOO_8129 is not set
    # CONFIG_8139_OLD_RX_RESET is not set
    CONFIG_SIS900=m
    CONFIG_EPIC100=m
    CONFIG_SUNDANCE=m
    # CONFIG_SUNDANCE_MMIO is not set
    CONFIG_TLAN=m
    CONFIG_VIA_RHINE=m
    # CONFIG_VIA_RHINE_MMIO is not set
    # CONFIG_VIA_RHINE_NAPI is not set
    CONFIG_NET_POCKET=y
    CONFIG_ATP=m
    CONFIG_DE600=m
    CONFIG_DE620=m
    CONFIG_NETDEV_1000=y
    # CONFIG_ACENIC is not set
    # CONFIG_DL2K is not set
    # CONFIG_E1000 is not set
    # CONFIG_NS83820 is not set
    # CONFIG_HAMACHI is not set
    # CONFIG_R8169 is not set
    # CONFIG_SIS190 is not set
    # CONFIG_SKGE is not set
    # CONFIG_SKY2 is not set
    # CONFIG_SK98LIN is not set
    # CONFIG_VIA_VELOCITY is not set
    # CONFIG_TIGON3 is not set
    # CONFIG_BNX2 is not set
    # CONFIG_QLA3XXX is not set
    CONFIG_NETDEV_10000=y
    # CONFIG_CHELSIO_T1 is not set
    # CONFIG_CHELSIO_T3 is not set
    # CONFIG_IXGB is not set
    # CONFIG_S2IO is not set
    # CONFIG_MYRI10GE is not set
    # CONFIG_NETXEN_NIC is not set
    # CONFIG_MLX4_CORE is not set
    # CONFIG_TR is not set
    #
    # Wireless LAN
    #
    # CONFIG_WLAN_PRE80211 is not set
    # CONFIG_WLAN_80211 is not set
    #
    # USB Network Adapters
    #
    # CONFIG_USB_KAWETH is not set
    # CONFIG_USB_PEGASUS is not set
    # CONFIG_USB_USBNET_MII is not set
    # CONFIG_USB_USBNET is not set
    # CONFIG_WAN is not set
    # CONFIG_FDDI is not set
    # CONFIG_PLIP is not set
    CONFIG_PPP=m
    CONFIG_PPP_FILTER=y
    CONFIG_PPP_ASYNC=m
    CONFIG_PPP_SYNC_TTY=m
    CONFIG_PPP_DEFLATE=m
    CONFIG_PPP_BSDCOMP=m
    CONFIG_SLIP=y
    # CONFIG_SLIP_COMPRESSED is not set
    CONFIG_SLHC=m
    # CONFIG_SLIP_SMART is not set
    # CONFIG_SLIP_MODE_SLIP6 is not set
    # CONFIG_NET_FC is not set
    # CONFIG_NETPOLL is not set
    # CONFIG_NET_POLL_CONTROLLER is not set
    #
    # ISDN subsystem
    #
    # CONFIG_ISDN is not set
    #
    # Telephony Support
    #
    # CONFIG_PHONE is not set
    #
    # Input device support
    #
    CONFIG_INPUT=y
    # CONFIG_INPUT_FF_MEMLESS is not set
    # CONFIG_INPUT_POLLDEV is not set
    #
    # Userland interfaces
    #
    CONFIG_INPUT_MOUSEDEV=y
    CONFIG_INPUT_MOUSEDEV_PSAUX=y
    CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
    CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
    # CONFIG_INPUT_JOYDEV is not set
    # CONFIG_INPUT_TSDEV is not set
    # CONFIG_INPUT_EVDEV is not set
    # CONFIG_INPUT_EVBUG is not set
    #
    # Input Device Drivers
    #
    CONFIG_INPUT_KEYBOARD=y
    CONFIG_KEYBOARD_ATKBD=y
    # CONFIG_KEYBOARD_SUNKBD is not set
    # CONFIG_KEYBOARD_LKKBD is not set
    # CONFIG_KEYBOARD_XTKBD is not set
    # CONFIG_KEYBOARD_NEWTON is not set
    # CONFIG_KEYBOARD_STOWAWAY is not set
    CONFIG_INPUT_MOUSE=y
    CONFIG_MOUSE_PS2=y
    CONFIG_MOUSE_PS2_ALPS=y
    CONFIG_MOUSE_PS2_LOGIPS2PP=y
    CONFIG_MOUSE_PS2_SYNAPTICS=y
    CONFIG_MOUSE_PS2_LIFEBOOK=y
    CONFIG_MOUSE_PS2_TRACKPOINT=y
    # CONFIG_MOUSE_PS2_TOUCHKIT is not set
    # CONFIG_MOUSE_SERIAL is not set
    # CONFIG_MOUSE_APPLETOUCH is not set
    # CONFIG_MOUSE_INPORT is not set
    # CONFIG_MOUSE_LOGIBM is not set
    # CONFIG_MOUSE_PC110PAD is not set
    # CONFIG_MOUSE_VSXXXAA is not set
    # CONFIG_INPUT_JOYSTICK is not set
    # CONFIG_INPUT_TABLET is not set
    # CONFIG_INPUT_TOUCHSCREEN is not set
    CONFIG_INPUT_MISC=y
    CONFIG_INPUT_PCSPKR=y
    # CONFIG_INPUT_WISTRON_BTNS is not set
    # CONFIG_INPUT_ATI_REMOTE is not set
    # CONFIG_INPUT_ATI_REMOTE2 is not set
    # CONFIG_INPUT_POWERMATE is not set
    # CONFIG_INPUT_UINPUT is not set
    #
    # Hardware I/O ports
    #
    CONFIG_SERIO=y
    CONFIG_SERIO_I8042=y
    CONFIG_SERIO_SERPORT=m
    # CONFIG_SERIO_CT82C710 is not set
    # CONFIG_SERIO_PARKBD is not set
    # CONFIG_SERIO_PCIPS2 is not set
    CONFIG_SERIO_LIBPS2=y
    # CONFIG_SERIO_RAW is not set
    # CONFIG_GAMEPORT is not set
    #
    # Character devices
    #
    CONFIG_VT=y
    CONFIG_VT_CONSOLE=y
    CONFIG_HW_CONSOLE=y
    # CONFIG_VT_HW_CONSOLE_BINDING is not set
    # CONFIG_SERIAL_NONSTANDARD is not set
    #
    # Serial drivers
    #
    # CONFIG_SERIAL_8250 is not set
    #
    # Non-8250 serial port support
    #
    # CONFIG_SERIAL_JSM is not set
    CONFIG_UNIX98_PTYS=y
    CONFIG_LEGACY_PTYS=y
    CONFIG_LEGACY_PTY_COUNT=256
    CONFIG_PRINTER=m
    # CONFIG_LP_CONSOLE is not set
    # CONFIG_PPDEV is not set
    # CONFIG_TIPAR is not set
    #
    # IPMI
    #
    # CONFIG_IPMI_HANDLER is not set
    # CONFIG_WATCHDOG is not set
    # CONFIG_HW_RANDOM is not set
    # CONFIG_NVRAM is not set
    # CONFIG_RTC is not set
    # CONFIG_GEN_RTC is not set
    # CONFIG_DTLK is not set
    # CONFIG_R3964 is not set
    # CONFIG_APPLICOM is not set
    CONFIG_AGP=m
    CONFIG_AGP_ALI=m
    # CONFIG_AGP_ATI is not set
    CONFIG_AGP_AMD=m
    # CONFIG_AGP_AMD64 is not set
    CONFIG_AGP_INTEL=m
    # CONFIG_AGP_NVIDIA is not set
    CONFIG_AGP_SIS=m
    # CONFIG_AGP_SWORKS is not set
    CONFIG_AGP_VIA=m
    # CONFIG_AGP_EFFICEON is not set
    # CONFIG_DRM is not set
    # CONFIG_MWAVE is not set
    # CONFIG_PC8736x_GPIO is not set
    # CONFIG_NSC_GPIO is not set
    # CONFIG_CS5535_GPIO is not set
    CONFIG_RAW_DRIVER=y
    CONFIG_MAX_RAW_DEVS=256
    # CONFIG_HANGCHECK_TIMER is not set
    #
    # TPM devices
    #
    CONFIG_DEVPORT=y
    # CONFIG_I2C is not set
    #
    # SPI support
    #
    # CONFIG_SPI is not set
    # CONFIG_SPI_MASTER is not set
    #
    # Dallas's 1-wire bus
    #
    # CONFIG_W1 is not set
    CONFIG_HWMON=y
    # CONFIG_HWMON_VID is not set
    # CONFIG_SENSORS_SMSC47M1 is not set
    # CONFIG_SENSORS_W83627HF is not set
    # CONFIG_SENSORS_HDAPS is not set
    # CONFIG_SENSORS_APPLESMC is not set
    # CONFIG_HWMON_DEBUG_CHIP is not set
    #
    # Multifunction device drivers
    #
    # CONFIG_MFD_SM501 is not set
    #
    # Multimedia devices
    #
    CONFIG_VIDEO_DEV=m
    CONFIG_VIDEO_V4L1=y
    CONFIG_VIDEO_V4L1_COMPAT=y
    CONFIG_VIDEO_V4L2=y
    CONFIG_VIDEO_CAPTURE_DRIVERS=y
    # CONFIG_VIDEO_ADV_DEBUG is not set
    CONFIG_VIDEO_HELPER_CHIPS_AUTO=y
    # CONFIG_VIDEO_VIVI is not set
    # CONFIG_VIDEO_PMS is not set
    # CONFIG_VIDEO_BWQCAM is not set
    # CONFIG_VIDEO_CPIA is not set
    # CONFIG_VIDEO_CPIA2 is not set
    CONFIG_V4L_USB_DRIVERS=y
    CONFIG_VIDEO_USBVIDEO=m
    CONFIG_USB_IBMCAM=m
    CONFIG_USB_KONICAWC=m
    # CONFIG_USB_QUICKCAM_MESSENGER is not set
    # CONFIG_USB_ET61X251 is not set
    CONFIG_USB_OV511=m
    CONFIG_USB_SE401=m
    CONFIG_USB_SN9C102=m
    CONFIG_USB_STV680=m
    # CONFIG_USB_ZC0301 is not set
    # CONFIG_USB_PWC is not set
    # CONFIG_USB_ZR364XX is not set
    CONFIG_RADIO_ADAPTERS=y
    # CONFIG_RADIO_CADET is not set
    # CONFIG_RADIO_RTRACK is not set
    # CONFIG_RADIO_RTRACK2 is not set
    # CONFIG_RADIO_AZTECH is not set
    # CONFIG_RADIO_GEMTEK is not set
    # CONFIG_RADIO_GEMTEK_PCI is not set
    # CONFIG_RADIO_MAXIRADIO is not set
    # CONFIG_RADIO_MAESTRO is not set
    # CONFIG_RADIO_SF16FMI is not set
    # CONFIG_RADIO_SF16FMR2 is not set
    # CONFIG_RADIO_TERRATEC is not set
    # CONFIG_RADIO_TRUST is not set
    # CONFIG_RADIO_TYPHOON is not set
    # CONFIG_RADIO_ZOLTRIX is not set
    # CONFIG_DVB_CORE is not set
    CONFIG_DAB=y
    CONFIG_USB_DABUSB=m
    #
    # Graphics support
    #
    # CONFIG_BACKLIGHT_LCD_SUPPORT is not set
    #
    # Display device support
    #
    # CONFIG_DISPLAY_SUPPORT is not set
    # CONFIG_VGASTATE is not set
    # CONFIG_FB is not set
    #
    # Console display driver support
    #
    CONFIG_VGA_CONSOLE=y
    # CONFIG_VGACON_SOFT_SCROLLBACK is not set
    # CONFIG_VIDEO_SELECT is not set
    # CONFIG_MDA_CONSOLE is not set
    CONFIG_DUMMY_CONSOLE=y
    #
    # Sound
    #
    # CONFIG_SOUND is not set
    #
    # HID Devices
    #
    CONFIG_HID=y
    # CONFIG_HID_DEBUG is not set
    #
    # USB Input Devices
    #
    CONFIG_USB_HID=m
    # CONFIG_USB_HIDINPUT_POWERBOOK is not set
    # CONFIG_USB_HIDDEV is not set
    #
    # USB HID Boot Protocol drivers
    #
    # CONFIG_USB_KBD is not set
    # CONFIG_USB_MOUSE is not set
    #
    # USB support
    #
    CONFIG_USB_ARCH_HAS_HCD=y
    CONFIG_USB_ARCH_HAS_OHCI=y
    CONFIG_USB_ARCH_HAS_EHCI=y
    CONFIG_USB=m
    # CONFIG_USB_DEBUG is not set
    #
    # Miscellaneous USB options
    #
    CONFIG_USB_DEVICEFS=y
    CONFIG_USB_DEVICE_CLASS=y
    #
    # USB Host Controller Drivers
    #
    CONFIG_USB_EHCI_HCD=m
    # CONFIG_USB_EHCI_BIG_ENDIAN_MMIO is not set
    # CONFIG_USB_ISP116X_HCD is not set
    CONFIG_USB_OHCI_HCD=m
    # CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set
    # CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set
    CONFIG_USB_OHCI_LITTLE_ENDIAN=y
    CONFIG_USB_UHCI_HCD=m
    CONFIG_USB_SL811_HCD=m
    #
    # USB Device Class drivers
    #
    CONFIG_USB_ACM=m
    CONFIG_USB_PRINTER=m
    #
    # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support'
    #
    #
    # may also be needed; see USB_STORAGE Help for more information
    #
    CONFIG_USB_STORAGE=m
    # CONFIG_USB_STORAGE_DEBUG is not set
    # CONFIG_USB_STORAGE_FREECOM is not set
    # CONFIG_USB_STORAGE_ISD200 is not set
    # CONFIG_USB_STORAGE_DPCM is not set
    # CONFIG_USB_STORAGE_KARMA is not set
    # CONFIG_USB_LIBUSUAL is not set
    #
    # USB Imaging devices
    #
    CONFIG_USB_MICROTEK=m
    CONFIG_USB_MON=y
    #
    # USB port drivers
    #
    CONFIG_USB_USS720=m
    #
    # USB Serial Converter support
    #
    # CONFIG_USB_SERIAL is not set
    #
    # USB Miscellaneous drivers
    #
    CONFIG_USB_EMI62=m
    CONFIG_USB_EMI26=m
    CONFIG_USB_LCD=m
    # CONFIG_USB_BERRY_CHARGE is not set
    CONFIG_USB_LED=m
    # CONFIG_USB_CYPRESS_CY7C63 is not set
    CONFIG_USB_CYTHERM=m
    # CONFIG_USB_PHIDGET is not set
    # CONFIG_USB_IDMOUSE is not set
    # CONFIG_USB_FTDI_ELAN is not set
    # CONFIG_USB_APPLEDISPLAY is not set
    # CONFIG_USB_SISUSBVGA is not set
    # CONFIG_USB_LD is not set
    # CONFIG_USB_TRANCEVIBRATOR is not set
    # CONFIG_USB_IOWARRIOR is not set
    #
    # USB DSL modem support
    #
    #
    # USB Gadget Support
    #
    CONFIG_USB_GADGET=m
    # CONFIG_USB_GADGET_DEBUG_FILES is not set
    CONFIG_USB_GADGET_SELECTED=y
    # CONFIG_USB_GADGET_FSL_USB2 is not set
    CONFIG_USB_GADGET_NET2280=y
    CONFIG_USB_NET2280=m
    # CONFIG_USB_GADGET_PXA2XX is not set
    # CONFIG_USB_GADGET_GOKU is not set
    # CONFIG_USB_GADGET_LH7A40X is not set
    # CONFIG_USB_GADGET_OMAP is not set
    # CONFIG_USB_GADGET_AT91 is not set
    # CONFIG_USB_GADGET_DUMMY_HCD is not set
    CONFIG_USB_GADGET_DUALSPEED=y
    # CONFIG_USB_ZERO is not set
    CONFIG_USB_ETH=m
    # CONFIG_USB_GADGETFS is not set
    CONFIG_USB_FILE_STORAGE=m
    # CONFIG_USB_FILE_STORAGE_TEST is not set
    CONFIG_USB_G_SERIAL=m
    # CONFIG_USB_MIDI_GADGET is not set
    # CONFIG_MMC is not set
    #
    # LED devices
    #
    # CONFIG_NEW_LEDS is not set
    #
    # LED drivers
    #
    #
    # LED Triggers
    #
    #
    # InfiniBand support
    #
    # CONFIG_INFINIBAND is not set
    #
    # EDAC - error detection and reporting (RAS) (EXPERIMENTAL)
    #
    #
    # Real Time Clock
    #
    #
    # DMA Engine support
    #
    # CONFIG_DMA_ENGINE is not set
    #
    # DMA Clients
    #
    #
    # DMA Devices
    #
    #
    # Auxiliary Display support
    #
    #
    # Virtualization
    #
    #
    # File systems
    #
    CONFIG_EXT2_FS=y
    CONFIG_EXT2_FS_XATTR=y
    # CONFIG_EXT2_FS_POSIX_ACL is not set
    # CONFIG_EXT2_FS_SECURITY is not set
    # CONFIG_EXT2_FS_XIP is not set
    CONFIG_EXT3_FS=y
    CONFIG_EXT3_FS_XATTR=y
    # CONFIG_EXT3_FS_POSIX_ACL is not set
    # CONFIG_EXT3_FS_SECURITY is not set
    CONFIG_JBD=y
    # CONFIG_JBD_DEBUG is not set
    CONFIG_FS_MBCACHE=y
    CONFIG_REISERFS_FS=y
    # CONFIG_REISERFS_CHECK is not set
    # CONFIG_REISERFS_PROC_INFO is not set
    # CONFIG_REISERFS_FS_XATTR is not set
    CONFIG_JFS_FS=y
    # CONFIG_JFS_POSIX_ACL is not set
    # CONFIG_JFS_SECURITY is not set
    # CONFIG_JFS_DEBUG is not set
    # CONFIG_JFS_STATISTICS is not set
    # CONFIG_FS_POSIX_ACL is not set
    CONFIG_XFS_FS=m
    # CONFIG_XFS_QUOTA is not set
    # CONFIG_XFS_SECURITY is not set
    # CONFIG_XFS_POSIX_ACL is not set
    # CONFIG_XFS_RT is not set
    # CONFIG_OCFS2_FS is not set
    CONFIG_MINIX_FS=m
    CONFIG_ROMFS_FS=m
    CONFIG_INOTIFY=y
    CONFIG_INOTIFY_USER=y
    # CONFIG_QUOTA is not set
    CONFIG_DNOTIFY=y
    CONFIG_AUTOFS_FS=m
    CONFIG_AUTOFS4_FS=m
    # CONFIG_FUSE_FS is not set
    #
    # CD-ROM/DVD Filesystems
    #
    CONFIG_ISO9660_FS=y
    # CONFIG_JOLIET is not set
    # CONFIG_ZISOFS is not set
    CONFIG_UDF_FS=m
    CONFIG_UDF_NLS=y
    #
    # DOS/FAT/NT Filesystems
    #
    CONFIG_FAT_FS=m
    CONFIG_MSDOS_FS=m
    CONFIG_VFAT_FS=m
    CONFIG_FAT_DEFAULT_CODEPAGE=437
    CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
    CONFIG_NTFS_FS=m
    # CONFIG_NTFS_DEBUG is not set
    CONFIG_NTFS_RW=y
    #
    # Pseudo filesystems
    #
    CONFIG_PROC_FS=y
    CONFIG_PROC_KCORE=y
    CONFIG_PROC_SYSCTL=y
    CONFIG_SYSFS=y
    CONFIG_TMPFS=y
    # CONFIG_TMPFS_POSIX_ACL is not set
    CONFIG_HUGETLBFS=y
    CONFIG_HUGETLB_PAGE=y
    CONFIG_RAMFS=y
    #
    # Miscellaneous filesystems
    #
    CONFIG_HFSPLUS_FS=m
    CONFIG_CRAMFS=m
    CONFIG_VXFS_FS=m
    CONFIG_HPFS_FS=m
    CONFIG_QNX4FS_FS=m
    CONFIG_SYSV_FS=m
    CONFIG_UFS_FS=m
    # CONFIG_UFS_DEBUG is not set
    #
    # Network File Systems
    #
    CONFIG_NFS_FS=m
    # CONFIG_NFS_V3 is not set
    # CONFIG_NFS_DIRECTIO is not set
    CONFIG_NFSD=m
    # CONFIG_NFSD_V3 is not set
    CONFIG_NFSD_TCP=y
    CONFIG_LOCKD=m
    CONFIG_EXPORTFS=m
    CONFIG_NFS_COMMON=y
    CONFIG_SUNRPC=m
    CONFIG_SMB_FS=m
    # CONFIG_SMB_NLS_DEFAULT is not set
    CONFIG_CIFS=m
    # CONFIG_CIFS_STATS is not set
    # CONFIG_CIFS_WEAK_PW_HASH is not set
    # CONFIG_CIFS_XATTR is not set
    # CONFIG_CIFS_DEBUG2 is not set
    CONFIG_NCP_FS=m
    # CONFIG_NCPFS_PACKET_SIGNING is not set
    # CONFIG_NCPFS_IOCTL_LOCKING is not set
    # CONFIG_NCPFS_STRONG is not set
    # CONFIG_NCPFS_NFS_NS is not set
    # CONFIG_NCPFS_OS2_NS is not set
    # CONFIG_NCPFS_SMALLDOS is not set
    # CONFIG_NCPFS_NLS is not set
    # CONFIG_NCPFS_EXTRAS is not set
    CONFIG_CODA_FS=m
    # CONFIG_CODA_FS_OLD_API is not set
    #
    # Partition Types
    #
    # CONFIG_PARTITION_ADVANCED is not set
    CONFIG_MSDOS_PARTITION=y
    #
    # Native Language Support
    #
    CONFIG_NLS=y
    CONFIG_NLS_DEFAULT="iso8859-1"
    # CONFIG_NLS_CODEPAGE_437 is not set
    # CONFIG_NLS_CODEPAGE_737 is not set
    # CONFIG_NLS_CODEPAGE_775 is not set
    # CONFIG_NLS_CODEPAGE_850 is not set
    # CONFIG_NLS_CODEPAGE_852 is not set
    # CONFIG_NLS_CODEPAGE_855 is not set
    # CONFIG_NLS_CODEPAGE_857 is not set
    # CONFIG_NLS_CODEPAGE_860 is not set
    # CONFIG_NLS_CODEPAGE_861 is not set
    # CONFIG_NLS_CODEPAGE_862 is not set
    # CONFIG_NLS_CODEPAGE_863 is not set
    # CONFIG_NLS_CODEPAGE_864 is not set
    # CONFIG_NLS_CODEPAGE_865 is not set
    # CONFIG_NLS_CODEPAGE_866 is not set
    # CONFIG_NLS_CODEPAGE_869 is not set
    CONFIG_NLS_CODEPAGE_936=m
    # CONFIG_NLS_CODEPAGE_950 is not set
    # CONFIG_NLS_CODEPAGE_932 is not set
    # CONFIG_NLS_CODEPAGE_949 is not set
    # CONFIG_NLS_CODEPAGE_874 is not set
    # CONFIG_NLS_ISO8859_8 is not set
    # CONFIG_NLS_CODEPAGE_1250 is not set
    # CONFIG_NLS_CODEPAGE_1251 is not set
    # CONFIG_NLS_ASCII is not set
    # CONFIG_NLS_ISO8859_1 is not set
    # CONFIG_NLS_ISO8859_2 is not set
    # CONFIG_NLS_ISO8859_3 is not set
    # CONFIG_NLS_ISO8859_4 is not set
    # CONFIG_NLS_ISO8859_5 is not set
    # CONFIG_NLS_ISO8859_6 is not set
    # CONFIG_NLS_ISO8859_7 is not set
    # CONFIG_NLS_ISO8859_9 is not set
    # CONFIG_NLS_ISO8859_13 is not set
    # CONFIG_NLS_ISO8859_14 is not set
    # CONFIG_NLS_ISO8859_15 is not set
    # CONFIG_NLS_KOI8_R is not set
    # CONFIG_NLS_KOI8_U is not set
    CONFIG_NLS_UTF8=m
    #
    # Kernel hacking
    #
    CONFIG_TRACE_IRQFLAGS_SUPPORT=y
    # CONFIG_PRINTK_TIME is not set
    CONFIG_ENABLE_MUST_CHECK=y
    # CONFIG_MAGIC_SYSRQ is not set
    CONFIG_UNUSED_SYMBOLS=y
    # CONFIG_DEBUG_FS is not set
    # CONFIG_HEADERS_CHECK is not set
    # CONFIG_DEBUG_KERNEL is not set
    CONFIG_DEBUG_BUGVERBOSE=y
    CONFIG_EARLY_PRINTK=y
    CONFIG_DOUBLEFAULT=y
    #
    # Security options
    #
    # CONFIG_KEYS is not set
    # CONFIG_SECURITY is not set
    #
    # Cryptographic options
    #
    # CONFIG_CRYPTO is not set
    #
    # Library routines
    #
    CONFIG_BITREVERSE=y
    CONFIG_CRC_CCITT=y
    # CONFIG_CRC16 is not set
    # CONFIG_CRC_ITU_T is not set
    CONFIG_CRC32=y
    # CONFIG_LIBCRC32C is not set
    CONFIG_ZLIB_INFLATE=m
    CONFIG_ZLIB_DEFLATE=m
    CONFIG_PLIST=y
    CONFIG_HAS_IOMEM=y
    CONFIG_HAS_IOPORT=y
    CONFIG_HAS_DMA=y
    CONFIG_GENERIC_HARDIRQS=y
    CONFIG_GENERIC_IRQ_PROBE=y
    CONFIG_X86_BIOS_REBOOT=y
    CONFIG_KTIME_SCALAR=y
    原文地址:https://www.cnblogs.com/top5/p/1588528.html