- 密码管理器我一直想自己托管,数据放在自己手里更踏实。这次用 1Panel 的编排功能部署了 Vaultwarden(Bitwarden 的轻量第三方服务端),记录一下步骤和几个容易忽略的点。 一、部署在 1Panel 里新建一个编排,名字随意,内容如下:services: vaultwarden: image: vaultwarden/server:latest contain... 密码管理器我一直想自己托管,数据放在自己手里更踏实。这次用 1Panel 的编排功能部署了 Vaultwarden(Bitwarden 的轻量第三方服务端),记录一下步骤和几个容易忽略的点。 一、部署在 1Panel 里新建一个编排,名字随意,内容如下:services: vaultwarden: image: vaultwarden/server:latest contain...
- 新服务一启动就报错 Address already in use,或者反过来,服务明明跑着,浏览器却连不上——十次有九次是端口出了问题:要么被别的进程占了,要么服务根本没监听在你以为的那个端口上。ss 和 lsof 是每台 Linux 服务器自带的定位工具,下面这套流程,三分钟就能把谁在用这个端口问清楚。 新服务一启动就报错 Address already in use,或者反过来,服务明明跑着,浏览器却连不上——十次有九次是端口出了问题:要么被别的进程占了,要么服务根本没监听在你以为的那个端口上。ss 和 lsof 是每台 Linux 服务器自带的定位工具,下面这套流程,三分钟就能把谁在用这个端口问清楚。
- 前面几篇讲的都是「出了事怎么查」,这篇讲「出事之前怎么留后路」。小服务器最惨的事故往往不是宕机,而是数据没了:一条命令删错目录、一块盘突然损坏、一次改配置改到起不来——只要没有备份,排查技术再好也救不回来。好消息是,够用的备份不用买任何服务,系统自带的工具十分钟就能搭好。 先想清楚:备什么、备到哪、留多久三个问题先有答案,命令只是照着填:备什么:只备「丢了没法重建」的东西——网站目录、数据库... 前面几篇讲的都是「出了事怎么查」,这篇讲「出事之前怎么留后路」。小服务器最惨的事故往往不是宕机,而是数据没了:一条命令删错目录、一块盘突然损坏、一次改配置改到起不来——只要没有备份,排查技术再好也救不回来。好消息是,够用的备份不用买任何服务,系统自带的工具十分钟就能搭好。 先想清楚:备什么、备到哪、留多久三个问题先有答案,命令只是照着填:备什么:只备「丢了没法重建」的东西——网站目录、数据库...
- 刚接触 Linux 服务器时,很多人第一次装好软件就卡住了:服务怎么启动?重启后为什么又停了?答案大多藏在 systemd 里。systemd 是多数现代 Linux 发行版的初始化系统和服务管理器,systemctl 则是和它打交道的命令行工具。学会 systemctl,就等于拿到了管理服务的总开关。 一、服务是什么服务就是在后台持续运行的程序,比如网站服务、数据库、定时任务。它们没有窗口... 刚接触 Linux 服务器时,很多人第一次装好软件就卡住了:服务怎么启动?重启后为什么又停了?答案大多藏在 systemd 里。systemd 是多数现代 Linux 发行版的初始化系统和服务管理器,systemctl 则是和它打交道的命令行工具。学会 systemctl,就等于拿到了管理服务的总开关。 一、服务是什么服务就是在后台持续运行的程序,比如网站服务、数据库、定时任务。它们没有窗口...
- 服务出了问题,第一件事往往是去翻日志。可日志动不动几十万行,用编辑器打开慢慢翻,翻到天黑也未必找得到关键的那一行。文本处理的三件套 grep、sed、awk 就是为这件事准备的:grep 负责把相关的行挑出来,sed 负责按规则改写,awk 负责按列拆开算数。分工弄清楚了,几十万行的日志也能在几秒钟内筛出答案。第一步是先用 grep 把相关的行挑出来。最常用的是 grep "ERROR" a... 服务出了问题,第一件事往往是去翻日志。可日志动不动几十万行,用编辑器打开慢慢翻,翻到天黑也未必找得到关键的那一行。文本处理的三件套 grep、sed、awk 就是为这件事准备的:grep 负责把相关的行挑出来,sed 负责按规则改写,awk 负责按列拆开算数。分工弄清楚了,几十万行的日志也能在几秒钟内筛出答案。第一步是先用 grep 把相关的行挑出来。最常用的是 grep "ERROR" a...
- 终端里手敲正常的命令,写进 crontab 就默默失败且不留错误。根因是 crontab 里 % 等价于换行,date +%Y%m%d 这类写法会让命令被截断。顺带讲同源的 PATH / LANG / TZ 缺失问题、flock 防并发重叠,以及让 crontab 只调脚本这条根治办法。 终端里手敲正常的命令,写进 crontab 就默默失败且不留错误。根因是 crontab 里 % 等价于换行,date +%Y%m%d 这类写法会让命令被截断。顺带讲同源的 PATH / LANG / TZ 缺失问题、flock 防并发重叠,以及让 crontab 只调脚本这条根治办法。
- 朋友,前两天半夜被一条报警短信吵醒:业务接口的响应时间从 50 毫秒飙到了 3 秒。第一反应是 CPU 被打爆了,结果 top 一看,CPU 才用了两成,内存也还够。那机器到底在忙什么?答案藏在 top 右上角一个不起眼的数字里:wa,也就是 iowait。iowait 是什么意思呢?简单说,CPU 有空,但它在等磁盘。进程发起了读写请求,磁盘还没回,CPU 只能干等,这段时间就被记成 io... 朋友,前两天半夜被一条报警短信吵醒:业务接口的响应时间从 50 毫秒飙到了 3 秒。第一反应是 CPU 被打爆了,结果 top 一看,CPU 才用了两成,内存也还够。那机器到底在忙什么?答案藏在 top 右上角一个不起眼的数字里:wa,也就是 iowait。iowait 是什么意思呢?简单说,CPU 有空,但它在等磁盘。进程发起了读写请求,磁盘还没回,CPU 只能干等,这段时间就被记成 io...
- 记录个人服务器常驻服务的运维做法:systemd 托管自动重启、日志轮转、健康检查与升级前备份。 记录个人服务器常驻服务的运维做法:systemd 托管自动重启、日志轮转、健康检查与升级前备份。
- 先分清 Used、buff/cache 和 availablefree -h 里 Used 偏高不一定是坏事。Linux 会把空闲内存拿去做页缓存,加速读盘,所以 buff/cache 占一大块很正常。真正该盯的是 available:它估算「再不挤缓存还能给新进程多少」。available 接近零、Swap 持续上涨,才说明内存压力真实存在。同时看 vmstat 1 5:si/so 连续... 先分清 Used、buff/cache 和 availablefree -h 里 Used 偏高不一定是坏事。Linux 会把空闲内存拿去做页缓存,加速读盘,所以 buff/cache 占一大块很正常。真正该盯的是 available:它估算「再不挤缓存还能给新进程多少」。available 接近零、Swap 持续上涨,才说明内存压力真实存在。同时看 vmstat 1 5:si/so 连续...
- 服务器用着用着,最常见的一类报错就是磁盘满了:写文件提示 No space left on device,服务起不来,日志也写不进去。遇到这种情况先别急着删东西,第一步是先看清磁盘到底被谁占了,再动手清理。先看整块磁盘还剩多少,用 df -h:df -h-h 是让人读得懂的单位(G、M 而不是字节数)。重点看 Use% 这一列,哪个挂载点接近 100%,问题就在哪里。根目录满了和 /var ... 服务器用着用着,最常见的一类报错就是磁盘满了:写文件提示 No space left on device,服务起不来,日志也写不进去。遇到这种情况先别急着删东西,第一步是先看清磁盘到底被谁占了,再动手清理。先看整块磁盘还剩多少,用 df -h:df -h-h 是让人读得懂的单位(G、M 而不是字节数)。重点看 Use% 这一列,哪个挂载点接近 100%,问题就在哪里。根目录满了和 /var ...
- 控制台挂载了云硬盘,df -h 却看不到?本文按 lsblk 确认设备、fdisk 分区、mkfs 格式化、挂载验证、用 UUID 写进 fstab 持久化的顺序,完整讲清新数据盘的上线步骤,并给出扩容与常见问题的排查方法。 控制台挂载了云硬盘,df -h 却看不到?本文按 lsblk 确认设备、fdisk 分区、mkfs 格式化、挂载验证、用 UUID 写进 fstab 持久化的顺序,完整讲清新数据盘的上线步骤,并给出扩容与常见问题的排查方法。
- 在 Linux 服务器上排查问题时,经常只需要看日志文件的开头几行或结尾几行,不用把整个文件打开。head 和 tail 就是为这个场景准备的两个小命令,记住三个用法基本够用。第一个用法是 head -n 看文件开头。默认 head 只显示前 10 行,加上 -n 可以指定行数,比如 head -n 20 /var/log/messages 会显示日志文件的前 20 行,适合快速确认配置文件... 在 Linux 服务器上排查问题时,经常只需要看日志文件的开头几行或结尾几行,不用把整个文件打开。head 和 tail 就是为这个场景准备的两个小命令,记住三个用法基本够用。第一个用法是 head -n 看文件开头。默认 head 只显示前 10 行,加上 -n 可以指定行数,比如 head -n 20 /var/log/messages 会显示日志文件的前 20 行,适合快速确认配置文件...
- 在一台 Linux 云服务器上,用 Nginx 做反向代理,再用 Certbot 申请 Let's Encrypt 免费证书,给后端应用加上 HTTPS 并设置自动续期。 在一台 Linux 云服务器上,用 Nginx 做反向代理,再用 Certbot 申请 Let's Encrypt 免费证书,给后端应用加上 HTTPS 并设置自动续期。
- 使用 VS Code Remote-SSH 连接 Linux 服务器:从配置到远程开发一、前言在日常开发工作中,我们经常需要连接远程 Linux 服务器,进行代码编写、项目部署、环境配置以及程序调试。传统的 SSH 终端虽然能够完成基本操作,但在文件管理和代码编辑方面不够直观。VS Code 提供的 Remote-SSH 插件,可以让开发者直接在本地编辑远程服务器上的文件,大幅提升开发效率。... 使用 VS Code Remote-SSH 连接 Linux 服务器:从配置到远程开发一、前言在日常开发工作中,我们经常需要连接远程 Linux 服务器,进行代码编写、项目部署、环境配置以及程序调试。传统的 SSH 终端虽然能够完成基本操作,但在文件管理和代码编辑方面不够直观。VS Code 提供的 Remote-SSH 插件,可以让开发者直接在本地编辑远程服务器上的文件,大幅提升开发效率。...
- 云服务器上跑定时任务,crontab 是最顺手的工具,可它有个毛病:任务没跑起来时一声不吭。脚本在终端里明明能跑,放进 crontab 就没动静,这种情况我遇到过好几次,原因基本都落在下面五处,逐个排查很快就能定位。第一处是时间写法。crontab 五个字段依次是分、时、日、月、周,很多人把“每天凌晨三点”写成 3 0 * * *,其实是 0 3 * * *。星期字段里 0 和 7 都代表周... 云服务器上跑定时任务,crontab 是最顺手的工具,可它有个毛病:任务没跑起来时一声不吭。脚本在终端里明明能跑,放进 crontab 就没动静,这种情况我遇到过好几次,原因基本都落在下面五处,逐个排查很快就能定位。第一处是时间写法。crontab 五个字段依次是分、时、日、月、周,很多人把“每天凌晨三点”写成 3 0 * * *,其实是 0 3 * * *。星期字段里 0 和 7 都代表周...
上滑加载中
推荐直播
-
华为云码道Agent集成与鸿蒙实战2026/08/11 周二 19:00-21:00
王一男-华为云码道产品规划专家;李炎-华为云码道产品专家;彭江敏-华为云鸿蒙端云一体化开发专家
本次直播带你解读华为云码道7月份产品新特性、新功能。更有专家演示码道Agent Space × 钉钉机器集成实战,从0到1打通消息通道;码道鸿蒙端云一体化实战,快速搭建员工签到系统。
回顾中 -
华为云开发者AI素养直播课·第五期2026/09/04 周五 16:00-18:00
林华鼎-华为云AI开发者运营负责人;蒋春阳-华为云AI开发者案例开发专家
本期直播内容: AI工具体验营 · 第5-8课连讲。Agent-Team 多智能体协作完成毕业设计实践
回顾中 -
华为云开发者AI素养ClassRoom·第六期2026/09/08 周二 19:00-20:00
樊渊-2026华为软件挑战赛冠军
高手来了:看软挑高手解析二维排样问题—从工业难题到算法突破
回顾中
热门标签