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

网站制作与网页建设微信小程序怎么做购物网站

网站制作与网页建设,微信小程序怎么做购物网站,西安是哪个省的城市,网站备案账号是什么样的1.了解mdev mdev是busybox自带的一个简化版的udev。udev是从Linux 2.6 内核系列开始的设备文件系统(DevFS)的替代品,是 Linux 内核的设备管理器。总的来说,它取代了 devfs 和 hotplug,负责管理 /dev 中的设备节点。同时…

1.了解mdev

        mdev是busybox自带的一个简化版的udev。udev是从Linux 2.6 内核系列开始的设备文件系统(DevFS)的替代品,是 Linux 内核的设备管理器。总的来说,它取代了 devfs 和 hotplug,负责管理 /dev 中的设备节点。同时,udev 也处理所有用户空间发生的硬件添加、删除事件,以及某些特定设备所需的固件加载。比如,当我们插入U盘后udev会自动在/dev下创建设备节点,同时将U盘挂载到系统中;当拔掉U盘后,udev又会自动删除/dev下U盘的设备节点以及挂载的目录。mdev是udev的简化版,因此它的工作和udev是相同的。

mdev需要内核sysfs的支持。为了使用动态更新的功能,同要需要配置内核支持热拔插。

要使用mdev功能,应在编译busybox时在menconfig的Linux System Utilities中勾选上支持mdev的选项以及在编译kernel时勾选上支持hotplug。如果你对mdev的配置方法不熟悉,请:

一定要看docs/mdev.txt和examples/mdev.conf

关于初始化脚本的详细内容请参阅busybox的docs/mdev.txt文件,里面有详细的介绍,

下面这张图片,展示几个关键的内容

linux的内核的第一个程序是/etc/init.d/rcS

2.配置1

我的配置如下  /etc/init.d # cat rcS

#!/bin/sh
/bin/mount -t proc none /proc
/bin/mount -t sysfs sysfs /sys

/bin/mount -t ramfs /tmp
/bin/mount -t ramfs /mnt
#/bin/mkdir /mnt/pts
#/bin/mount -t devpts devpts /dev/pts
/bin/echo > /dev/mdev.seq
/bin/echo /bin/mdev > /proc/sys/kernel/hotplug
/bin/mdev -s

insmod /usr/drivers_demo/mpu6050d.ko

source /etc/profile
 

3.配置2

/bin/echo /bin/mdev > /proc/sys/kernel/hotplug的运行之前,需要配置脚本的路径

        这样,系统启动时执行了命令echo /sbin/mdev > /proc/sys/kernel/hotplug,当那么当有热插拔事件产生时,内核就会调用位于/sbin目录的mdev。这时mdev通过环境变量中的 ACTION和DEVPATH(这两个变量是系统自带的)来确定此次热插拔事件的动作以及影响了/sys 中的那个目录。接着会看看这个目录中是否有" dev "的属性文件,如果有就利用这些信息为这个设备在/dev下创建设备节点文件。

# cat /etc/mdev.conf
mmcblk([0-9]+)p([0-9]+) 0:0 660 */sbin/automount.sh $MDEV X${ACTION}
mmcblk([0-9]+)          0:0 660 */sbin/automount.sh $MDEV X${ACTION}
sd([a-z]+)([0-9]+)      0:0 660 */sbin/automount.sh $MDEV X${ACTION}
sd([a-z]+)              0:0 660 */sbin/automount.sh $MDEV X${ACTION}

#mtdblock([0-9]+)        0:0 660 */sbin/automount.sh $MDEV X${ACTION}

for usb: sd[a-z][0-9]

for sd/mmc card:mmcblk[0-9]p[0-9] 0:6

指令:<device regex> <uid>:<gid> <octal permissions> [<@|$|*> <command>]

特殊字符的意义如下:

 @:在创建设备节点后运行命令。

 $:在删除设备节点前运行命令。

*:在创建设备节点和删除设备节点前都运行命令。

Command :对应的shell—般位于letc/mdev目录

为了利用脚本(如Shell脚本automout.sh)实现u盘在嵌入式系统上的自动挂载,在mdev规则文件/sbin/automount.sh中加入以下一行匹配规则使mdev在找到匹配行时可以执行用户自定义的命令( shell脚本中的内容):

sd[a-z][0-9]* 0:0 0600 */sbin/automount.sh $MDEV

4.脚本automount.sh

上一个配置已经指定脚本和路径,现在实现如下

 # cat /sbin/automount.sh

#! /bin/sh# debugging message
#echo "MDEV=$1 : ACTION=$2 : SUBSYSTEM=$SUBSYSTEM : DEVPATH=$DEVPATH : DEVNAME=$DEVNAME" >> /dev/consoleif [ "$1" == "" ]; thenecho "parameter is none" > /tmp/error.txtexit 1
fiMNT=$1
#if [ $(echo $1 | grep mmcblk) ]; then
#       if [ $(echo $1 | grep p[25]) ]; then
#               MNT=sdcard2
#       else
#               MNT=sdcard
#       fi
#elif [ $(echo $1 | grep sd) ]; then
#       if [ $(echo $1 | grep p[25]) ]; then
#               MNT=nandcard2
#       else
#               MNT=nandcard
#       fi
#fi# there is no ACTION, it is for initial population
if [ "$2" = "X" ]; thenmounted=`mount | grep $1 | wc -l`if [ $mounted -ge 1 ]; then# mounted, assume the ACTION is remove#ACT=Xremove# only set add for initial populationACT=Xaddelse# not mounted, assume the ACTION is addACT=Xaddfi
elseACT=$2
fiif [ "$ACT" = "Xremove" ]; then# umount the deviceecho "$ACT /mnt/$1" >> /tmp/mdev.logif ! umount -l "/mnt/$1"; thenexit 1elserm -f "/mnt/$MNT"echo "[Umount FS]: /dev/$1 -X-> /mnt/$MNT" > /dev/consolefiif ! rmdir "/mnt/$1"; thenexit 1fi
else# mount the devicemounted=`mount | grep $1 | wc -l`#echo "par=$1,mounted=$mounted,MNT=$MNT" > /dev/consoleif [ $mounted -ge 1 ]; then#echo "device $1 is already mounted" > /dev/consoleexit 0fiif ! mkdir -p "/mnt/$1"; thenexit 1fiif [ $(echo $1 | grep mtd) ]; thenif mount -t jffs2 "/dev/$1" "/mnt/$1"; thenecho "[Mount JFFS2]: /dev/$1 --> /mnt/$MNT" > /dev/consoleecho "$ACT /mnt/$1" >> /tmp/mdev.logelif mount -t yaffs2 -o"inband-tags" "/dev/$1" "/mnt/$1"; thenecho "[Mount YAFFS2]: /dev/$1 --> /mnt/$MNT" > /dev/consoleecho "$ACT /mnt/$1" >> /tmp/mdev.logelif mount -t ubifs "/dev/$1" "/mnt/$1"; thenecho "[Mount UBIFS]: /dev/$1 --> /mnt/$MNT" > /dev/consoleecho "$ACT /mnt/$1" >> /tmp/mdev.logelse# failed to mount, clean up mountpointif ! rmdir "/mnt/$1"; thenexit 1fifielse# try vfat onlyif mount -t vfat -o noatime,shortname=mixed,utf8 "/dev/$1" "/mnt/$1"; thenln -s /mnt/$1 /mnt/$MNTecho "[Mount VFAT]: /dev/$1 --> /mnt/$MNT" > /dev/consoleecho "$ACT /mnt/$1" >> /tmp/mdev.logelse# failed to mount, clean up mountpointif ! rmdir "/mnt/$1"; thenexit 1fiexit 1fifi
fi

5.测试

6.如果我想把automount.sh放到其他地方,如何修改启动文件

自启动脚本添加如下内容

  • 添加下面两条指令到mdev.conf:

sd([a-z]+)([0-9]+)      0:0 660 */home/fhsj_app/automount.sh $MDEV X${ACTION}"

sd([a-z]+)              0:0 660 */home/fhsj_app/automount.sh $MDEV X${ACTION}"

  • 确保/home/fhsj_app/下面有automount.sh(或者是你自己的目录)的脚本且权限660以上
  • 加入热插拔和自动挂载的指令

/sbin/echo /sbin/mdev > /proc/sys/kernel/hotplug

/sbin/mdev -s

我的自启动脚本如下:

awk '1; END {print "sd([a-z]+)([0-9]+)      0:0 660 */home/fhsj_app/automount.sh $MDEV X${ACTION}"}' /etc/mdev.conf > /tmp/mdev.conf && mv /tmp/mdev.conf /etc/mdev.conf

awk '1; END {print "sd([a-z]+)              0:0 660 */home/fhsj_app/automount.sh $MDEV X${ACTION}"}' /etc/mdev.conf > /tmp/mdev.conf && mv /tmp/mdev.conf /etc/mdev.conf

/sbin/echo /sbin/mdev > /proc/sys/kernel/hotplug

/sbin/mdev -s

 

http://www.yayakq.cn/news/234298/

相关文章:

  • 天津网站在哪里建设网络工程师考什么内容
  • 商丘网站建设优化推广企业官方网站应该怎么样建设
  • 网站备案有什么好处网站描述技巧
  • 上城网站建设免费视频网站app使用排名
  • 中国购物网站排名京山网站设计
  • 福田网站建设龙岗网站建设龙岗网站建设龙岗网站建设软件开发外包管理
  • 网站建设 郑州软件著作权申请流程
  • 上海城市建设大学网站asp.net.做简单的网站
  • h5响应式网站模板下载电子商务网站建设素材
  • app网站建站系统做外文H网站
  • 装修网网站建设传统电商平台有哪些
  • 网站分辨率北京网站制作工作室
  • 电子商务网站的建设的步骤wordpress注册登录修改密码
  • vue做前台网站做的比较好的旅行网站
  • 做网站必须学php吗百度公司注册地址
  • 网站中图片下移怎么做网站统计 中文域名
  • jsp mysql开发网站开发做知乎网站的图片
  • 黑河城乡建设局网站百度大搜
  • 个人网站域名怎么取企业微信网页版
  • 做交易平台的网站需要哪些技术思勤传媒网站建设公司
  • 网站建设评分细则成都自适应建站哪家好
  • 湛江企业网站建设wordpress 上传fttp
  • 音乐应用网站模板代卖平台哪个好
  • 网站建设 零基础上海百度网站建设
  • 天津专业的网站建设公司北京北排建设公司招标网站
  • 开发网站需要什么条件网站页面建设需要ps吗
  • 长春网站建设的公司设计制作第一架中国飞机的是谁
  • 做网站是要写代码的吗潮州专业网站建设制作
  • 电子商务网站建设具体方案互联网创业怎么起步
  • 做视频营销哪个网站好大型电子商务网站建设方案