20230511干掉CV1826的buildroot系统的串口用户名和密码root

20230511干掉CV1826的buildroot系统的串口用户名和密码root
2023/5/11 11:56

https://blog.csdn.net/u011342132/article/details/126116391
buildroot跳过密码登录

 


1、全新原始编译:
rootroot@rootroot-X99-Turbo:~$ 
rootroot@rootroot-X99-Turbo:~$ cd smartpen/
rootroot@rootroot-X99-Turbo:~/smartpen$ 
rootroot@rootroot-X99-Turbo:~/smartpen$ ll
total 116
drwxrwxr-x 18 rootroot rootroot  4096 4月  28 10:20 ./
drwxr-xr-x 32 rootroot rootroot  4096 5月  10 17:23 ../
drwxrwxr-x  2 rootroot rootroot  4096 4月  28 10:19 aw_cali/
drwxrwxr-x  5 rootroot rootroot  4096 4月  28 10:19 bluetooth/
drwxrwxr-x  7 rootroot rootroot  4096 4月  28 10:19 build/
drwxrwxr-x 14 rootroot rootroot  4096 4月  28 10:19 buildroot/
-rwxrwxr-x  1 rootroot rootroot 18139 4月  28 10:19 CHANGELIST.md*
drwxrwxr-x  8 rootroot rootroot  4096 4月  28 10:20 .git/
-rw-rw-r--  1 rootroot rootroot  3820 4月  28 10:19 .gitignore
-rwxrwxr-x  1 rootroot rootroot  4015 4月  28 10:19 GSENSOR.md*
drwxrwxr-x  3 rootroot rootroot  4096 4月  28 10:19 host-tools/
drwxrwxr-x 10 rootroot rootroot  4096 4月  28 10:19 install/
drwxrwxr-x  3 rootroot rootroot  4096 4月  28 10:19 isp_tuning/
drwxrwxr-x 26 rootroot rootroot  4096 4月  28 10:19 linux/
drwxrwxr-x  7 rootroot rootroot  4096 4月  28 10:19 middleware/
drwxrwxr-x  3 rootroot rootroot  4096 4月  28 10:19 osdrv/
drwxrwxr-x  3 rootroot rootroot  4096 4月  28 10:19 package/
drwxrwxr-x  9 rootroot rootroot  4096 4月  28 10:20 ramdisk/
-rw-rw-r--  1 rootroot rootroot   952 4月  28 10:19 README.md
drwxrwxr-x  3 rootroot rootroot  4096 4月  28 10:20 sample_bt/
drwxrwxr-x  5 rootroot rootroot  4096 4月  28 10:20 sample-demo/
drwxrwxr-x 23 rootroot rootroot  4096 4月  28 10:20 u-boot/
-rwxrwxr-x  1 rootroot rootroot  9377 4月  28 10:19 ZTFunctionsTestInfo.md*
rootroot@rootroot-X99-Turbo:~/smartpen$ 
rootroot@rootroot-X99-Turbo:~/smartpen$ 
rootroot@rootroot-X99-Turbo:~/smartpen$ find . -name inittab
./ramdisk/rootfs/common_arm64/etc/inittab
./ramdisk/rootfs/common_uclibc/etc/inittab
./ramdisk/rootfs/common_arm/etc/inittab
./ramdisk/initramfs/glibc_arm/etc/inittab
./ramdisk/initramfs/glibc_arm64/etc/inittab
./ramdisk/initramfs/uclibc_arm/etc/inittab
./buildroot/package/sysvinit/inittab
./buildroot/package/busybox/inittab
rootroot@rootroot-X99-Turbo:~/smartpen$ 
rootroot@rootroot-X99-Turbo:~/smartpen$ 

INFO: size:6400000, offset:9c900,crc:90f1d346
INFO: size:6400000, offset:ce900,crc:4b282398
INFO: Packing rootfs_ext4.emmc done!
 Run pack_system_emmc() function 
mkdir -p /home/rootroot/smartpen/install/soc_cv1826_wevb_0005a/system
  [TARGET] /home/rootroot/smartpen/install/soc_cv1826_wevb_0005a/rawimages/system.emmc 
/home/rootroot/smartpen/build/tools/common/prebuild/make_ext4fs -l 38M  -L SYSTEM /home/rootroot/smartpen/install/soc_cv1826_wevb_0005a/rawimages/system.emmc /home/rootroot/smartpen/install/soc_cv1826_wevb_0005a/system
Creating filesystem with parameters:
    Size: 39845888
    Block size: 4096
    Blocks per group: 32768
    Inodes per group: 2432
    Inode size: 256
    Journal blocks: 1024
    Label: SYSTEM
    Blocks: 9728
    Block groups: 1
    Reserved block group size: 7
Created filesystem with 11/2432 inodes and 1190/9728 blocks
resize2fs -M /home/rootroot/smartpen/install/soc_cv1826_wevb_0005a/rawimages/system.emmc
resize2fs 1.44.1 (24-Mar-2018)
Resizing the filesystem on /home/rootroot/smartpen/install/soc_cv1826_wevb_0005a/rawimages/system.emmc to 1201 (4k) blocks.
The filesystem on /home/rootroot/smartpen/install/soc_cv1826_wevb_0005a/rawimages/system.emmc is now 1201 (4k) blocks long.

  [TARGET] system 
python3 /home/rootroot/smartpen/build/tools/common/image_tool/raw2cimg.py /home/rootroot/smartpen/install/soc_cv1826_wevb_0005a/rawimages/system.emmc /home/rootroot/smartpen/install/soc_cv1826_wevb_0005a /home/rootroot/smartpen/build/tools/common/image_tool/partition_cv1826_wevb_0005a.xml
 Run pack_gpt() function 
~/smartpen/build/tools/common/emmc_tool ~/smartpen
gcc mk_gpt.c crc.c -luuid -lxml2 -L ./ -lm -I ./ -o mk_gpt
./mk_gpt -p /home/rootroot/smartpen/build/tools/common/image_tool/partition_cv1826_wevb_0005a.xml -d /home/rootroot/smartpen/install/soc_cv1826_wevb_0005a/rawimages/gpt.img
xml_file : /home/rootroot/smartpen/build/tools/common/image_tool/partition_cv1826_wevb_0005a.xml
update_dev     : /home/rootroot/smartpen/install/soc_cv1826_wevb_0005a/rawimages/gpt.img
[hq] total size:3727392768
INFO: size:4400, offset:0,crc:7c166466
INFO: Packing gpt.img done!
~/smartpen
INFO: size:7ef3, offset:6000,crc:b9b2bd53
INFO: Packing logo.jpg done!
-bash: [: : integer expression expected
INFO: Packing /home/rootroot/smartpen/install/soc_cv1826_wevb_0005a/upgrade.zip done!
rootroot@rootroot-X99-Turbo:~/smartpen$ 
rootroot@rootroot-X99-Turbo:~/smartpen$ 


rootroot@rootroot-X99-Turbo:~/smartpen$ 
rootroot@rootroot-X99-Turbo:~/smartpen$ 
rootroot@rootroot-X99-Turbo:~/smartpen$ source build/cvisetup.sh
===========================================================
  Usage:
  (1) menuconfig - Use menu to configure your board.
      ex: $ menuconfig
  (2) defconfig $CHIP_$BOARD - Choose EVB board settings.
      ex: $ defconfig cv1835_wevb_0002a
===========================================================

- The avaliable cvitek EVB boards
  cv1835 - cv1835_wevb_0001a [EMMC 8GB + LPDDR4 1GB]
  cv1838 - cv1838_wevb_0001a [EMMC 8GB + LPDDR4 32bit 1GB]
  cv1821 - cv1821_wevb_0005b_spinand [SPINAND 256MB + QFN SIP 128MB]
  cv1822 - cv1822_wevb_0005b_spinand [SPINAND 256MB + QFN SIP 256MB]
  cv1823 - cv1823_wevb_0005a [SPINAND 256MB + BGA SIP 128MB]
  cv1825 - cv1825_wevb_0005a [EMMC + BGA SIP 256MB]
           cv1825_wevb_0005a_spinand [SPINAND 256MB + BGA SIP 256MB]
  cv1826 - cv1826_dictpen_wm108_v00a [EMMC 256MB + BGA SIP 512MB]
           cv1826_wevb_0005a [EMMC 256MB + BGA SIP 512MB YD-X5]
           cv1826_wevb_0005a_1 [YD-X5S]
           cv1826_wevb_0005a_2 [YD-X6]
           cv1826_wevb_0005a_3 [YD-S6]
           cv1826_wevb_0005a_spinand [SPINAND 256MB + BGA SIP 512MB]

rootroot@rootroot-X99-Turbo:~/smartpen$ 
rootroot@rootroot-X99-Turbo:~/smartpen$ 
rootroot@rootroot-X99-Turbo:~/smartpen$ defconfig cv1826_wevb_0005a
 Run defconfig function 
Loaded configuration '/home/rootroot/smartpen/build/boards/cv1826_wevb_0005a/.config'
Configuration saved to '.config'

====== Environment Variables ======= 
  PROJECT: cv1826_wevb_0005a, DDR_CFG=ddr3_1866_x16_auto
  CHIP_ARCH: CV182X, DEBUG=0 BOARD=wevb_0005a
  SDK VERSION: 32bit, RPC=0
  ATF options: ATF_KEY_SEL=default, BL32=1
  UBOOT options: UBOOT_VBOOT=0 ENABLE_BOOTLOGO=1
                 ENABLE_CHARGELOGO=
  CROSS_COMPILE_PREFIX: /home/rootroot/smartpen/host-tools/gcc/gcc-linaro-6.3.1-2017.05-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-
  CROSS_COMPILE_PREFIX_PATH: /home/rootroot/smartpen/host-tools/gcc/gcc-linaro-6.3.1-2017.05-x86_64_arm-linux-gnueabihf
  USE_CCACHE: n
  Flash layout xml: /home/rootroot/smartpen/build/tools/common/image_tool/partition_cv1826_wevb_0005a.xml
  output path: /home/rootroot/smartpen/install/soc_cv1826_wevb_0005a
  sensor: sms_sc035gs
  Sensor tuning param: sony_imx307_sony_imx307

rootroot@rootroot-X99-Turbo:~/smartpen$ 
rootroot@rootroot-X99-Turbo:~/smartpen$ build_all


rootroot@rootroot-X99-Turbo:~/smartpen$ 
rootroot@rootroot-X99-Turbo:~/smartpen$ 
rootroot@rootroot-X99-Turbo:~/smartpen$ find . -name inittab
./ramdisk/rootfs/common_arm64/etc/inittab
./ramdisk/rootfs/common_uclibc/etc/inittab
./ramdisk/rootfs/common_arm/etc/inittab
./ramdisk/build/cv1826_wevb_0005a/target/etc/inittab
./ramdisk/initramfs/glibc_arm/etc/inittab
./ramdisk/initramfs/glibc_arm64/etc/inittab
./ramdisk/initramfs/uclibc_arm/etc/inittab
./buildroot/output/cvitek_cv182x/build/busybox-1.33.0/examples/inittab
./buildroot/output/cvitek_cv182x/build/busybox-1.33.0/examples/bootfloppy/etc/inittab
./buildroot/output/cvitek_cv182x/target/etc/inittab
./buildroot/package/sysvinit/inittab
./buildroot/package/busybox/inittab
rootroot@rootroot-X99-Turbo:~/smartpen$ 
rootroot@rootroot-X99-Turbo:~/smartpen$ 
rootroot@rootroot-X99-Turbo:~/smartpen$ 

 


2、编译后生成的文件:
./ramdisk/build/cv1826_wevb_0005a/target/etc/inittab

./buildroot/output/cvitek_cv182x/target/etc/inittab

很容易知道(根据经验在全部的inittab中加打印,看哪个inittab起作用!):
Z:\smartpen\ramdisk\initramfs\glibc_arm\etc\inittab
# Put a getty on the serial port
console::respawn:/sbin/getty -L  console 115200 vt100 # GENERIC_SERIAL

echo "2023/4/28 18:33 wenyuanbo"

# Stuff to do for the 3-finger salute
#::ctrlaltdel:/sbin/reboot


Z:\smartpen\ramdisk\initramfs\glibc_arm64\etc\inittab
# Put a getty on the serial port
#ttyS0::sysinit:/bin/sh
#ttyS0::respawn:/sbin/getty -L  ttyS0 115200 vt100
console::respawn:/sbin/getty -L  console 115200 vt100 -n -l /usr/local/bin/autologin

echo "2023/4/28 18:34 wenyuanbo"

# Stuff to do for the 3-finger salute
::ctrlaltdel:/sbin/reboot


Z:\smartpen\ramdisk\initramfs\uclibc_arm\etc\inittab
# Put a getty on the serial port
console::respawn:/sbin/getty -L  console 115200 vt100 # GENERIC_SERIAL

echo "2023/4/28 18:35 wenyuanbo"

# Stuff to do for the 3-finger salute
#::ctrlaltdel:/sbin/reboot


Z:\smartpen\ramdisk\rootfs\common_arm\etc\inittab
# Put a getty on the serial port
#ttyS0::sysinit:/bin/sh
#ttyS0::respawn:/sbin/getty -L  ttyS0 115200 vt100
console::respawn:/sbin/getty -L  console 115200 vt100 -n -l /usr/local/bin/autologin

echo "2023/4/28 18:41 wenyuanbo"

# Stuff to do for the 3-finger salute
::ctrlaltdel:/sbin/reboot


Z:\smartpen\ramdisk\rootfs\common_arm64\etc\inittab
# Put a getty on the serial port
#ttyS0::sysinit:/bin/sh
#ttyS0::respawn:/sbin/getty -L  ttyS0 115200 vt100
console::respawn:/sbin/getty -L  console 115200 vt100 -n -l /usr/local/bin/autologin

echo "2023/4/28 18:42 wenyuanbo"

# Stuff to do for the 3-finger salute
::ctrlaltdel:/sbin/reboot


Z:\smartpen\ramdisk\rootfs\common_uclibc\etc\inittab
# Put a getty on the serial port
#ttyS0::sysinit:/bin/sh
#ttyS0::respawn:/sbin/getty -L  ttyS0 115200 vt100
console::respawn:/sbin/getty -L  console 115200 vt100 -n -l /usr/local/bin/autologin

echo "2023/4/28 18:43 wenyuanbo"

# Stuff to do for the 3-finger salute
::ctrlaltdel:/sbin/reboot


Z:\smartpen\buildroot\package\busybox\inittab
# Put a getty on the serial port
#ttyS0::respawn:/sbin/getty -L ttyS0 115200 vt100 # GENERIC_SERIAL

# Stuff to do for the 3-finger salute
#::ctrlaltdel:/sbin/reboot
修改为:
# Put a getty on the serial port
#ttyS0::respawn:-/bin/sh # GENERIC_SERIAL

echo "2023/4/28 18:51 wenyuanbo"

# Stuff to do for the 3-finger salute
#::ctrlaltdel:/sbin/reboot


Z:\smartpen\buildroot\package\sysvinit\inittab
si0::sysinit:/bin/mount -t proc proc /proc
si1::sysinit:/bin/mount -o remount,rw /
si2::sysinit:/bin/mkdir -p /dev/pts /dev/shm
si3::sysinit:/bin/mount -a
si4::sysinit:/sbin/swapon -a
si5::sysinit:/bin/ln -sf /proc/self/fd /dev/fd 2>/dev/null
si6::sysinit:/bin/ln -sf /proc/self/fd/0 /dev/stdin 2>/dev/null
si7::sysinit:/bin/ln -sf /proc/self/fd/1 /dev/stdout 2>/dev/null
si8::sysinit:/bin/ln -sf /proc/self/fd/2 /dev/stderr 2>/dev/null
si9::sysinit:/bin/hostname -F /etc/hostname
rcS:12345:wait:/etc/init.d/rcS

# S0:1:respawn:/sbin/getty -L ttyS0 115200 vt100 # GENERIC_SERIAL

echo "2023/4/28 18:52 wenyuanbo"

# Stuff to do for the 3-finger salute
#ca::ctrlaltdel:/sbin/reboot

rootroot@rootroot-X99-Turbo:~/smartpen$ clean_buildroot_fs 

rootroot@rootroot-X99-Turbo:~/smartpen$ build_all

Z:\smartpen\ramdisk\build\cv1826_wevb_0005a\target\etc\inittab
Z:\comcom1\ramdisk\initramfs\glibc_arm\etc\inittab
# Put a getty on the serial port
console::respawn:/sbin/getty -L  console 115200 vt100 # GENERIC_SERIAL

echo "2023/4/28 18:33 wenyuanbo"

# Stuff to do for the 3-finger salute
#::ctrlaltdel:/sbin/reboot



Z:\smartpen\buildroot\output\cvitek_cv182x\target\etc\inittab
Z:\comcom1\buildroot\package\busybox\inittab

# Put a getty on the serial port
console::respawn:/sbin/getty -L  console 0 vt100 # GENERIC_SERIAL

echo "2023/4/28 18:51 wenyuanbo"

编译成为:
# Put a getty on the serial port
#ttyS0::respawn:-/bin/sh # GENERIC_SERIAL

echo "2023/4/28 18:51 wenyuanbo"

# Stuff to do for the 3-finger salute
#::ctrlaltdel:/sbin/reboot


3、终章:
rootroot@rootroot-X99-Turbo:~/smartpen$ clean_buildroot_fs 
rootroot@rootroot-X99-Turbo:~/smartpen$ build_all


./ramdisk/build/cv1826_wevb_0005a/target/etc/inittab
./buildroot/output/cvitek_cv182x/target/etc/inittab

Z:\smartpen\ramdisk\build\cv1826_wevb_0005a\target\etc\inittab
Z:\comcom1\ramdisk\initramfs\glibc_arm\etc\inittab


修正1:
Z:\smartpen\buildroot\package\busybox\busybox.mk
ifeq ($(BR2_INIT_BUSYBOX),y)

define BUSYBOX_SET_INIT
    $(call KCONFIG_ENABLE_OPT,CONFIG_INIT)
endef

ifeq ($(BR2_TARGET_GENERIC_GETTY),y)
define BUSYBOX_SET_GETTY
    $(SED) '/# GENERIC_SERIAL$$/s~^.*#~$(SYSTEM_GETTY_PORT)::respawn:/sbin/getty -L $(SYSTEM_GETTY_OPTIONS) $(SYSTEM_GETTY_PORT) $(SYSTEM_GETTY_BAUDRATE) $(SYSTEM_GETTY_TERM) #~' \
        $(TARGET_DIR)/etc/inittab
endef
else
define BUSYBOX_SET_GETTY
    $(SED) '/# GENERIC_SERIAL$$/s~^.*#~#ttyS0::respawn:/sbin/getty -L ttyS0 115200 vt100 #~' $(TARGET_DIR)/etc/inittab
endef

endif # BR2_TARGET_GENERIC_GETTY
BUSYBOX_TARGET_FINALIZE_HOOKS += BUSYBOX_SET_GETTY

BUSYBOX_TARGET_FINALIZE_HOOKS += SYSTEM_REMOUNT_ROOT_INITTAB
修改为:
ifeq ($(BR2_INIT_BUSYBOX),y)

define BUSYBOX_SET_INIT
    $(call KCONFIG_ENABLE_OPT,CONFIG_INIT)
endef

echo "2023/4/28 12:32 wenyuanbo *****"

#ifeq ($(BR2_TARGET_GENERIC_GETTY),y)
define BUSYBOX_SET_GETTY
    $(SED) '/# GENERIC_SERIAL$$/s~^.*#~$(SYSTEM_GETTY_PORT)::respawn:-/bin/sh #~' \
        $(TARGET_DIR)/etc/inittab
endef
#else
#define BUSYBOX_SET_GETTY
#    $(SED) '/# GENERIC_SERIAL$$/s~^.*#~#ttyS0::respawn:/sbin/getty -L ttyS0 115200 vt100 #~' $(TARGET_DIR)/etc/inittab
#endef
#endif # BR2_TARGET_GENERIC_GETTY

BUSYBOX_TARGET_FINALIZE_HOOKS += BUSYBOX_SET_GETTY

echo "2023/4/28 12:56 wenyuanbo *****"


BUSYBOX_TARGET_FINALIZE_HOOKS += SYSTEM_REMOUNT_ROOT_INITTAB


# Add /bin/{a,hu}sh to /etc/shells otherwise some login tools like dropbear
# can reject the user connection. See man shells.
define BUSYBOX_INSTALL_ADD_TO_SHELLS
    if grep -q CONFIG_ASH=y $(BUSYBOX_DIR)/.config; then \
        grep -qsE '^/bin/ash$$' $(TARGET_DIR)/etc/shells \
        || echo "/bin/ash" >> $(TARGET_DIR)/etc/shells; \
    fi
    if grep -q CONFIG_HUSH=y $(BUSYBOX_DIR)/.config; then \
        grep -qsE '^/bin/hush$$' $(TARGET_DIR)/etc/shells \
        || echo "/bin/hush" >> $(TARGET_DIR)/etc/shells; \
    fi
    
    echo "2023/4/28 11:06 wenyuanbo *****"
    echo $(SYSTEM_GETTY_PORT)
    echo $(SYSTEM_GETTY_OPTIONS) 
    echo $(SYSTEM_GETTY_PORT) 
    echo $(SYSTEM_GETTY_BAUDRATE) 
    echo $(SYSTEM_GETTY_TERM)
    echo $(TARGET_DIR)
    echo "2023/4/28 11:07 wenyuanbo *****"
    
    echo $(BR2_TARGET_GENERIC_GETTY)
    echo "2023/4/28 12:32 wenyuanbo *****"

endef
BUSYBOX_TARGET_FINALIZE_HOOKS += BUSYBOX_INSTALL_ADD_TO_SHELLS


Z:\smartpen\buildroot\package\busybox\inittab
# Startup the system
::sysinit:/bin/mount -t proc proc /proc
::sysinit:/bin/mount -o remount,rw /
::sysinit:/bin/mkdir -p /dev/pts /dev/shm
::sysinit:/bin/mount -a
::sysinit:/sbin/swapon -a
null::sysinit:/bin/ln -sf /proc/self/fd /dev/fd
null::sysinit:/bin/ln -sf /proc/self/fd/0 /dev/stdin
null::sysinit:/bin/ln -sf /proc/self/fd/1 /dev/stdout
null::sysinit:/bin/ln -sf /proc/self/fd/2 /dev/stderr
::sysinit:/bin/hostname -F /etc/hostname
# now run any rc scripts
::sysinit:/etc/init.d/rcS

# Put a getty on the serial port
#ttyS0::respawn:/sbin/getty -L ttyS0 115200 vt100 # GENERIC_SERIAL

echo "2023/4/28 18:51 wenyuanbo"

# Stuff to do for the 3-finger salute
#::ctrlaltdel:/sbin/reboot
修改为:
# Startup the system
::sysinit:/bin/mount -t proc proc /proc
::sysinit:/bin/mount -o remount,rw /
::sysinit:/bin/mkdir -p /dev/pts /dev/shm
::sysinit:/bin/mount -a
::sysinit:/sbin/swapon -a
null::sysinit:/bin/ln -sf /proc/self/fd /dev/fd
null::sysinit:/bin/ln -sf /proc/self/fd/0 /dev/stdin
null::sysinit:/bin/ln -sf /proc/self/fd/1 /dev/stdout
null::sysinit:/bin/ln -sf /proc/self/fd/2 /dev/stderr
::sysinit:/bin/hostname -F /etc/hostname
# now run any rc scripts
::sysinit:/etc/init.d/rcS

# Put a getty on the serial port
#ttyS0::respawn:-/bin/sh # GENERIC_SERIAL

echo "2023/4/28 18:51 wenyuanbo"

# Stuff to do for the 3-finger salute
#::ctrlaltdel:/sbin/reboot


Z:\smartpen\ramdisk\initramfs\glibc_arm\etc\inittab

# Put a getty on the serial port
console::respawn:/sbin/getty -L  console 115200 vt100 # GENERIC_SERIAL

echo "2023/4/28 18:33 wenyuanbo"

# Stuff to do for the 3-finger salute
#::ctrlaltdel:/sbin/reboot
修改为:
# Put a getty on the serial port
#console::respawn:/sbin/getty -L  console 115200 vt100 # GENERIC_SERIAL

echo "2023/4/28 18:33 wenyuanbo"
console::respawn:-/bin/sh

echo "2023/4/29 11:35 wenyuanbo"


# Stuff to do for the 3-finger salute
#::ctrlaltdel:/sbin/reboot


 

猜你喜欢

转载自blog.csdn.net/wb4916/article/details/130628593