![](https://img-blog.csdnimg.cn/20190907132453329.jpeg?x-oss-process=image/resize,m_fixed,h_224,w_224)
Ubuntu|Linux
文章平均质量分 92
AlbertS
一个手残党怀着对游戏的好奇心踏上了开发之路,旅途中磕磕绊绊踩了不少坑,触了不少雷,深知好记性不如烂笔头的道理,于是记录下学习路上的点点滴滴,努力在这个浮躁的年代做一个专注的人,携码起舞,与君共勉。
Coding是件有趣的事情,快乐的看待每一天,我真的非常幸福~
展开
-
有关服务器安全的反思
人都说学的越多,不懂的东西也就越多,很多人都会有这个感受,面对信息爆炸的互联网时代,有种“学不完,根本学不完”沧桑无力感,最近有关服务器安全的了解又扩展了我的知识面,填补了部分认知盲区,究竟什么是服务器安全...原创 2024-05-28 01:30:00 · 605 阅读 · 0 评论 -
将python编写的网站制作成docker镜像并上传到Github Packages上
还记得上一篇《借助ChatGPT使用Python搭建一个工具网站》总结中我利用ChatGPT写了一个网站,最终它运行良好,就在昨天我看到了Github Packages,不久前刚刚使用了GitHub Actions,我发现Github在被微软收购后,并没有变的更“闭源”,之前广大网友还在调侃,最大的闭源软件公司收购了最大的开源平台,看来一切还在向好的方向发展,简单介绍下前面提到的这两个都是什么东西...原创 2024-03-09 02:00:00 · 1230 阅读 · 0 评论 -
使用nslookup命令查询域名系统的信息
这个命令出现在与运维同学沟通过程中,在此之前要是问我一个域名对应的服务器是IP地址是什么,我肯定优先想到的是ping这个命令,这个命令确实可以在回复的信息中看到IP地址,但是不全面,有时一个域名对应不止一个IP地址,这时就要用到 nslookup 命令了,这也是在沟通中学到的新知识点...原创 2024-01-29 22:11:51 · 1872 阅读 · 0 评论 -
推荐一款通过ssh连接linux服务的开源工具WindTerm
工作一入门便是游戏服务器开发,所以常常有连接Linux服务器的需求,之前用的最多的是Xshell,最近这个软件个人版只能免费使用一个月了,超过时间会提示更新无法正常使用,工作当中用的最多的是SecureCRT,不过这个软件是收费的,公司买了授权,可以正常用,但是在家时就不行了,最近我找到了WindTerm这个软件,用起来还不错,记录一下...原创 2024-01-14 19:39:08 · 1964 阅读 · 0 评论 -
Linux环境下通过journal命令查看和管理日志
就在半月之前,负责打包更新的服务器突然登录不上去了,赶紧找来运维的同事帮忙解决,发现系统日志中有很多 `systemd-journald[424]: Failed to open runtime journal: No space left on device` 字样的错误,被告知磁盘满了需要清理,但是我当时登录不上去,只能让他们帮忙重启后利用单用户模式上去删除临时文件试试,但重启后发现问题解决了,很是诧异,查询服务器后台监控平台,发现磁盘空间还有50%,inode只占用了0.02%,这怎么会磁盘满了呢..原创 2023-12-22 22:03:50 · 3857 阅读 · 0 评论 -
究竟什么是阻塞与非阻塞、同步与异步
这几个名词在程序开发时经常听到,但是突然问起来各个词的含义一时间还真是说不清楚,貌似这几个词都是翻译过来的,每个人的解释都不太一样,我对这几个词的理解也不是一成不变的,随着开发经验的积累,渐渐有了自己的记忆方式,所以总结一下,不一定准确,有问题可以一起聊一聊...原创 2023-11-24 22:08:31 · 503 阅读 · 0 评论 -
linux环境下使用timeout监控命令执行超过5分钟后发送通知
有一段时间没写了,马上1024了,总得有点输出吧,想到最近用了一个挺有用的命令timeout,所以拿出来简单展示一下它的用法,作用就是可以给指定命令设置超时时间,相当于扩展了原命令,对于一般没有超时参数的命令是个方便的扩展方式,可以增加超时处理...原创 2023-10-23 22:35:37 · 868 阅读 · 0 评论 -
废了九牛二虎之力终于修改了MySQL8.0的root密码
上次说到在Ubuntu系统上安装MySQL8.0之后默认是没有密码的,如果想设置密码需要写成的形式,其实在用这种方式之前,我还使用功能了mysql_secure_installation这个MySQL自带的程序来设置密码,但是没生效,为什么这个看起来很正规的方式不生效的呢?接下来一起找找原因...原创 2023-10-08 20:54:35 · 478 阅读 · 0 评论 -
linux环境下如果掌控了系统root账户就能对上面安装的MySQL数据为所欲为了吗
根据我目前测试的情况来看,这个问题的答案是【确实可以为所欲为】,事情的起因是这样的,一次偶然的机会我发现Ubuntu20.04系统上通过命令安装的MySQL服务器,使用root账号登录无论输入什么密码都可以成功进入,多次尝试后才知道原来root用户默认没有密码,这可是让我惊呆了,居然还可以这样,为了服务器的安全,我必须给他设置个密码,在不断尝试的过程中引发了标题中的疑问...原创 2023-10-07 20:53:27 · 286 阅读 · 0 评论 -
linux环境下Shell脚本中定义函数
说实话,这是我第一次用Shell来定义函数,之前也写了很多shell脚本,但是体量都不大,所以基本上是按照需求罗列了多个命令来实现的,这次也是一样,但是我发现重复的地方太多了,所以还是要拿出看见本事“抽象函数”来解放我懒惰的手指...原创 2023-08-15 22:46:29 · 459 阅读 · 0 评论 -
Ubuntu删除大量磁盘文件时,内存cache降free升而创造的漂亮曲线
最近在做压力测试,对磁盘、CPU、内存等指标比较敏感,因为产生了大量的日志文件需要定期删除,于是写了个定时清理磁盘的脚本,今天早上发现内存曲线居然产生了一个漂亮的图形,不知道你们想到了什么?看到这曲线我首先想到的是《编程之美》中那个“让CPU占用率曲线听你指挥” 的面试题,是不是得加一个想内存使用率曲线听你指挥...原创 2023-08-12 10:42:57 · 354 阅读 · 0 评论 -
在Ubuntu系统下修改limits.conf不生效
最近遇到的一个问题,在Ubuntu系统下修改不生效,查了多种资料都说不用重启,但是我改完就是不生效,多次尝试之后发现Ubuntu系统有毒...原创 2023-08-10 22:37:32 · 1859 阅读 · 0 评论 -
linux环境下运行脚本时常用>/dev/null 2>&1 &这一串的作用
>/dev/null 2>&1 & 的作用是将某个程序在后台运行,并将其标准输出和标准错误输出都丢弃,不在终端中显示或记录。这样做常常用于运行不需要显示输出的程序或脚本,并且让它在后台运行,不占用终端的输入输出...原创 2023-08-01 01:56:49 · 4026 阅读 · 0 评论 -
之前好好的distcc突然报错distcc[18595] (dcc_pump_sendfile) ERROR: sendfile failed: Broken pipe怎么办
distcc是一个用于分布式编译的工具,它可以将编译任务分发到多台计算机上,从而加快代码编译的速度。distcc允许多台计算机共同参与编译过程,利用分布式系统的优势来并行处理编译任务,从而提高编译速度和性能...原创 2023-07-21 22:35:10 · 327 阅读 · 0 评论 -
linux环境下rsync命令中两个目录结尾的斜杠‘/‘到底有什么作用
每次使用文件拷贝cp命令或者同步rsync命令时都会有些疑惑,不知道路径末尾的需不需要加,隐约感觉到有些不同,但具体的区别却不太清楚,需要实际操作一次才能知道了,下面就来试一试...原创 2023-07-20 22:36:13 · 3034 阅读 · 0 评论 -
初识Telegraf、InfluxDB和Grafana铁三角形成的监控可视化解决方案
数据监控目前用于各行各业,服务器开发也不例外,进程什么时候被杀死了?内存占用已经达到98%了怎么早点没发现,网络带宽已经占满了怪不得玩家反馈说登录不上去了,这些都是服务器开发人员常常听到的“抱怨”,他们都涉及到服务器资源的使用情况,如果有一种方便的途径可以高效的监控各个服务器的情况就好了,单靠人去各个服务器查看是不现实的,今天就来简单介绍一种我刚刚学到的方案...原创 2023-06-17 19:47:08 · 3053 阅读 · 2 评论 -
linux环境下熟悉又陌生的sudo命令
sudo命令应该是任何一个服务器使用人员都绕不开的命令,比如那个大名鼎鼎的删库跑路命令,虽然经常使用,也知道用它能做一些普通用户无法完成的事情,那么它究竟是什么意思,有什么作用和好处,和超级无敌的root用户又有什么关系呢?接下来我们来简单梳理一下...原创 2023-05-26 22:13:31 · 4637 阅读 · 2 评论 -
linux环境下使用daemon函数实现守护进程
daemon进程是后台守护进程,比如linux 下server都是daemon进程,像httpd、sshd等这些服务你肯定听说过,如果我们想写一个后台运行程序应该怎么做呢?其实非常容易,只要添加unistd.h头文件,然后在调用daemon函数即可...原创 2023-05-12 22:43:23 · 1819 阅读 · 2 评论 -
linux下使用dd命令测试磁盘的读写速度
最近打包更新总是特别慢,其中有一步使用md5sum命令计算MD5值的操作有时居然要卡一个小时,虽说计算MD5比较耗时,但通常计算5个G数据的md5值也就1分多钟,卡一个多小时有点说不过去了,所以在卡顿时使用top命令查看了进程情况,发现md5sum进程在卡顿时总是处于D状态,这个还是第一次遇到,所以查了些资料记录一下...原创 2023-04-26 22:32:01 · 3509 阅读 · 0 评论 -
linux环境下查看因内存占用过大被杀掉的进程
最近发生两次游戏服务器进程突然消失的事件,查询日志上下文没有找到有用的信息,日志显示运行到某处戛然而止,此处代码逻辑简单,排除异常逻辑导致的服务器进程崩溃,所以联想到之前同一台服务器上部署多个进程,因占用内存太大被内核杀死的情况,猜测本次也是这个原因...原创 2023-04-04 23:41:34 · 3884 阅读 · 0 评论 -
CentOS7通过rpm包离线安装git
如果能连接外网,谁甘愿在离线状态下折腾,重新安装git的起因是服务器上的git版本(1.8.3.1)过低,Mac客户端升级后git版本(2.40.0)太高,导致无法验证密钥来进行拉取操作,所以要把服务器上的git升级一下,而git的1.8.3.1版本貌似是CentOS7的默认版本,我在多篇文章中看到了这个版本号,本来以为分分钟搞定,结果的折腾到半夜...原创 2023-03-21 23:16:17 · 2558 阅读 · 2 评论 -
linux环境下利用rsync+find实现同步指定时间段文件
这几天一直在处理shell脚本,作为服务器开发人员免不了要部署一些环境,数据备份和同步工作也是家常便饭,最近常搞的几个命令有findrsyncsed等,之前也写过一篇《linux环境下使用rsync命令完成数据同步》,不过这次有新的需求了。rsync命令本身不能指定同步的时间段,可搭配find命令来同步指定时间段的文件...原创 2023-03-19 21:10:31 · 2790 阅读 · 0 评论 -
Ununtu环境下的判断字符串相等出现sh: xxx: [: xxx: unexpected operator的问题
这是个小问题,本质原因是判断字符相等使用两个==需要在bash环境下,而Ubuntu默认不是这个Shell环境,所以就会出现在 CentOS 上运行的好好的Shell,放到Ubuntu上就运行出错的问题,我遇到的问题本质也是这个原因,不过在复杂的状况下却不能一眼找到是哪里导致的...原创 2023-03-17 23:01:01 · 822 阅读 · 0 评论 -
圣诞平安夜了还要继续敲代码吗
先不说圣诞节算不算我们的节日,单纯就节日还要不要敲代码这个问题来说,每个程序猿/媛都有自己的答案。如果说你把工作敲代码当做一种负担,那么节假日正好可以作为自己休息的理由,好好休息一下也是不错的选择;如果把敲代码作为一种乐趣,那么节假日难得清净,少了很多杂事的打扰,正好是敲代码的黄金时间段,想一下自己的状态很容易就应该明白了...原创 2022-12-25 01:47:35 · 649 阅读 · 5 评论 -
linux环境下统计目录下所有文件的行数
工作中时常有统计数据行和代码行的需求,虽然能依次打开每个文件数一下,但是这样操作效率太低了,如果是在linux环境中,可以使用一个常用的命令wc,一起记录一下常见的用法吧...原创 2022-12-02 02:37:31 · 10470 阅读 · 0 评论 -
linux环境下使用rsync命令完成数据同步
linux 环境下说到数据复制第一个映入脑海的命令还是cp,毕竟它用起来很方便,但是只能完成本地数据的拷贝,如果想实现本地和远程主机之间的数据拷贝可以使用scp,有些文章会把它翻译成 “ssh copy”,但实际上它的全称是 “secure copy”,不过它确实利用了ssh协议,缺点就是只能全量拷贝,如果想完成增量拷贝可以选择rsync命令,官网比较简陋,但很符合GNU的风格...原创 2022-11-14 00:40:06 · 2451 阅读 · 0 评论 -
linux环境下查询主板、CPU、内存等硬件信息
如果是在windows系统下,查询电脑硬件会容易的多,可以通过电脑属性、计算机管理等多种图形化界面中查到,如果安装了各种电脑管家,那查询这类信息就更方便了,但如果在linux系统下通常要使用命令来解决,特别是查询服务器配置时,一般不会给服务器安装图形化界面,所以掌握必要的查询命令对于合理使用服务器资源很有必要...原创 2022-11-06 23:08:36 · 6537 阅读 · 0 评论 -
awk处理/etc/passwd文件
awk是 linux 环境下的一个强大的编程工具,用于对文本和数据进行处理。数据可以来自标准输入、一个或多个文件,或其它命令的输出。同时它支持用户自定义函数和动态正则表达式等先进功能,可以被作为一种编程语言,可以很方便的在命令行中使用,但更多是在脚本来使用,为了熟悉这个命令,我们可以用它来尝试处理文件学习一下常见用法...原创 2022-10-30 22:54:28 · 3117 阅读 · 0 评论 -
后台运行一个go程序
后台运行在日常开发中比较常用,特别是在部署服务器上,一般都是通过ssh连接到服务器,然后启动后台运行程序,如果程序不支持后台运行,那么当终端断开时程序也就退出了,所以掌握常用的后台运行方式还是比较有用的...原创 2022-10-24 00:14:46 · 4828 阅读 · 0 评论 -
本来打算完整安装一次redmine最终还是放弃了
redmine是最近工作中经常使用的项目管理软件,因为平时主要使用跟踪一些开发进度和bug修复情况,平时使用并不算重度,体验还不错,最近因为需要停电重启,所以想借着这个机会学习一下怎么安装,看了不少教程,各种安装方法,因为依赖项确实有点多,至今也没按照官网wiki安装成功(战术捂脸),不过从中发现了很多新的知识点,还是记录一下...原创 2022-10-03 02:48:09 · 3066 阅读 · 2 评论 -
如期而至的SVN服务器迁移引来一个大瓜XAMPP
之前对于版本控制工具svn和git更多的是操作命令的使用,而最近逐步开始接触使用环境的搭建了,对于一些私有项目还是需要在内部服务器上搭建一个 svn 或者 git 服务器的,前段时间因为 SVN 服务器硬盘空间告急,所以 SVN 数据迁移被提上了日程,经过几个月的准备,终于要动手了,期间也讨论了几个方案,结果最终迁移完发现,和我想的完全不一样啊,看来还是我太年轻了,世界真大...原创 2022-09-17 21:15:13 · 1046 阅读 · 0 评论 -
rm -rf 真是删库跑路的一把好手
上回书说到《一个月黑风高的夜晚紧急完成gitlab服务器数据迁移》,因为数据迁移后原数据还是存在的,该分区硬盘快满了,进而影响了原目录下的日志存储,既然数据已经迁移到新的路径了,那原来的库直接删掉就好了,往往就是这么不经意间做了一个令人十分后怕的决定..........原创 2022-08-27 00:00:44 · 16177 阅读 · 10 评论 -
一个月黑风高的夜晚紧急完成gitlab服务器数据迁移
真是无巧不成书,白天刚刚讨论了一天 `SVN` 服务器迁移事情,晚上突然被告知 `gitlab` 服务无法访问了,赶紧连接到服务器上查看,好家伙,磁盘还剩下可怜的 `98K`,`SVN` 不管了,先把 `gitlab` 搞定吧,毕竟第二天的游戏更新包都打不出来了,确认是磁盘不足问题后已经是9点半了,月亮都升起老高了,赶紧开始修复吧......原创 2022-07-30 17:33:24 · 997 阅读 · 4 评论 -
了解git裸仓库并利用post-receive自动化部署
【裸仓库】指的是使用 命令得到的仓库,是对这种操作结果的一种直译,这个词对于刚接触 git 软件的小伙伴来说可能是第一次听说,而我也是最近实际操作了几次才渐渐理解,下面解释一下什么是裸仓库,以及为什么要使用它,有理解不对的地方还请大家指正.............原创 2022-06-12 20:42:41 · 1900 阅读 · 6 评论 -
linux环境下常用的查找命令find、which、grep
查找是运维工作的很重要的一部分,不管是文件查找,还是内容查找,在日常开发维护过程中都常常用到,本文把一些日常用到的查找命令总结到一起,通过对比来学习异同点,进而达到增强记忆的目的.........原创 2022-06-07 01:35:15 · 721 阅读 · 0 评论 -
linux环境下常用的网络命令ping、telnet、traceroute、tcpdump
因特网(Internet)的前身是美国国防部高级研究计划局(ARPA)用于军事目的的通信网络,真的就是一个内部的工具出圈成了改变世界的事物。网这个词用的很形象也很贴切,如今的世界任何事情都离不开这个大网了,特别是之前炒的非常火爆的万物互联概念,更是把所有事物都挂在了“网”上,虽然这张大网某些节点偶尔会不太通畅,但这并不能阻断消息的往来。之前都在讲全球化,谁能想到短短几年“逆全球化”居然越来越热...原创 2022-05-13 22:15:43 · 5773 阅读 · 2 评论 -
linux环境下随时照看服务器进程的ps和top命令
在linux环境服务器下通常是不会安装图形界面的,这时如果想看程序是否在正常运行着,就不能像在windows上一样去查看任务管理器,而是需要通过命令来查询程序的进程运行情况,`ps` 就是一个查询linux环境下进程运行状态的命令...原创 2022-01-28 00:52:11 · 2010 阅读 · 0 评论 -
网络工具nc的常见功能和用法
`nc` 是一个Linux环境下常用的工具命令,可以用来帮助开发者查询和解决网路问题,通常被认为是 `NetCat` 工具的缩写,在网络工具中有“瑞士军刀”的美誉...原创 2021-12-12 23:52:50 · 4932 阅读 · 0 评论 -
linux环境下恢复rm误删的文件
一提到在 linux 环境下删除文件,那绝对离不开 sudo rm -rf /* 这个梗,从删库到跑路,一天一个入狱小技巧,所以我们一定要谨慎使用 `rm -rf` 命令,这相当于我们在 Windows 上使用 `Shift+Delete` 组合,文件不会放到回收站中,而是直接永久删除...原创 2021-11-28 22:20:15 · 16064 阅读 · 15 评论 -
linux环境下从路径字符串中截取目录和文件名信息
之前在文章《.bat批处理(十):从路径字符串中截取盘符、文件名、后缀名等信息》中总结了在批处理文件中,也就是Windows环境下怎样从路径字符串中截取文件名、盘符等信息,利用的是Windows的扩展变量,而这种截取路径的需求在linux脚本中也很常见,实现方法相比批处理脚本而言要简单一些,下面列举一下常见的方法...原创 2021-10-24 21:31:19 · 4742 阅读 · 0 评论