![Hozzáférés a távoli gyökér fájlrendszerhez DB410 használatával Ethernet -kulcsként: 6 lépés Hozzáférés a távoli gyökér fájlrendszerhez DB410 használatával Ethernet -kulcsként: 6 lépés](https://i.howwhatproduce.com/images/005/image-13399-20-j.webp)
Tartalomjegyzék:
- 1. lépés: Követelmények
- 2. lépés: A gazdagép konfigurálása kernelépítéshez és kernel létrehozása a HOST -ban
- 3. lépés: A Boot.img újjáépítése a HOST -ban
- 4. lépés: Gyökér fájlrendszer létrehozása a HOST -ban
- 5. lépés: Szerver NFS létrehozása a HOST -ban és a fájlok másolása
- 6. lépés: A Dragonboard 410c rendszerindító képének frissítése és a hálózati interfészek konfigurálása
2025 Szerző: John Day | [email protected]. Utoljára módosítva: 2025-01-23 14:48
![Hozzáférés a távoli gyökér fájlrendszerhez DB410 használatával Ethernet -kulcsként Hozzáférés a távoli gyökér fájlrendszerhez DB410 használatával Ethernet -kulcsként](https://i.howwhatproduce.com/images/005/image-13399-21-j.webp)
Célok:
- Telepítse az eszköztárat és fordítsa újra a kernelt az USB Ethernet CDC Gadget támogatás behelyezéséhez;
- Hozza létre a boot.img fájlt Linaro -ból az USB Ethernet CDC indításához;
- Hozzon létre NFS szervert a gyökér fájlrendszer tárolására;
- IP -konfiguráció a DEVICE és a HOST rendszerben.
1. lépés: Követelmények
A következőkre lesz szüksége:
- Egy DragonBoard ™ 410c (itt az eszköz neve);
- Az Ubuntu 16.04.3 -at használó számítógép (frissítve itt: HOST) internetkapcsolattal és SDCard -nyílással;
- A Linaro fejlesztői 431 -es verziójának tiszta telepítése - Link: Pillanatkép Linaro Debian v431
- HDMI monitor;
- USB billentyűzet;
- 8 GB -os SDCard;
- USB -kábel, uUSB USB a DEVICE csatlakoztatásához a HOST -on.
2. lépés: A gazdagép konfigurálása kernelépítéshez és kernel létrehozása a HOST -ban
Először létre kell hoznunk az összes könyvtárat, mielőtt folytatnánk. Így:
$ cd ~
$ mkdir db410remoteroot $ cd db410remoteroot $ mkdir toolchain $ mkdir db410c-modules
Sajnos a Linaro (431 -es verzió) által használt Linux -kernel nem támogatja az USB Ethernet -modulokat, ezért a Linux -kernelt újra kell építeni ehhez a verzióhoz. Töltse le a Linaro eszköztárat a Linux rendszermag kiépítéséhez és telepítéséhez a Dragonboard410c készüléken az x86 gazdagépről.
$ wget
$ tar -xf gcc-*-x86_64_aarch64-linux-gnu.tar.xz -C./toolchain --strip-components = 1
Most telepítse a kernel létrehozásához szükséges csomagokat:
$ sudo apt update && sudo apt-get install git build-essential abootimg kernel-package fakeroot libncurses5-dev libssl-dev ccache
Szerezze be a Linux Kernel forrás Clone Qualcomm leszállási csapatának Linux -tárházát:
$ git klón
$ cd kernel $ git checkout origin/release/qcomlt-4.14 -b my-custom-4.14
Most állítsa be a fordítási környezeti változókat:
$ export ARCH = arm64
$ export CROSS_COMPILE = $ (pwd) /../ toolchain/bin/aarch64-linux-gnu-
Ezen a ponton hozzá kell adnunk a modulokat az USB Ethernet CDC -hez a kernelben. Ezt korábban is megtettem, és ezt a lépés végén megkaphatja. Néhány itent eltávolítottam, de működik.
Mielőtt lefordítaná, javítsa ki a rendszermag hibáját a driver/mmc/host/sdhci-msm.c fájlba, és módosítsa az 1150-es sor szerkezetét:
static const structure sdhci_ops sdhci_msm_ops = {
.reset = sdhci_reset,.set_clock = sdhci_msm_set_clock,.get_min_clock = sdhci_msm_get_min_clock,.get_max_clock = sdhci_msm_get_max_clock,.set_bus_width = sdhci_set_bus_width,.set_uhs_signaling = sdhci_msm_set_uhs_signaling,.voltage_switch = sdhci_msm_voltage_switch, #ifdef CONFIG_MMC_SDHCI_IO_ACCESSORS.write_w = sdhci_msm_write_w, #endif};
Tömörítse ki a configfile.zip fájlt, másolja át a
$ make -j $ (nproc) Image.gz dtbs
$ make -j $ (nproc) modules $ make modules_install INSTALL_MOD_PATH =../db410c -modules
Hivatkozás: 96Boards dokumentáció
3. lépés: A Boot.img újjáépítése a HOST -ban
Ebben a lépésben meg kell nyitnunk az initrd leképezést, be kell helyeznünk a képbe épített modulokat, konfigurálnunk kell a rendszert, hogy elindítsa ezeket a modulokat, és újra kell építenünk az initrd.img fájlt egy új kernel parancssorral a root fájlrendszer távoli indításához.
Tehát először le kell töltenünk az initrd.img fájlt a linaro webhelyről:
$ cd..
$ mkdir inird_nfs $ cd initrd_nfs $ wget -O ramdisk.img
A letöltés után bontsa ki és bontsa ki az initrd fájlt:
$ zcat ramdisk.img | cpio -idmv
Ebben a könyvtárban a gyökér fájlrendszert használjuk, amelyet a kernel használ az inicializálás során, ezért konfiguráljuk az USB Ethernet CDC modulokat és az NFS távoli paramétereket, például az NFS szerver IP -jét és az Ethernetet (usb).
Most konfiguráljunk néhány fájlt:
conf/initramfs.conf:
MODULOK = legtöbb
BUSYBOX = auto COMPRESS = gzip DEVICE = usb0 NFSROOT = auto RUNSIZE = 10%
Hozza létre az init-premount könyvtárat a könyvtári parancsfájlokban/
$ mkdir szkriptek/init-premount
és adja hozzá a fájlokat a most létrehozott könyvtárhoz:
RENDELÉS
/scripts/init-premount/usb "$@"
[-e /conf/param.conf] &&. /conf/param.conf
usb
#!/bin/sh
PREREQ = "" prereqs () {echo "$ PREREQ"} case $ 1 in # get pre-requisites prereqs) prereqs exit 0;; esac modprobe usb_f_ecm modprobe libcomposite modprobe usb_f_rndis modprobe g_ether
Ne felejtse el használni a chmodot az usb fájlban, hogy végrehajtható legyen:
$ chmod +x szkriptek/init-premount/usb
Most másolja át az összes könyvtárat a modulokkal a db410c-modules-ből (2. LÉPÉS) a lib/modules-ba az initrd-ben:
$ cp -R../db410-modules/lib usr/
Távolítsa el az összes fájlt a lib/modules/4.14.96-xxxx-dirty könyvtárból, kivéve az összes fájlmodult.* És a fájllistát:
kernel/drivers/usb/gadget/legacy/g_ether.ko
kernel/drivers/usb/gadget/legacy/g_mass_storage.ko kernel/drivers/usb/gadget/legacy/g_cdc.ko kernel/drivers/usb/gadget/legacy/g_serial.ko kernel/drivers/usb/gadget/function/usb_f_mass_storage.ko kernel/drivers/usb/gadget/function/usb_f_acm.ko kernel/drivers/usb/gadget/function/u_ether.ko kernel/drivers/usb/gadget/function/usb_f_obex.ko kernel/drivers/usb/gadget/function /usb_f_serial.ko kernel/drivers/usb/gadget/function/usb_f_ecm.ko kernel/drivers/usb/gadget/function/usb_f_rndis.ko kernel/drivers/usb/gadget/function/u_serial.ko kernel/drivers/usb/gadget /function/usb_f_fs.ko kernel/drivers/usb/gadget/function/usb_f_ecm_subset.ko kernel/drivers/usb/gadget/libcomposite.ko
Ezek a fájlok mind olyan modulok, amelyek az USB Ethernet CDC elindításához szükségesek.
Végül pakolja vissza és tömörítse az initrd képet:
$ lelet. | cpio -o -H newc | gzip -9>../kernel/initrd_nfs.img
Legalább a rendszermagképet és a DTB -fájlt be kell csomagolni egy Android rendszerindító képbe. Ilyen kép az abootimg eszközzel hozható létre.
Lépjünk be a kernel könyvtárába és használjuk az alábbi parancsot a kép létrehozásához és a DTB hozzáfűzéséhez a tömörített kernelképhez:
$ cd../kernel
$ cat arch/$ ARCH/boot/Image.gz arch/$ ARCH/boot/dts/qcom/apq8016-sbc.dtb> Image.gz+dtb
És végül, generálja a rendszerindító képet (itt a rootfs -ünk egy távoli partícióban található a 10.42.0.1 -ben)
abootimg --create boot -db410c.img -k Image.gz+dtb -r initrd_nfs.img -c pagesize = 2048
-c kerneladdr = 0x80008000 -c ramdiskaddr = 0x81000000 -c cmdline = "root =/dev/nfs nfsroot = 10.42.0.1:/srv/nfs/rootfs ip = 10.42.0.2: 10.42.0.1: 10.42.0.1: 255.255.255.0: db410c: usb0: ki rw rootwait konzol = tty0 konzol = ttyMSM0, 115200n8"
Hivatkozások:
- https://access.redhat.com/solutions/24029
- 96Boards dokumentáció
4. lépés: Gyökér fájlrendszer létrehozása a HOST -ban
Most van egy új rendszerindító képünk a dragonboard 410c frissítéséhez. De szükségünk van egy gyökér fájlrendszerre a távoli kiszolgálón a modulok, szolgáltatások és alkalmazások indításához. Ebben a lépésben megosztott könyvtárat építünk a gazdagépben, hogy mindezeket az adatokat elmentsük. Így töltsünk le egy rootfs fájlrendszert a linaro webhelyről, ugyanazzal a verzióval, mint az initrd. Tehát menjen vissza egy könyvtárba, és töltse le a linaro-developer rootfs képet a 431-es verzióval.
$ cd..
$ wget
Bontsa ki ezt a fájlt
$ unzip dragonboard-410c-sdcard-developer-buster-431.zip
Ennek a fájlnak a használatával írjuk be az összes képet egy sd -kártyára az összes partíció eléréséhez és a rootfs fájlok másolásához. Ezért győződjön meg arról, hogy az uSDCard -ról származó adatokról biztonsági másolatot készít, mert az SDCard -on található adatok elvesznek.
Az SDCard -eszköz nevének megkereséséhez távolítsa el az SDCard -kártyát, és futtassa a következő parancsot:
$ lsblk
Mentse el gondolatban az összes felismert lemeznevet. Most helyezze be az SDCard kártyát, várjon egy pillanatot, és hajtsa végre újra a parancsot:
$ lsblk
Jegyezze meg az újonnan felismert lemezt. Ez lesz az SDCard. Ne feledje nevét, és módosítsa az "of =" paramétert az SDCard -eszköz nevére, és ügyeljen arra, hogy az eszköz nevét partíció nélkül használja, pl.: /dev /mmcblk0
$ sudo dd if = dragonboard-410c-sdcard-developer-buster-431.img =/dev/XXX bs = 4M oflag = szinkronizálási állapot = haladás
Megjegyzések:
- Ennek a parancsnak a végrehajtása eltart egy ideig. Légy türelmes és kerülje a terminál manipulálását, amíg a folyamat véget nem ér.
- Miután befejezte az SD -kártya villogását, vegye ki a gazdagépből.
Hivatkozás: 96 tábla dokumentáció
5. lépés: Szerver NFS létrehozása a HOST -ban és a fájlok másolása
Ezen a ponton van egy rendszerindító képünk, amelyet a 410c dragonboardba kell felvillantani, és egy SDCard, amely rootfs fájlrendszerrel rendelkezik a mi moduljainkhoz, szolgáltatásainkhoz és alkalmazásainkhoz. A következő lépés egy távoli könyvtár létrehozása az USB Ethernet DEVICE és a HOST rootfs fájlrendszer összekapcsolásához. Ezt megteheti az Ubuntu nfs-kernel-server nevű csomagjával.
Ez a csomag egy NFS szolgáltatást telepít az Ubuntuba, amely lehetővé teszi néhány könyvtár megosztását a hálózat egyes eszközein, és az Ön IP -címével beállíthatjuk, hogy melyik könyvtárat kell használni az egyes eszközökhöz.
Tehát telepítsük a csomagot és konfiguráljuk.
$ sudo apt-get install nfs-kernel-server
Az NFS szolgáltatás automatikusan elindul. Az NFS szolgáltatások vezérléséhez használja:
$ sudo service nfs-kernel-server restart // az újraindításhoz, vagy szükség szerint használja a "stop" vagy "start" parancsot.
Az NFS szolgáltatás állapotának ellenőrzéséhez a parancssorból:
$ sudo szolgáltatás nfs-kernel-szerver állapota
nfsd fut // A szolgáltatás fent van nfsd nem fut // A szolgáltatás le van állítva
Most hozzunk létre egy felső könyvtárat /srv /nfs, és hozzunk létre egy alkönyvtárat minden szükséges NFS telepített gyökér fájlrendszerhez. Itt megosztunk egy megosztott gyökér fájlrendszert, hogy megtartsuk a gyökér fájlrendszerünket:
$ sudo mkdir -p /srv /nfs
$ sudo mkdir -p/srv/nfs/rootfs
Most az NFS -kiszolgáló megköveteli az /etc /export helyes konfigurálását, hogy ellenőrizze az egyes NFS fájlrendszer -címtárakhoz való hozzáférést bizonyos állomásokhoz. Ebben az esetben a gazdagépeket IP -címük alapján azonosítják. Tehát minden létrehozott gyökér fájlrendszerhez adja hozzá az export vezérlő sort az /etc /export mappához, szükség szerint igazítva a helyi IP -címet és a könyvtár elnevezési sémáját. Ebben az oktatóanyagban mindig ezt használjuk:
/srv/nfs/rootfs 10.42.0.2 (rw, sync, no_root_squash, no_subtree_check)
Helyezze be újra az SDCard kártyát, csatlakoztassa és másolja az összes rootfs fájlrendszert a/srv/nfs/rootfs fájlba, indítsa újra az NFS szolgáltatást, hogy frissítse a könyvtárat az új másolt fájlok használatával.
Ezenkívül az új modulfájlokat a rootfs fájlrendszerbe kell másolnunk, mert a 2. lépésben összeállítottuk a kernelt. Tehát másolja át az összes könyvtárat a ~/db410c-modules/to/srv/nfs/rootfs fájlba.
$ sudo cp -R ~/db410c -modules/*/srv/nfs/rootfs/
Győződjön meg arról, hogy ezeket a könyvtárakat az NFS szolgáltatás teszi láthatóvá. Bármelyik:
$ sudo exportfs -a
Hivatkozás: TFTP/NFS gyökér fájlrendszer
6. lépés: A Dragonboard 410c rendszerindító képének frissítése és a hálózati interfészek konfigurálása
Korán megtettünk minden lépést a távoli rootfs fájlrendszer megvalósításához, most frissítenünk kell a rendszerindító képet a dragonboard 410c -ben, ehhez csatlakoztassuk a saját USB -kábelünket a számítógéphez és a dragonboard uUSB csatlakozójához. Tehát győződjön meg arról, hogy a gyorsindítás be van állítva a gazdagépen, ha nem a következő használatával telepíti:
$ sudo apt install fastboot
Most a kép frissítéséhez indítsa el a dragonboardot gyorsindítási módba az alábbi lépések végrehajtásával:
- Nyomja meg és tartsa lenyomva a Vol (-) gombot a DragonBoard 410c készüléken, ez az S4 gomb. A DragonBoard ™ 410c -t továbbra sem szabad bekapcsolni
- Miközben lenyomva tartja a Vol (-) gombot, kapcsolja be a DragonBoard 410c készüléket a csatlakoztatásával
- Miután a DragonBoard 410c csatlakoztatva van az áramellátáshoz, engedje el a Vol (-) gombot.
- Várjon körülbelül 20 másodpercet.
- A táblának gyorsindítási módba kell indulnia.
A csatlakoztatott gazdagép terminál ablakából futtassa a következő parancsokat:
$ sudo gyorsindító eszközök
Általában az alábbiak szerint jelenik meg
de82318 gyorsindítás
Ezen a ponton csatlakoznia kell a DragonBoard 410c készülékhez USB -microUSB kábellel. A DragonBoard 410c -t gyorsindítási módba kell indítani, és készen kell állnia a megfelelő képekkel való villogásra. Frissítsük a rendszerindító képet a rendszerindító képünkkel:
$ sudo fastboot flash boot ~/db410remoteroot/kernel/initrd_nfs.img
És indítsa újra a táblát
$ sudo gyorsindítás újraindítása
Most a HOST felismer egy új, usb0 nevű interfészt, de még nincs IP címe. Tehát adjon hozzá egy statikus IP -t ehhez az interfészhez:
$ sudo ifconfig usb0 10.42.0.1 netmask 255.255.255.0 up
Vagy írja be a "Konfiguráció" menüpontot a HOST -on, a "hálózat" menüpontban, és állítsa be az USB Ethernet -et az adott interfész statikus IP -címének.
Most indítsa újra a sárkánytáblát, és ellenőrizze a rendszer indítását, és próbáljon csatlakozni az ssh használatával:
$ ssh [email protected]
Hivatkozások:
- 96boards dokumentáció
- HowtoForge - 6. tétel
Ajánlott:
Távoli objektumérzékelő az Arduino használatával: 7 lépés
![Távoli objektumérzékelő az Arduino használatával: 7 lépés Távoli objektumérzékelő az Arduino használatával: 7 lépés](https://i.howwhatproduce.com/images/001/image-2151-17-j.webp)
Távoli objektumérzékelő az Arduino használatával: Manapság a gyártók, fejlesztők az Arduino -t részesítik előnyben a projektek prototípusainak gyors fejlesztése érdekében. Az Arduino egy nyílt forráskódú elektronikai platform, amely könnyen használható hardverre és szoftverre épül. Az Arduino -nak nagyon jó felhasználói közössége van. Ebben
Cómo Instalar Aplicaciones En La Tarjeta SD (gyökér nélkül): 3 lépés
![Cómo Instalar Aplicaciones En La Tarjeta SD (gyökér nélkül): 3 lépés Cómo Instalar Aplicaciones En La Tarjeta SD (gyökér nélkül): 3 lépés](https://i.howwhatproduce.com/images/011/image-31412-j.webp)
Cómo Instalar Aplicaciones En La Tarjeta SD (No Root): ¿ Alguna vez se corri ó bajo en espacio de memoria en el android y tuvo que eliminar algunas aplicaciones? Con un ordenador y una tarjeta micro SD no tiene que preocuparse por quedarse sin espacio en su tel é fono m á s! Usted
Mobiljátékok rögzítése a Voice Chat Audio *gyökér nélkül: 4 lépés
![Mobiljátékok rögzítése a Voice Chat Audio *gyökér nélkül: 4 lépés Mobiljátékok rögzítése a Voice Chat Audio *gyökér nélkül: 4 lépés](https://i.howwhatproduce.com/images/011/image-32229-j.webp)
Hogyan rögzítsünk mobil játékokat a Voice Chat Audio segítségével hangfelvétel rögzítésére. Vagy rögzítheti a hangját
Távoli SSH hozzáférés a Raspberry Pi 2: 5 lépéshez
![Távoli SSH hozzáférés a Raspberry Pi 2: 5 lépéshez Távoli SSH hozzáférés a Raspberry Pi 2: 5 lépéshez](https://i.howwhatproduce.com/images/001/image-1358-134-j.webp)
Távoli SSH -hozzáférés a Raspberry Pi 2 -hez: valaha is akart Raspberry Pi -t telepíteni a " és továbbra is hozzáférhet? Itt egy egyszerű módja annak, hogy engedélyezze a távoli SSH -hozzáférést a Raspberry Pi 2 készülékhez (és más modellekhez is). Bár vannak olyan megoldások, amelyek VPN -t tartalmaznak, vagy konfigurálják a
Hozzáférés Kiszolgáló vagy a legtöbb Windows számítógép távoli elérése: 6 lépés
![Hozzáférés Kiszolgáló vagy a legtöbb Windows számítógép távoli elérése: 6 lépés Hozzáférés Kiszolgáló vagy a legtöbb Windows számítógép távoli elérése: 6 lépés](https://i.howwhatproduce.com/preview/how-and-what-to-produce/11126737-accesscontrol-a-server-or-most-any-windows-computer-remotely-6-steps-j.webp)
Hozzáférés Kiszolgáló vagy a legtöbb Windows számítógép távoli elérése: Ez az utasítás néhány ötlet ötvözete, amelyek itt láthatók az utasításokon. A Ha4xor4life kiadott egy utasítást Ellenőrzés a személyes fájlkiszolgálón címmel. Jó ötlet, de két bemenettel rendelkező monitorra volt szükség