howborn/blog/02
Claude Code and agent skill by howborn/blog
- community
Checking that the SKILL.md file is still in the repository.
Install
npx vskill@latest install howborn/blog/02SKILL.md
作为技术人员,Linux 系统可以说是我们使用最多的操作系统,但我们可能并不是很了解它。在这里我将自己日常遇到的 Linux 使用技巧记录下来,方便以后查询使用。
[Image: 预览图]<!--more-->
常用命令
- 统计 IP 连接数
操作系统
查看系统版本
在安装环境或者软件时,我们常常需要知道所在操作系统的版本信息,这里列举几种查看内核和发行版本信息的方法,更多见 查看 Linux 系统版本。
内核版本
- uname命令
- /proc/version文件
发行版本
- lsb_release命令
- /etc/issue文件
启用Swap分区
在遇到内存容量瓶颈时,我们就可以尝试启用 Swap 分区。使用文件(还可以磁盘分区)作为 Swap 分区时,具体步骤如下:
1、 创建 Swap 分区的文件
2、 格式化为交换分区文件
3、 启用交换分区
4、 开机自启用 Swap 分区
在/etc/fstab文件中添加如下内容:
最后,查看系统的 Swap 分区信息:
免密码使用sudo
以下两种需求:
- 开发中经常会使用到 sudo 命令,为了避免频繁输入密码的麻烦;
- 脚本中使用到 sudo 命令,怎么输入密码?;
这些,都可以通过将用户加入 sudoers 来解决,当然情况 2 也可以使用echo "passwd"|sudo -S cmd,从标准输入读取密码。
sudoers 配置文件为/etc/sudoers,sudo 命令操作权限配置内容如下:
授权格式 说明:
- 第一个字段为授权用户或组,例如 root;
- 第二个字段为来源,() 中为允许转换至的用户,= 左边为主机名;
- 第三个字段为命令动作,多个命令以
,号分割;
因此,我的用户为fhb,授权步骤如下:
然后,使用sudo service ssh restart命令测试 OK。
Yum更新排除指定软件
有时候我们使用 yum 安装的软件,由于配置向后兼容性等问题,我们并不希望这些软件(filebeat 和 logstash)在使用update时,被不经意间被自动更新。这时,可以使用如下方法解决:
- 临时
通过-x或--exclude参数指定需要排除的包名称,多个包名称使用空格分隔。例如:
- 永久
在 yum 配置文件/etc/yum.conf中,追加exclude配置项。例如:
再次使用yum update命令,就不会自动更新指定的软件包了。
ssh
设置禁PING
攻击者可能会通过端口扫面工具,而得出目标服务器监听的端口号,从而进行攻击。通过关闭 Linux 服务器的 ICMP 协议服务或者防火墙拦截 ICMP 协议包,可以达到禁用 ping 的目的。
a. 关闭ICMP服务
b. 防火墙拦截
检查禁 ping 是否成功:
修改SSH监听端口
默认情况下,SSH 监听 22 端口,这也使得攻击者可以轻松扫描到目标服务器是否运行 SSH 服务。所以建议将 SSH 端口号更改为大于 1024。
在文件/etc/ssh/sshd_config中,增加如下配置:
重启 SSH 服务:
通过新端口 10086 连接 SSH,如果连接成功再删除默认端口 22 配置。
如果查看发现 10086 已被 sshd 监听,而仍然无法连接 SSH,则需添加防火墙规则:
公钥登录
使用密码登录 SSH,每次登录都需要频繁输入密码,所以比较麻烦,使用 SSH 的公钥登录,可以免去输入密码的步骤。
1、在本地主机上生成自己的公钥
执行命令后出现一系列提示,直接回车即可。会在$HOME/.ssh目录生成公钥和私钥文件,其中id_rsa.pub为你的公钥,id_rsa为你的私钥。
2、配置公钥到远程主机
远程主机将用户的公钥保存在$HOME/.ssh/authorized_keys文件,所以这里需要将上步生成的 公钥 文件id_rsa.pub的内容 追加 到authorized_keys文件中。
如果authorized_keys文件不存在,创建即可:
配置 sshd 服务,配置文件为/etc/ssh/sshd_config,将下面内容关闭注释。
然后,重启 sshd 服务。
3、免密登录测试
这里通过配置 识别名 ,连接时只需指定连接识别名即可,简单方便。
在$HOME/.ssh目录下创建config文件,并作如下配置:
使用识别名连接 SSH 登录远程主机,出现如下内容表示公钥登录成功。
强制踢出其他登录用户
在某些情况下,需要强制踢出系统其他登录用户,比如遇到非法用户登录。查询当前登陆用户:
剔除非法登陆用户:
更多详细说明,见 Linux 强制踢出其他登录用户。
建立隧道实现端口转发
在可以使用 ssh 情况下,为了能进行线上调试,我们可以使用 ssh 隧道建立端口映射。
例如,线上远程目标机器 ip:10.1.1.123、端口:3303;映射到本地 33031 端口。命令如下:
该命令操作后,只能通过127.0.0.1访问。若想全网段访问,需要将第一个主机 ip 更改为0.0.0.0,同时需要在/etc/ssh/sshd_config增加GatewayPorts yes的配置项。
常用工具
Strace调试
在调试程序时,我们会遇到一些系统层面的错误问题,一般都不易发现,这时可以使用 strace 来跟踪系统调用的过程,方便快速定位和解决问题。
更多详细说明,见 错误调试。
彩色的命令行
在脚本或者代码中,有时候需要在控制终端输出醒目的提示信息,以便引起我们的关注。其实,在 Linux 终端下很容易就能搞定,如下:
[Image: 彩色的命令行]
实现的源代码,内容为:
\033是 Esc 键对应的 ASCII 码(27=/033=0x1B),表示后面的内容具有特殊含义,类似表述有^[以及/e,而\033[0m表示清除格式控制。
输出格式的规则,可表示为\033[特殊格式;前景色;背景色m,主要分为 颜色 和 格式 两类规则。
- 颜色
主要包括 前景色 和 背景色,前景色范围为30~39,背景色范围为40~49(前景色对应颜色值 +10)。前景色颜色代码表如下:
<div><span style="color:black;">黑 = "\033[30m"</span> <span style="color:red;">红 = "\033[31m"</span> <span style="color:green;">绿 = "\033[32m"</span> <span style="color:yellow;">黄 = "\033[33m"</span> <span style="color:blue;">蓝 = "\033[34m"</span> <span style="color:purple;">紫 = "\033[35m"</span> <span style="color:cyan;">青 = "\033[36m"</span> <span style="color:white;">白 = "\033[37m"</span></div>
- 格式
| 表达式 | 格式 | |
|---|---|---|
| \033[0m | 关闭所有属性 | |
| \033[1m | 高亮度 | |
| \033[4m | 下划线 | |
| \033[5m | 闪烁 | |
| \033[7m | 反显 | |
| \033[8m | 消隐 |
<strong>更新 »</strong>
- 免密码使用 sudo(2018-04-12)
- 彩色的命令行(2018-08-14)
Security
- Security scanPassed, 84 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingsource/_posts/2018/02/linux-skill.md
Popularity
- Repository stars
- 97
- Repository forks
- 14
- Repository npm downloads, 7 days
- 661
- 7-day trend score
- 39
Stars and forks are for the whole GitHub repository, not this skill alone. Downloads are for the repository's npm package. Refreshed 19 Mar 2026, 7 months ago.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/howborn/blog/02)