首页
关于
统计
友链
留言
Search
1
Typecho博客程序之Joe主题404页面改蓝屏+自定义跳转
70 阅读
2
电信运营商开始逐步收回公网IP
64 阅读
3
推倒重来,重新出发...
58 阅读
4
Mikrotik RouterOS IPv6/IPv4双栈配置
54 阅读
5
使用Typecho遇到的第一个问题
42 阅读
记事簿
系统类
路由器
网站类
登录
/
注册
Search
标签搜索
Mikrotik
IPv6
IPv4
Typecho
ROS
RouterOS
双栈
php pathinfo
lnmp
nginx
电信
公网IP
光猫
LOID
猫棒
宽带
rsync
群晖
备份
unraid
Tom⋅KST™
累计撰写
17
篇文章
累计收到
2
条评论
首页
栏目
记事簿
系统类
路由器
网站类
页面
关于
统计
友链
留言
搜索到
17
篇与
的结果
2024-02-08
Typecho博客程序之Joe主题404页面改蓝屏+自定义跳转
(原稿内容来自95博客网,并补充了css代码及使用方法)404页面蓝屏效果,试试 网页效果 ?使用方法:废话不多说直接修改:新建一个css样式文件(建议新建,不要使用主css):"404.css",复制下面代码并粘贴,然后上传到 "/assets/css/" 目录下(也可以直接ssh下切换到 "/assets/css/" 目录下,使用 "vi" 或 "vim" 新建 "404.css" 文件,粘贴以下代码后按 'ESC' 键后输入 ":wq" 退出并保存文件),并在404页头引用 "<link rel="stylesheet" href="/assets/css/404.css" />" (也可放于主题目录下,引用 "<link rel="stylesheet" href="/404.css" />",但不建议这么做)。*{ margin: 0; padding: 0; } html,body{ font-family: "微软雅黑"; font-size: 14px; color: white; background-color: #2068b4; } .error-main{ width:800px; margin:0 auto; } .error-text-1{ font-size: 150px; margin-top: 50px; margin-bottom: 20px; } .error-text-2,.error-text-3{ font-size:30px; } .error-text-4{ font-size: 25px; margin: 30px 0 30px 0; } .error-about-text-top,.error-about-text-down{ font-size: 20px; } .error-about{ display: flex; }登录后台 >> 编辑外观 >> 404.php,复制下面代码直接替换。<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>404</title> <link rel="stylesheet" href="/assets/css/404.css" /> //请根据实际路径修改 </head> <body> <div class="error-main"> <p class="error-text-1">:(</p> <p class="error-text-2">你访问的网站页面出现问题,需要回到主页。</p> <p class="error-text-3">我们只收集错误页面访问原因,然后为你跳转主页。</p> <p class="error-text-4" id="error-text-4">0% 完成</p> <div class="error-about"> <img style="width: 137px; height: 137px; margin-right: 20px;" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAZAAAAGQCAIAAAAP3aGbAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAPxUlEQVR4nO3d0ZHkuLEF0BnFOiJ7niWySJbIHpnS+n7FjQYJZAK80+d8blQRnKrqGwzkZuL319fXL4AE/zh9AwB3CSwghsACYggsIIbAAmIILCCGwAJiCCwghsACYggsIIbAAmIILCCGwAJiCCwghsACYvz19A3//Nd/Ou5j6L///r/vb+PjBVd37nxilY/XvOQ27hje6tBw0Yn7XP+E597y9Jp3Lttx58PbaPrT6DDxvXjCAmIILCCGwAJiCCwghsACYvx+emrORA1iQskqHYWz9WvuqciUlBE7rllSN3zq1Gc+vI2OmvLEukF/1J6wgBgCC4ghsIAYAguIIbCAGI97Ce840tfWsURJE996X9vE59lUXRpeYeIfO6xYrXfkDRe94+kXfWeV4Vvu/N46GieHiw41/UV7wgJiCCwghsACYggsIEbLpvsGL9lUvr6mZGt2Yorb8JrDO7m+ZaKBY8/owaGObpXhKhPb4RO/lqE9fTaneMICYggsIIbAAmIILCCGwAJipFYJm4pNE6Wip5WgkpLNcJWSit7QnhrWxD+tw3CVjmLuRJ366k+qG3rCAmIILCCGwAJiCCwghsACYrRUCY/UIEoWXS81ljSpDa951dE4ObzCnjF4E4t2fMgdPY8d56QNy8ET3lNV9IQFxBBYQAyBBcQQWECMgk33js3IiUX3nOCyPmyvZCjgqX/s0IY+pIn7PPWZr++pl/xxlXTzvIQnLCCGwAJiCCwghsACYggsIMbjKuFL/if9PWPw9pzLNFHkarrIuiM/j1P1zXf+Y0uqqK/lCQuIIbCAGAILiCGwgBi/v76+yi96pGWhpNugo1tlaGICVMfRKR2TvO54eudNByZ9KPnMO3TMCyuZa7ZnnponLCCGwAJiCCwghsACYggsIMbjKuHEYLMJpwaM7Zmc9/0V7thTn1ofPTi85tWpam/Hj3bPAL+OYu6eD1CVEPiTCSwghsACYggsIIbAAmLsGOC3p1NpuO5ri3FDTd1zG3oJT3WcrSs5GWx9lTu3MVGn7phDOVTyPXrCAmIILCCGwAJiCCwgxuNN96s9x3iUzC1b19QS9OElFYYjn/meI146frRDJYcwlVQtNgxNbPp79IQFxBBYQAyBBcQQWEAMgQXEKKgSXnX0ChwxMT5t7iLrV9jQ0vHak6+u9kzjWy9odnStnbrzPX/CnrCAGAILiCGwgBgCC4ghsIAYj4/5usodjNdhz2i9ibd0HFB29ZJDz9br1CXdc+vXbLI+u/HUVE5PWEAMgQXEEFhADIEFxHjcmtO0m7vhlI6mmXbrXQ7ru7klbym5sXV79uk7hkq+9qinI7+WiamBd3jCAmIILCCGwAJiCCwghsACYrQM8Fsvjkw41RPz/RXmdHSWXG2ob97x9CJ3yk8d9c31E7ea7nzPhMinb2ka7ugJC4ghsIAYAguIIbCAGAILiPF4gN96reRv37KnrNNxzfXC4lXHNYerXE3Mn1v/Mbx2HuRLfqIlt7FemS35Hg3wA/5kAguIIbCAGAILiNFyak7HyLqORUu6HI5sXR/RtB2esgHc8TufUHI2T0qh48oTFhBDYAExBBYQQ2ABMQQWEKNlgN/QkSJgyVjB6ypPJ+c19dk0XfapjoOtnr5gm6fF7qY7X7/IqamTEzxhATEEFhBDYAExBBYQ4/Gm+0SDS9Nu91Ml/RnvbJq56phdVVKCeM+W+YeJE26+v8Lf/pfhCzr26Tv+QoecmgP8dAILiCGwgBgCC4ghsIAYBafmXK2XA15SSyq5jYmKzHpJ9NRBMhsm5+0Zuzi8jZJrTigpLB75t5T8NXnCAmIILCCGwAJiCCwghsACYjzuJdxTCunoJSy5jaGJ9rGXrDvRcVbSpNbR17bhoLk7Ouqbw1XuvOBpMbfpiLwJnrCAGAILiCGwgBgCC4jxuDXnjvX93QkTG8AdDUAl5/08vcLENU+tMly348CkJke+uD3T+Dr+hA3wA34WgQXEEFhADIEFxBBYQIwzVcKhksLQkcl5V0dKRXdsKKXtael47Ui/dU3f0Z6eoQ+qhMDPIrCAGAILiCGwgBgCC4hRUCUsqcg8rYudKgO95MSkCSVHcq1LOa6to03yzip7zpHrsOc2PGEBMQQWEENgATEEFhBjx6Z7yUb1ngaOIwP8Sq7Z0Wzxzsl5TUWelNacPU0z6zvoTadDecICYggsIIbAAmIILCCGwAJi/PX0DXtGsh0pI965jT3rDhfdc9mOUtFrxxkOr3Bd5em/pamo2nFO2vAFjvkCGBBYQAyBBcQQWEAMgQXEeFwlvCopMawvWlIqmujIWy8VXXXUfTrKOh1Hq00sOveadU8/wJKD5kraSDv+AIdLlNyGJywghsACYggsIIbAAmI83nR/53bmndc07XY/3drv2Ie+s0rHbu7wIut1jyYlW/sb7BnEWHIb65WiOzxhATEEFhBDYAExBBYQQ2ABMVqO+eo4Hmq9cHbnNiYcmeLWMaTtar3kV1JdmvDOM7smlNSUjxQWHfMF/HQCC4ghsIAYAguI8XjT/Z17k792jYiacGT/smMeVtNX/3SVpvNaTq37hmuW0JoD8P8ILCCGwAJiCCwghsACYhScmjN06uyZIyW/66IdTUUd9c1TVbAN0wpLyqx31v3enZ99R4vV1ZE/N6fmAD+LwAJiCCwghsACYggsIEZBlbCkRvP9Ff52leFbnl7h5mueXmH4aZzqDnva/DVRKir5zDvKiBNv2VMz3XDQ3MRtXJUcCjfBExYQQ2ABMQQWEENgATFiTs0ZXuFqz3EsR47zKbmNjm6e9UVPHfrScfbMh5IetZe05pTcp9Yc4E8msIAYAguIIbCAGAILiNFSJXynpkO99pxu9FRH6XbPMV9XHT0xHaucOqFrz9f0/aJXjvkCfjqBBcQQWEAMgQXEEFhAjB1Vwj1FnBIb2g+beqxecqbZ8AovqSmfKnINV1lfdGLm357fmyoh8LMILCCGwAJiCCwgRsupOUN7dog7RrJ17LyWbACvlwtOjY57uvG8Z+jdkYaquXWH/7r1F9yx5xPzhAXEEFhADIEFxBBYQAyBBcQoqBJODH7b0+UwcRsT5ZKntciJs55KjofaU9/8uLGOPqSSD/Bq/Zy0PWXWjnao13ZQXXnCAmIILCCGwAJiCCwgRsE8rAkd+/QlW/vr3TwdrRUTG8B3LrJhKFLJ1vX6fQ4XvePIPKw7jsz2OnU6lCcsIIbAAmIILCCGwAJiCCwgRktrzofhtLk7b3m66NyNrStZtKO3qaOs09HS0VEgbmo0eXrZiT+Ekts4UmG/Y2IVT1hADIEFxBBYQAyBBcQQWECMHb2Ee+o+JT1oHW95yfi0PbW2DT2hTYMYj3TkldhQnjv1mV95wgJiCCwghsACYggsIMbjTfeS3e6SvdinctsgSrY8O2a2layyocKw5/e259SclwyVnFilpGrhCQuIIbCAGAILiCGwgBgCC4jR0pqz4fyoq1OrbKjRNI3raxpr91THtMIPR6rSTV5S39xzGtuVJywghsACYggsIIbAAmIILCBGQS/h1frgt4nb6KiClXRBTlzhJY1sHYXX9X/sxJfS1MQ3tD7c8Y6X9OF2dBBfecICYggsIIbAAmIILCDGXx0XXd/ke0ljxJ3beNqRcGejcX0bteQD3LONOrzCkR9DSWdJR9fR9SIbZjfe0VHouPKEBcQQWEAMgQXEEFhADIEFxHhcJWwqFT2ttU3USibsOaBs4uMqqUVuqL41nQz2VEnlcb3rqKkHq+Pf8lqesIAYAguIIbCAGAILiCGwgBgtvYQTOrqu1g8vKqm/7Dnma8MhS6e+lAl7KrPrq3TUDe8U0DecnNax6C9PWEAQgQXEEFhADIEFxGg5NedDx27lVccu4MQJNyX/2He+paMtaeIie8bRDW9jQscpRNfLdvyF7vkTvsMTFhBDYAExBBYQQ2ABMQQWEKOgSrhnbtlw0auXlHUmam3rJZg9HUIdhdeOcuediwztWaXjNiacKsUOecICYggsIIbAAmIILCBGwTyskl3ADQN67rzl6QtKdGyQT7ygpM/myBFBEyY+847a0ak2mokRWsPb2MMTFhBDYAExBBYQQ2ABMQQWEONxa84ee8pzQx1z8po6Sza0Q925jaEjnSUlcwSHms6JOXIbBvgBrBJYQAyBBcQQWEAMgQXE2FElfEnD1J0b21D2Kmn1Gl52z6dRcufDRfdUrDaUvZq6bjsq10+XmDPxkXrCAmIILCCGwAJiCCwgxuMBfiWTz4aXLRmtN7FT+HQz8qpj/7Kky2HPaL2JD/CdhxtNXOTUB7he6Oj4o27ap/eEBcQQWEAMgQXEEFhADIEFxHhcJSzpLCkpLK57ycS1oTv3eaQ81/HVd5y9dl205AN8emNNUxU76s4vOQHvyhMWEENgATEEFhBDYAExBBYQ43GV8Kqj9nFktN6dt3SUEfec2bX+kU4UKycucqrWNrzmsNR4qkt0wvAHtl5GdMwX8NMJLCCGwAJiCCwgRssAv/VDX0puY2KJjt3up4te153Y7S7p5lnfRd7zcU3cxp7d7g2NSsNF7+g43KjpM/eEBcQQWEAMgQXEEFhADIEFxPj99fW1eImSXor1/oyhpoLL+uC3iWt2lGDWv5Q5GwrEHVWwO2+ZuI2O77HDqX+sJywghsACYggsIIbAAmIILCBGQZXwiKCGsj0Vz3f2b05cZM9kuJJV1psx9zSr3ln3ey8pEP/yhAUEEVhADIEFxBBYQIyCAX57fOzP7dl5nVAyznC93ee1x7FMvGV9MlzJeT9XT6s61xfs6RkaKhmHuada4gkLiCGwgBgCC4ghsIAYAguI8bg1Z0+Dy57Wk9zOiZec/tTRmtOh5Fvb82Po6Cdbv0hTNVNrDvAnE1hADIEFxBBYQIzHrTl37NkSXr+NjpaO9ReU3MaEiSuU7Do/vUjTpKr1/qeOekLTuU3rX1xHB9UdnrCAGAILiCGwgBgCC4ghsIAYLVXCDd4zwO/pqLOSYWkTq1w9rS6VFCs7Br+dGir5dN1T97nHxC9wgicsIIbAAmIILCCGwAJiCCwgRmqVsGSAX9O632s6H2miIXH4gvWj1Sbqm0MlX33Ht7DnNLamKvP3q5T80wzwA34WgQXEEFhADIEFxGjZdN9wDkrJGLyOdScGmw1XecmZJSUT/jomIL5ESdViz0lFQy85t+nKExYQQ2ABMQQWEENgATEEFhCjoEr4krFkHcPkJmptLznirERHeW7982n6vZXMLyy/Qsl5bi+ZgKg1B/hZBBYQQ2ABMQQWEENgATF+f319nb4HgFs8YQExBBYQQ2ABMQQWEENgATEEFhBDYAExBBYQQ2ABMQQWEENgATEEFhBDYAExBBYQQ2ABMQQWEON/79rlsEUEmtcAAAAASUVORK5CYII=" alt="QRCODE"> <div class="error-about-text-main"> <p class="error-about-text-top">有关此问题的详细原因:</p> <ul class="error-about-text-down"> <ol>1. 该页面已被管理员删除;</ol> <ol>2. 该页面已被管理员移动到其他位置;</ol> <ol>3. 该页面链接填写错误。</ol> <ol id="error-code"></ol> </ul> </div> </div> </div> <script> var n = 0; var speed=100; function getUrlParams(name) { // 不传name返回所有值,否则返回对应值 var url = window.location.search; if (url.indexOf('?') == 1) { return false; } url = url.substr(1); url = url.split('&'); var name = name || ''; var nameres = null; // 获取全部参数及其值 for(var i=0;i<url.length;i++) { var info = url[i].split('='); var obj = {}; obj[info[0]] = decodeURI(info[1]); url[i] = obj; } // 如果传入一个参数名称,就匹配其值 if (name) { for(var i=0;i<url.length;i++) { for (const key in url[i]) { if (key == name) { nameres = url[i][key]; } } } } else { nameres = url; } // 返回结果 console.log(nameres) return nameres; } var res1 = getUrlParams("backurl"); var res2 = getUrlParams("errorcode"); if (res1 == null){ res1 = "<?php $this->options ->siteUrl(); ?>" } if(res2 == null){ res2 = "404" } var errortext = "" switch (res2) { case "502": errortext = "终止代码:THE SERVER RESPONDED WITH A STATUS OF 502 (Bad Gateway)"; break; case "403": errortext = "终止代码:THE SERVER RESPONDED WITH A STATUS OF 403 (Forbidden)"; break; case "500": errortext = "终止代码:THE SERVER RESPONDED WITH A STATUS OF 500 (Internal Server Error)"; break; default: errortext = "终止代码:THE SERVER RESPONDED WITH A STATUS OF 404 (NOT FOUND)"; break; } document.getElementById('error-code').innerText= errortext window.onload = function(){ var timer = setInterval(function(){ if(n<=100){ if(n>100)n=100; document.getElementById('error-text-4').innerText=n+"% 已完成"; n++ }else{ clearInterval(timer); location.href = res1; } },speed) } </script> </body> </html>补充说明:此代码也可用作其它程序404页面蓝屏源码,新创建文件"404.html"或者"404.php"复制次代码进去即为404文件。
2024年02月08日
70 阅读
0 评论
1 点赞
2024-02-06
在 CentOS 7 上释放磁盘空间的简单方法
在使用CentOS 7操作系统的过程中,您可能会遇到磁盘空间不足的问题。当磁盘空间耗尽时,可能会导致系统性能下降、应用程序无法正常运行,甚至可能导致系统崩溃。因此,了解如何释放磁盘空间是非常重要的。1. 清理临时文件CentOS 7系统中的临时文件可能会占据大量的磁盘空间。您可以按照以下步骤清理这些临时文件:打开终端窗口,运行以下命令以清理临时目录中的文件:sudo rm -rf /tmp/*(这将递归地删除 /tmp 目录下的所有文件和子目录。请注意,只有具有sudo权限的用户才能执行此命令。)运行以下命令以清理系统的临时文件夹:sudo rm -rf /var/tmp/*(同样地,这将递归地删除 /var/tmp 目录下的所有文件和子目录。)你还可以使用以下命令清理特定应用程序生成的临时文件。例如,如果您使用的是Web浏览器Firefox,可以运行以下命令清理其临时文件:rm -rf ~/.mozilla/firefox/*/Cache/*(这将清理Firefox浏览器缓存中的临时文件。通过清理临时文件,您可以释放大量的磁盘空间,并改善系统的整体性能。)2. 删除不需要的软件包在CentOS 7上,系统会安装各种软件包以支持不同的功能和应用程序。然而,您可能会发现一些不再需要的软件包占据了大量的磁盘空间。您可以按照以下步骤删除这些不需要的软件包:打开终端窗口,运行以下命令以列出所有已安装的软件包:sudo yum list installed(这将显示系统中已安装的所有软件包的列表。浏览列表,找到您不再需要的软件包。请谨慎选择要删除的软件包,以避免删除系统所需的关键软件。)运行以下命令以删除特定软件包:sudo yum remove <package_name>(将 <package_name> 替换为您要删除的软件包的实际名称。)注意:删除软件包可能会导致其他依赖软件包也被删除。在确认删除之前,请仔细阅读要删除的软件包所依赖的其他软件包。通过删除不需要的软件包,您可以释放磁盘空间并确保系统只安装了必需的软件。3. 清理日志文件在CentOS 7系统中,日志文件可能会占据大量的磁盘空间。您可以按照以下步骤清理不再需要的日志文件:打开终端窗口,运行以下命令以查看 /var/log 目录下的日志文件大小:sudo du -sh /var/log/*(这将显示 /var/log 目录中每个日志文件的大小。)浏览列表,找到占用大量磁盘空间的日志文件。运行以下命令以清空特定日志文件:sudo truncate -s 0 /var/log/<log_file>(将 <log_file> 替换为您要清空的日志文件的实际名称。)注意:清空日志文件将删除其中的所有内容。确保您不需要这些日志文件的内容,或者在清空之前进行备份。通过清理不再需要的日志文件,您可以释放大量的磁盘空间,并确保日志文件的大小得到合理控制。4. 压缩和归档文件如果您有大量的文件和目录占据了磁盘空间,但您不想删除它们,您可以考虑将它们压缩和归档为一个文件。这将有助于减小文件的大小并节省磁盘空间。您可以按照以下步骤压缩和归档文件:打开终端窗口,运行以下命令以压缩文件:tar -czvf <archive_name>.tar.gz <directory>(将 <archive_name> 替换为您要创建的压缩文件的名称, < directory > 替换为您要压缩的目录的路径。该命令将使用tar工具将指定目录中的文件压缩为一个.tar.gz压缩文件。)运行以下命令以删除原始文件:sudo rm -rf <directory>(将 < directory > 替换为您压缩的目录的路径。)注意:在删除原始文件之前,请确保您已经成功创建了压缩文件,并检查压缩文件是否可解压缩。通过压缩和归档文件,您可以将多个文件和目录压缩为一个文件,从而节省磁盘空间,并确保文件的安全性和整洁性。5. 清理回收站在CentOS 7系统中,删除的文件通常会被移动到回收站(Trash)目录中。这些文件仍然占据磁盘空间,因此清理回收站可以帮助您释放磁盘空间。您可以按照以下步骤清理回收站:打开终端窗口,运行以下命令以进入回收站目录:cd ~/.local/share/Trash/files(这将导航到回收站目录。)运行以下命令以删除所有回收站中的文件:rm -rf *(这将递归地删除回收站中的所有文件和子目录。通过清理回收站,您可以彻底删除不再需要的文件,并释放磁盘空间。)6. 分析磁盘使用情况有时候,您可能不确定哪些文件或目录占据了大量的磁盘空间。在这种情况下,您可以使用磁盘使用情况分析工具来帮助您查找磁盘上的大文件和目录。以下是两个常用的工具:ncdu:它是一个交互式的磁盘使用情况分析工具,可以帮助您找到占用磁盘空间最多的文件和目录。sudo yum install ncdu ncdu /du:它是一个命令行工具,用于估算文件和目录的磁盘使用情况。sudo du -h --max-depth=1 /(通过使用这些工具,您可以获得有关磁盘使用情况的详细信息,并找到占用大量磁盘空间的文件和目录。)总结在CentOS 7上释放磁盘空间是确保系统正常运行和提高性能的重要步骤。通过清理临时文件、删除不需要的软件包、清理日志文件、压缩和归档文件、清理回收站以及分析磁盘使用情况,您可以有效地释放磁盘空间,并确保系统的可用磁盘空间得到合理管理。请记住,在执行任何删除操作之前,请确保您了解要删除的内容,并谨慎选择文件和目录。此外,定期进行磁盘空间清理是一个良好的实践,可以帮助您保持系统的性能和可用磁盘空间。
2024年02月06日
33 阅读
0 评论
0 点赞
2024-02-06
几种简单方法,释放和清理 Ubuntu 磁盘空间
随着使用时间的推移,各种应用程序的添加和删除,任何操作系统都可能变得混乱。如果你有 TB 级的存储容量,可能不会费心清理 Ubuntu 磁盘空间。但如果硬盘空间有限,比如一台只有 128GB 的 SSD 笔记本,不定期释放磁盘空间就变得非常必要。有多种方法可以释放和清理 Ubuntu 磁盘空间,我们将从命令行界面(CLI)和图形用户界面(GUI)这两个方面进行介绍。虽然以 Ubuntu 系统为例,但操作步骤同样适用于 Linux Mint、elementary OS 和其他基于 Ubuntu 的 Linux 发行版。1. 自动移除不再需要的软件包(推荐)如果你了解 apt-get 或 apt 命令的基本用法,应该知道 autoremove 选项。该选项可以删除安装软件包时自动安装的依赖库和包。如果该软件包被移除,这些自动安装的软件包在系统中就没有用处了。它还会删除在 Ubuntu 升级时自动安装的旧 Linux 内核。这是一个自动化的命令,可以定期运行它来清理和释放 Ubuntu 磁盘空间:sudo apt autoremove2. 卸载不必要的应用程序(推荐)很多用户都安装了一些几乎不使用的游戏和/或应用程序,不信就去把你的 Ubuntu 应用列表拉出来看一下,不服来战。如果需要释放空间,清理那些未使用或使用较少的应用程序是一个不错的主意。我们可以通过「软件中心」移除 Ubuntu 应用程序,或者使用以下命令加上相应的应用程序包名称进行移除:sudo apt remove package-name1 package-name23. 清理 Ubuntu 中的 APT 缓存Ubuntu 使用 APT(高级软件包工具)在系统上安装、删除和管理软件,并且在软件被卸载后,它仍会保留先前下载和安装的软件包缓存。APT 软件包管理系统将 DEB 软件包的缓存保存在 /var/cache/apt/archives 目录中。随着时间的推移,这个缓存可能会变得非常庞大,并保存着许多不再需要的软件包。可以使用下面的 du 命令查看这个缓存的大小:sudo du -sh /var/cache/apt有两种方式来清理APT缓存:使用以下命令删除过时的软件包,例如那些已经被更新取代的软件包:sudo apt autoclean要么完全删除APT缓存(释放更多磁盘空间):sudo apt clean4. 清除 systemd 日志记录每个 Linux 发行版都有日志记录机制,可以帮助排查系统中发生的情况。在 Ubuntu 中,也有内核日志数据、系统日志消息以及各种服务的标准输出和错误信息。随着使用时间的推移,这些日志会占用大量的 Ubuntu 磁盘空间。可以使用以下命令检查日志的大小:journalctl --disk-usage清理 systemd 日志记录的最简单方法是清除超过一定天数的旧日志:sudo journalctl --vacuum-time=3d5. 移除旧版本的 Snap 应用程序Snap 包的大小稍大于同一应用程序的 DEB 包。此外,Snap 还会保存至少两个旧版本的应用程序,用于备用和回滚。这将占用大量磁盘空间。要查看 Snap 存储的大小,可以使用以下命令:du -h /var/lib/snapd/snapsPS.: Canonical 公司的 Snapcraft 团队成员 Alan Pope 创建了一个小脚本,用于清理所有旧版本的 Snap 应用:#!/bin/bash # Removes old revisions of snaps # CLOSE ALL SNAPS BEFORE RUNNING THIS set -eu snap list --all | awk '/disabled/{print $1, $3}' | while read snapname revision; do snap remove "$snapname" --revision="$revision" done6.清理 Ubuntu 缩略图缓存为了方便用户在文件管理器中预览图片,Ubuntu 会自动为图片文件创建缩略图,并将这些缩略图以文件形式隐藏存储在用户账户的 ~/.cache/thumbnails 目录中。如果你是摄影爱好者或者图片收藏者,随着时间的推移,缩略图的数量会大大增加。需要特别注意的是,如果删除了某些照片或图片,这些自动生成的缩略图缓存仍然会保留在磁盘上,而不会自动清除。可以使用以下命令检查缩略图缓存的大小:du -sh ~/.cache/thumbnails因此,每隔一段时间清除缩略图缓存是一个很好的习惯。 最快捷的方法就是使用以下命令:rm -rf ~/.cache/thumbnails/*7. 查找并删除 Ubuntu 重复文件有时候系统中可能存在重复的文件,清除重复文件可以释放一些空间并清理你的 Ubuntu 系统。可以使用图形界面工具如 FSlint 或命令行工具如 FDUPES 来完成此任务。
2024年02月06日
24 阅读
0 评论
0 点赞
2024-02-04
Mikrotik RouterOS IPv6/IPv4双栈配置
前言IPv6:IPV6的提出最初是因为随着互联网的迅速发展,IPv4定义的有限地址空间将被耗尽,而地址空间的不足必将妨碍互联网的进一步发展。为了扩大地址空间,拟通过IPv6以重新定义地址空间。IPv6采用128位地址长度,几乎可以不受限制地提供地址。IPv4:IP协议的第4版本,IPV4为因特网上现行的最重要最基本的协议。IPv4采用32位地址长度,只有大约43亿个地址,目前已经面临分配枯竭。双栈(Dual-stack):双栈技术IPv4和IPv6共存运行在同一个网络一、准备工作RouterOS(ROS)是支持IPv6和IPv4双栈协议的配置的软路由系统。要想配置IPv4和IPv6双栈主要准备工作还是要当地ISP运行商支持。目前三大运营商都已经全部部署了IPv6,所有如果没有IPv6的小伙伴们可以咨询运行商提供。二、光猫IPv6/IPv4双栈配置为了实现RouterOS(ROS)是支持IPv6和IPv4双栈拨号,首先要在光猫上配置IPv6\IPv4双栈设置,当然前提是有光猫的超密才能修改,如果没有同样可以打电话让宽带运营商给远程修改光猫的IPv6/IPv4双栈桥接。据了解目前很多运行商已经在光猫下发配置的之后已经默认开启了IPv6/IPv4双栈配置。三、RouterOS IPv6开启RouterOS(ROS)默认IPv6默认是关闭的,需要手动开启。System-Packages找到ipv6点击Enable开启。开启后左侧菜单就可以看到IPv6选项了。在IPv6-Settings配置取消"Disable IPv6"设置:四、RouterOS IPv6/IPv4双栈配1、配置文件开启IPv6使用在PPP的Profiles默认配置文件中需要强制使用IPv6选项,才能正常拨号获得IPv6的地址。2、PPPoe双栈拨号之后在PPP-Interface添加PPPoE客户端正常IPv4拨号。IPv4的上网配置将不在此过多的描述,因为已有太多教程可以帮到大家了,本文重点还是继续完善IPv6的设置。同时在IPv6-DHCP Client以IPv6的网口继续获取64前缀IPv6地址,当Status显示Bound说明获取正常。3、双栈DNS配置同时IP-DNS下检查是否正常获取上游DNS地址,如果正常说明IPv6已经正常拨号。注意如果不希望添加运营商的DNS和默认路由设置的话,请勾选掉Use Peer DNS和Add Default Route,可手动配置。提供参考的公共DNS IPv4&IPv6地址配置使用: DNS类型 阿里云 AliYun 腾讯云 DNSPod IPv6地址 2400:3200::1 2402:4e00:: 2400:3200:baba::1 IPv4地址 223.5.5.5 119.29.29.29 223.6.6.6 DoH / Dot dns.alidns.com dot.pub 1.12.12.12 120.53.53.53 4、IPv6 ND配置为了让局域网能够正常获得IPv6地址和上网。继续完善局域网网桥ND配置:5、IPv6网桥地址配置同时给Bridge1网桥分配一个IPv6地址,先按::/64填写,等待几秒,Bridge1网桥自动获得IPv6公网地址(红色变黑色)6、IPV6 DHCP服务器配置IPv6-DHCP Server 添加一个可以分配给网桥下局域网IPv6地址服务器:四、终端IPV6配置验证1、开启IPv6协议Windows要想获得IPv6地址并正常上网,需要再本地以太网网络适配器中打开IPV6协议。2、验证IPv6网络验证一下IPv6配置是否正常上网,可以通过以下两个站点:Test your IPv6 (验证IPv6配置)https://www.test-ipv6.com/ipw.cn (显示本地IPv6公网地址)https://6.ipw.cn/3、配置本地IPv4优先Windows下如果同时开启IPv6和IPv4协议联网,系统默认会优先IPv6,因此为了获得更稳定网络体验,建议设置IPv4优先:///降低IPv6优先级,IPv4优先 netsh interface ipv6 set prefixpolicy ::ffff:0:0/96 100 4///查询网络优先级 netsh interface ipv6 show prefixpolicies///IPv6优先级恢复 netsh interface ipv6 reset
2024年02月04日
54 阅读
0 评论
0 点赞
2024-02-02
Mikrotik RouterOS 的防火墙规则脚本
写在前面:以下是给RB5009UG添加的防火墙规则,interface list member中的interface是按我自己家里路由器的接口名称,如要套用,请按实际接口名称修改!一、先配置接口列表/interface list add comment=defconf name=WAN add comment=defconf name=LAN/interface list member add interface=HOME list=LAN add interface=PPPoE list=WAN add interface=CTNET list=WAN二、配置IPv4 防火墙规则/ip firewall filter add action=accept chain=input comment="accept ping" protocol=icmp add action=accept chain=input comment="accept established,related,untracked" connection-state=established,related,untracked/ip firewall filter add action=drop chain=input comment="drop invalid" connection-state=invalid add action=drop chain=input comment="drop all from WAN" in-interface-list=WAN disabled=yes add action=fasttrack-connection chain=forward comment="defconf: fasttrack" connection-state=established,related add action=accept chain=forward comment="accept established,related, untracked" connection-state=established,related,untracked add action=drop chain=forward comment="drop invalid" connection-state=invalid add action=drop chain=forward comment="drop all from WAN not DSTNATed" connection-nat-state=!dstnat connection-state=new in-interface-list=WAN三、防止端口扫描/ip firewall filter add chain=input protocol=tcp psd=21,3s,3,1 action=add-src-to-address-list address-list="port scanners" address-list-timeout=14d comment="Port scanners to list" disabled=no add chain=input protocol=tcp tcp-flags=fin,!syn,!rst,!psh,!ack,!urg action=add-src-to-address-list address-list="port scanners" address-list-timeout=14d comment="NMAP FIN Stealth scan" add chain=input protocol=tcp tcp-flags=fin,syn action=add-src-to-address-list address-list="port scanners" address-list-timeout=14d comment="SYN/FIN scan" add chain=input protocol=tcp tcp-flags=syn,rst action=add-src-to-address-list address-list="port scanners" address-list-timeout=14d comment="SYN/RST scan" add chain=input protocol=tcp tcp-flags=fin,psh,urg,!syn,!rst,!ack action=add-src-to-address-list address-list="port scanners" address-list-timeout=14d comment="FIN/PSH/URG scan" add chain=input protocol=tcp tcp-flags=fin,syn,rst,psh,ack,urg action=add-src-to-address-list address-list="port scanners" address-list-timeout=14d comment="ALL/ALL scan" add chain=input protocol=tcp tcp-flags=!fin,!syn,!rst,!psh,!ack,!urg action=add-src-to-address-list address-list="port scanners" address-list-timeout=14d comment="NMAP NULL scan" add chain=input src-address-list="port scanners" action=drop comment="dropping port scanners" disabled=no四、配置IPv6 防火墙规则,如果有使用ipv6的ipv6 firewall address-list add address=::/128 comment="defconf: unspecified address" list=bad_ipv6 add address=::1/128 comment="defconf: lo" list=bad_ipv6 add address=fec0::/10 comment="defconf: site-local" list=bad_ipv6 add address=::ffff:0.0.0.0/96 comment="defconf: ipv4-mapped" list=bad_ipv6 add address=::/96 comment="defconf: ipv4 compat" list=bad_ipv6 add address=100::/64 comment="defconf: discard only " list=bad_ipv6 add address=2001:db8::/32 comment="defconf: documentation" list=bad_ipv6 add address=2001:10::/28 comment="defconf: ORCHID" list=bad_ipv6 add address=3ffe::/16 comment="defconf: 6bone" list=bad_ipv6 add address=::224.0.0.0/100 comment="defconf: other" list=bad_ipv6 add address=::127.0.0.0/104 comment="defconf: other" list=bad_ipv6 add address=::/104 comment="defconf: other" list=bad_ipv6 add address=::255.0.0.0/104 comment="defconf: other" list=bad_ipv6/ipv6 firewall filter add action=accept chain=input comment="defconf: accept established,related,untracked" connection-state=established,related,untracked add action=drop chain=input comment="defconf: drop invalid" connection-state=invalid add action=accept chain=input comment="defconf: accept ICMPv6" protocol=icmpv6 add action=accept chain=input comment="defconf: accept UDP traceroute" port=33434-33534 protocol=udp add action=accept chain=input comment="defconf: accept DHCPv6-Client prefix delegation." dst-port=546 protocol=udp src-address=fe80::/16 add action=accept chain=input comment="defconf: accept IKE" dst-port=500,4500 protocol=udp add action=accept chain=input comment="defconf: accept ipsec AH" protocol=ipsec-ah add action=accept chain=input comment="defconf: accept ipsec ESP" protocol=ipsec-esp add action=accept chain=input comment="defconf: accept all that matches ipsec policy" ipsec-policy=in,ipsec add action=drop chain=input comment="defconf: drop everything else not coming from LAN" in-interface-list=!LAN add action=accept chain=forward comment="defconf: accept established,related,untracked" connection-state=established,related,untracked add action=drop chain=forward comment="defconf: drop invalid" connection-state=invalid add action=drop chain=forward comment="defconf: drop packets with bad src ipv6" src-address-list=bad_ipv6 add action=drop chain=forward comment="defconf: drop packets with bad dst ipv6" dst-address-list=bad_ipv6 add action=drop chain=forward comment="defconf: rfc4890 drop hop-limit=1" hop-limit=equal:1 protocol=icmpv6 add action=accept chain=forward comment="defconf: accept ICMPv6" protocol=icmpv6 add action=accept chain=forward comment="defconf: accept HIP" protocol=139 add action=accept chain=forward comment="defconf: accept IKE" dst-port=500,4500 protocol=udp add action=accept chain=forward comment="defconf: accept ipsec AH" protocol=ipsec-ah add action=accept chain=forward comment="defconf: accept ipsec ESP" protocol=ipsec-esp add action=accept chain=forward comment="defconf: accept all that matches ipsec policy" ipsec-policy=in,ipsec add action=drop chain=forward comment="defconf: drop everything else not coming from LAN" in-interface-list=!LAN
2024年02月02日
21 阅读
0 评论
0 点赞
1
2
3
4