日韩精品一区二区三区在线视频放-无码中文字幕V?一区二区-成年片免费观看视频-国内少妇人妻丰满av-国产精品中文字幕免费观看-亚洲成人久久一区二区三区-国内少妇偷人精品视频无缓冲-一区二区国产精品日本一区二区三区在线网

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營(yíng)的一線實(shí)戰(zhàn)洞察。

從零構(gòu)建最小Linux根文件系統(tǒng):BusyBox實(shí)戰(zhàn)與QEMU驗(yàn)證

從零構(gòu)建最小Linux根文件系統(tǒng):BusyBox實(shí)戰(zhàn)與QEMU驗(yàn)證 1. 項(xiàng)目概述為什么需要制作最小Linux文件系統(tǒng)在嵌入式開發(fā)、系統(tǒng)定制或者內(nèi)核調(diào)試的日常工作中我們經(jīng)常會(huì)遇到一個(gè)核心需求需要一個(gè)極簡(jiǎn)、可控、能快速啟動(dòng)的Linux運(yùn)行環(huán)境。這個(gè)環(huán)境的核心就是一個(gè)“最小Linux文件系統(tǒng)”。它不像我們桌面用的Ubuntu或CentOS那樣動(dòng)輒幾個(gè)GB而是可能只有幾十MB甚至幾MB只包含讓Linux內(nèi)核能夠完成初始化、掛載根文件系統(tǒng)、并啟動(dòng)一個(gè)基礎(chǔ)Shell所必需的最少文件集合。制作這樣一個(gè)最小文件系統(tǒng)遠(yuǎn)不止是“復(fù)制幾個(gè)文件”那么簡(jiǎn)單。它要求你對(duì)Linux的啟動(dòng)流程、文件系統(tǒng)層次結(jié)構(gòu)標(biāo)準(zhǔn)FHS、動(dòng)態(tài)鏈接庫(kù)依賴以及設(shè)備節(jié)點(diǎn)有深刻的理解。這個(gè)過程是理解Linux從“內(nèi)核”到“可用系統(tǒng)”這一飛躍的關(guān)鍵。無論是為新的ARM開發(fā)板構(gòu)建基礎(chǔ)運(yùn)行環(huán)境還是為定制化的IoT設(shè)備創(chuàng)建輕量級(jí)系統(tǒng)亦或是進(jìn)行內(nèi)核和驅(qū)動(dòng)模塊的獨(dú)立測(cè)試掌握最小文件系統(tǒng)的制作都是一項(xiàng)基本功。網(wǎng)絡(luò)上有很多關(guān)于Buildroot、Yocto或者直接使用busybox構(gòu)建根文件系統(tǒng)的教程但很多都停留在步驟羅列。這篇文章我將從一個(gè)資深嵌入式開發(fā)者的角度結(jié)合我踩過的無數(shù)個(gè)坑手把手帶你從零構(gòu)建一個(gè)能在真實(shí)硬件以QEMU模擬器為例原理通用上跑起來的最小文件系統(tǒng)并完成燒寫。我們會(huì)深入每一個(gè)步驟背后的“為什么”而不僅僅是“怎么做”。2. 核心思路與工具選型解析在動(dòng)手之前明確目標(biāo)和選擇正確的工具至關(guān)重要。我們的目標(biāo)是制作一個(gè)包含init程序通常是busybox、基礎(chǔ)工具集、必要的配置文件和設(shè)備節(jié)點(diǎn)的最小根文件系統(tǒng)rootfs并將其打包成適合目標(biāo)平臺(tái)燒寫的鏡像文件。2.1 為什么選擇BusyBox作為核心BusyBox被稱為“嵌入式Linux的瑞士軍刀”它是這個(gè)項(xiàng)目的絕對(duì)核心。一個(gè)完整的GNU工具集ls,cp,mkdir,vi,sh等體積龐大而BusyBox將這些常用工具的精簡(jiǎn)版實(shí)現(xiàn)通過符號(hào)鏈接的方式集成到一個(gè)單一的可執(zhí)行文件中。這帶來了兩個(gè)巨大優(yōu)勢(shì)體積極致減小一個(gè)靜態(tài)鏈接的busybox二進(jìn)制文件可能只有1-2MB卻提供了上百個(gè)常用命令。一致性高所有工具共享相同的代碼庫(kù)行為一致減少了兼容性問題。注意BusyBox雖然功能強(qiáng)大但它是“精簡(jiǎn)版”。例如它的vi編輯器功能非?;A(chǔ)它的shell(ash) 可能不支持某些Bash的高級(jí)特性。在追求最小化的場(chǎng)景下這些妥協(xié)是完全可接受的。2.2 開發(fā)環(huán)境與目標(biāo)平臺(tái)準(zhǔn)備為了確保過程的通用性和可復(fù)現(xiàn)性我們將在x86_64的Linux主機(jī)上進(jìn)行交叉編譯和制作但最終的文件系統(tǒng)是面向ARM架構(gòu)的。這里使用QEMU來模擬ARM硬件環(huán)境進(jìn)行測(cè)試其原理與燒寫到真實(shí)SD卡或Flash完全一致。主機(jī)環(huán)境準(zhǔn)備# 以Ubuntu/Debian為例安裝必要的工具 sudo apt-get update sudo apt-get install -y gcc-arm-linux-gnueabihf qemu-user-static binfmt-support \ build-essential libncurses5-dev libssl-dev bc flex bison libelf-dev \ git make gcc g cpio unzip rsyncgcc-arm-linux-gnueabihf: ARM硬浮點(diǎn)交叉編譯工具鏈用于編譯ARM架構(gòu)的二進(jìn)制文件。qemu-user-static: 關(guān)鍵工具它允許我們?cè)趚86主機(jī)上直接運(yùn)行ARM架構(gòu)的可執(zhí)行文件。這在制作文件系統(tǒng)時(shí)用于在chroot環(huán)境下執(zhí)行目標(biāo)架構(gòu)的busybox進(jìn)行配置。binfmt-support: 配合QEMU自動(dòng)識(shí)別并調(diào)用對(duì)應(yīng)模擬器來運(yùn)行不同架構(gòu)的二進(jìn)制文件。創(chuàng)建工作目錄mkdir -p ~/minimal_rootfs cd ~/minimal_rootfs export ROOTFS_DIR$(pwd)/rootfs mkdir -p $ROOTFS_DIR保持工作目錄清晰所有操作都在~/minimal_rootfs下進(jìn)行。3. 構(gòu)建最小根文件系統(tǒng)詳解接下來我們一步步填充$ROOTFS_DIR目錄構(gòu)建出完整的根文件系統(tǒng)樹。3.1 獲取與編譯BusyBox首先下載并編譯BusyBox。建議使用長(zhǎng)期支持版本穩(wěn)定性更好。# 1. 下載BusyBox源碼 (以1.36.1為例) wget https://busybox.net/downloads/busybox-1.36.1.tar.bz2 tar -xjf busybox-1.36.1.tar.bz2 cd busybox-1.36.1 # 2. 配置BusyBox make ARCHarm CROSS_COMPILEarm-linux-gnueabihf- defconfig # defconfig是默認(rèn)配置已經(jīng)包含了最常用的工具。 # 如果需要進(jìn)一步裁剪比如去掉你不需要的命令可以運(yùn)行 menuconfig 進(jìn)行圖形化配置 # make ARCHarm CROSS_COMPILEarm-linux-gnueabihf- menuconfig # 在 menuconfig 中可以搜索并禁用特定命令。對(duì)于最小系統(tǒng)默認(rèn)配置通常足夠。 # 3. 編譯BusyBox # 我們編譯成靜態(tài)鏈接這樣busybox就不依賴外部的動(dòng)態(tài)庫(kù)可以獨(dú)立運(yùn)行進(jìn)一步簡(jiǎn)化根文件系統(tǒng)。 make ARCHarm CROSS_COMPILEarm-linux-gnueabihf- menuconfig # 進(jìn)入菜單后找到 Settings - Build static binary (no shared libs) 并選中它。 # 保存退出后繼續(xù)編譯。 make ARCHarm CROSS_COMPILEarm-linux-gnueabihf- -j$(nproc) make ARCHarm CROSS_COMPILEarm-linux-gnueabihf- install CONFIG_PREFIX$ROOTFS_DIR編譯安裝完成后你會(huì)看到$ROOTFS_DIR目錄下出現(xiàn)了bin,sbin,usr/bin,usr/sbin等目錄里面都是指向busybox的符號(hào)鏈接以及l(fā)inuxrc文件一個(gè)指向busybox的鏈接是傳統(tǒng)的初始化腳本。3.2 構(gòu)建根文件系統(tǒng)基礎(chǔ)目錄結(jié)構(gòu)一個(gè)符合FHS標(biāo)準(zhǔn)的根文件系統(tǒng)需要一些必要的目錄。busybox的安裝已經(jīng)創(chuàng)建了一部分我們還需要補(bǔ)充。cd $ROOTFS_DIR mkdir -p dev etc home lib proc sys run tmp var/log mnt root opt chmod 1777 tmp # 設(shè)置/tmp目錄的粘滯位保證用戶只能刪除自己的文件/dev: 設(shè)備文件目錄內(nèi)核會(huì)將檢測(cè)到的設(shè)備節(jié)點(diǎn)創(chuàng)建在這里。/etc: 系統(tǒng)配置文件目錄。/proc和/sys: 虛擬文件系統(tǒng)內(nèi)核通過它們向用戶空間暴露系統(tǒng)信息和配置接口。必須為空目錄系統(tǒng)啟動(dòng)后由內(nèi)核自動(dòng)掛載。/tmp: 臨時(shí)文件目錄。/lib: 存放動(dòng)態(tài)鏈接庫(kù)。由于我們使用了靜態(tài)編譯的busybox這個(gè)目錄暫時(shí)可以空著但為未來可能的動(dòng)態(tài)鏈接程序預(yù)留。3.3 創(chuàng)建設(shè)備節(jié)點(diǎn)在Linux中一切皆文件硬件設(shè)備也以文件形式存在于/dev目錄下。系統(tǒng)啟動(dòng)時(shí)內(nèi)核需要至少兩個(gè)關(guān)鍵設(shè)備節(jié)點(diǎn)/dev/console: 系統(tǒng)控制臺(tái)用于內(nèi)核和init進(jìn)程輸出信息。/dev/null: 空設(shè)備丟棄所有寫入的數(shù)據(jù)讀取時(shí)立即返回EOF。在devtmpfs由內(nèi)核在啟動(dòng)早期掛載的臨時(shí)/dev文件系統(tǒng)完全生效前我們需要手動(dòng)創(chuàng)建這些節(jié)點(diǎn)。更可靠的做法是使用mknod命令但注意這些節(jié)點(diǎn)的major和minor設(shè)備號(hào)是固定的。sudo mknod -m 622 $ROOTFS_DIR/dev/console c 5 1 sudo mknod -m 666 $ROOTFS_DIR/dev/null c 1 3c表示字符設(shè)備。5 1是/dev/console的主次設(shè)備號(hào)。1 3是/dev/null的主次設(shè)備號(hào)。使用sudo是因?yàn)閯?chuàng)建設(shè)備節(jié)點(diǎn)通常需要root權(quán)限。實(shí)操心得在現(xiàn)代內(nèi)核中如果內(nèi)核配置了CONFIG_DEVTMPFS并啟用了devtmpfs掛載理論上可以不用手動(dòng)創(chuàng)建這些節(jié)點(diǎn)內(nèi)核會(huì)自動(dòng)創(chuàng)建。但手動(dòng)創(chuàng)建是最保險(xiǎn)的做法可以避免因內(nèi)核配置或啟動(dòng)參數(shù)問題導(dǎo)致系統(tǒng)因找不到控制臺(tái)而卡死。我曾在早期內(nèi)核上因?yàn)槁┝?dev/console導(dǎo)致系統(tǒng)啟動(dòng)后一片漆黑沒有任何輸出調(diào)試起來極其痛苦。3.4 編寫關(guān)鍵的初始化配置文件/etc目錄下的配置文件決定了系統(tǒng)啟動(dòng)后的行為。1. 創(chuàng)建/etc/inittab文件inittab是busybox的init進(jìn)程讀取的初始化表定義了系統(tǒng)啟動(dòng)、關(guān)閉和不同運(yùn)行級(jí)別下的動(dòng)作。cat $ROOTFS_DIR/etc/inittab EOF # /etc/inittab # This defines what to do on each runlevel. # The format: id:runlevels:action:process # 系統(tǒng)啟動(dòng)時(shí)首先執(zhí)行sysinit動(dòng)作 ::sysinit:/etc/init.d/rcS # 在tty1上啟動(dòng)一個(gè)getty登錄管理器 respawn表示如果退出則重新啟動(dòng) tty1::respawn:/sbin/getty -L tty1 0 vt100 # 按下Ctrl-Alt-Del時(shí)執(zhí)行的動(dòng)作 ::ctrlaltdel:/sbin/reboot # 系統(tǒng)關(guān)機(jī)時(shí)執(zhí)行 ::shutdown:/sbin/swapoff -a ::shutdown:/bin/umount -a -r ::shutdown:/sbin/reboot -f EOF這個(gè)簡(jiǎn)單的inittab做了三件事系統(tǒng)初始化時(shí)運(yùn)行一個(gè)腳本(rcS)在第一個(gè)虛擬終端上啟動(dòng)一個(gè)登錄提示定義了關(guān)機(jī)重啟的快捷鍵和流程。2. 創(chuàng)建/etc/init.d/rcS初始化腳本這是一個(gè)Shell腳本在系統(tǒng)啟動(dòng)的sysinit階段執(zhí)行用于掛載文件系統(tǒng)、配置網(wǎng)絡(luò)、設(shè)置主機(jī)名等。mkdir -p $ROOTFS_DIR/etc/init.d cat $ROOTFS_DIR/etc/init.d/rcS EOF #!/bin/sh # /etc/init.d/rcS # This script is executed at system startup. # 掛載 proc 和 sysfs 虛擬文件系統(tǒng) mount -t proc none /proc mount -t sysfs none /sys # 掛載 devtmpfs 讓內(nèi)核自動(dòng)管理設(shè)備節(jié)點(diǎn) mount -t devtmpfs none /dev # 為了方便也掛載 tmpfs 到 /tmp 和 /run mount -t tmpfs none /tmp mount -t tmpfs none /run # 創(chuàng)建一些必要的設(shè)備節(jié)點(diǎn)冗余操作確保存在 mknod -m 622 /dev/console c 5 1 2/dev/null mknod -m 666 /dev/null c 1 3 2/dev/null # 設(shè)置主機(jī)名 hostname -F /etc/hostname # 配置環(huán)回網(wǎng)絡(luò)接口 ifconfig lo 127.0.0.1 up # 打印歡迎信息 echo echo Minimal Linux RootFS is up and running! echo EOF chmod x $ROOTFS_DIR/etc/init.d/rcS # 不要忘記添加執(zhí)行權(quán)限3. 創(chuàng)建其他必要配置文件# 主機(jī)名文件 echo minimal-linux $ROOTFS_DIR/etc/hostname # 主機(jī)文件至少需要 localhost 映射 cat $ROOTFS_DIR/etc/hosts EOF 127.0.0.1 localhost localhost.localdomain ::1 localhost localhost.localdomain EOF # 創(chuàng)建基本的用戶和組文件 # 對(duì)于最小系統(tǒng)可以直接從主機(jī)復(fù)制簡(jiǎn)化版的 passwd 和 group 文件或者手動(dòng)創(chuàng)建。 cat $ROOTFS_DIR/etc/passwd EOF root::0:0:root:/root:/bin/sh EOF cat $ROOTFS_DIR/etc/group EOF root:x:0: EOF3.5 處理動(dòng)態(tài)鏈接庫(kù)可選但重要的步驟雖然我們的busybox是靜態(tài)鏈接的但如果你未來想在這個(gè)最小系統(tǒng)上運(yùn)行其他動(dòng)態(tài)鏈接的程序比如你自己寫的測(cè)試程序就需要將對(duì)應(yīng)的庫(kù)文件拷貝過來。首先找到你的交叉編譯工具鏈的庫(kù)路徑# 通常類似 /usr/arm-linux-gnueabihf/lib/ TOOLCHAIN_LIB_PATH$(arm-linux-gnueabihf-gcc -print-sysroot)/lib然后使用ldd命令查看你的程序依賴哪些庫(kù)再手動(dòng)拷貝。但更通用的方法是把最基礎(chǔ)的C庫(kù)如glibc或uclibc拷貝過來。# 假設(shè)我們使用glibc拷貝基礎(chǔ)庫(kù)注意這會(huì)顯著增加文件系統(tǒng)大小 cp -a $TOOLCHAIN_LIB_PATH/libc.so.6 $ROOTFS_DIR/lib/ cp -a $TOOLCHAIN_LIB_PATH/ld-linux-armhf.so.3 $ROOTFS_DIR/lib/ # 你可能還需要 libpthread, libm, librt, libdl 等取決于你的應(yīng)用。 # 可以使用一個(gè)腳本來自動(dòng)拷貝程序的所有依賴庫(kù)這里不展開。注意事項(xiàng)庫(kù)的版本和架構(gòu)必須嚴(yán)格匹配。從錯(cuò)誤工具鏈或主機(jī)系統(tǒng)拷貝庫(kù)文件會(huì)導(dǎo)致目標(biāo)板無法啟動(dòng)或程序運(yùn)行時(shí)出現(xiàn)“非法指令”錯(cuò)誤。在不確定的情況下優(yōu)先使用靜態(tài)編譯來避免庫(kù)依賴問題。4. 文件系統(tǒng)鏡像制作與燒寫現(xiàn)在我們有了一個(gè)完整的根文件系統(tǒng)目錄樹$ROOTFS_DIR。接下來需要把它打包成一個(gè)鏡像文件方便燒寫到存儲(chǔ)設(shè)備。4.1 制作EXT4文件系統(tǒng)鏡像EXT4是Linux上最常用的日志文件系統(tǒng)之一穩(wěn)定且性能良好。cd ~/minimal_rootfs # 1. 創(chuàng)建一個(gè)指定大小的空鏡像文件 (例如 64MB) dd if/dev/zero ofrootfs.ext4 bs1M count64 # 2. 在這個(gè)空文件上創(chuàng)建EXT4文件系統(tǒng) mkfs.ext4 rootfs.ext4 # 3. 創(chuàng)建一個(gè)臨時(shí)掛載點(diǎn)并將鏡像文件掛載上去 mkdir -p mnt_point sudo mount -o loop rootfs.ext4 mnt_point # 4. 將我們制作好的根文件系統(tǒng)內(nèi)容拷貝到掛載點(diǎn) sudo cp -a $ROOTFS_DIR/* mnt_point/ # 5. 同步數(shù)據(jù)并卸載 sync sudo umount mnt_point # 6. 檢查并修復(fù)文件系統(tǒng) (e2fsck) sudo e2fsck -p -f rootfs.ext4 # 7. 調(diào)整鏡像文件大小為實(shí)際內(nèi)容大小節(jié)省空間 (可選) sudo resize2fs -M rootfs.ext4現(xiàn)在rootfs.ext4就是一個(gè)包含了我們最小系統(tǒng)的、可以直接被內(nèi)核掛載的EXT4格式鏡像文件。為什么是EXT4因?yàn)樗С秩罩驹谝馔鈹嚯姇r(shí)能更好地保護(hù)數(shù)據(jù)完整性且內(nèi)核支持完善。對(duì)于更小的系統(tǒng)也可以考慮EXT2無日志或initramfs內(nèi)存文件系統(tǒng)。4.2 使用QEMU進(jìn)行本地驗(yàn)證在燒寫到真實(shí)硬件前強(qiáng)烈建議用QEMU進(jìn)行驗(yàn)證。我們需要一個(gè)匹配的Linux內(nèi)核。1. 獲取或編譯一個(gè)簡(jiǎn)單的ARM內(nèi)核你可以使用主線內(nèi)核但配置較復(fù)雜。這里推薦使用為QEMU預(yù)編譯的vexpress開發(fā)板內(nèi)核一種ARM虛擬平臺(tái)。# 下載預(yù)編譯的內(nèi)核和dtb (設(shè)備樹文件) wget https://releases.linaro.org/components/kernel/linux-linaro-stable/latest/linux-linaro-stable-vexpress.tar.xz tar -xf linux-linaro-stable-vexpress.tar.xz # 假設(shè)解壓后得到 zImage 和 vexpress-v2p-ca9.dtb 文件2. 使用QEMU啟動(dòng)測(cè)試qemu-system-arm -M vexpress-a9 -m 512M -kernel path/to/zImage \ -dtb path/to/vexpress-v2p-ca9.dtb \ -append root/dev/mmcblk0 rw consolettyAMA0 \ -drive filerootfs.ext4,ifsd,formatraw \ -nographic參數(shù)解釋-M vexpress-a9: 指定模擬的機(jī)器類型。-m 512M: 分配512MB內(nèi)存。-kernel和-dtb: 指定內(nèi)核鏡像和設(shè)備樹二進(jìn)制文件。-append: 傳遞給內(nèi)核的命令行參數(shù)。root/dev/mmcblk0指定根文件系統(tǒng)在模擬的SD卡上rw表示可讀寫consolettyAMA0指定控制臺(tái)設(shè)備。-drive filerootfs.ext4,ifsd,formatraw: 將我們制作的rootfs.ext4作為一塊raw格式的SD卡掛載給虛擬機(jī)。-nographic: 不使用圖形界面將串口輸出到當(dāng)前終端。如果一切順利你將看到內(nèi)核啟動(dòng)日志最后出現(xiàn)/etc/init.d/rcS腳本中的歡迎信息并提示minimal-linux login:。輸入root無需密碼即可登錄進(jìn)入我們制作的最小系統(tǒng)4.3 燒寫到物理介質(zhì)SD卡或Flash通過QEMU驗(yàn)證無誤后就可以燒寫到真實(shí)硬件了。以最常見的SD卡為例。1. 識(shí)別SD卡設(shè)備將SD卡插入讀卡器并連接到電腦。使用lsblk或dmesg | tail命令確認(rèn)SD卡對(duì)應(yīng)的設(shè)備名例如/dev/sdb請(qǐng)務(wù)必確認(rèn)選錯(cuò)會(huì)格式化你的硬盤。2. 燒寫鏡像# 假設(shè)SD卡是 /dev/sdb sudo dd ifrootfs.ext4 of/dev/sdb bs4M statusprogress syncdd命令將鏡像文件逐塊寫入SD卡。bs4M設(shè)置塊大小可以提高大文件寫入速度。statusprogress顯示寫入進(jìn)度。3. 擴(kuò)展分區(qū)可選由于我們制作的鏡像是固定大小如64MB而SD卡容量可能更大。燒寫后SD卡上只有一個(gè)64MB的分區(qū)。你可以使用gparted工具或resize2fs命令在首次啟動(dòng)后在線擴(kuò)展根文件系統(tǒng)以使用全部SD卡空間。踩坑實(shí)錄dd命令非常危險(xiǎn)。有一次我在深夜加班誤將/dev/sda系統(tǒng)盤當(dāng)作SD卡設(shè)備一個(gè)命令下去工作站系統(tǒng)瞬間崩潰。務(wù)必反復(fù)核對(duì)of參數(shù)后的設(shè)備名一個(gè)保險(xiǎn)的做法是先umount掉SD卡的所有自動(dòng)掛載分區(qū)再用lsblk確認(rèn)哪個(gè)設(shè)備消失了那個(gè)就是你的SD卡。5. 常見問題排查與深度優(yōu)化即使按照步驟操作你也可能會(huì)遇到各種問題。這里記錄一些典型的“坑”和解決方案。5.1 系統(tǒng)啟動(dòng)失敗問題排查表現(xiàn)象可能原因排查步驟與解決方案內(nèi)核panic提示“VFS: Unable to mount root fs”1. 內(nèi)核命令行參數(shù)root設(shè)置錯(cuò)誤。2. 內(nèi)核缺少對(duì)應(yīng)文件系統(tǒng)驅(qū)動(dòng)如EXT4。3. 根文件系統(tǒng)鏡像損壞或格式不對(duì)。1. 檢查QEMU或bootloader傳遞的root參數(shù)確保指向正確的設(shè)備如/dev/mmcblk0p1。2. 在內(nèi)核編譯時(shí)確保勾選了CONFIG_EXT4_FSy或你使用的文件系統(tǒng)。3. 在主機(jī)上用fsck檢查鏡像并確認(rèn)是用mkfs.ext4正確格式化的。內(nèi)核啟動(dòng)后卡住無任何輸出1. 控制臺(tái)設(shè)備console參數(shù)錯(cuò)誤或缺失。2./dev/console設(shè)備節(jié)點(diǎn)缺失。3.init進(jìn)程即busybox無法執(zhí)行。1. 確保內(nèi)核參數(shù)包含consolettyAMA0針對(duì)QEMU ARM或?qū)?yīng)硬件的串口設(shè)備。2. 檢查根文件系統(tǒng)/dev/console是否存在且主次設(shè)備號(hào)正確。3. 檢查busybox是否被正確安裝且是靜態(tài)鏈接、ARM架構(gòu)。用file $ROOTFS_DIR/bin/busybox確認(rèn)??梢詥?dòng)但提示“/bin/sh: not found”或“Kernel panic - not syncing: No working init found.”1.init程序路徑錯(cuò)誤。2. Busybox依賴的動(dòng)態(tài)庫(kù)缺失。3. 文件系統(tǒng)權(quán)限錯(cuò)誤。1. 內(nèi)核參數(shù)可以指定init默認(rèn)是/sbin/init,/etc/init,/bin/sh。確保busybox安裝在了這些路徑之一或使用init/bin/busybox指定。2. 如果busybox是動(dòng)態(tài)鏈接必須將工具鏈中的庫(kù)文件拷貝到/lib下。強(qiáng)烈建議使用靜態(tài)編譯。3. 確保busybox二進(jìn)制文件具有可執(zhí)行權(quán)限(chmod x)。登錄后命令無法執(zhí)行如ls, catBusybox的符號(hào)鏈接未正確創(chuàng)建。在$ROOTFS_DIR中檢查/bin/ls是否是指向../bin/busybox的符號(hào)鏈接。busybox的make install應(yīng)該已經(jīng)創(chuàng)建了它們。如果沒有可以進(jìn)入busybox源碼目錄執(zhí)行make CONFIG_PREFIX/path/to/rootfs install重新安裝。系統(tǒng)時(shí)間錯(cuò)誤或hwclock命令不可用最小系統(tǒng)缺少時(shí)間設(shè)置功能和RTC驅(qū)動(dòng)。這是一個(gè)正?,F(xiàn)象。最小系統(tǒng)通常不包含復(fù)雜的硬件時(shí)鐘管理??梢酝ㄟ^網(wǎng)絡(luò)時(shí)間協(xié)議NTP來更新時(shí)間但這需要網(wǎng)絡(luò)支持。對(duì)于調(diào)試可以手動(dòng)用date -s設(shè)置。5.2 進(jìn)階優(yōu)化與裁剪技巧制作出能啟動(dòng)的系統(tǒng)只是第一步嵌入式開發(fā)中我們常常需要進(jìn)一步優(yōu)化。1. 使用initramfs內(nèi)存文件系統(tǒng)initramfs是一個(gè)被編譯進(jìn)內(nèi)核或作為獨(dú)立鏡像加載到內(nèi)存中的cpio歸檔文件。系統(tǒng)啟動(dòng)初期內(nèi)核將其解壓到內(nèi)存中的一個(gè)tmpfs中并作為初始根文件系統(tǒng)。它的優(yōu)勢(shì)是速度快完全在內(nèi)存中運(yùn)行訪問速度極快。無需驅(qū)動(dòng)在掛載真正的根文件系統(tǒng)如來自SD卡之前就可以提供必要的工具和驅(qū)動(dòng)模塊。 制作方法cd $ROOTFS_DIR find . | cpio -H newc -ov --owner root:root ../initramfs.cpio cd .. gzip initramfs.cpio # 在內(nèi)核配置中指定 Initramfs source file 為這個(gè) .cpio.gz 文件即可。2. 使用Buildroot自動(dòng)化構(gòu)建對(duì)于復(fù)雜的項(xiàng)目手動(dòng)制作文件系統(tǒng)效率低下。Buildroot是一個(gè)自動(dòng)化構(gòu)建嵌入式Linux系統(tǒng)的框架。你只需要通過make menuconfig進(jìn)行配置選擇架構(gòu)、工具鏈、需要的軟件包等它就能自動(dòng)下載、交叉編譯、集成最終生成包括內(nèi)核、根文件系統(tǒng)在內(nèi)的完整鏡像。它管理了復(fù)雜的依賴關(guān)系是產(chǎn)品級(jí)開發(fā)的必備工具。3. 極致的體積裁剪編譯選項(xiàng)優(yōu)化在busybox的menuconfig中仔細(xì)檢查每一個(gè)命令去掉絕對(duì)不需要的。例如如果你不需要vi可以去掉它。使用uclibc或musl-libc它們比glibc體積小得多是嵌入式系統(tǒng)的常見選擇。Buildroot可以方便地切換C庫(kù)。刪除調(diào)試符號(hào)使用交叉編譯工具鏈中的strip命令去掉二進(jìn)制文件中的調(diào)試符號(hào)。arm-linux-gnueabihf-strip $ROOTFS_DIR/bin/busybox壓縮文件系統(tǒng)使用squashfs等只讀壓縮文件系統(tǒng)可以極大減小鏡像體積適合系統(tǒng)分區(qū)。從手動(dòng)制作一個(gè)最小文件系統(tǒng)開始你才能真正理解Linux用戶空間的構(gòu)成和啟動(dòng)脈絡(luò)。這個(gè)過程會(huì)強(qiáng)迫你去了解inittab、rcS、設(shè)備節(jié)點(diǎn)、動(dòng)態(tài)鏈接、文件系統(tǒng)格式等基礎(chǔ)知識(shí)。當(dāng)你在QEMU中看到自己構(gòu)建的系統(tǒng)成功啟動(dòng)或者在開發(fā)板上通過串口看到登錄提示時(shí)那種成就感是無可替代的。這不僅僅是完成了一個(gè)任務(wù)更是打通了嵌入式Linux開發(fā)中“內(nèi)核”與“應(yīng)用”之間的關(guān)鍵橋梁。后續(xù)無論是轉(zhuǎn)向Buildroot/Yocto這樣的自動(dòng)化工具還是調(diào)試復(fù)雜的系統(tǒng)啟動(dòng)問題這段親手構(gòu)建的經(jīng)驗(yàn)都會(huì)成為你最堅(jiān)實(shí)的底氣。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
青青草中文字幕| 欧美性巨大╳╳╳╳╳高跟鞋| 亚洲一欧洲中文字幕在线 | 中文一区在线日| 欧美日本国产日韩激情视频| 精品大全99999| 日韩有码一区三区| 国产欧美精选自拍一区| 欧美96精品在线| 五月天伊人| 天天躁日日躁xxxxx| 亚洲综合性网址| 色婷婷九月| 7777奇米影视久久| 亚洲欧美视| 插入综合网| 亚洲国产尤物yw在线观看| 亚洲丝袜二区在线| 玖日综合网| 欧美性爱另类综合| 久久xxxx| 九月丁香综合网| 久久激情婷婷| 极品少妇久久久久| 久久华人网| 国产精品乱人伊人网| aaaa少妇高潮大片| 神马久久久久久伦理片| 精品国产91av一区二区三区 | 综合色图,成人综合网| 18禁无码永久免费无限制| 国产无马av| 免费的黄片有限公司| 深田咏美亚洲精品福利社| 九九九九精品一区| 乱伦系列一区二区| 综合少妇网| 亚洲乱码尤物193YW| 国产美女口爆吞精| 婷婷五月天福利| 野狼福利社区| 一二三啪啪专区| 天美精品原创av片国产| 色综合婷婷| 久操免费电影| 亚洲骚女一区二区三区| a片在线播放| 免费亚洲国产精品久久一区| 大伊香蕉在线视频免费| 国产9l 大屁股| 91亚·色| 老司机深夜影院18未满| 男人天堂毛片| 男人的天堂成人的社区| 亚洲黄片免费在线播放| 精品一区二区久久| 五月婷婷六月天| 久艹日日日| 清柠毛片| 日韩性爱1级片视频| 丰满搜索结果 -第18页- 久久高清无码| 免费av高清无码| 97操在线| 久久9精品视频| 豆花视频操逼网址 | 欧美96精品在线| wwe 天天干.com| 手机在线人成免费视频| 伊人操| 亚码激情| 成人乱码一区二区三少妇| 一区二区播放| 97超碰逼| 99久久网站| 亚洲欧美国产va在线播放频| 97jingpin| 日韩成人精品视频自拍| 97视频在线免费观看| 国产高清不卡视频| 九九亚洲视频| 亚洲无码成人精品| 九九久久玖玖| 亚洲学生妹高清av| 91美女国产在线| 久久久久久大| 色五月丁香五月| 青青草好吊色| 男人天堂2019| 人妻喷水| 欧美 亚洲 另类 综合| 欧美一级色| 欧美真人抽搐一进一出gif | 天天爽夜夜操| 操逼片中文| 97久久网| 精品在线蜜臀| 97在线资源| 中文字幕av乱伦| 酒色综合网| 色综合20p| 亚洲综合码| av凤凰久久久| 国产真实野战在线视频| 国产精品白丝在线播放| 熟妇人妻精品一区二区| 哑洲在线| 青操影院| 天天爽入口| 中文字幕十五区| 午夜欧美J进J出白浆流出久久久| 亚洲精品三| 404操逼福利视频| 日本性爱视频一级| 深夜福利黄片| 人、人、摸,人、人、草| 丝袜大香蕉| 操操吧亚洲乱伦视频| 日日摸日日碰夜夜爽视频| 双插在线| 欧美91精彩| 色五月综合| 色婷五月天| 国产精品秘 福利姬在线观看| 91五十路| 狠狠色伊人亚洲综合网站色| 亚洲图片 激情小说| 日韩成人综合网| 射 色综合| 后入综合久久| 中国zzijzzijzzwww精品| 天天内射| 偷窥自拍亚洲天堂网爆| 9久久精品| 校园春色 亚洲| 天天干1区2区在线| 97久久久久久久久久| 久神马| 人妻内射一区二区在线视频| 欧美色图校园春色| 78操B| 少妇高潮九九九九| 精品人妻中文字幕高清| 亚洲乱码精品一区二区| www.伪伪| 人人看人人摸人人色| 久久肏大逼| 丁香九月激情| 国内精品不卡无毒99999| 欧美婷婷久久| 亚欧洲一区二区视频| 九草九九九| 亚洲av资源| 亚洲欧美综合网站| 国产成年女黄特黄| 日韩欧美中文日韩欧美色| 中文自拍欧美影视| 97人肏| 日本福利社| 口爆综合网| 欧美老妇综合网| 天天拍天| 丰满人妻被猛烈进入中| 探花在线免费观看视频国产一区| 久久9精品视频| 开心激情站| 精品传媒在线一区| 高清国产精品福利网站| 大香蕉www.超碰| 久久久久亚洲Aⅴ无码| 狠狠干,狠狠操| 精品一区二区三区最新| 热热色国产一二区AV| 超碰91在线| xxx0国产在线播放| 五月天黄色av| KK色在线影院| 亚洲性爱电影| 91粉芽高清在线一区二区| 欧美大香蕉97| 曰韩香蕉97| 97视频在线播放| 久久久久久AⅤ无码免费肉站| 天天做天天爱天天爽| 日本三级中国三级99人妇网站| 日韩成人网址| SS久久| 亚洲资源站| 天天天天天天天天天天干美女| 亚洲 欧美 天天| 久久久成人精品| 九九九九热| 韩国一级婬片A片AAAAA| 中出789在线视频| 亚洲无码一区成人免费午夜 | 夜嗨影院| 伦理日韩国产久久| 日本黄色大片一级视频免费麻豆| 天天操夜夜操| 水多多映视AV| 密桃99999| 97综合久第一页| 精品无码久久久久久久久果冻糖心| 岛国激情视频软件| 超碰超碰95| 无码人妻系列少妇| 26uuu性物| 欧美中文字幕男人天堂久久精品 | 久午视频| 99爱在线视频| 97资源久久| 亚洲人妻中文高清| 国产又粗又又黄又猛| 99re6国产精品99re| 9丨久久九九九| 国产av波波国产精品| 免费的av网| 亚洲97网站| 久久av成人无码免费| 91精品91久久久中77777| 久久综合久色欧美综合狠狠 | www.色99| 伊人麻豆传媒| 国产成人bd在线观看| 欧美熟妇精品黑人巨大一二三区| 亚洲欧美一区二区网址| 神马午夜久久久| 搞中出久久| 97视频900| 18禁网站在线播放| 熟妇一区,二区,三区。| 精品四五区| 一级毛片电影免费看| 久久亚洲骚逼综合| 亚洲国产成人7777| 老熟妇一区二区三区啪啪| 亚洲巨爆乳一区二区三区四季网| 综合激情97 | 国产丝袜美女诱惑| 91人妻中文| 热热色AV| 天天看少妇| 一起草三级AV电影在线观看| 九九九九久久久| 亚洲欧美天堂| 成人资源中文字幕在线观看| 五月丁香综合啪啪| 国产在线播放成人免费| 一二三四视频在线社区中文字幕| 久久精品国产免费观看99| 91模特在线观看| 中文字幕老熟妇黄色视频| 人妻三级在线中文字幕| 亚洲凸凹超碰成人| 99这里有精品| 欧美aa一级片| 大香蕉2017| 素人美腿视频网站| 伊人色综合网电影| 精品一区二区三区免费古装毛片香港三级日本三级人妇 | 一区 欧美 日韩 麻豆| 日韩欧美中文字幕搭讪巨乳美人妻视频| 操91| 精品性爱一二三区| 曰韩中文人妻视频| 欧美自拍网| 日日干夜夜操视频h| 91强热人妻| 91老熟女| 欧美最大综合网| 人妻熟女字幕一区二区| 又粗又长又爽在线观看| 人妻天天爽天天爽三区| 9丨久久九九九| 亚洲精品 欧美精品| 五月婷婷激情网| .精品人妻一区二区三| 日韩视频小说在线观看 | 熟女网站最新| 综合色图亚洲欧美| 凹凸视频特色日本特黄| 91精品女厕偷拍视频| 99精品伊人| 97香蕉碰碰人妻国产欧美| 国产精品4p在线观看| 超碰偷拍| 九99久久| 久久最新免费视频23| 8050午夜少妇无码| 国产自产一区视频在线| 东京热天堂网| 91模特在线观看| 欧美少妇性乱| 成人色女网| 久久精品三级影视| 日韩美女啪啪一区| 日本影视久久免费| 91精品91久久久中77777| 国内外毛片在线观看| 人妻少妇三级| av天天在线观看| 国产精品久久久三级无码| 在线综合色| 高清无码 国产精品| 在线播放一级无码视频| 综合久久久久久久综合网| 东北毛片| yw尤物av无码点击进入麻豆| 国产在线播放成人免费| 久热一区二区| 51国产午夜精品视频| 9Ⅰ老熟女| 午夜精品久久久| 色欧美色交综合| 91狠狠狠| 加勒比aⅴ| 96久久久久久久| 成人性交免费视屏| 亚洲综合20p| 亚洲日韩美女丝袜美腿人妻视频| 日韩少妇无码| a亚洲欧美色欲| 国产精品视频自拍在线| 九九热AV| 日韩人妻播放| 日本三级日本三级99| 亚洲成人性| 色色福利| 欧日韩不卡视.频| 91色艳| 欧美日日夜夜| 曰韩香蕉97| 91丝袜人妻| 玖玖无码超碰| 中文字幕久久婷婷丁香五月天| 日韩欧美亚洲自拍偷拍| 18禁的网站在线| 91精品大奶人妻| 91粉芽高清在线一区二区| 91女人的网站| 97精品中文字幕| 爱丝福利| 日韩激情电影中文字幕| 欧美亚洲日本视频久久久| 99人人干| 制服少妇欧美| 四虎精品永久在线观看| 无码不卡亚洲成?人片| 少妇人妻太紧太深av| 日本精品不卡一二三区| 91亚洲不卡一区| 麻豆一区在线| 久热这里只有精品9| 乱抡国产91| 日日碰狠狠添天天爽超| 十八禁电影伊人网| 国产精品扒开腿做爽爽爽视频| 国产一区二区成人av在线播放| 免费的很黄很污的全部视频| 五月综合久久| 日日骚精品视频| 色逼综合| 人人操人人舒服| 丁香婷婷啪啪| 日韩丝袜高跟制服在线观看| 精品国产一区探花在线观看| 十八禁视频网站| 国产欧美日韩臀| 久久夜精品一区二区三区| 97狠狠| 近亲乱伦一区二区| 97精品国产97久久久久久免费| 久久草视频污视频| 欧美高清18A片| 久久婷婷视频| 国产后入清纯| 99这里只有精品国产| 亚州精人品大香蕉| 亚欧操逼片在线观看| 性爱综合一区二区| 中文乱码99| 午夜毛片亚洲精品片国产久久久| 日韩av无码网站| 99热最新网址| 亚洲素人综合| 亚洲精品自拍| 狠狠狠一区二区三区| 综合亚州欧美| 国产伦精品一区二区三区在线观| 久湿久久 | 国产高清成人免费视频| 另类图片五月天| 97久久综合网| 人人操肉肉| 天天干天天日天天射黄色片| 日本中文熟女视频| 久久久久久亚洲精品中文字幕人妻| 东北女人性交| 91狠狠综合久久久| 美女t无毒不卡不卡| 日韩簧片免费看| 精品一区96| 亚洲风情在线观看| 99国产天美| 欧美天天综合网| 在线另类| 欧美高清18A片| 日韩专区数据列表-第3230页-精品国产一区二区三区香蕉 久久99熟女人妻中文字 | 国产视频一区二区三区久久亚洲天堂| 四虎免费视频| 国产毛片精品一区二区色欲黄A片| 影音资源男人日韩| 五月天色色网站| 正宗无毛一线天嫩逼| 国产97色在线| 久热最新在线杭州| 超碰成人免费| 久久久一二三四区| 久久无码电影| 天天射天天色成人| 久久本道| 欧美v亚洲v综合v国产v妖精| 91天天爱| 婷婷深爱五月| 粉嫩AV输入| 亚洲色图 图片| 女同亚洲欧美一二三区久久电影| 亚洲一级特黄大片在线播放91| 日韩啊V| 91在线秘 男同| 亚乱色| 五月天婷婷成人网| 大香伊人在线一区| 91美女国产在线| 啊啊啊想要| 很黄很色的视频在线观看| 亚洲强奸乱伦影视网| www超碰| 久插综合| 婷婷人妻激情| 2020中文在线一区二区三区| 久久激情亚洲精品无码?V| 五月婷婷AV| 色女99一级片在线观看| 情色五月天就去干| 日日操免费视频| 国产亚洲在线| 日本不卡一区二区三区| 91操熟女| 无码少妇精品一区二区60岁老人 | 亚洲丰满很很操| 一区二区影视| 一级性爱aaaa| 亚洲免费精品一区| 91成人精品| 日韩精品在线观看观看| 91人妻爽爽人人做人人澡| 搞中出视频在线观看| 操熟女91| 激情五月天丁香社区| 久草婷婷| 国内偷拍精品一区二区| 99亚洲天堂| 狠狠干2020| 久久亚州精品成人Av无| 欧洲综合视频| 水滴偷拍| 欧洲色| 久久亚洲人妻| AV一起草在线| 好吊色一区| 亚洲天天在线| 婷婷五月丁香五月| 大香蕉伊人75| 久久曰曰| 99re99视频在线免费观看| 欧洲久久一二线| 欧美男人一区| 五十路熟女人妻一区二区三区四区五| av在线不卡一区二区三区| 欧美色棕合| 91女色| 激情开心五月天| 欧美夜色| 人人潮人人摸| 躁躁日曰躁2020| 亚洲综合图片在线| 999久久久精品国产| 日韩在线观看中文字幕视频| 18禁超污无遮挡无码免费网| 再深点灬舒服灬太大了添视频| 人人人干干人人干| 久操精品| 婷婷探花久久精品一区| 亚洲综合夜色| 亚洲成A∨人影院在线欢看| 久久亚州精品成人Av无| 强奸乱伦日韩AV| 天天综合网91入口| 国产精品亚洲天堂网址| 中文字幕55555| 91oumei| 色女99一级片在线观看| 亚洲中文字幕在现观看| 色噜噜国产在线| 日韩在线观看字幕精品| 蜜桃狠狠色伊人亚洲综合 | 精品网站9999| 操逼网站地址| 宗合情欲网| 精品无码久久久久久国产浪潮| 亚洲色图美腿丝袜| 欧美色五月| 高树玛利亚无码流出| 日韩激情无码影院| 亚洲欧洲成人在线电影| 校园春色五月天| 长长久久88视频| 少妇熟女1区2区3区| 东京热av影院| 午夜九九| 亚洲精品 欧美精品| 国产视频不卡在线观看| 日韩不卡a级视频专区| 97国产人人| 操死我了嗯嗯嗯| 日本一级性爱| 亚洲欧美国产va在线播放频| 超碰午夜| 手机av天堂久久久久| 香蕉人人操tv| 综合影视国产无码| 人妻aa| AAAA级日本片免费视频| 91色堂| 色妺妺在线视频| 亚洲最新av无码成人精品区| 亚洲无码日韩电影| 嫩草影院永久在线制服丝袜| 伊人成人中文字幕久久网| 日本免费一级AAA大片器| 2017天天操天天日| 亚洲色性情三级| 91精品91久久久中77777| 婷婷av在线中文字幕| 97视频在线免费| 欧美久久久15P| 另类图片五月天| 国产福利电影| 999久久久免费精品国产牛牛| 青青草国产盗摄一二三区| 淮穴色AV| 在线播放成人网站| 91干熟女| 亚洲另类电影| 亚洲国产一区二区三区四区国产| 亚洲天堂一区二区久久| 男女啪啪网站免费视频| 91天天综合日韩欧美| 超碰在线在公开超碰在线在公开| 久久精品中文| 亚洲资源网| 久久久久久91香蕉国产| 今日头条成人一区二区三区四虎精品| 国产精品91一样| 女同在线视频一区| 久久极品伊人| 国产成人亚洲精品自产在线| 欧美性天天影视| 亚洲黄色影视| 国产一级片| 强免费黄色网址| 久草大| 国内毛片免费h片在线| 国产网站在线播放| 在线精品福利免费播放| 久久久精品成人国产| 性开放中文AV高清无码免费看| 国产对白刺激视频| 亚洲欧美自拍偷拍| 在线观看亚洲成人精品| 免费精品人妻一区二区三| 天天插夜夜操| 加勒比在线视频一区二区三区| 国产精品熟女丝袜一区二区| 婷婷深爱五月| 久久亚洲不卡| 日韩一区二区熟女| 日韩精品电影| 亚洲春色欧美| 亚洲国产丝袜熟女av| 美女操逼A A| 欧美成人A天堂片在线观看| 波多野结衣先锋影音| 五月天婷精品激情| 精品一区二区三区蜜桃臀赵总 | 午夜精品久久久久久久男人的天堂 | 亚洲av影音先锋| 四虎视频在线观看| 国产 大胆 对白| 色香综合天天影视综合| 78精品在线| 色欲天天综合久久久无码网中文| av最新免费中文字幕| 级做a爱无码性色永久免费| 最新国产精品久久精品| 极品五月天噜噜| 91美女在线视频| 色一区二区三区综合| 97干在线视频| 99在线免费公开视频| 五月丁香婷婷综合| 国产丰满熟夫69mpp| 伊人嫩草| 欧美不卡在线一区二区| 欧美成va视频网站| 国产传媒美日韩av| 少妇久久久久久| 亚洲天堂AV在线播放| 日本综合色图| 精品美女久久一二三| 男同专区一区二区三区在线| 乱伦a片视频| 91蜜臀在线久久久久| 日本中文字幕熟妇| 色哟哟AⅤ| 久久久久久久久久8888| 97er欧美性| 天天综合网~91| 欧美国产伊人久久久久| 亚洲狼狼干综合1| 青青草原av| 国产人伦a片信息免费片| 香蕉在线一区二区三区| 9997se| 中文字幕在线观看网址| 2010男人的天堂| 久久久久婷婷精品av电影| 激情黄色片在线观看| 亚洲色综合| 中文一区二区| 91中出| 91人人爽人人爽| 大香久久| 99熟女| 综合欧美色图| 黄色免费网页无码| AV男人天堂网| 国模无码一区二区三区在线| 97色色国产视频| 人人操人人爽人人操人人| 五月丁香色综合| 精品高清牛人盗摄一区二区三区中文字幕A片免费在线观看 | 亚洲影视综合网| 91熟女在线| 色综合色| 91亚洲网站| 99久久九九| 老鸭窝在线视频播放| 国产白嫩漂亮KTV在线| 色臀aV| 亚洲第一狼人丝袜美女另类| 91网站18在线| 人妻丰满熟妇一区二区三| 亚州操操穴网| 精品欧美老熟女一二区| 99久久综合| 亚洲 小说 欧美 激情 另类| 亚州综合电影| 亚洲啪AⅤ永久无码| 久久精品久久久久久久| 国产大学生高潮在线播放 | 日本精品一区二区中文字幕| 国产乱不卡| 大香蕉久操| 91精品国产91熟女| 人人妻人人操人人乐| 国产强奸乱伦无码视频| 亚洲城人男人的天堂| 欧美性爱精品七区| 欧美日韩亚洲高清不卡一区二区三区| 人人性爱视频免费| 国产乱子伦一区二区三区免看| 欧美日韩一区二区三区四区蜜桃| 国产精品3| 狠狠干狠狠色| 亚洲第一页第二页激情| 亚洲人妖网| 精品性爱无码在线播放| 亚欧美色| 男人的天堂VA在线| 激情专区综合| 亚洲av成人精品一区| 亚洲综合贴图91| 操逼操操操91| 亚洲av成人精品一区| 女人的天堂大香蕉网| 自拍大香蕉乱插| 啊啊啊啊啊啊啊啊视频| 97视频在| 天天操综合网| 熟妇的味道HD中文字幕| 一二三四区电影| 无码一区二区三区四区五区六区七区八区九区十区视频 | 女人被男人桶爽视频网站| 丁香九月激情啪| 超碰视97中文| 色香色欲天天综合网天天来吧| 色爱综合网欧美| 午夜天堂网| 人妻熟女一区二区| 天天综合亚在线| 美国人人操人人操| 久久91| 强奸熟女一区二区三区| 防屏蔽在线视频| 国产一级137片内射麻豆| 伊人久久88国产女| 乱伦系列一区二区| 午夜免费视频1000| 亚洲色图20p| 99这里只有精品| 在线a v| 在线免费观看高清无码视频| 91精品国产91久久久久久久久久久久| 国产精品高潮久久AV| 久久久久人妻| 无码在线亚洲| 欧美一区二区三区四区综合| 男人的天堂com| 欧美中文字幕男人天堂久久精品| 女人爽到高潮潮喷18禁网站| se01国产在线视频| 人人搞人人插人人操| 欧美伦乱| 蜜臀av网址| 自拍亚洲综合| 精产国品一区二三产品| 中文高清一区二区的| 精品-91人妻子系列| 黄片色区软件| 日韩色| 国产中文字幕在线点播| 东京热一区二区中文字幕| 淫淫综合网| 欧美淫乱视频| 偷拍99| 黄色一区三区| 任你干在线视频| 91性高| 粉嫩AV一区夜夜嗨| 亚洲色入欧美| 中文字幕女同在线| 试看福利| ai欧美亚洲小说| 欧美亚洲厕所精品偷拍91| 亚洲天天艹| 欧亚久久偷拍视频| 九九九九日本 | 我中文字幕6区| 中文字幕激情小说| 欧洲亚洲人妻无码中字久久三区四区| 欧美亚洲清纯| 黄色小视频日本txt| 久久这里都是精品| 清纯唯美综合| caoni国产亚洲av| 极品粉嫩一区二区| 欧美综合天天| 丁香婷婷大香蕉| 在线观看午夜婷婷久久久久清性观看| 久久久96| 亚洲高潮少妇| 天美传媒AV在线| 久久欧美性爱视频| 后入式在线免费观看60秒| 国产国产亚洲一二三久久| 日韩性爱1级片视频| 超碰午夜在线| 激情文学88| 花野真衣| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区 | 91精品免费| 九九九九九九免费视频| 91日韩网站| 亚洲色图欧美激情| 国产视频一区二区三区在线免费观看| 天天日天天干天天操| 亚洲午夜未满十八勿入网站日本又色又爽又黄| 国产精品国产| 精品性爱| 久久精品免视看国产成人﹣蜜臀av一区. 久久精品免视看国产成人,蜜臀av一区 | 风间由美日韩欧美久久| 午夜精品视频777| 在线小说视频一区| 一个人免费HD91视频| 激情另类激情| 久久五月婷| 青草地一本线一区二区三区| 五月丁香综合啪啪| 欧美色综合网| 97午夜剧场日韩| 大色综合| 亚洲综合113页| 久久亚洲国产成人| 神马福利久草| 无码不卡亚洲成?人片| 性色avv| 国产精品盗摄 偷窥盗摄| 午夜舔阴达高潮视频免费看| 亚洲欧美综合| 99操逼| 九九九九精品一区| 人妻少妇精品视频一区二区三区| 亚川综合视频| 高清不卡国产| 日本三级精品| 亚洲导航深夜福利| 综精品久久久aaaa| 91欧美综合在线| 边做饭边操逼逼| 六月婷婷色综合| 久久欲| 亚洲综合骚逼| 久久久九九九| 欧美少妇内射| 囯产操逼片| 欧美性高潮在线| www.狠狠干.coom| 熟女熟妇一区二区三四区| 思思热一热婷婷热一热| 啊灬啊灬啊灬好深灬快高潮了动漫-国产字幕国产在线观看-B049AV | 九九九九精| 91美女视频| 97色伦欧美| 亚洲色婷婷综合久久一区二区三区| 天天躁日日躁AAAAXXXX国产| 天堂av2019| 国产精品女aA片爽爽视频| 九色婷婷| 欧美色老汉| 亚州AV无码国产精品| 99在线视频播放| 园内精品自拍视频在线播放| 久草资源在线视频官方总站日韩丝袜美腿 | 久久中日麻豆| 亚洲无码偷拍| 九九玖玖精品| 香蕉人欧美综合| 日本天天吊| 欧美97在线欧| 久久黄色网址| 亚洲av青草久久一区二区| 中文字幕人妻丝袜| 97碰| 欧美九九爱| 999久久久| av天堂影视中文在字幕在线中文| 欧美 色 亚洲| 天天透伊人| 国产精品九九九| 91精品电影18| 日本日逼高清| 涩涩久久精品| 曰韩成人免费视频| 亚洲情色 自拍| 狠狠色综合网| 欧美黄业| 老师充足的奶水小说| ji熟女.com| 99re不伦| 人人摸人人添人人操 | 阿姨一区二区免费视频-高清正片西瓜视频下载app-T450AV | 亚洲美女av无码| 在线综合色| 粉嫩av在线| 欧美激情专区| 97伦综合| 亚洲综合草草| 女人的天堂大香蕉网| 黑人天8A∨高清网站| 志村玲子视频一区二区| 草莓精品视频| 涩涩这里只有精品视频| 黄色免费网| 国内偷拍精品一区二区| 澳门色噜噜色噜噜色噜噜色噜噜色噜噜| 嫩草影院永久在线制服丝袜| 吉川爱美98堂在线| 天堂精品在线| 日本中文字幕在线视频| 抽查国产福利主播| 色噜噜人妻av中文字幕| 亚洲成人免费电影| 欧日a| 人人人人插| 欧美性爱1080p| 又大又大又大又粗爽高潮观看| 国产400孕妇孕交群| 亚洲人综合19| 欧美+日产+中文| 亚洲欧美骚| 中文字幕一区二区三区50路| 亚洲视频精选| 中文乱码字幕观看| 九九热九九| 视频国产成人精品日本亚洲18| 97操| 日本孕妇一区二区视频操逼免费看| 亚洲天天操| 秋霞操逼片| 国产精品久久天天干| 久久国产在线一区二区| 中文字幕美女91| 国产精品久久久久婷婷二区次| 青草综合| 亚欧毛片基地国产毛片基地| 久久久久久亚洲Av无码| 999精品久久久久久久| 色哟哟 日韩精品| 黄色成人网久久久久久| 黄页大片在线观看| 任我爽视频在线观看| 国产十八禁视频| 98福利在线视频| 天天天做天天天爱天天天爽| 久久日韩肥臀| 欧美日本久久精品一区 | 亚洲最大的黄色电影网站。| 久99| 日韩一区二区三区四区五区| 囯戸精品高潮呻吟旡码| 中文乱码字幕观看视频| 欧美综合1性辶| 天天综合网合集91| 国产白丝在线| 欧美综合色站| 久热99| 久久AV无码网址| 二男一女成人A片| 日韩熟女操逼| 欧美人与动性人交a| 久久精品—区二区三区内射| 色www精品视频在线观看| 试看福利| 九草在线大香蕉| 欧美精品丝袜久久久中文字幕| 丰满人妻一区二区三区免费,| 欧美一区二区亚洲天堂| 国产AV高清AV无码| 国产97色在线| 精品-91人妻子系列| 成人av免费观看| 大地资源在线观看中文第二页| 欧美日韩国产高清在线一二三区 | 天天干人人干天天日97| 精品传媒在线一区| 天天看天天在线精品| 最近的最新的中文字幕视频| 美国人人操人人操| 亚洲熟妇一,二,三期| 一区二区三区国产在线播放| 97国产精品国| 熟妇高潮一区二| 久久久久少妇| 欧美在线|亚洲| 欧美日韩少妇色情| 欧美熟妇亚洲版| 天天干夜夜操一区二区| 男人的天堂日韩| 91青青| 精品对白久久不卡| 97在线观看| 久久超碰国产一区二区三区| 一级毛片久久久久久久女人18| 成人精品一区二区91毛片不卡| 亚洲人妻中文高清| 色婷婷五月综合激情中文字幕| 大香蕉碰碰| 九月丁香婷婷| 日韩欧美偷拍美女视频| 99国产精品自在自在| 91另类| 亚洲欧美精品国产一区二区| 大香网站| 成人国产精品三级A片| 丁香五月婷婷基地| 婷婷伊人一区| 欧美久久人妻少妇一区二区| 日本淫穴在线| 亚洲一区二区av| 欧美亚洲自拍另类人妻| 精品一区二区在线针对华人免费观看这里只有精品免费观看 | 91老司机在线| 亚洲精品白浆高清久久久久久| 亚洲国产欧美中文永久| 亚洲国产欧美日韩人妻日中文| 日韩欧美丝袜诱惑| 超碰 国产熟女精品一区| 欧美性夜| 手机在线A片| 精品 码产区一区二-1080P高清在线www-B029AV | 亚洲国产亚洲天堂| 日韩免费中文字幕视频| 日韩在线观看字幕精品| 天美av在线观看| 极品内射| 综合亚洲网| 中文字幕一区二区日韩网| 激情综合网五月婷婷| 岛国AV一区二区电影| 国产日韩中文字幕欧美| 秋霞午夜成人福利片片| 日本精品一级二级三级| 色婷婷狠狠| 2017大香蕉国产精品久久| 99re黄| 国产97色在线| 好好的日:com久久九九| 神马午夜久久| 激情五月婷| 丝袜色综合| 天堂69亚洲精品中文字| 欧美性爱五月天| 日韩中文字幕精品一二三事国产精品| 国产二区三区免费视频| 九九色色| 欧美亚州综合网图片| 精品久久久久av影院| 色狠狠综合噜一二三区| 国产精品久久久久久9999| 天堂а√在线最新版在线| 97色冈| 中文字幕人妻丝袜乱一区三区| 欧亚在线视频| 色眯眯av| 无码精品久久| 日韩乱码Av| 久热伊人| 日韩午夜啪啪视频| 另类图片亚洲加勒比另类图片亚洲加勒比另类图片亚洲加勒比 | 呦呦一区| 97电影院超碰| 一区二区不卡| 毛片电影一区二区三区| 婷婷午夜清品久久久久久久性色视频观| 日本在线一二 | 久久天天艹| 97操在线| 超碰在线91| 测评在线观看AV| 日本一级不卡一二区| 日韩久久三区| 黄色操人| 国产精品一区二区麻豆| 日韩亚洲美女一区久久| 私人尤物在线精品不卡| 日本999精品| 丁香六月综合激情| 強姦亂倫a| 天海翼久久| 日韩素人无码一区二区三区三州| 美国黄片aaa| 99re6久热只有精品6在线直播 | 厕所偷拍在线| 一区二区三区免费岛国片| 97超碰精品成| 国产13区| 插欧洲美女欧美精品| 欧美色www亚洲国产阿娇要播| 欧美在线综合| 久久大香蕉手机高清视频| 久久亚洲AV无码专区国产精品| 欧美姓爱综合网| 青青草字幕AV| 翔田千里无码中出中文字幕| 熟妇一区,二区,三区。| 超碰在线974| 大香蕉久| 成人性爱高清视频免费看| 粉嫩av平台| 国产97av| 少妇蹲下买菜露大唇0| 青青操少妇| 五月天婷婷久久| 超碰久久综合| 天堂а√在线最新版在线| 欧美在线视频观看一二三四区高清| 五月天社区| 日韩一级欧美一级国产一级台湾 | 久草加勒比一区在线| 最新国产精品久久精品| 97碰久久| 91美女看B| 传媒免费一区二区三区| 婷婷久久综合久| 伊人五月天婷婷| 中国人高清www色视频免费| 久久久涩| 久久骚少妇| 正在播放国产精品一区| 欧美视频激情久久久久久| 国语对白露脸XXXXXX| 熟人人妻少妇精品久久| 欧美天天谢综合网| 五月天色色网站| 伊人热综合| 91成人亚洲色图| 人人妻人人色| 91夜色| 免费97视频| 日本国产二线女色| 97视频新免费| 综合色啪| 亚洲啪啪综合?v一区综合精品区| 韩日精品福利视频一区不卡在线免| 婷婷久久综合久| 秋霞久久亚洲精品成人| 天天射日日干| 久久九九热| 国产精品嫩草影院免费| 偷拍精品一区二区三区| 大香蕉一人| 91爱剪切久久| 碰超人人在线一区二区三区| 96AV精品| 国色天香av| 99re这里只有精品中心播放 | 黑人狂躁日本妞一区二区三区| 久久精品久| 午夜男女爽爽爽影院视频| 国产欧美在线观看免费观看| 啊啊啊啊啊好多水| 男人午夜天堂| 99热这里只有精品18| 941超碰| 殴美牲| 亚洲精品一区二区三区新线路| 久操B网| 91色爽欧美| 在线日韩日本亚洲国产| 東南亚性呦成人伦理资源在线视频| 老熟妇一区二区三区啪啪| 国产人妻精品一区二区三区秋霞 | 一区二区三区探花在线观看| 天天射天天操天天干天天吃2018 | 久久久天美| 久久久久ab| 日韩另类色图| 男人的天堂不卡一区二区| 精品国产肉丝袜在线拍国语| 手机在线视频国内精品| 不卡av在线中文字幕| 狠狠久久手机视频精品| 亚洲图片欧美色图| 91丝袜| 91色射| 密臀在线视频| 综合色区偷拍| www亚洲欧美| 久久精品久久久久久久|