首页
友链
壁纸
直播
留言
归档
关于
推荐
百度一下
腾讯视频
Search
1
linux免费WEB管理面板:AMH
16,487 阅读
2
为主题添加前台删除文章及评论功能
5,071 阅读
3
欢迎使用Typecho
3,882 阅读
4
创建WordPress多站点网络
2,582 阅读
5
代码高亮 - SyntaxHighlighter 0.0.5
1,872 阅读
网络杂记
Wordpress
Typecho
VPS教程
主题模板
登录
Search
标签搜索
Typecho
WordPress
主题
Linux
VPS
LNMP
MySQL
管理面板
nginx
面板
升级
Apache
php函数
缓存
gravatar
404错误
评论
删除
命令
kloxo
CludeChn
累计撰写
119
篇文章
累计收到
13
条评论
首页
栏目
网络杂记
Wordpress
Typecho
VPS教程
主题模板
页面
友链
壁纸
直播
留言
归档
关于
推荐
百度一下
腾讯视频
搜索到
119
篇与
的结果
2024-04-23
升级Alma Linux到新版本
升级到新版本的Alma Linux通常需要执行以下步骤:1、确保备份重要数据:在进行升级之前,务必备份重要数据,以防止数据丢失或损坏。2、更新当前系统:在升级之前,确保您的当前Alma Linux系统是最新的版本。可以通过运行以下命令来更新系统:sudo dnf upgrade3、安装DNF插件:在升级之前,确保系统已安装DNF插件,以便执行升级操作。如果尚未安装DNF插件,可以通过以下命令安装:sudo dnf install dnf-plugin-system-upgrade4、执行系统升级:执行以下命令来升级您的Alma Linux系统到新版本:sudo dnf system-upgrade download --releasever=新版本号请将“新版本号”替换为您要升级到的Alma Linux版本号。这将下载新版本的软件包到您的系统中。5、执行系统重启:下载完成后,执行以下命令来重启系统并完成升级过程:sudo dnf system-upgrade reboot系统将会重启并开始执行升级操作。升级过程可能需要一段时间,取决于您的系统性能和网络速度。6、验证升级:升级完成后,可以通过运行以下命令来验证新版本的Alma Linux系统:cat /etc/os-release这将显示您的系统当前运行的操作系统版本信息。确保显示的版本号是您所升级到的新版本。通过以上步骤,您可以成功升级您的Alma Linux系统到新版本。如果在升级过程中遇到任何问题,请参考官方文档或寻求技术支持。
2024年04月23日
10 阅读
0 评论
0 点赞
1Panel是一个现代化、开源的Linux服务器运维管理面板。
2023年06月13日
42 阅读
0 评论
0 点赞
2023-06-13
1Panel是一个现代化、开源的 Linux 服务器运维管理面板。核心功能与优势■ 快速建站:深度集成WordPress和Halo,域名绑定、SSL证书配置等操作一键搞定;■ 高效管理:用户可以通过Web浏览器轻松管理Linux服务器,包括应用管理、主机监控、文件管理、数据库管理、容器管理等;■ 安全可靠:最小漏洞暴露面,提供防火墙和安全审计等功能;■ 一键备份:支持一键备份和恢复,备份数据云端存储,永不丢失。在线安装环境要求:操作系统:支持主流 Linux 发行版本(基于 Debian / RedHat,包括国产操作系统);服务器架构:x86_64、aarch64、armv7l、ppc64le、s390x;内存要求:建议可用内存在 1GB 以上;浏览器要求:请使用 Chrome、FireFox、IE10+、Edge等现代浏览器;可访问互联网。安装部署CentOS/RHEL:curl -sSL https://resource.fit2cloud.com/1panel/package/quick_start.sh -o quick_start.sh && sh quick_start.shUbuntucurl -sSL https://resource.fit2cloud.com/1panel/package/quick_start.sh -o quick_start.sh && sudo bash quick_start.shDebiancurl -sSL https://resource.fit2cloud.com/1panel/package/quick_start.sh -o quick_start.sh && bash quick_start.sh在线升级登录1Panel Web控制台,在页面右下角点击【检查更新】进行在线升级。官方网站:https://1panel.cnGitHub:https://github.com/1Panel-dev
2023-05-24
Linux下的Nginx与Apache环境防盗链设置
方法根据我们搭建的系统环境不同,我们在Nginx和Apache中设置防盗链的方法也是不同的。1、Nginx防盗链方法:location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|webp)$ { valid_referers none blocked cyh.pw *.cyh.pw; if ($invalid_referer) { return 403; } expires 30d; }在网站所在的配置文件conf中添加以上代码,添加后重启nginx就可以生效,网址替换成自己的。2、Apache防盗链方法:RewriteEngine On RewriteCond %{HTTP_REFERER} !^https://cyh.pw/.*$ [NC] RewriteCond %{HTTP_REFERER} !^https://cyh.pw$ [NC] RewriteCond %{HTTP_REFERER} !^https://www.cyh.pw/.*$ [NC] RewriteCond %{HTTP_REFERER} !^https://www.cyh.pw$ [NC] RewriteRule .*\.(gif|jpg|jpeg|png|bmp|swf|webp)$ https://cyh.pw/404.html [R,NC]把上面代码中的网址替换成自己的,然后提交至网站的根目录.htaccess文件中添加上述代码即可生效。
2023年05月24日
14 阅读
0 评论
0 点赞
2023-05-17
linux中缓存清除并释放内存
当linux频繁读取文件后,物理内存会很快被用完,当程序结束后,内存不会被正常释放,而是一直caching,因此有必要手动清理系统缓存释放内存。linux中清除缓存,具体步骤:1、linux缓存包括两部分,dns缓存和浏览器缓存。应先清除dns缓存,再清除浏览器缓存。2、清除dns缓存。可重新启动NSCD服务来达成清除DNS Cache的效果。在linux输入框中输入命令service nscd restart或是nscd restart命令,并执行此命令即可。3、清除浏览器缓存。在linux设置找到浏览器,打开浏览器记录,点击清除缓存,之后重新打开浏览器即可。先执行sync命令sync;sync;sync手动执行sync命令(描述:sync命令运行sync子例程。如果必须停止系统,则运行sync命令以确保文件系统的完整性。sync命令将所有未写的系统缓冲区写到磁盘中,包含已修改的i-node、已延迟的块I/O和读写映射文件。清理linux内存缓存echo 3>/proc/sys/vm/drop_caches关键的配置文件/proc/sys/vm/drop_caches。这个文件中记录了缓存释放的参数,默认值为0,也就是不释放缓存。他的值可以为0~3之间的任意数字,代表着不同的含义:0 – 不释放1 – 释放页缓存2 – 释放dentries和inodes3 – 释放所有缓存此指令输入立即生效,意在释放所有缓存。查看内存free -h total used free shared buff/cache available Mem: 3.6Gi 967Mi 1.2Gi 113Mi 1.4Gi 2.3Gi Swap: 4.0Gi 0B 4.0Gitotal——总物理内存 used——已使用内存,一般情况这个值会比较大,因为这个值包括了cache+应用程序使用的内存 free——完全未被使用的内存 shared——应用程序共享内存 buffers——缓存,主要用于目录方面,inode值等(ls大目录可看到这个值增加) cached——缓存,用于已打开的文件恢复默认设置缓存可以提升系统的运行效率,如果发现系统内存经常不够用,应该考虑添加内存,而不是经常清理echo 0>/proc/sys/vm/drop_caches
2023年05月17日
9 阅读
0 评论
0 点赞
2023-05-01
Typecho主题 - Bearsimple V2
一款简洁大方的Typecho主题若主题目录名为typecho-bearsimple-v2.x,则需改为bearsimple,配套插件目录中的BsCore需放入/usr/plugins中,否则无法正常使用。主题功能支持Pjax加载Diy模式评论过滤,支持限制一些评论内容评论表情,支持QQ等个性表情支持短代码,支持回复可见、字体颜色、已完成/未完成列表[todolist]等编辑器支持一键插入全部附件HTML压缩灯箱功能,可以将文章内的图片聚集到灯箱查看图片水印,支持文字水印和图片水印功能幻灯片功能弹窗功能打赏功能缓存功能多种导航菜单样式多种翻页样式极具多样化的行为验证功能,可设置评论验证码以及CC简易防护文章微海报功能实验室功能哀悼模式支持语言切换,拥有简繁体切换以及全球几十种语言切换防复制功能返回顶部Sitemap网站地图友链功能文章置顶多种头像调用方式(Gravatar多种镜像源可供切换、自定义头像、支持QQ头像)支持代码高亮,拥有多种样式可供选择多种文章展现样式可供选择支持文章时效性提示支持文章版权功能,多种文章共享协议可供选择文章支持显示文章热度支持多种自定义页面,追番、读书应有尽有~~主题下载项目地址:https://github.com/whitebearcode/typecho-bearsimple主题文件:Bearsimple V2
2023年05月01日
13 阅读
0 评论
0 点赞
2023-04-29
Typecho瀑布流主题:Practice01
简介这是一款瀑布流无限加载自适应Typecho主题,并且集成友链导航、相册等功能,整体的设计上也也很有质感,是一款不错的主题。预览特色主题特点是瀑布流布局,自适应屏幕宽度以及手机端界面支持图片延时加载(图片懒加载)文章列表无限滚动加载页面左侧内容区和右侧边栏自动根据内容长度滚动时固定页面滚动时菜单导航顶部固定自由设置首页及分类页头部轮播图和链接地址自由设置文章页头部大图及文字内容以打字效果随机显示收藏短句支持设置网站公告及查看以往公告自由设置文章缩略图文章列表页中的文章标题前会根据文章内容显示不同图标可自定义每篇文章的标题颜色主题支持独立相册功能,具有特定的展现形式文章中支持通过短代码插入音乐、视频、相册集成了代码高亮支持友情链接,可分别设置在首页或内页显示的友链,支持链接分类,无需插件主题设置中可填写备案号重写了评论模块,评论回复自动添加回复字样,类似于@添加留言页面模板,集成读者墙侧栏底部添加返回顶部按钮下载免费获取本主题:项目地址 Practice01 v20200515注意:请将主题文件夹名称修改为practice01使用说明1.安装启用主题下载并解压主题文件,确保主题文件夹名称为:practice01,将文件夹上传至/usr/themes/目录下,然后登陆typecho后台,在控制台->外观中启用本主题。2.主题选项在控制台->外观(网站外观)->设置外观中可以看到主题的设置选项,主题大部份功能都通过这里进行设置。一些基本的设置只要看描述就能明白,这里就不再赘述。在设置中需要了解的是网站头部全屏轮播的设置方法、以及友情链接的设置方法。3.头部轮播图设置首先勾选中显示轮播图前面的框,然后在轮播图列表的输入框中设置轮播的各项参数,设置轮播需要四个参数,1标题,2链接地址,3图片地址,4轮播分类,参数之间使用英文标点符号,隔开,一行表示一条记录,支持多条轮播。示例:Be water my friend,https://kisxy.com,https://kisxy.com/usr/uploads/2018/12/1888809987.jpg,home通过轮播图列表中的第四个参数(轮播分类),可以设置让首页和文章分类页面显示不同的轮播内容,只需要在首页轮播分类和分类页面轮播分类中分别填入要显示的轮播分类名,也就是第四个参数值。留空表示显示列表中的所有轮播。首页和分类页面的轮播图数量,此处按照列表中实际输入的数量填写即可!4.首页友链设置勾选显示首页友链链接前面的框,然后在首页链接列表的输入框中设置友链的各项参数,包含四个参数,1链接分类,2链接名称,3链接地址*,4链接描述,参数之间使用英文标点符号,隔开,一行表示一条记录,支持多条记录。示例:myself,小宇博客,https://kisxy.com,没有什么会永垂不朽5.内页友链设置内页友链的设置需要先在选项上指定链接分类,只有指定的链接分类才会显示在内页链接页面中。指定好分类之后,在内页链接列表的输入框中输入链接参数,此处于设置首页链接方法相同,也是四个参数。若需要添加rel="nofollow"属性,则需要添加第五个参数,值为0。示例:myself,小宇博客,https://kisxy.com,没有什么会永垂不朽,0设置好链接内容后,前往管理->独立页面,创建一个新页面,自定义模板选择links,然后发布即可!6.关于文章页和独立页面的头部大图设置文章或页面的头部预留一块内容用来显示头部大图,默认图片地址为空,显示为黑色背景,可以在选项中设置一个默认的图片地址。如需要每篇文章使用不同的图片,可以在文章发布页进行设置,可分别设置图片及文字内容。7.发布文章时常用的设置选项自定义缩略图设置:顾名思义就是文章缩略图,在文章列表页显示的。文章置顶标记:此项是为配合sticky插件来使用的,因为sticky插件的置顶添加的标记只有在文章列表页才会有,该选项是在文章内容页的标题后也添加置顶二字,当然你如果不用置顶插件则忽略此选项,默认就是关闭的。标题文字颜色:可单独设置每篇文章的字体颜色。输入颜色代码即可,如#000000;8.主题文章缩略图说明关于文章的缩略图,当你没有设置自定义缩略图时,会自动将文章中的第一张插入的图片将为缩略图。如果既没有设置自定义缩略图,文章中又不包含图片时,则不显示缩略图,直接从标题开始显示。当文章中插入的图片达到4张或以上时,列表中该篇文章将以图片封面形式显示。9.文章中插入mp3音乐直接在发布文章时进行设置,分别在对应字段中填入歌曲MP3地址,歌名,歌手,歌曲封面即可。10.读者墙这一块内容采用了现成的代码修改而来,可以按留言次数显示前40位访客的头像。设置方法:创建一个新的独立页面,模板选择:message-board,发布即可。11.创建近期动态或网站公告同样通过页面的方式来创建,将在侧栏第一个位置显示。设置方法:创建一个新的页面,模板选择status,然后填写标题:动态或公告按需填写,然后在内容中输入要显示的内容。此处要注意,需要按照一定的格式填写,每一条内容需要包含在record短代码中,新的内容写在前面,旧的内容往后推。格式如下:[record]此处写日期或小标题后换行 这一行开始写内容,内容可以换行。 像这样...,然后再换行,输入结束的短代码。 [/record]然后发布即可!12.创建独立相册在管理->分类中创建一个新的分类,取名为相册,分类缩略名设置为gallery。然后正常发布文章,选择发布到相册分类下,并且在文章发布选项中将该篇文章设置为相册形式,默认不勾选则是普通文章形式。文章的内容请按照以下形式来填写:发布相册内容方法:一个反斜杠后面加图片地址,一行一条记录示例:\https://kisxy.com/usr/uploads/2018/12/347705932.jpg \https://kisxy.com/usr/uploads/2018/12/1927513038.jpg \https://kisxy.com/usr/uploads/2018/12/2129023047.jpg然后发布即可!相册列表演示13.文章中插入视频直接在文章内容中通过短代码插入视频,有三种方式可以操作,具体如下:三种方式都支持以.mp4为结尾的视频地址,或者是youtube在线视频页面地址,暂不支持国内优酷、爱奇艺等视频网站地址!话说国内主流在线视频网站的视频如果要插入文章根本不需要短代码,直接引用视频网站产生的embed标签代码粘贴过来就可以了第一种形式(无封面):[addvideo]\视频url地址,视频名称或描述,视频宽度,视频高度[/addvideo]说明:每个参数中间用英文逗号“,”隔开;注意视频地址前需要添加一个反斜杠;第二种形式(插入typecho附件图片作为视频封面):[addvideo2]\视频url地址,此位置直接插入typecho附件图片,视频宽度,视频高度[/addvideo2]每个参数中间用英文逗号“,”隔开;注意视频地址前需要添加一个反斜杠;注意不是图片地址,而是用typecho文章发布右侧的附件直接插入第三种形式(使用外链图片地址作为封面):[addvideo3]\视频url地址,视频名称或描述,封面图片url,视频宽度,视频高度[/addvideo3]每个参数中间用英文逗号“,”隔开;注意视频地址前需要添加一个反斜杠;演示地址请查看页面:文章插入视频14.文章内容中插入相册这个首先说明一下,文章中普通方式插入的单张图片是没有灯箱效果的,我也没有添加灯箱效果,暂时感觉没有必要,后续可能会考虑。但是文章内容中插入的相册,均是带有灯箱效果的,且可以在一篇文章中插入多个相册,同样是通过短代码的方式来添加。可以在文章内任何位置插入相册。相册提供一张预览图,点击触发灯箱,显示相册内的多张图片,可以自由切换。方法如下:[group]\https://kisxy.com/usr/uploads/2018/12/2674333389.jpg,这是第一个相册的描述,包含了6张图片,1[/group] [album]\https://kisxy.com/usr/uploads/2018/12/553765828.jpg,1[/album] [album]\https://kisxy.com/usr/uploads/2018/12/3026050646.jpg,1[/album] [album]\https://kisxy.com/usr/uploads/2018/12/3933651579.jpg,1[/album] [album]\https://kisxy.com/usr/uploads/2018/12/1998758631.jpg,1[/album] [album]\https://kisxy.com/usr/uploads/2018/12/3437516934.jpg,1[/album]如需要添加第二个相册,那么只需要将以上代码中的1改成2,第三个就是3,以此类推...演示地址请查看此页面:文章插入相册15.插入一个点击文字触发灯箱显示图片的短代码好吧,这个我也不知道该怎么描述,总之这个是为了避免当一张图片高度太大时,直接显示出来会占用很大的篇幅而采取的一个方法,通过这个方法可以将图片隐藏在起来,提供一个文字链接,当需要查看图片时,只击该文字就会以灯箱效果弹出图片。还是直接看效果吧,当然先说明一下方法:[addimg]\图片地址,文字描述[/addimg] //注意地址前加一个反斜杠,中间是用英文逗号“,”隔开的!效果就是这样的,请点击:就是这个效果
2023年04月29日
8 阅读
0 评论
0 点赞
2023-04-28
Word:一款专为文字创作而生的typecho主题
Word是一款专为文字创作而生,又简而不凡的全新typecho主题。主题亮点延续Joe主题相关功能,具有丰富的短代码全新页面布局,从简设计说说页面时间轴设计留言页面用户排行榜友链页面分首页和内页显示归档页面手风琴设计支持文章列表点赞支持导航栏分类合并、页面合并支持自定义页面Batten图支持移动端页脚自定义链接支持默认、单图、三图、无图和闲谈五种文章模式支持文章代码高亮支持评论贴图、私密支持侧栏开关支持前台用户登录主题下载https://github.com/dinphy/Wordhttps://github.com/dinphy/Word/releases/latest/download/Word.zip
2023年04月28日
16 阅读
0 评论
0 点赞
2023-04-28
Typecho优雅纯粹的主题Chaos
主题简介:Chaos是一款集优雅、美观、纯粹、干净、极速于一体的Typecho博客主题。主题功能特点:优雅的布局、快速的响应丰富的个人自定义设置项说说发布功能友链管理功能自定义主题色、统计代码、CSS样式自带网站地图,便于收录全站pjax,纵享丝滑文章分享(海报、微博、QQ……)、文章打赏、文章点赞、文章目录多用户主题,带个人中心更多...待添加功能:文章短代码、相册、日记等等主题页面:https://www.ztyang.com/article/29.html
2023年04月28日
15 阅读
0 评论
0 点赞
2023-04-27
Typecho相册主题PIR
一个极其普通简洁的浅色系相册主题,瀑布流、懒加载、无限滚动。该主题是基于Typecho简洁瀑布流图片主题pic二次魔改的!注意事项克隆项目后将主题文件夹上传至typecho目录/usr/themes/路径下,到后台选择启用;修改后为完全壁纸或相册模板新建文章并将图片插入正文即可,支持任意数量,暂不支持附件形式主页图片标签跟随文章tag,如无tag则显示分类名称每页显示图片数量取决于后台设置->阅读->每页文章数目以及正文中插入的图片数量Todo移除二级页面改进首页样式,添加 灯箱、标签等图片懒加载演示:https://wallpaper.fordes.top/项目地址:https://github.com/fordes123/typecho-theme-pir主题文件:https://github.com/fordes123/typecho-theme-pir/archive/refs/heads/main.zip
2023年04月27日
11 阅读
0 评论
0 点赞
2023-04-27
Typecho主题Bearcool
Typecho摄影类瀑布流主题。若主题目录名为typecho-bearcool-master,则需改为bearcool,否则部分功能无法显示。特别声明:本主题仅适用于单纯的摄影类博客日志,请勿用于违法站点,在遵守国家法律法规的前提下合理使用主题的优点:瀑布流滚动加载图片懒加载可自定义性强风格样式全部托管于jsdelivr,所以主题的体积非常小长期维护更新还有很多这里不再一一列举项目地址:https://github.com/whitebearcode/typecho-bearcool主题文件:https://github.com/whitebearcode/typecho-bearcool/releases/download/v1.0.4/Bearcool_v1.0.4.zip
2023年04月27日
11 阅读
0 评论
0 点赞
2023-04-27
Typecho主题Gleaner
Gleaner,一个很棒的Typecho主题。Gleaner主题修改自开源项目:typecho-bearcool,不同于原版摄影类瀑布流主题的定位,Gleaner在保留基础框架的情况下, 使得其更趋向传统博客, 也即文字内容为主。修改内容:全新基于 canvas 的动态首页分类页更改为瀑布流,完美契合懒加载和无限滚动全新的归档页模板、更灵活的夜间模式配置等...下载最新主题文件, 将文件夹命名为gleaner并移动至typecho根目录usr/themes文件夹中, 然后在typecho后台应用主题即可。注意事项:部分资源使用了jsDelivr加速, 如速度较慢可于设置中开启本地模式。项目地址:https://github.com/fordes123/gleaner演示:https://fordes.top/
2023年04月27日
39 阅读
0 评论
0 点赞
2023-04-25
Typecho主题Butterfly
这是Typecho版本的butterfly主题。移植特色方便原hexo的博文转移,因为都是md文档原butterfly的用户可以直接使用原版butterfly主题的css文件,拥有原先同样的效果注意:移植并非为最新版butterfly,你的index.css可能会在本主题出现bug由于使用动态博客,大部分功能可以让程序去实现,不用借助第三方api(可在主题外观设置中自定义)在线编辑文档搜索、加密和置顶文章可以直接使用(相比hexo无需太多额外配置)相比hexo,程序安装更加方便,使用更加高效网站咨询显示同时在线人数(某些虚拟主机似乎无法使用)可在后台设置侧边栏信息以及侧边栏的隐藏和显示后续将开发更多功能已实现的功能支持评论区谷歌人机验证、hcaptcha人机验证全站加密或禁止访问一键开启魔改主题单独设置文章过期提醒文章加密(博客程序自带)后台设置需要置顶文章后台设置友链并可以使html自定义友链文章内可设置回复可见卡片化设计支持二级目录双栏设计响应式主题夜间模式Pjax文章阅读模式简体和繁体转换电脑和手机都可查看TOC目录内置多种代码配色(darker/pale night/light/ocean/mac/mac light),可自定义代码配色代码块显示代码语言/关闭或展开代码块/代码复制/代码自动换行可关闭文字复制/可开启内容复制增加版权信息)本地搜索Mathjax 和 Katex内置404页面显示字数统计显示相关文章过期文章提醒多种在线聊天(Chatra/Tidio/Daovoice/Gitter/Crisp)谷歌广告/手动广告位置修改网站配色打字特效 activate_power_mode多种背景特效(静止彩带/动态彩带/Canvas Nest)多种鼠标点击特效(烟花/爱心)内置一种 Preloader 加载动画Fancybox大图模式照片墙图片懒加载Snackbar弹窗PWA主题说明Typecho-Butterfly主题说明下载页面https://github.com/wehaox/Typecho-Butterfly
2023年04月25日
58 阅读
0 评论
0 点赞
2023-04-13
OneinStack建站脚本的安装部署
OneinStack安装脚本是使用shell编写的,以便快速部署LEMP/LAMP/LNMP/LNMPA/LTMP(Linux、Nginx/Tengine/OpenResty、MySQL在生产环境中/MariaDB/Percona、PHP、JAVA),适用于RHEL7、8、9(包括CentOS、RedHat、AlmaLinux、Rocky)、Debian9、10、11、Ubuntu16、18、20、22和Fedora27+等操作系统。包含以下组合lnmp(Linux + Nginx+ MySQL/MongoDB+ PHP)lamp(Linux + Apache+ MySQL/MongoDB+ PHP)lnmpa(Linux + Nginx+ MySQL/MongoDB+ PHP+ Apache):Nginx处理静态,Apache处理动态PHPlnmt(Linux + Nginx+ MySQL/MongoDB+ Tomcat):Nginx处理静态,Tomcat(JDK)处理JAVAlnpp(Linux + Nginx+ PostgreSQL+ PHP)lapp(Linux + Apache+ PostgreSQL+ PHP)支持系统版本CentOS 7~9(包括redhat,AlmaLinux,Rocky,Anolis)Debian 9、10、11Ubuntu 16、18、20、22Fedora 27+DeepinopenEuler,EulerOSKylinAmazon Linux 2Aliyun Linux 2~3,TencentOS 2~3特性持续不断更新,支持交互、无人值守安装源码编译安装,大多数源码是最新stable版,并从官方网址下载提供多个数据库版本(MySQL-8.0, MySQL-5.7, MySQL-5.6, MySQL-5.5, MariaDB-10.4,MariaDB-10.3,MariaDB-10.2,MariaDB-5.5,Percona-8.0, Percona-5.7, Percona-5.6, Percona-5.5,PostgreSQL, MongoDB)提供多个PHP版本(PHP-8.2,PHP-8.1,PHP-8.0,PHP-7.4,PHP-7.3,PHP-7.2,PHP-7.1,PHP-7.0,PHP-5.6, PHP-5.5,PHP-5.4,PHP-5.3)提供Nginx、Tengine、OpenResty、Apache和nginx waf功能提供多个Tomcat版本(Tomcat-10, Tomcat-9,Tomcat-8,Tomcat-7)提供多个JDK版本(OpenJDK-8, OpenJDK-11)根据自己需求安装PHP缓存加速器,提供ZendOPcache、xcache、apcu、eAccelerator。及php加解密工具ionCube、ZendGuardLoader根据自己需求安装Nodejs、Pureftpd、phpMyAdmin根据自己需求安装Memcached、Redisjemalloc优化MySQL、Nginx提供添加虚拟主机脚本提供Nginx/Tengine/OpenResty/Apache、PHP、Redis、Memcached、phpMyAdmin升级脚本提供本地备、远程(rsync)、阿里云OSS、腾讯云COS、又拍云、七牛云、亚马逊S3和Dropbox备份脚本开源软件版本安装方式自动脚本访问自动化脚本网址: 自动安装 ,根据自己的需求选择安装内容。最下方生成安装脚本,复制到服务器上直接执行即可。运行脚本最好使用screen命令开一个窗口执行,以保证Shell不会中断。交互安装安装发行版的依赖项,下载源代码并运行安装脚本。CentOS/Redhatyum -y install wget screenDebian/Ubuntuapt-get -y install wget screen下载源代码并安装wget http://mirrors.linuxeye.com/oneinstack-full.tar.gz tar xzf oneinstack-full.tar.gz cd oneinstack如果在安装过程中断开连接,则可以执行命令以重新连接到安装窗口screen -S oneinstack如果需要修改目录(安装、数据存储、Nginx日志),请在运行install.sh前修改文件options.conf./install.sh安装第二个PHP版本~/oneinstack/install.sh --mphp_ver 54 #/安装PHP5.4版本,--mphp_ver 54;PHP8.2版本,--mphp_ver 82添加扩展~/oneinstack/addons.sh添加虚拟主机~/oneinstack/vhost.sh删除虚拟主机~/oneinstack/vhost.sh --del添加FTP虚拟用户~/oneinstack/pureftpd_vhost.sh备份~/oneinstack/backup_setup.sh // Backup parameters ~/oneinstack/backup.sh // Perform the backup immediately crontab -l // Can be added to scheduled tasks, such as automatic backups every day 1:00 0 1 * * * cd ~/oneinstack/backup.sh > /dev/null 2>&1 &管理服务Nginx/Tengine/OpenResty:systemctl {start|stop|status|restart|reload} nginxMySQL/MariaDB/Perconasystemctl {start|stop|restart|reload|status} mysqldPostgreSQL:systemctl {start|stop|restart|status} postgresqlMongoDB:systemctl {start|stop|status|restart|reload} mongodPHP:systemctl {start|stop|restart|reload|status} php-fpmApache:systemctl {start|restart|stop} httpdTomcat:systemctl {start|stop|status|restart} tomcatPure-FTPd:systemctl {start|stop|restart|status} pureftpdRedis:systemctl {start|stop|status|restart|reload} redis-serverMemcached:systemctl {start|stop|status|restart|reload} memcached升级~/oneinstack/upgrade.sh卸载~/oneinstack/uninstall.sh
2023年04月13日
26 阅读
0 评论
0 点赞
2023-04-03
linux删除文件夹的相关命令
linux删除文件夹的命令:1、rmdir命令,使用“rmdir [-p] 文件夹名”即可删除空的指定文件夹;2、rm命令,使用“rm -rf 文件夹名”删除指定文件夹。linux删除文件夹1、使用rmdir命令 Linux rmdir(英文全拼:remove directory)命令删除空的目录。语法rmdir [-p] dirName参数:-p 是当子目录被删除后使它也成为空目录的话,则顺便一并删除。实例将工作目录下,名为 AAA 的子目录删除 :rmdir AAA2、使用rm命令 Linux rm(英文全拼:remove)命令用于删除一个文件或者目录。语法rm [options] name...参数:-i 删除前逐一询问确认。-f 即使原档案属性设为唯读,亦直接删除,无需逐一确认。-r 将目录及以下之档案亦逐一删除。示例:rm -rf /var/log/httpd/access将会删除/var/log/httpd/access目录以及其下所有文件、文件夹
2023年04月03日
20 阅读
0 评论
0 点赞
2023-03-31
Typecho语法大全/常用函数/调用方法
模板常用函数1、站点网址<?php $this->options->title() ?>2、站点网址<?php $this->options ->siteUrl(); ?>3、完整路径标题如分享几个 Typecho 中常用的调用函数<?php $this->archiveTitle(' » ', < span class="string">'', ' | '); ?><?php $this ->options->title(); ?>4、站点说明<?php $this->options->description() ?>5、模板文件夹地址<?php $this->options->themeUrl(); ?>6、导入模板文件夹内的 php 文件<?php $this->need('.php'); ?>7、文章或者页面的作者<?php $this->author(); ?>8、作者头像< ?php $this->author->gravatar('40') ?> *此处输出的完整的img标签,40是头像的宽和高。* 9、该文作者全部文章列表链接<?php $this->author->permalink (); ?>10、该文作者个人主页链接<?php $this->author->url(); ?>11 、该文作者的邮箱地址<?php $this->author->mail(); ?>12、上一篇与下一篇调用代码<?php $this->thePrev(); ?> <?php $this->theNext(); ?>13、判断是否为首页,输出相关内容<?php if ($this->is('index')): ?> //首页输出内容 <?php else: ?> //不是首页输出内容 <?php endif; ?>14、文章或页面,评论数目<?php $this->commentsNum('No Comments', '1 Comment' , '%d Comments'); ?>15、截取部份文章(首页每篇文章显示摘要),350 是字数<?php $this->excerpt(350, '...'); ?>16、调用自定义字段(官方文档坑爹,竟然没有,博主自己摸索出来的)<?php $this->fields->fieldName ?>17、RSS 地址<?php$this->options->feedUrl(); ?>18、获取最新 post<?php $this->widget('Widget_Contents_Post_Recent', 'pageSize=8&type=category')->parse('<li><a href="{permalink}">{title}</a></li>'); ?>19、纯文字分类名称,不带链接<?php $this->category(',', false); ?>20、获取当前文章所属分类(包含链接)<?php if ($this->is('post')): ?> <span><?php $this->category(' '); ?></span> <?php endif; ?>21、获取文章分类列表<ul> <?php $this->widget('Widget_Metas_Category_List') ->parse('<li><a href="{permalink}">{name}</a> ({count})</li>'); ?> </ul>22、获取某分类 post<ul> <?php $this->widget('Widget_Archive@indexyc', 'pageSize=8&type=category', 'mid=1') ->parse('<li><a href="{permalink}" title="{title}">{title}</a></li>'); ?> </ul>23、获取最新评论列表<ul> <?php $this->widget('Widget_Comments_Recent')->to($comments); ?> <?php while($comments->next()): ?> <li><a href="<?php $comments->permalink(); ?>"><?php $comments->author(false); ?></a>: <?php $comments->excerpt(50, '...'); ?></li> <?php endwhile; ?> </ul>24、首页获取 最新文章 代码限制条数<?php while ($this->next()): ?> <?php if ($this->sequence <= 3): ?> html <?php endif; ?> <?php endwhile; ?>25、获取最新评论列表 (只显示访客评论不显示作者或者说自己发的评论)<?php $this->widget('Widget_Comments_Recent','ignoreAuthor=true')->to($comments); ?> <?php while($comments->next()): ?> <li><a href="<?php $comments->permalink(); ?>"><?php $comments->author(false); ?></a>: <?php $comments->excerpt(50, '...'); ?></li> <?php endwhile; ?>26、获取文章时间归档<ul> <?php $this->widget('Widget_Contents_Post_Date', 'type=month&format=F Y') ->parse('<li><a href="{permalink}">{date}</a></li>'); ?> </ul>27、获取标签集合,也就是标签云<?php $this->widget('Widget_Metas_Tag_Cloud', 'ignoreZeroCount=1&limit=28')->to($tags); ?> <?php while($tags->next()): ?> <a href="<?php $tags->permalink(); ?>" class="size-<?php $tags->split(5, 10, 20, 30); ?>"><?php $tags->name(); ?></a> <?php endwhile; ?>28、调用该文相关文章列表<?php $this->related(5)->to($relatedPosts); ?> <?php if ($relatedPosts->have()): ?> //这句也可以写成 if (count($relatedPosts->stack)) <ul><?php while ($relatedPosts->next()): ?> <li><a href="<?php $relatedPosts->permalink(); ?>" title="<?php $relatedPosts->title(); ?>"><?php $relatedPosts->title(); ?></a></li> <?php endwhile; ?></ul> <?php else : ?> <li>无相关文章</li> <?php endif; ?>29、隐藏 head 区域的程序版本和模版名称<?php $this->header("generator=&template="); ?>30、获取读者墙<?php $period = time() - 999592000; // 時段: 30 天, 單位: 秒 $counts = Typecho_Db::get()->fetchAll(Typecho_Db::get() ->select('COUNT(author) AS cnt','author', 'url', 'mail') ->from('table.comments') ->where('created > ?', $period ) ->where('status = ?', 'approved') ->where('type = ?', 'comment') ->where('authorId = ?', '0') ->group('author') ->order('cnt', Typecho_Db::SORT_DESC) ->limit(25) ); $mostactive = ''; $avatar_path = 'http://www.gravatar.com/avatar/'; foreach ($counts as $count) { $avatar = $avatar_path . md5(strtolower($count['mail'])) . '.jpg'; $c_url = $count['url']; if ( !$c_url ) $c_url = Helper::options()->siteUrl; $mostactive .= "<a href='" . $c_url . "' title='" . $count['author'] . " (参与" . $count['cnt'] . "次互动)' target='_blank'><img src='" . $avatar . "' alt='" . $count['author'] . "的头像' class='avatar' width='32' height='32' /></a>\n"; } echo $mostactive; ?>31、登陆与未登录用户展示不同内容<?php if($this->user->hasLogin()): ?> // 登陆可见 <?php else: ?> // 未登录和登陆均可见 <?php endif; ?>32、导航页面列表调用隐藏特定的页面 这个演示隐藏了 album 和 search 两个页面<ul> <li<?php if($this->is('index')): ?> class="current"<?php endif; ?>><a href="<?php $this->options->siteUrl(); ?>">主页</a></li> <?php $this->widget('Widget_Contents_Page_List')->to($pages); ?> <?php while($pages->next()): ?> <?php if (($pages->slug != 'album') && ($pages->slug != 'search')): ?> <li<?php if($this->is('page', $pages->slug)): ?> class="current"<?php endif; ?>><a href="<?php $pages->permalink(); ?>" title="<?php $pages->title(); ?>"><?php $pages->title(); ?></a></li> <?php endif; ?> <?php endwhile; ?> </ul>参数说明:9.0 版 typecho 支出在后台管理页面编辑时选择隐藏页面。33、Typecho 归档页面<?php $this->widget('Widget_Contents_Post_Recent', 'pageSize=10000')->to($archives); $year=0; $mon=0; $i=0; $j=0; $output = '<div id="archives">'; while($archives->next()): $year_tmp = date('Y',$archives->created); $mon_tmp = date('m',$archives->created); $y=$year; $m=$mon; if ($mon != $mon_tmp && $mon > 0) $output .= '</ul></li>'; if ($year != $year_tmp && $year > 0) $output .= '</ul>'; if ($year != $year_tmp) { $year = $year_tmp; $output .= '<h3 class="al_year">'. $year .' 年</h3><ul class="al_mon_list">'; //输出年份 } if ($mon != $mon_tmp) { $mon = $mon_tmp; $output .= '<li><span class="al_mon">'. $mon .' 月</span><ul class="al_post_list">'; //输出月份 } $output .= '<li>'.date('d日: ',$archives->created).'<a href="'.$archives->permalink .'">'. $archives->title .'</a> <em>('. $archives->commentsNum.')</em></li>'; //输出文章日期和标题 endwhile; $output .= '</ul></li></ul></div>'; echo $output; ?>34、获取当前文章页缩略图<?php $this->attachments(1)->attachment->url(); ?>务必注意,这里所谓缩略图指的是当前文章页第一个附件地址,请确保第一个附件类型为图片。35、根据页面类型显示内容判断是文章页则显示内容<?php if ($this->is('post')): ?> 想要显示的内容1 <?php endif; ?>判断是页面则显示内容<?php if ($this->is('page', 'about')): ?> 想要显示的内容2 <?php endif; ?>36、Title增加副标题<?php if ($this->is('index')): ?> - 副标题<?php endif; ?>37、按分类输出cms<div class="row"> <?php $this->widget('Widget_Metas_Category_List')->to($categories); ?> <?php while ($categories->next()): ?> <?php if(count($categories->children) === 0): ?> <?php $this->widget('Widget_Archive@category-' . $categories->mid, 'pageSize=5&type=category', 'mid=' . $categories->mid)->to($posts); ?> <div class="col-lg-6"> <div class="panel panel-default"> <div class="panel-heading"> <i class="glyphicon glyphicon-th"></i> <a href="<?php $categories->permalink(); ?>" class="guidang" id="posts-list-<?php $categories->slug(); ?>"><?php $categories->name(); ?></a> <a href="<?php $categories->permalink(); ?>" class="pull-right" id="posts-list-<?php $categories->slug(); ?>"><i class="glyphicon glyphicon-option-horizontal"></i></a> </div> <div class="panel-body"> <?php while ($posts->next()): ?> <p class="overflow"> <a href="<?php $posts->permalink(); ?>" title="<?php $posts->title(40); ?>"><i class="glyphicon glyphicon-chevron-right"></i> <?php $posts->title(40); ?></a> </p> <?php endwhile; ?> </div> </div> </div> <?php else: ?> <?php endif; ?> <?php endwhile; ?> </div>38、相关文章<?php $this->related(5)->to($relatedPosts); ?> <ul> <?php while ($relatedPosts->next()): ?> <li><a href="<?php $relatedPosts->permalink(); ?>" title="<?php $relatedPosts->title(); ?>"><?php $relatedPosts->title(); ?></a></li> <?php endwhile; ?> </ul>39、侧边栏热门标签<div class="widget"> <h3><?php _e('热门标签'); ?></h3> <ul class="cate"> <?php $this->widget('Widget_Metas_Tag_Cloud', array('sort' => 'count', 'ignoreZeroCount' => true, 'desc' => true, 'limit' => 20))->to($tags); ?> <?php while($tags->next()): ?> <li><a rel="tag" href="<?php $tags->permalink(); ?>"><?php $tags->name(); ?></a></li> <?php endwhile; ?> <div class="clear"></div> </ul> </div>40、侧边栏输出所有标签<div class="widget"> <h3><?php _e('所有标签'); ?></h3> <ul class="cate"> <?php $this->widget('Widget_Metas_Tag_Cloud')->to($tags); ?> <?php while($tags->next()): ?> <li><a rel="tag" href="<?php $tags->permalink(); ?>"><?php $tags->name(); ?></a></li> <?php endwhile; ?> <div class="clear"></div> </ul> </div>41、当前文章的标签 说明:(',', true, 'none') 第一个单引号间的逗号代表标签与标签的间隔用逗号隔开,true 是标签以超链接形式输出 false 则只输出文字,none 为该文章没有标签时显示的提示信息可为空。<?php $this->tags(',', true, 'none'); ?>引申用法:如果想给每个标签套上 div 或者 span 什么的就需要这要做<div><?php $this->tags('</div><div>', true, 'none'); ?></div>判断当前标签并自定义内容<?php if( in_array('abc', $this->tags) ): ?> 文章含有abc标签就会显示这里 <?php endif; ?>判断文章是否存在标签,如果存在输出标签,如果不存在输出该文章分类<?php if( count($this->tags) == 0 ): ?> //此处的count也可改为size <?php $this->category(',', true, 'none'); ?> //文章分类 <?php else: ?> <?php $this->tags(',', true, 'none'); ?> //文章标签 <?php endif; ?>代码片段以下为代码片段及对应的调用方式;代码片段请放置于function.php中1、输出文章缩略图/** 输出文章缩略图 */ function showThumbnail($widget) { // 当文章无图片时的默认缩略图 $rand = rand(1,5); // 随机 1-5 张缩略图 $random = $widget->widget('Widget_Options')->themeUrl . '/img/sj/' . $rand . '.jpg'; // 随机缩略图路径 // $random = $widget->widget('Widget_Options')->themeUrl . '/img/mr.jpg'; // 若只想要一张默认缩略图请删除本行开头的"//" $attach = $widget->attachments(1)->attachment; $pattern = '/\<img.*?src\=\"(.*?)\"[^>]*>/i'; if (preg_match_all($pattern, $widget->content, $thumbUrl)) { echo $thumbUrl[1][0]; } else if ($attach->isImage) { echo $attach->url; } else { echo $random; } }调用方法:<?php showThumbnail($this); ?>2、获取文章第一张图片做缩略图function showThumbnail($widget) { $attach = $widget->attachments(1)->attachment; $pattern = '/\<img.*?src\=\"(.*?)\"[^>]*>/i'; if (preg_match_all($pattern, $widget->content, $thumbUrl)) { echo $thumbUrl[1][0]; else if ($attach->isImage) { echo $attach->url; } else { echo $random; } }调用方法:<img src="<?php showThumbnail($this); ?>">3、评论自动排第一function Autofirst(){ $db = Typecho_Db::get(); $query = $db->select()->from('table.comments')->where('authorId = ?','0')->order('coid',Typecho_Db::SORT_DESC)->limit(100); $result = $db->fetchAll($query); $arrUrl = array(); $arrAuthor = array(); foreach ($result as $value) { if($value["url"]!==null){ array_push($arrUrl,$value["url"]); array_push($arrAuthor,$value["author"]); } } $su=array_filter(array_merge(array_unique($arrUrl))); $sa=array_filter(array_merge(array_unique($arrAuthor))); $num=0; for($i=0;$i<count(array_unique($su));$i++){ if($su[$i]!=="" && $num<8){ $num+=1; $db1 = Typecho_Db::get(); $query1 = $db1->select()->from('table.comments')->where('url = ?',$su[$i])->order('coid',Typecho_Db::SORT_DESC)->limit(100); $result1 = $db1->fetchAll($query1); $arrAuthor1 = array(); foreach ($result1 as $value) { array_push($arrAuthor1,$value["author"]); } echo '<div class="col-lg-3 col-md-3 item"><a href="'.$su[$i].'" rel="external nofollow" class="btn btn-default btn-block overflow" target="_blank">'.$arrAuthor1[0].'</a></div>'; } } }调用方法:<?php Autofirst(100) ?>4、随机文章function getRandomPosts($limit = 10){ $db = Typecho_Db::get(); $result = $db->fetchAll($db->select()->from('table.contents') ->where('status = ?','publish') ->where('type = ?', 'post') ->where('created <= unix_timestamp(now())', 'post') ->limit($limit) ->order('RAND()') ); if($result){ $i=1; foreach($result as $val){ if($i<=3){ $var = ' class="red"'; }else{ $var = ''; } $val = Typecho_Widget::widget('Widget_Abstract_Contents')->push($val); $post_title = htmlspecialchars($val['title']); $permalink = $val['permalink']; echo '<li><i'.$var.'>'.$i.'</i><a href="'.$permalink.'" title="'.$post_title.'" target="_blank">'.$post_title.'</a></li>'; $i++; } } }调用方法:<?php getRandomPosts('10');?>5、热门文章function getHotComments($limit = 10){ $db = Typecho_Db::get(); $result = $db->fetchAll($db->select()->from('table.contents') ->where('status = ?','publish') ->where('type = ?', 'post') ->where('created <= unix_timestamp(now())', 'post') //添加这一句避免未达到时间的文章提前曝光 ->limit($limit) ->order('commentsNum', Typecho_Db::SORT_DESC) ); if($result){ foreach($result as $val){ $val = Typecho_Widget::widget('Widget_Abstract_Contents')->push($val); $post_title = htmlspecialchars($val['title']); $permalink = $val['permalink']; echo '<li><a href="'.$permalink.'" title="'.$post_title.'" target="_blank">'.$post_title.'</a></li>'; } } }调用方法:<?php getHotComments('10');?>6、文章阅读量统计function get_post_view($archive) { $cid = $archive->cid; $db = Typecho_Db::get(); $prefix = $db->getPrefix(); if (!array_key_exists('views', $db->fetchRow($db->select()->from('table.contents')))) { $db->query('ALTER TABLE `' . $prefix . 'contents` ADD `views` INT(10) DEFAULT 0;'); echo 0; return; } $row = $db->fetchRow($db->select('views')->from('table.contents')->where('cid = ?', $cid)); if ($archive->is('single')) { $db->query($db->update('table.contents')->rows(array('views' => (int) $row['views'] + 1))->where('cid = ?', $cid)); } echo $row['views']; }调用方法:<?php get_post_view($this) ?>来自: 目的地-Destination
2023年03月31日
27 阅读
0 评论
1 点赞
2023-03-22
Rocky Linux无缝升级
清除原有的yum,epel源等dnf -y remove rpmconf yum-utils epel-release安装最新系统的重要三个内核文件,选取自己系统适合的内核文件#Rocky Linux 9 _x64 dnf -y install https://os.iso.st/r9/minimal/Packages/rocky-release-9.1-1.10.el9.noarch.rpm https://os.iso.st/r9/minimal/Packages/rocky-repos-9.1-1.10.el9.noarch.rpm https://os.iso.st/r9/minimal/Packages/rocky-gpg-keys-9.1-1.10.el9.noarch.rpm #Rocky Linux 9 _aarch64 dnf -y install https://os.iso.st/r9arch/minimal/Packages/rocky-release-9.1-1.10.el9.noarch.rpm https://os.iso.st/r9arch/minimal/Packages/rocky-repos-9.1-1.10.el9.noarch.rpm https://os.iso.st/r9arch/minimal/Packages/rocky-gpg-keys-9.1-1.10.el9.noarch.rpm显示下面内容即可进行下一步 Cleanup : rocky-gpg-keys-8.6-3.el8.noarch 6/6 Running scriptlet: rocky-gpg-keys-8.6-3.el8.noarch 6/6 Line is not an assignment at '/usr/lib/sysctl.d/50-redhat.conf:8': (null) Couldn't write '1' to 'net/ipv4/conf/*/rp_filter', ignoring: No such file or directory warning: %transfiletriggerin(systemd-239-58.el8.x86_64) scriptlet failed, exit status 1 Error in <unknown> scriptlet in rpm package rocky-gpg-keys Verifying : rocky-release-9.1-1.10.el9.noarch 1/6 Verifying : rocky-release-8.6-3.el8.noarch 2/6 Verifying : rocky-repos-9.1-1.10.el9.noarch 3/6 Verifying : rocky-repos-8.6-3.el8.noarch 4/6 Verifying : rocky-gpg-keys-9.1-1.10.el9.noarch 5/6 Verifying : rocky-gpg-keys-8.6-3.el8.noarch 6/6 Upgraded: rocky-gpg-keys-9.1-1.10.el9.noarch rocky-release-9.1-1.10.el9.noarch rocky-repos-9.1-1.10.el9.noarch Complete! [root@iZuf6g ~]#升级Rocky Linuxdnf -y --releasever=9 --allowerasing --setopt=deltarpm=false distro-synccentos stream9 --releaserver=9-stream 结束后可能会出现以下两个错误,需进行处理,其他错误自行参考解决,或者留言进行辅助解决①:file /usr/share/redhat-logos ... el8 ...el9类似的长文。此错误表示原有的文件和el9不兼容,删除该目录即可,稍后会自动生成创建。rm -rf /usr/share/redhat-logos②:file ...epel-rpm-macros-systemd.el8 ... el9类似的长文,等同上述,存在兼容问题,卸载稍后重装即可。dnf remove -y epel-rpm-macros-systemd等待结束后显示下面内容即表示已升级成功。 python3-librepo-1.14.2-3.el9.x86_64 python3-packaging-20.9-5.el9.noarch python3-subscription-manager-rhsm-1.29.30.1-1.el9_1.x86_64 rpm-sign-libs-4.16.1.3-19.el9_1.x86_64 rsyslog-logrotate-8.2102.0-105.el9.x86_64 sombok-2.4.0-16.el9.x86_64 subscription-manager-1.29.30.1-1.el9_1.x86_64 subscription-manager-rhsm-certificates-20220623-1.el9.noarch sysprof-capture-devel-3.40.1-3.el9.x86_64 systemd-rpm-macros-250-12.el9_1.3.noarch usermode-1.114-4.el9.x86_64 userspace-rcu-0.12.1-6.el9.x86_64 util-linux-core-2.37.4-9.el9.x86_64 webkit2gtk3-jsc-2.36.7-1.el9_1.2.x86_64 xml-common-0.6.3-58.el9.noarch zstd-1.5.1-2.el9.x86_64 Removed: gcc-toolset-10-10.1-0.el8.x86_64 gcc-toolset-10-annobin-9.29-2.el8.3.x86_64 gcc-toolset-10-dyninst-10.2.1-2.el8.x86_64 gcc-toolset-10-gcc-10.3.1-1.2.el8_5.x86_64 gcc-toolset-10-gcc-c++-10.3.1-1.2.el8_5.x86_64 gcc-toolset-10-gcc-gdb-plugin-10.3.1-1.2.el8_5.x86_64 gcc-toolset-10-gcc-gfortran-10.3.1-1.2.el8_5.x86_64 gcc-toolset-10-gdb-9.2-4.el8.x86_64 gcc-toolset-10-libquadmath-devel-10.3.1-1.2.el8_5.x86_64 gcc-toolset-10-perftools-10.1-0.el8.x86_64 gcc-toolset-10-systemtap-4.4-5.el8.x86_64 gcc-toolset-10-systemtap-client-4.4-5.el8.x86_64 gcc-toolset-10-systemtap-devel-4.4-5.el8.x86_64 gcc-toolset-10-systemtap-runtime-4.4-5.el8.x86_64 gcc-toolset-10-toolchain-10.1-0.el8.x86_64 gdbm-1:1.18-1.el8.x86_64 guile-5:2.0.14-7.el8.x86_64 libtirpc-devel-1.1.4-8.el8.x86_64 libzip-devel-1.5.1-2.module+el8.4.0+413+c9202dda.x86_64 ncurses-compat-libs-6.1-9.20180224.el8.x86_64 oniguruma-devel-6.8.2-2.el8.x86_64 perl-B-Debug-1.26-2.el8.noarch perl-Locale-Codes-3.57-1.el8.noarch perl-Pod-Parser-1.63-396.el8.noarch python3-html5lib-1:0.999999999-6.el8.noarch python3-pydbus-0.6.0-5.el8.noarch python3-slip-0.6.4-11.el8.noarch python3-slip-dbus-0.6.4-11.el8.noarch python3-webencodings-0.5.1-6.el8.noarch python36-3.6.8-38.module+el8.5.0+671+195e4563.x86_64 python36-devel-3.6.8-38.module+el8.5.0+671+195e4563.x86_64 redhat-lsb-core-4.1-47.el8.x86_64 Complete! [root@iZuf6g ~]#升级成功后,卸载已存在旧的内核。先查看最新内核是否已经安装查看已存在的内核,最新的内核应该为5.xrpm -qa | grep kernel输出如下:[root@iZuf6g ~]# rpm -qa | grep kernel warning: Found bdb_ro Packages database while attempting sqlite backend: using bdb_ro backend. kernel-devel-5.14.0-162.18.1.el9_1.x86_64 kernel-srpm-macros-1.0-11.el9.noarch kernel-core-5.14.0-162.18.1.el9_1.x86_64 kernel-headers-5.14.0-162.18.1.el9_1.x86_64 kernel-tools-libs-5.14.0-162.18.1.el9_1.x86_64 kernel-devel-4.18.0-372.9.1.el8.x86_64 kernel-modules-5.14.0-162.18.1.el9_1.x86_64 kernel-modules-4.18.0-372.9.1.el8.x86_64 kernel-tools-5.14.0-162.18.1.el9_1.x86_64 kernel-4.18.0-372.9.1.el8.x86_64 kernel-core-4.18.0-372.9.1.el8.x86_64 kernel-5.14.0-162.18.1.el9_1.x86_64 [root@iZuf6g4xzntqr7ucc5swmkZ ~]#上面出现警告,我们需要重建rpm仓库cd /var/lib/rpm rm -f __db.00* rpm --rebuilddb重新运行即可正常,输出存在5.x内核的可以直接卸载旧内核rpm -e --nodeps `rpm -qa|grep -i kernel|grep 4.18`输出没有5.x内核的进行内核安装再卸载即可dnf -y install kernel kernel-core shim执行dnf命令时,会有如下报错Last metadata expiration check: 0:01:17 ago on Wed 22 Mar 2023 06:55:50 PM CST. Modular dependency problems: Problem 1: conflicting requests - nothing provides module(platform:el8) needed by module httpd:2.4:8070020230221173330:3b9f49c4.x86_64 Problem 2: conflicting requests - nothing provides module(platform:el8) needed by module nginx:1.14:8040020210610090123:9f9e2e7e.x86_64 Problem 3: conflicting requests - nothing provides module(platform:el8) needed by module perl:5.26:8050020211109115414:b4937e53.x86_64 Problem 4: conflicting requests - nothing provides module(platform:el8) needed by module perl-IO-Socket-SSL:2.066:8060020220513050719:bc93984d.x86_64 Problem 5: conflicting requests - nothing provides module(platform:el8) needed by module perl-libwww-perl:6.34:8060020220513153220:9168a43d.x86_64 Problem 6: conflicting requests - nothing provides module(platform:el8) needed by module php:7.2:8040020210530192442:02bae935.x86_64 Problem 7: conflicting requests - nothing provides module(platform:el8) needed by module python36:3.6:8050020211109130820:982725ab.x86_64 Problem 8: conflicting requests - nothing provides module(platform:el8) needed by module virt:rhel:8070020230221174740:3b9f49c4.x86_64 Dependencies resolved. Nothing to do. Complete!将它禁用即可(禁用后重启会自动删除这些不存在的模块),禁用时记得带着版本。dnf module disable httpd:2.4 nginx:1.14 perl:5.26 perl-IO-Socket-SSL:2.066 perl-libwww-perl:6.34 php:7.2 python36:3.6再次执行dnf即可正常系统升级完毕,重启使最新内核生效即可dnf update -y reboot
2023年03月22日
137 阅读
0 评论
0 点赞
1
2
...
8