-
判断Shell脚本是否适合自动安装运维工具,关键看安装路径是否固定、依赖能否由apt/yum解决、有无交互式配置;优先选用官方支持“curl|sh”方式的工具,避免read输入,需校验sudo权限、统一包管理命令、健壮下载校验及安装后验证。
-
targetcli创建LUN提示“Targetnotfound”是因为未加载iscsi_target_mod模块且未初始化配置树,需手动modprobe并在targetcli中执行cd/→create→saveconfig。
-
1、使用which命令可快速查找PATH中命令的首个匹配路径,如whichls返回/bin/ls;2、whereis能同时显示命令的可执行文件、手册页等信息,如whereisgcc输出/usr/bin/gcc;3、type-a可识别命令类型并列出所有关联路径,区分别名、内置命令与外部文件;4、find支持全盘搜索,通过sudofind/-typef-name"python3"定位不在PATH中的命令;5、dpkg-L或rpm-ql可查询包管理器安装的命令路径,适用于已知包名的情况。
-
stress-ng需按硬件瓶颈层级精准配置参数:CPU测多核调度用--cpuN--cpu-ops与亲和性;内存测控制器需--vm与--numa绑定节点;IO测NVMe要--hdd-optsdirect,rand;--metrics-brief直读内核接口暴露TLB/NUMA等深层指标;崩溃复现须匹配故障窗口,如PCIe丢帧用--hdd循环监控dmesg。
-
free命令是Linux下实时查看内存使用状况的常用工具,支持以KB/MB/GB显示、动态刷新、总量统计及管道过滤等用法,重点关注available列判断可用内存。
-
ltrace没输出主因是默认过滤或进程逃逸:仅跟踪动态链接库函数,不跟踪静态链接、libc内联优化调用及fork子进程(除非加-f)。
-
lsof可查进程打开的FIFO文件:运行sudolsof-pPID,TYPE列为FIFO、NAME为管道路径(如/tmp/myfifo)、FD含r/w/u标识;若未显示,可能因未加sudo、FIFO未被任一端成功open或两端均阻塞中。
-
必须先运行aptupdate,因为apt依赖本地缓存的软件包索引(/var/lib/apt/lists/),不更新则无法发现新版本或包名,导致安装失败或装旧版。
-
Linux系统DNS配置有五种方法:一、修改/etc/resolv.conf;二、通过NetworkManager配置;三、配置systemd-resolved服务;四、临时设置DNS;五、注意发行版差异、端口冲突、容器及防火墙限制。
-
trap必须在脚本最外层定义,因默认仅对当前shell有效;SIGKILL和SIGSTOP不可捕获;trap内exit需确保不在子shell中,推荐用标志位+主循环检查或kill-TERM$$。
-
“Nospaceleftondevice”报错但df-h显示磁盘充足,极大概率是inode耗尽;必须运行df-i检查各挂载点IUse%列,若任一达到100%即确认为inode满,尤其需单独检查/var、/home、/var/log等独立inode池目录。
-
可通过cron或systemdtimer定时执行echo3>/proc/sys/vm/drop_caches清理内核缓存,需创建带权限控制和日志记录的脚本,并添加锁机制防止并发执行,确保安全高效。
-
最省事安装方式是直接下载官方GitHubReleases页的victoria-metrics-*.tar.gz(如v1.94.0-linux-amd64),解压后将./victoria-metrics-prod放入/usr/local/bin,指定-storageDataPath和-retentionPeriod即可运行;切勿误用源码包或企业版。
-
Linux系统切换中文界面需先安装对应发行版的中文语言包并配置zh_CN.UTF-8locale:Ubuntu/Debian用apt安装language-pack-zh-hans等包并update-locale;CentOS/RHEL用dnf/yumgroupinstall“ChineseSupport”后localectl设置;Arch需编辑locale.gen、locale-gen并写入locale.conf;Kali须dpkg-reconfigurelocales并安装中文字体;最后通过locale
-
vmstat首行是系统启动以来的平均值,非实时状态;应关注第二行起的采样数据,其中r为就绪队列长度,us/sy为CPU用户/内核态占比,si/so高表明内存压力大,bi/bo大说明磁盘I/O密集。