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

做网站是com好还是cn好建网站需要注意什么

做网站是com好还是cn好,建网站需要注意什么,seo 专业为网站建设,优化方案电子版1.udev概述 udev是 Linux2.6内核里的一个功能#xff0c;它替代了原来的 devfs#xff0c;成为当前 Linux 默认的设备管理工具#xff0c;能够根据系统中的硬件设备的状态动态更新设备文件#xff0c;包括设备文件的创建#xff0c;删除等。 udev以守护进程的形式运行它替代了原来的 devfs成为当前 Linux 默认的设备管理工具能够根据系统中的硬件设备的状态动态更新设备文件包括设备文件的创建删除等。 udev以守护进程的形式运行通过帧听内核发出来的uevent来管理/dev目录下的设备文件。不像之前的设备管理工具udev在用户空间运行而不在内核空间运行。 udev会根据/etc/udev/udev.conf文件中的udev_rules指定的目录逐个检查该目录下的文件这个目录下的文件都是针对某类或某个设备应该施行什么措施的规则文件。 2.udev作用 Udev用于动态管理设备的设备管理器主要是在设备插入或移除时负责管理与这些事件相关联设备节点以及执行相应动作。 设备发现和管理udev负责在 Linux 系统中检测和管理设备。当新设备插入或旧设备被移除时udev负责识别这些变化并在 /dev 目录下创建或删除相应的设备节点。 1.设备命名Udev为设备节点提供了一个规范的命名机制以便用户和应用程序能够更容易地识别设备。这有助于确保相同类型的设备在不同系统上都有相似的设备节点名称。 2.热插拔支持Udev支持热插拔设备即在系统运行时插入或移除设备。它可以动态地更新设备节点而无需重新启动系统。 3.规则系统Udev使用规则文件来定义在设备事件发生时要执行的操作。这些规则可以基于设备属性、类型和其他标识符来匹配。规则允许用户执行自定义脚本、设置环境变量、创建符号链接等操作。 4.持久化设备节点Udev提供了机制以确保设备节点的稳定性。即使设备在重新启动后未连接Udev仍会分配相同的设备节点名称以便应用程序可以依赖特定的设备节点。 5.提供额外信息Udev为每个设备节点提供了大量的额外信息例如设备类型、设备路径、驱动程序信息等。这些信息可用于用户空间的应用程序以更好地理解和利用系统中的设备。 所有设备在Linux是以设备文件的形式存在在早期的Linux版本中/dev目录包含了所有可能出现的设备的设备文件。很难想想Linux用户如何在这些大量的设备文件中找到匹配条件的设备文件。现在udev只为那些连接到Linux操作系统的设备产生设备文件。并且udev能通过定义一个udev规则rule来产生匹配设备属性的设备文件这些设备属性可以是内核设备名称、总线路径、厂商名称、型号、序列号或者磁盘大小等。 1.动态管理当设备添加/删除时udev守护进行帧听来自内核的 uevent以此添加或者删除 /dev下的设备文件所以udev只为已经连接的设备产生设备文件而不会在 /dev 下产生大量虚无的设备文件。 2.自定义命名规则通过 Linux 默认的规则文件udev在/dev/ 里为所有的设备定义了内核设备名称比如 /dev/sda、/dev/hda、/dev/fd 等等。由于udev是在用户空间运行Linux 用户可以通过自定义的规则文件灵活地产生标识性强的设备文件名比如 /dev/boot_disk、/dev/root_disk、/dev/color_printer 等等。 3.设定设备的权限和所有者/组udev可以按一定的条件来设置设备文件的权限和设备文件所有者/组。在不同的udev版本中实现的方法不同在 “如何配置和使用udev” 中会详解。 #mermaid-svg-RESqV0O9SsEWAT7Z {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-RESqV0O9SsEWAT7Z .error-icon{fill:#552222;}#mermaid-svg-RESqV0O9SsEWAT7Z .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-RESqV0O9SsEWAT7Z .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-RESqV0O9SsEWAT7Z .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-RESqV0O9SsEWAT7Z .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-RESqV0O9SsEWAT7Z .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-RESqV0O9SsEWAT7Z .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-RESqV0O9SsEWAT7Z .marker{fill:#333333;stroke:#333333;}#mermaid-svg-RESqV0O9SsEWAT7Z .marker.cross{stroke:#333333;}#mermaid-svg-RESqV0O9SsEWAT7Z svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-RESqV0O9SsEWAT7Z .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-RESqV0O9SsEWAT7Z .cluster-label text{fill:#333;}#mermaid-svg-RESqV0O9SsEWAT7Z .cluster-label span{color:#333;}#mermaid-svg-RESqV0O9SsEWAT7Z .label text,#mermaid-svg-RESqV0O9SsEWAT7Z span{fill:#333;color:#333;}#mermaid-svg-RESqV0O9SsEWAT7Z .node rect,#mermaid-svg-RESqV0O9SsEWAT7Z .node circle,#mermaid-svg-RESqV0O9SsEWAT7Z .node ellipse,#mermaid-svg-RESqV0O9SsEWAT7Z .node polygon,#mermaid-svg-RESqV0O9SsEWAT7Z .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-RESqV0O9SsEWAT7Z .node .label{text-align:center;}#mermaid-svg-RESqV0O9SsEWAT7Z .node.clickable{cursor:pointer;}#mermaid-svg-RESqV0O9SsEWAT7Z .arrowheadPath{fill:#333333;}#mermaid-svg-RESqV0O9SsEWAT7Z .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-RESqV0O9SsEWAT7Z .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-RESqV0O9SsEWAT7Z .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-RESqV0O9SsEWAT7Z .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-RESqV0O9SsEWAT7Z .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-RESqV0O9SsEWAT7Z .cluster text{fill:#333;}#mermaid-svg-RESqV0O9SsEWAT7Z .cluster span{color:#333;}#mermaid-svg-RESqV0O9SsEWAT7Z div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-RESqV0O9SsEWAT7Z :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;} 有匹配规则 没有规则匹配 内核检测到新设备 udevd接收设备信息 删除/dev目录中的设备文件 生成uevent 查找规则文件 创建设备文件 使用内核设备名创建文件 3.配置udev 配置使用udev通常涉及创建和编辑udev规则这些规则定义了设备在系统中行为。在使用udev之前了解一些基本概念例如subsystem、KERNEL、ACTION等。 键含义ACTION事件 (uevent) 的行为例如add( 添加设备 )、remove( 删除设备 )。KERNEL在内核里看到的设备名字比如sd*表示任意SCSI磁盘设备DEVPATH内核设备路径比如/devices/*SUBSYSTEM子系统名字例如sda 的子系统为 block。BUS总线的名字比如IDE,USBiscsiDRIVER设备驱动的名字比如ide-cdromID独立于内核名字的设备名字SYSFS{value}sysfs属性值可以表示任意ENV{key}环境变量可以表示任意PROGRAM可执行的外部程序如果程序返回0值该键则认为为真(true)RESULT上一个PROGRAM调用返回的标准输出。NAME根据这个规则创建的设备文件的文件名。注意仅仅第一行的NAME描述是有效的后面的均忽略。如果你想使用使用两个以上的名字来访问一个设备的话可以考虑SYMLINK键。SYMLINK为/dev/下的设备文件产生符号链接。由于udev只能为某个设备产生一个设备文件所以为了不覆盖系统默认的 udev 规则所产生的文件推荐使用符号链接。OWNER设备文件的属组GROUP设备文件所在的组。MODE设备文件的权限采用8进制RUN为设备而执行的程序列表LABEL在配置文件里为内部控制而采用的名字标签(下面的GOTO服务)GOTO跳到匹配的规则通过LABEL来标识有点类似程序语言中的GOTOIMPORT{type}导入一个文件或者一个程序执行后而生成的规则集到当前文件WAIT_FOR_SYSFS等待一个特定的设备文件的创建。主要是用作时序和依赖问题。OPTIONS特定的选项last_rule 对这类设备终端规则执行ignore_device 忽略当前规则ignore_remove 忽略接下来的并移走请求。all_partitions 为所有的磁盘分区创建设备文件。 在/etc/udev/rules.d/目录下有一些默认的udev规则文件例如70-persistent-net.rules。可通过创建新的规则文件或编辑已有的规则文件来定义udev规则。规则文件的命名约定是以数字和描述性名称开头例如10-local.rules。数字决定了规则的优先级数字越小规则越早被处理。 KERNEL”*”, OWNER”root” GROUP”root”, MODE”0600″ KERNEL”tty”, NAME”%k”, GROUP”tty”, MODE”0666″, OPTIONS”last_rule” KERNEL”scd[0-9]*”, SYMLINK”cdrom cdrom-%k” KERNEL”hd[a-z]”, BUS”ide”, SYSFS{removable}”1″, SYSFS{device/media}”cdrom”, SYMLINK”cdrom cdrom-%k” ACTION”add”, SUBSYSTEM”scsi_device”, RUN”/sbin/modprobe sg”上面的例子给出了5个规则每一个都是KERNEL或者ACTION键开头 第一个则是缺省的他匹配任意被内核识别到的设备然后设定这些设备的属组是root组是root访问权限模式是0600(-rw——-)。这也是一个安全的缺省设置保证所有的设备在默认情况下只有root可以读写。 第二个规则也是比较典型的规则了。它匹配终端设备(tty)然后设置新的权限为0600所在的组是tty。它也设置了一个特别的设备文件名:%K。在这里例子里%k代表设备的内核名字。那也就意味着内核识别出这些设备是什么名字就创建什么样的设备文件名。 第三行开始的KERNEL”scd[0-9]*”,表示 SCSI CD-ROM 驱动. 它创建一对设备符号连接cdrom和cdrom-%k。 第四行开始的 KERNEL”hd[a-z]“, 表示ATA CDROM驱动器。这个规则创建和上面的规则相同的符号连接。ATA CDROM驱动器需要sysfs值以来区别别的ATA设备因为SCSI CDROM可以被内核唯一识别。. 第五行以 ACTION”add”开始它告诉udev增加 /sbin/modprobe sg 到命令列表当任意SCSI设备增加到系统后这些命令将执行。其效果就是计算机应该会增加sg内核模块来侦测新的SCSI设备。 编写规则 规则的编写使用基于键值对的语法。以下是一个简单的规则示例 当插入一个块设备并且设备的内核名是sda时执行脚本 SUBSYSTEMblock, KERNELsda, ACTIONadd, RUN/bin/my_custom_script在这个例子中SUBSYSTEMblock表示规则适用于块设备KERNELsda表示设备的内核名是sdaACTION“add表示设备被添加RUN”/bin/my_custom_script表示在添加时执行/bin/my_custom_script脚本。 重新加载规则 在编辑或创建规则文件后需要重新加载udev规则。 sudo udevadm control --reload-rules测试规则 插入或移除设备观察规则是否按照预期执行。可以使用udevadm monitor命令来监视udev事件。 sudo udevadm monitor在另一个终端中插入或移除设备观察监视器中的输出。 查看udev事件信息 使用udevadm info命令来查看设备的udev信息。 sudo udevadm info --attribute-walk --path/sys/path/to/device替换/sys/path/to/device为实际设备的路径。对udev的配置更改可能会影响设备的命名和系统的行为因此在进行更改之前请确保了解其影响。 例如以下规则表示当USB设备插入时在/tmp/usb_log.txt文件中写入一条日志 ACTIONadd, SUBSYSTEMusb, RUN/bin/sh -c echo USB device inserted /tmp/usb_log.txt可以根据自己的需求添加其他规则。 总体而言Udev 通过规则匹配和执行动作的方式实现了对设备事件的监听和处理从而支持 Linux 系统的热插拔机制。这使得在系统运行时插入或拔出设备时系统能够动态地适应这些变化。 udev是一个设备管理工具udev以守护进程的形式运行通过侦听内核发出来的uevent来管理/dev目录下的设备文件。通过侦听内核发出来的硬件数据事件在用户空间为这个硬件去创建对应代表该硬件的文件应用程序例如adb就可以通过该文件操作到硬件设备。 udev在用户空间运行而不在内核空间运行。它能够根据系统中的硬件设备的状态动态更新设备文件包括设备文件的创建删除等。设备文件通常放在/dev目录下。使用udev后在/dev目录下就只包含系统中真正存在的设备。 4.更多文章 新的文章内容和分享已更新在 |工|·-·|重|·-·|号|协议森林
http://www.sczhlp.com/news/235520/

相关文章:

  • 如何建立自己的手机网站网站认证空间
  • 房地产设计网站电脑网站显示安全证书有问题怎么解决
  • 一男一女做那个的动漫视频网站湖南常德职业技术学校
  • 郑州餐饮网站建设公司排名企业网站开发创意
  • 网站建设便宜的公司廊坊网站建设方案
  • app网站排名网上商城系统需求分析
  • 做淘宝客需要自己建网站吗网站右下角弹窗代码
  • 做翻译 英文网站东莞百姓网招聘
  • 天门市网站建设网页游戏大全找556pk游戏专业
  • 广西代理网站建设公司百度店铺怎么入驻
  • 新的网站建设吉林省住房城乡建设厅网站
  • 广州市开发区建设网站网站的信息管理建设的必要性
  • 吉林省长春市建设局网站益阳网站制作公司
  • 怎么做网站门户网站建设基础心得
  • 荥阳市城乡建设规划网站网站空间选择
  • 坐标系与投影关系
  • 2025年10月办公家具供应商综合评测:服务与性价比的平衡之道
  • 手机AIldquo;造反rdquo;了?你可能还不知道的四件大事儿
  • 2025年10月办公家具公司评价榜:基于真实数据的权威推荐清单
  • vue+antv/x6项目使用问题
  • 怎么可以做网站的网站贵港免费的网站建设
  • 网站运营案例沃尔玛网上商城app官方下载
  • 网络专业的网站建设网页程序开发采购
  • 服务器及网站建设的特点全国工程信息平台官网
  • 什么网站 是cms系统下载地址河南省建设厅职称网站
  • 博购企业名录搜索软件深圳市企业网站seo
  • ip做网站p2p网站建设源码
  • 用vs2012做网站wordpress 中文链接 seo
  • 网站收录时有时没有台州seo管理
  • 镇江企业网站建设公司wordpress微信登录页面模板