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

个人网站免费的吗旅游网站建设与网页设计意义

个人网站免费的吗,旅游网站建设与网页设计意义,阿里云centos安装wordpress,网站开发与规划就业前景背景#xff1a;最近在安装显卡驱动#xff0c;查找了一些网上的教程#xff0c;但总感觉思路不够清晰#xff0c;没办法弄清背后涉及的Linux原理#xff0c;于是参考网上教程#xff0c;并查阅了相关资料#xff0c;希望能对显卡驱动安装作一个梳理#xff0c;以做记录…背景最近在安装显卡驱动查找了一些网上的教程但总感觉思路不够清晰没办法弄清背后涉及的Linux原理于是参考网上教程并查阅了相关资料希望能对显卡驱动安装作一个梳理以做记录。首先查看版本信息# cat /etc/system-release CentOS Linux release 7.6.1810 (Core)# uname -r 3.10.0-957.21.3.el7.x86_64一、Linux module模块机制 Linux内核作用有以下作用1、管理内存2、调度任务3、驱动硬件4、网络功能5、安全6、管理文件系统Linux内核框架庞大随着新硬件、文件系统和新功能的不断发展如果把所有需要的功能都编译到Linux内核中会造成内核体积庞大每次加入新的功能都需要重新编译内核非常麻烦。为解决这个问题Linux引入了模块机制简单来讲就是kernel内核只负责最主要的功能当需要添加新的硬件和功能时可以把新功能和新硬件的驱动单独编译为一个模块开机载入kernel时系统会同时载入模块从而提高灵活性。当然也可以把模块看作kernel的一部分。在我的机器上驱动模块放在以下目录中/lib/modules/3.10.0-957.21.3.el7.x86_64/kernel/drivers来看看该目录下有什么东西# ls /lib/modules/3.10.0-957.21.3.el7.x86_64/kernel/drivers acpi block crypto firewire hv infiniband md misc nvdimm pinctrl ptp staging usb virtio ata bluetooth dax firmware hwmon input media mmc nvme platform pwm target uwb watchdog auxdisplay cdrom dca gpio i2c iommu memstick mtd parport power rtc thermal vfio xen base char dma gpu idle isdn message net pci powercap scsi tty vhost bcma cpufreq edac hid iio leds mfd ntb pcmcia pps ssb uio video可以看到有acpi电源管理驱动cdrom驱动gpu驱动还有nvmepciscsiusb等驱动。由于本文主要讨论显卡驱动我们进入gpu目录来看看有什么。# cd gpu # ls drm # cd drm # ls amd bochs drm_kms_helper.ko.xz drm_panel_orientation_quirks.ko.xz i2c mgag200 qxl scheduler udl vmwgfx ast cirrus drm.ko.xz gma500 i915 nouveau radeon ttm virtio可以看到有以.ko.xz结尾的文件这就是Linux下模块的文件类型。还有一个特别要注意的目录nouveau该目录下有nouveau.ko.xz文件在我们没有安装Nvidia官方驱动时系统开机默认使用的就是这个驱动。nouveau是一个开源驱动性能很差由于安装显卡驱动模块要重新编译模块所以需要内核模块编译的相关文件kernel-header和kernel-devel通过yum安装# yum -y install kernel-header # yum -y install kernel-devel二、initramfs文件参考自鸟哥的Linux私房菜开机时我们需要识别硬盘并挂载/目录从而载入kernel然而此时并没有硬盘SATA接口的SCSI驱动那么该如何挂载并载入kernel呢Linux提供了initramfs文件他的目的在于提供开机过程中所需要的最重要核心模块以让系统开机过程可以顺利完成。initramfs 可以将/lib/modules/.... 内的“开机过程当中一定需要的模块”包成一个文件 (文件名就是initramfs)然后在开机时通过主机的INT 13硬件功能将该文件读出来解压缩并且initramfs在内存内会仿真成为根目录由于此虚拟文件系统 (Initial RAM Disk) 主要包含磁盘与文件系统的模块因此我们的核心最后就能够认识实际的磁盘那就能够进行实际根目录的挂载。initramfs文件位于以下目录# cd /boot # ls config-3.10.0-957.21.3.el7.x86_64 efi grub grub2 initramfs-0-rescue-740f2d9ceee54b1cb523569c7bf00ac8.img initramfs-3.10.0-957.21.3.el7.x86_64.img initramfs-3.10.0-957.21.3.el7.x86_64kdump.img symvers-3.10.0-957.21.3.el7.x86_64.gz System.map-3.10.0-957.21.3.el7.x86_64 vmlinuz-0-rescue-740f2d9ceee54b1cb523569c7bf00ac8 vmlinuz-3.10.0-957.21.3.el7.x86_64就是后缀为.img的文件系统会载入内核对应的.img文件。所以说initramfs 内所包含的模块大多是与开机过程有关而主要以文件系统及硬盘模块 (如usbSCSI 等) 为主。一般来说需要initramfs的时刻为:根目录所在磁盘为 SATA、USB 或 SCSI等接口;根目录所在文件系统为 LVMRAID 等特殊格式;根目录所在文件系统为非传统 Linux 认识的文件系统时;其他必须要在核心载入时提供的模块。以上参考自鸟哥的Linux私房菜然而通过我的实践发现 initramfs不仅仅载入了以上模块同时还载入了显卡驱动通过lsinitrd命令可以看到initramfs文件的内容。通过lsinitrd | grep gpu 查看 gpu相关内容# lsinitrd | grep gpu drwxr-xr-x 3 root root 0 Jul 13 20:24 usr/lib/modules/3.10.0-957.21.3.el7.x86_64/kernel/drivers/gpu drwxr-xr-x 4 root root 0 Jul 13 20:24 usr/lib/modules/3.10.0-957.21.3.el7.x86_64/kernel/drivers/gpu/drm -rw-r--r-- 1 root root 69320 Jun 19 00:57 usr/lib/modules/3.10.0-957.21.3.el7.x86_64/kernel/drivers/gpu/drm/drm_kms_helper.ko.xz -rw-r--r-- 1 root root 145824 Jun 19 00:57 usr/lib/modules/3.10.0-957.21.3.el7.x86_64/kernel/drivers/gpu/drm/drm.ko.xz -rw-r--r-- 1 root root 2080 Jun 19 00:57 usr/lib/modules/3.10.0-957.21.3.el7.x86_64/kernel/drivers/gpu/drm/drm_panel_orientation_quirks.ko.xz drwxr-xr-x 2 root root 0 Jul 13 20:24 usr/lib/modules/3.10.0-957.21.3.el7.x86_64/kernel/drivers/gpu/drm/nouveau -rw-r--r-- 1 root root 554788 Jun 19 00:57 usr/lib/modules/3.10.0-957.21.3.el7.x86_64/kernel/drivers/gpu/drm/nouveau/nouveau.ko.xz drwxr-xr-x 2 root root 0 Jul 13 20:24 usr/lib/modules/3.10.0-957.21.3.el7.x86_64/kernel/drivers/gpu/drm/ttm -rw-r--r-- 1 root root 43728 Jun 19 00:57 usr/lib/modules/3.10.0-957.21.3.el7.x86_64/kernel/drivers/gpu/drm/ttm/ttm.ko.xz可以看到initramfs有nouveau.ko.xz显卡驱动载入的相关设置。三、initramfs文件相关设置既然我们要安装新的显卡驱动首先需要屏蔽掉nouveau这个开源驱动而这个驱动是由 initramfs载入的所以我们需要修改initramfs文件然而initramfs非常重要随意修改可能会导致系统无法正常开机。要修改initramfsLinux需要修改其配置文件通过 options 选项来带入相关参数然后使用dracut命令重新生成 initramfs配置文件路径如下 /lib/modprobe.d/dist-blacklist.conf(CentOS 6.x系统配置文件在/etc/modprobe.d/blacklist.conf下)使用vim编辑此配置文件# vim /lib/modprobe.d/dist-blacklist.conf# # Listing a module here prevents the hotplug scripts from loading it. # Usually thatd be so that some other driver will bind it instead, # no matter which driver happens to get probed first. Sometimes user # mode tools can also control driver binding. # # Syntax: see modprobe.conf(5). ## watchdog drivers blacklist i8xx_tco# framebuffer drivers blacklist aty128fb blacklist atyfb blacklist radeonfb blacklist i810fb blacklist cirrusfb blacklist intelfb blacklist kyrofb blacklist i2c-matroxfb blacklist hgafb #blacklist nvidiafb /* blacklist nouveau * 修改的内容 options nouveau modeset0 */ blacklist rivafb blacklist savagefb blacklist sstfb blacklist neofb blacklist tridentfb blacklist tdfxfb blacklist virgefb blacklist vga16fb blacklist viafb# ISDN - see bugs 154799, 159068 blacklist hisax blacklist hisax_fcpcipnp# sound drivers blacklist snd-pcsp# I/O dynamic configuration support for s390x (bz #563228) blacklist chsc_sch# crypto algorithms blacklist sha1-mb# see bz #1562114 blacklist sha256-mb 找到# framebuffer drivers这一栏我们需要解释一下 framebuffer帧缓冲framebuffer是Linux为显示设备提供的一个接口把显存抽象后的一种设备他允许上层应用程序在图形模式下直接对显示缓冲区进行读写操作。framebuffer是LCD对应的一中HAL硬件抽象层提供抽象的统一的接口操作用户不必关心硬件层是怎么实施的。这些都是由 Framebuffer设备驱动来完成的。Linux FrameBuffer 本质上只是提供了对图形设备的硬件抽象在开发者看来FrameBuffer 是一块显示缓存往显示缓存中写入特定格式的数据就意味着向屏幕输出内容。简单来讲 framebuffer就是kernel与显卡驱动的一个中间层framebuffer也是驱动然而由于各显卡厂商AMD/Nvidia的硬件架构寄存器有差异所以需要使用相对应的framebuffer驱动。我们可以在# framebuffer drivers 看到 radeonfb 对应AMD显卡nvidiafb对应 Nvidia显卡不过默认都是被屏蔽掉的因为系统默认使用nouveau驱动。我们要安装Nvidia显卡驱动所以在blacklist nvidiafb前面加#号取消nvidiafb的屏蔽。那么又该如何屏蔽nouveau驱动呢在 # framebuffer drivers下写入以下配置blacklist nouveau //屏蔽 nouveauoptions nouveau modeset0 //关于这一行网上的教程没有给出这么写的原因通过搜索网络我找到这么如下解释:linux内核的modeset0 或者 nomodeset参数的作用是什么啊​zhidao.baidu.com字符界面也可以打开 framebuffer 来提供 2D 加速图形显示的功能。不过有的时候如果有问题内核还会继续设置显示模式而导致显示不正常。这个时候这个命令就让内核不再去设置显示模式而保证系统还可以进入字符界面。不过当然就是标准的显示状态了至少能用的显示状态。 nomodeset 做什么_ubuntu_帮酷​www.helplib.com最新的内核已经将视频模式设置移到内核中。 所以在X 服务器启动时所有的硬件特定时钟速率和寄存器上的寄存器都会发生。 这使得得到高分辨率的( 引导) 显示屏和闪烁的自由转换从启动屏幕到登录屏幕是可以能的。 不幸的是有些卡不能正常工作你最终会得到一个 black 屏幕。 添加nomodeset参数指示内核不加载视频驱动程序而是使用BIOS模式直到加载了X。也就是说如果不加这一行字符界面下可能导致显示器黑屏无法安装驱动。通过以上设置我们完成了/lib/modprobe.d/dist-blacklist.conf的配置接下来需要使用dracut命令根据我们的设置重新生成initramfs文件从而完成显卡驱动安装前的准备工作。 四、安装显卡驱动 1.安装内核模块编译的相关文件kernel-header和kernel-devel# yum -y install kernel-header # yum -y install kernel-devel2.下载显卡相对应的显卡驱动AMD/Nvidia官网我的驱动放在了根目录下, 文件以.run结尾# cd / # ls bin dev home lib64 mnt opt root sbin sys usr boot etc lib media NVIDIA-Linux-x86_64-430.34.run proc run srv tmp var3. 屏蔽默认的开源驱动nouveauvim 编辑配置文件# vim /lib/modprobe.d/dist-blacklist.conf找到 # framebuffer drivers一栏将nvidiafb注释掉# blacklist nvidiafb然后添加以下语句blacklist nouveau options nouveau modeset04. 重新生成 initramfs image 文件mv /boot/initramfs-3.10.0-957.21.3.el7.x86_64.img /boot/initramfs-3.10.0-957.21.3.el7.x86_64.img.bak上面这一行的作用是把旧的initramfs文件名进行修改在文件名末尾加入.bak代表这是弃用的initramfs文件这样做是为了保险当然你也可以把这个文件删除掉因为我们要生成新的initramfs文件。使用 dracut 命令重新生成 initramfs image 文件dracut /boot/initramfs-3.10.0-957.21.3.el7.x86_64.img 3.10.0-957.21.3.el7.x86_645. 重启计算机# reboot由于我们禁用了nouvenv驱动所以重启后显示效果很差6.进入字符界面# init 37.赋予Nvidia驱动执行权限# chmod 777 NVIDIA-Linux-x86_64-430.34.run8. 执行Nvidia驱动# ./NVIDIA-Linux-x86_64-430.34.run安装过程全部选择Yes9.返回图形界面# init 510.重启计算机# reboot到此安装完成重启后我们可以使用 nvidia-smi 命令查看显卡状态# nvidia-smi Sat Jul 20 23:06:28 2019 ----------------------------------------------------------------------------- | NVIDIA-SMI 430.34 Driver Version: 430.34 CUDA Version: 10.1 | |--------------------------------------------------------------------------- | GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC | | Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. | || | 0 GeForce GTX 770 Off | 00000000:01:00.0 N/A | N/A | | 31% 56C P0 N/A / N/A | 283MiB / 1996MiB | N/A Default | -------------------------------------------------------------------------------------------------------------------------------------------------------- | Processes: GPU Memory | | GPU PID Type Process name Usage | || | 0 Not Supported | -----------------------------------------------------------------------------
http://www.zqtcl.cn/news/558443/

相关文章:

  • 闲鱼上面给人做网站造退款微信登录建设银行网站
  • 无锡网站推广公司网络营销课程设置
  • dede 网站根目录北京好的设计公司
  • 网站关键词重复wordpress 影响力
  • 外包商网站怎么做php网站转移
  • 怎么做自己的网站推广产品企业建站 平台
  • 河北做网站公司网站建设团队扬州
  • 114物流网站怎么做免费注册163免费邮箱申请
  • 做网站要以单位手机发博客wordpress
  • 莆田网站建设莆田seo管理系统培训
  • 有一个网站自己做链接获取朋友位置网站关键词数量减少
  • 毕设网站建设论文小程序开发模板
  • 广州网页模板建站电商平台谈双11变冷
  • 用.cc做网站官网可以吗2003系统网站建设
  • 创意网站推荐新手网站
  • 网站编程好学吗免费下载app并安装
  • 广州专业网站制作设计网站建设分几种
  • 有没有专业做艺术品的网站长沙人才市场招聘信息
  • 河池做网站通过邮箱查注册网站
  • 金融互助网站开发网上免费设计效果图
  • 网站开发 例子施工企业质量管理体系应按照我国
  • 义乌建设网站网络营销推广有哪些方法
  • 宿迁建设局网站a类证查询怎么自己搭建梯子
  • 成都网站品牌设计策划网络推广如何收费
  • html5 js全屏滑动网站源码wordpress 插件 破解
  • 做电影网站怎么批量去水印微信用什么小程序可以提取文字
  • 网站开发费用周期域名网站建设方案书模板
  • 织梦网站问题关于政务网站建设工作情况的总结
  • wordpress 拿站网站搭建后如何使用
  • 网站设计应遵循的原则wordpress免费空间