Linux 2 6 21 支援Ipv6的裁剪

2021-06-14 03:30:27 字數 3010 閱讀 6753

1. linux核心

: linux 2.6.21,可從

2. 針對arm

的linux2.6.21

裁剪補丁,

2.6.21-at91.patch.gz

3. 交叉編譯器:本文採用arm-linux-gcc3.4.1版本,

busybox-1.9.2

由於arm-linux-gcc-3.4.1

預設的安裝路徑是

/usr/local/

,所以直接將

arm-linux-gcc-3.4.1.tar.bz2

放在根目錄下解壓。

#cd /

#tar jxvf arm-linux-gcc-3.4.1.tar.bz2

使用arm-linux-gcc -v 

檢查交叉編譯器是否安裝成功,正常情況下可以顯示出版本資訊,如果看不到,在/root/.bash_profile 檔案中增加

export path=$path:/usr/local/arm/3.4.1/bin

然後重起系統。只有用arm-linux-gcc -version

命令能夠看到交叉編譯器的版本資訊,安裝才算成功。

注:如果不設定

path=$path:/usr/local/arm/3.4.1/bin

,也是可以的,只要設定

cross_compile ?=/usr/local/arm/

3.4.1

/bin/arm-linux-

下,會生成

linux-2.6.21

目錄。

解壓命令:tar jxvf *.bz2

或者tar 

zxvf *.gz

2. 進入linux-2.6.21

目錄下,將補丁

2.6.21-at91.patch.gz

拷貝到該目錄下,然後給

linux-2.6.21

打上補丁,只有打上補丁,才能針對arm.

打補丁命令為:zcat 2.6.21-at91.patch.gz |patch

-p1;

3. 將/arch/arm/mach-at91/configs/at91rn9200ek_defconfig

拷貝到linux-2.6.21

目錄下,重新命名為

.config,

命令為cp arch/arm/configs/at91rn9200ek_defconfig .config

4. 修改makefile

開啟核心原**根目錄下的makefile

,找到如下兩行:

arch ?=$(subarch)

cross_compile ?=

修改為:

arch ?=arm

cross_compile ?=/usr/local/arm/

3.4.1

/bin/arm-linux-

5. 若板子上的u-boot

,不支援

zimage

由於我的板子上的u-boot

,不支援

zimage

,另外machine id

不支援at91rm9200ek.

需要作如下修改:

linux-2.6.2

1/arch/arm/mach-at91/board-ek.c 中的

machine_start(at91rm9200ek,"atmel at91rm9200-ek") 改為

machine_start(at91rm9200,"atmel at91rm9200-ek")

6. at91rm9200開發:為

linux2.6.20

新增nor flash mtd驅動

mtd的驅動程式都集中在drivers/mtd裡面。我們需要做的,僅僅是在drivers/mtd/maps下增加自己的分割槽表,網上有參考的**。

配置核心make .config,增加支援ipv6的選項.

另:增加mtd,和相應的檔案系統的支援。

devices drivers --->

memory technology devices (mtd) --->

<*> memory technology device(mtd) support

<*> mtd partitioning support

<*> direct char device access to mtd devices

<*> caching block device access to mtd devices

ram/rom/flash chip drivers --->

<*> detect flash chips by common flash inte***ce(cfi) probe

<*> support for intel/sharp flash chips

file systems --->

miscellaneous filesystems --->

這裡選擇cramfs或者jffs2的支援,這樣檔案就可以被儲存下來。

7. 編譯核心,生成

uimage

$ make clean

$ make zimage

若要生成uimage

就另外在執行以下兩句話

$ /usr/local/arm/3.4.1/bin/arm-linux-objcopy -o binary -s vmlinux linux.bin

$ gzip -v9 linux.bin

$./mkimage -a arm -o linux -t kernel -c gzip -a 0x20008000 -e 0x20008000 -d linux.bin.gz uimage

注:mkimage

是uboot

提供的乙個工具,本文採用

u-boot-1.1.6

,在u-boot-1.1.6

目錄下有乙個tools

目錄,mkimage

就在該目錄下

在裁剪中,如果有什麼不正確的地方可以qq353758205

nginx開啟IPV6支援配置

ipv4日益稀缺,ipv6已經慢慢走上日程,待ipv6在國內普及,使用nginx配置ipv6那是肯定的,看看如何讓nginx支援ipv6以及配置.沒有出現 with ipv6,說明當前的nginx不支援ipv6,所以我們需要重新編譯nginx,配置裡面增加 with ipv6,具體怎麼安裝,我不在囉...

阿里雲ECS centos7 2 支援IPv6

第一部分 第二步 使用命令啟動啟用ipv6,sysctl p 第三步 將 etc modprobe.d disable ipv6.conf 檔案中的內容注釋掉 第四步 在 etc sysconfig network 中修改或新增 networking ipv6 yes 第五部 重啟系統 第二部分 1...

IPv6支援預設將導致使用者系統面臨攻擊威脅

7月22日訊息,一名安全研究人員警告稱,ipv6 使許多系統面臨受到攻擊的危險,因為網路軟體預設地支援 ipv6,但使用者不了解這一情況。據國外 報道稱,ipv6 整合諮詢廠商command information的高管喬 克萊恩解釋說,使用者不知道他們的網路和計算機支援 ipv6,因此不會配置網路...