当前位置: 首页 > wzjs >正文

个人能否做网站优化关键词排名公司

个人能否做网站,优化关键词排名公司,Wordpress主页不要全部显示,.com网站备案文章目录 1、环境介绍2、前言3、debian目录结构3.1、脚本调用顺序 4、编译debian4.1、构建debian编译所需的环境4.2、编译debian4.3、打包 5、系统启动6、debian适配6.1、新增板级配置单6.2、USB6.3、Wi-Fi / BT6.4、屏幕旋转6.5、触摸旋转6.6、时钟 7、测试8、总结 1、环境介绍…

文章目录

  • 1、环境介绍
  • 2、前言
  • 3、debian目录结构
    • 3.1、脚本调用顺序
  • 4、编译debian
    • 4.1、构建debian编译所需的环境
    • 4.2、编译debian
    • 4.3、打包
  • 5、系统启动
  • 6、debian适配
    • 6.1、新增板级配置单
    • 6.2、USB
    • 6.3、Wi-Fi / BT
    • 6.4、屏幕旋转
    • 6.5、触摸旋转
    • 6.6、时钟
  • 7、测试
  • 8、总结

1、环境介绍

硬件:飞凌ok3568-c开发板

软件:原厂rk356x sdk

2、前言

rk不仅支持buildroot,还支持debian。所以本文将记录适配debian的过程。

3、debian目录结构

在sdk里,有一个debian目录,主要存放用于构建debian系统所需的文件:

cohen@ubuntu:~/platform/rk356x-sdk/debian$ tree -L 1
.
├── mk-base-debian.sh
├── mk-image.sh
├── mk-iso-debian.sh
├── mk-rootfs-bullseye.sh
├── mk-rootfs.sh
├── overlay
├── overlay-debug
├── overlay-firmware
├── packages
├── packages-patches
├── post-build.sh
├── readme.md
├── scripts
└── ubuntu-build-service

mk-base-debian.sh:配置编译基础系统镜像,最后生成一个linaro-bullseye-alip-20250421-1.tar.gz。

mk-image.sh:用于生成最终的系统镜像文件。

mk-iso-debian.sh:用于生成 Debian 的 ISO 镜像文件。

mk-rootfs-bullseye.sh:解压linaro-bullseye-alip-20250421-1.tar.gz,完善构建rootfs。

mk-rootfs.sh:实际也是调用mk-rootfs-bullseye.sh。

overlay:包含一些覆盖文件,用于在构建过程中覆盖或添加到目标文件系统中。

overlay-debug:包含一些覆盖文件,用于在构建过程中覆盖或添加到目标文件系统中。

overlay-firmware:包含一些覆盖文件,用于在构建过程中覆盖或添加到目标文件系统中。

packages:包含预编译的 Debian 包,这些包在构建过程中会被安装到目标文件系统中。

packages-patches:包含用于修补软件包的补丁文件。

post-build.sh:在构建完成后执行的脚本,用于进行一些清理或额外的配置。

readme.md:使用说明。

scripts:包含一些辅助脚本,用于执行特定任务。

ubuntu-build-service:包含用于构建 Ubuntu 系统的配置和服务文件。

3.1、脚本调用顺序

<sdk>/common/build-hooks/30-rootfs.sh脚本的build_debian()函数作为起始来看的话,脚本的调用顺序如下:

30-rootfs.sh check-debian.sh				# 检查当前环境是否满足构建 Debian Live 镜像的依赖条件mk-base-debian.sh 		# 配置编译基础系统镜像,最后生成一个linaro-bullseye-alip-20250421-1.tar.gzmk-rootfs-bullseye.sh # 解压linaro-bullseye-alip-20250421-1.tar.gz,完善rootfsmk-image.sh 					# 生成最终的系统镜像文件./post-build.sh../device/rockchip/common/post-build.sh

4、编译debian

4.1、构建debian编译所需的环境

cohen@ubuntu:~/platform/rk356x-sdk/$ sudo dpkg -i debian/ubuntu-build-service/packages/*
cohen@ubuntu:~/platform/rk356x-sdk/$ sudo apt-get install -f

4.2、编译debian

cohen@ubuntu:~/platform/rk356x-sdk/$ ./build.sh debian

4.3、打包

编译成功后,执行如下命令打包成烧录镜像:

cohen@ubuntu:~/platform/rk356x-sdk/$ ./build.sh firmware

5、系统启动

将新的镜像烧录到板卡,可以看到系统正常启动:

6、debian适配

以下只是列出在适配过程中需要完善的项。对于片上外设来说,之前buildroot适配的大部分东西是可以直接用的。对于芯片自带的硬件,rk提供的debian也早已做好了适配。

6.1、新增板级配置单

RK SDK 提供了多种版本的 Debian 系统,适用于不同的硬件平台和需求。这些版本可以根据功能和架构分为以下几类:

功能版本:

  • base:基础版本(也带桌面了)。
  • gnome:桌面版本,使用 GNOME 桌面环境。
  • xfce:桌面版本,使用 XFCE 桌面环境。
  • lxde:桌面版本,使用 LXDE 桌面环境。

架构版本:

  • arm64:适用于 64 位 ARM 架构的处理器,如 RK3568、RK3588 等。
  • armhf:适用于 32 位 ARM 架构的处理器,支持硬件浮点运算。

所以这里为这四种不同功能版本的debian系统分别创建一个配置单,结果如下图:

其实也没做什么,这4个不同的配置单只是用来选择配置编译哪一个debian基础系统镜像,以forlinx_rk3568_c_debian_desktop_defconfigforlinx_rk3568_c_debian_base_defconfig为例:

这几个宏变量来自sdk menuconfig,需自行在/common/configs/下定义。如:

然后根据自己的需求修改debian相关的构建脚本即可。这里列出我的修改:

mk-rootfs:

mk-base-debian.sh:

mk-rootfs-bullseye.sh:

6.2、USB

鼠标键盘正常。

插入U盘后,可以正常识别,但没有自动挂载。这里添加一个udev规则文件来实现自动挂载和卸载u盘。这里折腾了两个晚上,udev规则文件调用的挂载脚本中的挂载命令要使用systemd-mount,不能使用mount。

最终的udev规则文件/etc/udev/rules.d/99-usb-mount.rules如下:

ACTION=="add",KERNEL=="sd*",SUBSYSTEM=="block",ENV{ID_FS_TYPE}!="",ENV{label_uuid_name}="%k", RUN+="/usr/local/bin/auto-mount.sh add /dev/%k %E{label_uuid_name}"
ACTION=="remove",KERNEL=="sd*",SUBSYSTEM=="block",ENV{ID_FS_TYPE}!="",ENV{label_uuid_name}="%k", RUN+="/usr/local/bin/auto-mount.sh remove /dev/%k %E{label_uuid_name}

挂载卸载脚本/usr/local/bin/auto-mount.sh如下:

#!/bin/sh
{
echo "=======$(date)======="
echo "Action: $1 | Device: $2 | MINOR: $3"if [ $# -ne 3 ]; thenexit 1
fiexport XDG_RUNTIME_DIR=/run/user/0MAJOR_PATH=/media
MINOR_PATH=$3if [[ ! -b "$2" && "$1" == "add" ]]; thenecho "ERROR: Device $2 not found after checks!"exit 2
fi
if [ "$1" = "add" ]; thenmkdir -p $MAJOR_PATH/$MINOR_PATH/usr/bin/systemd-mount -o relatime,sync --no-block --collect $2 $MAJOR_PATH/$MINOR_PATH 2>&1if [ $? -ne 0 ]; thenrmdir $MAJOR_PATH/$MINOR_PATHfi
#	udisksctl mount -b "$2" --no-user-interaction 2>&1
elif [ "$1" = "remove" ]; thenif [ -d $MAJOR_PATH/$MINOR_PATH ]; then/usr/bin/systemd-mount --umount $MAJOR_PATH/$MINOR_PATHrmdir $MAJOR_PATH/$MINOR_PATHfi
#	udisksctl unmount -b "$2" 2>&1
fi
echo "Exit Code: $?"
} >> /tmp/mount.log 2>&1

参考文章:https://blog.csdn.net/m0_69014205/article/details/147076378?spm=1001.2014.3001.5502

6.3、Wi-Fi / BT

无线wifi/bt模块用的海华awcm358sm。实测debian系统启动后没有自动加载驱动。这里需要把内核模块安装到debian rootfs,然后设置开启自动加载驱动。

  1. 将内核模块安装到debian rootfs:
run_command $KMAKE modules_install INSTALL_MOD_PATH=$RK_SDK_DIR/debian/overlay/usr

  1. 在debian系统中,/etc/modules-load.d/是一个用于配置内核模块在启动时自动加载的目录。在该目录下创建一个modules.conf,并填写开机启动时要加载的驱动。:

/lib/systemd/systemd-modules-load.service服务在系统启动时会读取modules-load.d下的所有配置文件,并根据文件中的列表加载指定的内核模块。

这里可以稍微介绍一下,是如何找到moal.ko的。实际就像平时执行modprobe xx.ko命令时,会先在/lib/modules/$(uname -r)/目录下找到modules.alias.bin和module.dep.bin。里面记录驱动的依赖关系和存储位置。如下是module.dep的内容(module.dep.bin是module.dep的二进制文件):

6.4、屏幕旋转

目前适配所使用debian的桌面环境为xfce,使用的是X11显示架构。对于屏幕旋转,修改/etc/X11/xorg.conf.d/20-modesetting.conf

可选值:normal、left、right、inverted

6.5、触摸旋转

屏幕旋转后,鼠标是可以正常使用的。但触摸的旋转还需要修改:

sudo cp /usr/share/X11/xorg.conf.d/40-libinput.conf /etc/X11/xorg.conf.d/
sudo vi /etc/X11/xorg.conf.d/40-libinput.conf
Option "CalibrationMatrix" "-1 0 1 0 -1 1 0 0 1"	# 180度旋转

6.6、时钟

现在的时间比北京时间少8小时。需要设置时区。直接修改配置脚本:

ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

关于适配先到此为止,后续有其它内容再补充。

7、测试

进入系统时的桌面:

网络:

小破站播放视频:

蓝牙:

目前使用笔记本电脑配对测试不成功。到时候使用安卓手机再试试。

8、总结

嵌入式Linux学习交流群:424571391
本人也是第一次接触发行版linux。可能对于一些测试指标有所忽略,欢迎指点。另一方面是rk对debian的支持已经很完善了,规避了很多问题。后面会继续移植ubuntu,更全面的体验发行版linux的移植过程。

http://www.dtcms.com/wzjs/355655.html

相关文章:

  • 商城网站建设好么北京建设网站公司
  • 做网站挣钱吗重庆关键词自动排名
  • 视频网站开发工具网络营销网课
  • 香港便宜服务器黄石市seo关键词优化怎么做
  • 东莞网站建设 信科网络万网商标查询
  • 网站建设能用手机制作吗西地那非片的功能主治和副作用
  • 静态网站怎么更新网络推广接单平台
  • 做网站的硬件和软件环境seo职位招聘
  • 自己电脑做局域网网站服务器seo网站关键词优化机构
  • 企业门户网站建设费用友情链接怎么添加
  • 申请域名费用二十条疫情优化措施
  • 个人做影视网站版权问题网站推广专家
  • 镇江市住房与城乡建设部网站win优化大师怎么样
  • 蓬业东莞网站建设技术支持新闻源软文推广平台
  • 做网站应该用多少分辨率西安百度代运营
  • 网站开发建设交印花税吗google本地搜索
  • 如何查外贸网站外链推广普通话手抄报图片
  • 温州本地网站app优化
  • 怎么做网站首页弹幕市场营销专业
  • 网站外包要花多少钱高质量外链代发
  • 做网站如何报价下载班级优化大师并安装
  • 长沙开发网站的公司服务推广软文
  • 确定网站主题关键词检测
  • 制作网站的网站北京网络营销公司排名
  • 网站建设都是模板谷歌搜索引擎优化seo
  • 环境建设公司网站如何在国外推广自己的网站
  • 智能响应式网站重庆百度关键词推广
  • 电子商务网站开发视频seo推广软件哪个好
  • 天津做网站制作公司宁德市属于哪个省份
  • 国际设计师网站百中搜优化软件