<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                # 準備Kali Linux ARM chroot 雖然你能從下載區[下載Kali ARM鏡象](http://www.kali.org/downloads "Download Kali Linux ARM Images")但是有人更熱衷于定制他們的Kali rootfs.如下展示一個制作Kali armhf rootfs的例子. ### 安裝需要的軟件和依賴 ``` apt-get install debootstrap qemu-user-static ``` ### 定義架構和定制包 這里定義一些你需要的ARM架構(armel或armhf)的環境變量,下列的包將會安裝到你的鏡象里.這是全文要用到的,所以務必根據你的需要修改它們. ``` export packages="xfce4 kali-menu kali-defaults nmap openssh-server" export architecture="armhf" #export disk="/dev/sdc" ``` ### 建立Kali rootfs 我們創建一個標準的目錄結構并從Kali Linux的源用bootstrap獲得ARM rootfs.然后我們從我們的主機復制**qemu-arm-static**到rootfs,以便進行第2步. ``` cd ~ mkdir -p arm-stuff cd arm-stuff/ mkdir -p kernel mkdir -p rootfs cd rootfs debootstrap --foreign --arch $architecture kali kali-$architecture http://repo.kali.org/kali cp /usr/bin/qemu-arm-static kali-$architecture/usr/bin/ LANG=C chroot kali-$architecture /debootstrap/debootstrap --second-stage ``` #### 第2步chroot 這里我們配置基本的鏡象設置,例如keymaps,源,默認網絡接口特性(有需要的話請修改)等.. ``` cat << EOF > kali-$architecture/debconf.set console-common console-data/keymap/policy select Select keymap from full list console-common console-data/keymap/full select en-latin1-nodeadkeys EOF cat << EOF > kali-$architecture/etc/apt/sources.list deb http://repo.kali.org/kali kali main contrib non-free deb http://repo.kali.org/security kali/updates main contrib non-free EOF echo "kali" > kali-$architecture/etc/hostname cat << EOF > kali-$architecture/etc/network/interfaces auto lo iface lo inet loopback auto usbmon0 iface usbmon0 inet dhcp EOF ``` #### 第3步chroot 這里開始定制.$Packages變量表示這個包將會被安裝,默認root的密碼將被設置為”toor”,以及修改和修復其它配置. ``` mount -t proc proc kali-$architecture/proc mount -o bind /dev/ kali-$architecture/dev/ mount -o bind /dev/pts kali-$architecture/dev/pts cat << EOF > kali-$architecture/third-stage #!/bin/bash debconf-set-selections /debconf.set rm -f /debconf.set apt-get update apt-get -y install git-core binutils ca-certificates apt-get -y install locales console-common less nano git echo "root:toor" | chpasswd sed -i -e 's/KERNEL!="eth*|/KERNEL!="/' /lib/udev/rules.d/75-persistent-net-generator.rules rm -f /etc/udev/rules.d/70-persistent-net.rules apt-get --yes --force-yes install $packages rm -f /third-stage EOF chmod +x kali-$architecture/third-stage LANG=C chroot kali-$architecture /third-stage ``` ### 在chroot環境中手動配置 如果有需要,你可以手工在rootfs環境里進行最終和必要的修改. ``` LANG=C chroot kali-$architecture {在chroot環境里做額外的修改} exit ``` #### 清理chroot環境里的被鎖文件 事實上在rootfs里一些你已經安裝的包可能會產生被鎖文件(例如在chroot環境里運行中的服務),需要在我們能關閉chroot時釋放.在你umount之前可能需要在chroot環境里停止一些服務.umount proc和dev的命令: ``` umount kali-$architecture/proc umount kali-$architecture/dev/pts umount kali-$architecture/dev/ ``` 然而,如果仍然有服務在chroot里運行,將會出現這樣的錯誤提示: ``` root@rootfs-box:~ umount kali-$architecture/proc root@rootfs-box:~ umount kali-$architecture/dev/pts root@rootfs-box:~ umount kali-$architecture/dev/ umount: kali-armhf/dev: device is busy. (In some cases useful info about processes that use the device is found by lsof(8) or fuser(1)) root@rootfs-box:~ ``` 如果出現這種情況,請用如下命令檢查哪個文件/服務鎖住了chroot: ``` root@rootfs-box:~/arm-stuff/rootfs:~ lsof |grep kali-armhf ... dbus-daem 4419 messagebus mem REG 8,1 236108 15734602 dbus-daemon dbus-daem 4419 messagebus mem REG 8,1 93472 17705250 ld-2.13.so ... dbus-daem 4419 messagebus mem REG 8,1 100447 17705251 libpthread-2.13.so dbus-daem 4419 messagebus mem REG 8,1 22540 17705240 librt-2.13.so dbus-daem 4419 messagebus mem REG 8,1 893044 17705232 libc-2.13.so ... ``` 從輸出信息我們看到dbus守護進程仍在chroot環境里運行.在繼續之前,我們需要在chroot環境里停止它.如果你已經成功umount了proc或dev,請用之前給出的命令重新掛載他們,chroot到rootfs里,然后停止dbus服務(或別的可能需要停止的服務): ``` # mount -t proc proc kali-$architecture/proc # mount -o bind /dev/ kali-$architecture/dev/pts LANG=C chroot kali-$architecture /etc/init.d/dbus stop exit ``` 一旦釋放了所有的服務和被鎖文件,你就可以umount proc和dev了: ``` root@rootfs-box:~/arm-stuff/rootfs~ umount kali-$architecture/proc root@rootfs-box:~/arm-stuff/rootfs~ umount kali-$architecture/dev/pts root@rootfs-box:~/arm-stuff/rootfs~ umount kali-$architecture/dev/ root@rootfs-box:~/arm-stuff/rootfs~ ``` ### 清理 最后我們運行在chroot里的清理腳本釋放緩存文件占用的空間,還有需要的清理工作: ``` cat << EOF > kali-$architecture/cleanup #!/bin/bash rm -rf /root/.bash_history apt-get update apt-get clean rm -f cleanup EOF chmod +x kali-$architecture/cleanup LANG=C chroot kali-$architecture /cleanup /etc/init.d/dbus stop umount kali-$architecture/proc umount kali-$architecture/dev/pts umount kali-$architecture/dev/ cd .. ``` 恭喜!你定制的Kali ARM rootfs就在kali-$architecture目錄里.你可以為往后的工作打包這個目錄,或復制到一個鏡像文件.
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看