不读本注意事项没资格干这个活!
1,进行此操作前,一定要先创建磁盘快照,出现任何报错,必须回滚。
2,公司生产机避免升级一二级版本号,建议仅安装内核安全更新。
3,对公司生产机操作前,一定要征得技术主管同意,你自己没把握让他来弄。
4,请不要参照网上其他文章下载 deb 包手动升级,尤其是跨二级版本的情况下,依赖问题会把你搞得焦头烂额。
5,请优先考虑使用LTS版本内核:5.4、5.10、5.15。
6,升级内核请使用 root 登录。
(公司生产机建议使用)
su
apt update
apt upgarde
apt upgrade linux-image-generic
reboot
访问 Ubuntu Mainline 页面确定你所需要的内核版本号。例如:v5.15.35 (LTS)
页面:https://kernel.ubuntu.com/~kernel-ppa/mainline/
使用 root 登录,下载 Canonical 官方的内核热更新脚本:
wget https://raw.githubusercontent.com/pimlie/ubuntu-mainline-kernel.sh/master/ubuntu-mainline-kernel.sh
chmod +x ubuntu-mainline-kernel.sh
mv ubuntu-mainline-kernel.sh /usr/local/bin/
更新内核,以 5.15.35 为例:
ubuntu-mainline-kernel.sh -i v5.15.35
reboot
第四步:
更改内核后,需要重新配置 apt 工具:
apt --fix-broken install
确认更新,并清理旧内核:
uname -a
输出:
Linux VM-4-12-ubuntu 5.15.35-051535-generic #202204200445 SMP Wed Apr 20 10:05:22 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
确认内核已经更新后,可以开始清理:
dpkg --get-selections|grep linux
输出:
binutils-x86-64-linux-gnu install
console-setup-linux install
libselinux1:amd64 install
libselinux1-dev:amd64 install
linux-base install
linux-crashdump install
linux-firmware install
linux-headers-5.15.35-051535 install
linux-headers-5.15.35-051535-generic install
linux-headers-5.4.0-77 install
linux-headers-5.4.0-77-generic install
linux-image-5.4.0-109-generic install
linux-image-5.4.0-77-generic install
linux-image-generic install
linux-image-unsigned-5.15.35-051535-generic install
linux-libc-dev:amd64 install
linux-modules-5.15.35-051535-generic install
linux-modules-5.4.0-109-generic install
linux-modules-5.4.0-26-generic deinstall
linux-modules-5.4.0-42-generic deinstall
linux-modules-5.4.0-77-generic install
linux-modules-extra-5.4.0-109-generic install
linux-modules-extra-5.4.0-26-generic install
linux-modules-extra-5.4.0-77-generic install
util-linux install
清理指定版本旧内核:
apt purge linux-*5.4.0-26*
apt purge linux-*5.4.0-42*
再次确认:
dpkg --get-selections|grep linux
输出:
binutils-x86-64-linux-gnu install
console-setup-linux install
libselinux1:amd64 install
libselinux1-dev:amd64 install
linux-base install
linux-crashdump install
linux-firmware install
linux-headers-5.15.35-051535 install
linux-headers-5.4.0-77 install
linux-headers-5.4.0-77-generic install
linux-image-5.4.0-109-generic install
linux-image-5.4.0-77-generic install
linux-image-generic install
linux-image-unsigned-5.15.35-051535-generic install
linux-libc-dev:amd64 install
linux-modules-5.15.35-051535-generic install
linux-modules-5.4.0-109-generic install
linux-modules-5.4.0-77-generic install
linux-modules-extra-5.4.0-109-generic install
linux-modules-extra-5.4.0-77-generic install
util-linux install
第六步:
更新启动菜单
update-grub
尝试通过RVM将RubyGems升级到版本1.8.10并出现此错误:$rvmrubygemslatestRemovingoldRubygemsfiles...Installingrubygems-1.8.10forruby-1.9.2-p180...ERROR:Errorrunning'GEM_PATH="/Users/foo/.rvm/gems/ruby-1.9.2-p180:/Users/foo/.rvm/gems/ruby-1.9.2-p180@global:/Users/foo/.rvm/gems/ruby-1.9.2-p180:/Users/foo/.rvm/gems/rub
我在我的Rails项目中使用Pow和powifygem。现在我尝试升级我的ruby版本(从1.9.3到2.0.0,我使用RVM)当我切换ruby版本、安装所有gem依赖项时,我通过运行railss并访问localhost:3000确保该应用程序正常运行以前,我通过使用pow访问http://my_app.dev来浏览我的应用程序。升级后,由于错误Bundler::RubyVersionMismatch:YourRubyversionis1.9.3,butyourGemfilespecified2.0.0,此url不起作用我尝试过的:重新创建pow应用程序重启pow服务器更新战俘
我实际上是在尝试使用RVM在我的OSX10.7.5上更新ruby,并在输入以下命令后:rvminstallruby我得到了以下回复:Searchingforbinaryrubies,thismighttakesometime.Checkingrequirementsforosx.Installingrequirementsforosx.Updatingsystem.......Errorrunning'requirements_osx_brew_update_systemruby-2.0.0-p247',pleaseread/Users/username/.rvm/log/138121
我试过重新启动apache,缓存的页面仍然出现,所以一定有一个文件夹在某个地方。我没有“公共(public)/缓存”,那么我还应该查看哪些其他地方?是否有一个URL标志也可以触发此效果? 最佳答案 您需要触摸一个文件才能清除phusion,例如:touch/webapps/mycook/tmp/restart.txt参见docs 关于ruby-如何在Ubuntu中清除RubyPhusionPassenger的缓存?,我们在StackOverflow上找到一个类似的问题:
我最近决定从我的系统中卸载RVM。在thispage提出的一些论点说服我:实际上,我的决定是,我根本不想担心Ruby的多个版本。我只想使用1.9.2-p290版本而不用担心其他任何事情。但是,当我在我的Mac上运行ruby--version时,它告诉我我的版本是1.8.7。我四处寻找如何简单地从我的Mac上卸载这个Ruby,但奇怪的是我没有找到任何东西。似乎唯一想卸载Ruby的人运行linux,而使用Mac的每个人都推荐RVM。如何从我的Mac上卸载Ruby1.8.7?我想升级到1.9.2-p290版本,并且我希望我的系统上只有一个版本。 最佳答案
我想使用spawn(针对多个并发子进程)在Ruby中执行一个外部进程,并将标准输出或标准错误收集到一个字符串中,其方式类似于使用Python的子进程Popen.communicate()可以完成的操作。我尝试将:out/:err重定向到一个新的StringIO对象,但这会生成一个ArgumentError,并且临时重新定义$stdxxx会混淆子进程的输出。 最佳答案 如果你不喜欢popen,这是我的方法:r,w=IO.pipepid=Process.spawn(command,:out=>w,:err=>[:child,:out])
我正在尝试找到一种方法来规范化字符串以将其作为文件名传递。到目前为止我有这个:my_string.mb_chars.normalize(:kd).gsub(/[^\x00-\x7F]/n,'').downcase.gsub(/[^a-z]/,'_')但第一个问题:-字符。我猜这个方法还有更多问题。我不控制名称,名称字符串可以有重音符、空格和特殊字符。我想删除所有这些,用相应的字母('é'=>'e')替换重音符号,并将其余的替换为'_'字符。名字是这样的:“Prélèvements-常规”“健康证”...我希望它们像一个没有空格/特殊字符的文件名:“prelevements_routin
之前在培训新生的时候,windows环境下配置opencv环境一直教的都是网上主流的vsstudio配置属性表,但是这个似乎对新生来说难度略高(虽然个人觉得完全是他们自己的问题),加之暑假之后对cmake实在是爱不释手,且这样配置确实十分简单(其实都不需要配置),故斗胆妄言vscode下配置CV之法。其实极为简单,图比较多所以很长。如果你看此文还配不好,你应该思考一下是不是自己的问题。闲话少说,直接开始。0.CMkae简介有的人到大二了都不知道cmake是什么,我不说是谁。CMake是一个开源免费并且跨平台的构建工具,可以用简单的语句来描述所有平台的编译过程。它能够根据当前所在平台输出对应的m
在VMware16.2.4安装Ubuntu一、安装VMware1.打开VMwareWorkstationPro官网,点击即可进入。2.进入后向下滑动找到Workstation16ProforWindows,点击立即下载。3.下载完成,文件大小615MB,如下图:4.鼠标右击,以管理员身份运行。5.点击下一步6.勾选条款,点击下一步7.先勾选,再点击下一步8.去掉勾选,点击下一步9.点击下一步10.点击安装11.点击许可证12.在百度上搜索VM16许可证,复制填入,然后点击输入即可,亲测有效。13.点击完成14.重启系统,点击是15.双击VMwareWorkstationPro图标,进入虚拟机主
需求:要创建虚拟机,就需要给他提供一个虚拟的磁盘,我们就在/opt目录下创建一个10G大小的raw格式的虚拟磁盘CentOS-7-x86_64.raw命令格式:qemu-imgcreate-f磁盘格式磁盘名称磁盘大小qemu-imgcreate-f磁盘格式-o?1.创建磁盘qemu-imgcreate-fraw/opt/CentOS-7-x86_64.raw10G执行效果#ls/opt/CentOS-7-x86_64.raw2.安装虚拟机使用virt-install命令,基于我们提供的系统镜像和虚拟磁盘来创建一个虚拟机,另外在创建虚拟机之前,提前打开vnc客户端,在创建虚拟机的时候,通过vnc