-
必须用default_server而非if判断,因其是Nginx底层路由机制,在SSL握手后、请求解析前即生效,更可靠;而if在server级不支持return、$host易被恶意构造绕过,且HTTPS下若未配ssldefault_server会导致IP直连落入业务块。
-
应使用hostnamectl命令临时与永久修改主机名,或编辑/etc/hostname并刷新内核参数,同时同步更新/etc/hosts中对应映射,确保服务正常解析。
-
根本原因是ceph-deploy不自动分发Ceph包,需手动在各节点安装ceph、ceph-common等;cephadmbootstrap失败主因是docker.io镜像拉取超时,应配置国内镜像源或改用quay.io;OSD激活卡住多因磁盘残留元数据,须用ceph-volumelvmzap清理;cephfs挂载报错常因内核不支持msgr2,可降级协议或改用ceph-fuse。
-
smartctl是Linux下判断SSD健康最可靠的工具,直接读取SMART数据;重点关注PercentageUsed(NVMe)或Media_Wearout_Indicator(SATA)、AvailableSpare、Reallocated_Sector_Ct等指标。
-
Linux日志文件主要存储在/var/log目录及其子目录中,包括系统日志(syslog/messages)、认证日志(auth.log/secure)、Web服务日志(access.log/error.log)、定时任务日志(cron.log)和内核日志(dmesg)等;掌握日志监控技巧可使用tail-f实时追踪日志、结合grep过滤关键信息、利用awk/sed解析日志内容,并通过logrotate管理日志生命周期;对于大规模系统,可部署rsyslog或syslog-ng实现远程日志集中管理;日志分析应
-
swap文件比swap分区更推荐,因其可随时增删、创建灵活(fallocate秒建)、内核4.18+性能接近;唯一不支持休眠。
-
PAM(PluggableAuthenticationModules)是Linux用户认证的核心框架,它通过解耦应用与认证方式实现灵活的安全管理。其核心构成包括四个模块类型:1.auth负责身份验证;2.account检查账户有效性;3.password管理密码策略;4.session处理会话操作。工作流为:1.应用发起认证请求;2.PAM读取/etc/pam.d/对应服务配置;3.按顺序执行模块链并依据控制标志(required、requisite、sufficient、optional)决定认证结果;
-
bash中arr=123报错是因为shell将其解析为“赋值arr=1后执行命令2和3”,正确写法是arr=(123)或declare-Aarr=(["a"]=1["b"]=2),数组展开务必用"${arr[@]}"避免单词拆分。
-
Linux卸载软件须先确认安装来源:apt装的用dpkg/apt,rpm装的用rpm/dnf/yum,源码安装需手动清理;不同包管理器卸载语义不同,残留配置需手动删除~/.config等目录及systemd服务。
-
yum或apt报“锁被占用”本质是互斥锁文件(如/var/run/yum.pid或/var/lib/dpkg/lock-frontend)残留,主因是异常中断导致锁未释放;解决需先用ps、lsof确认无真实运行进程,再按发行版安全删除对应锁文件并修复数据库。
-
Nginx防盗链首选valid_referers配合$invalid_referer与return403,因其原生支持、开箱即用;但仅防无意盗链,无法抵御Referer伪造,适用于静态资源基础防护。
-
journalctl是systemd日志管理工具,用于查看系统及服务日志。首先可运行journalctl查看全部日志,了解系统整体运行情况;通过--since和--until按时间范围筛选,如today、yesterday或具体时段,便于定位异常;使用-u选项查看特定服务如ssh.service或nginx.service的日志,并加-f实时跟踪输出;-f参数还可单独使用以持续监控日志流,Ctrl+C退出;通过_PID=1234按进程ID过滤,-p指定日志级别(如err)查看对应严重程度的消息;最后用--
-
Nginx本身不支持Brotli,必须手动编译ngx_brotli模块并正确配置;仅克隆源码未重新编译安装、或宝塔未选“编译安装”均会导致brotli指令无效,需用nginx-V确认with-http_brotli_module输出且nginx-t无unknowndirective错误。
-
启动Elasticsearch报java.lang.OutOfMemoryError:Mapfailed的根本原因是Linux系统vm.max_map_count默认值(65530)低于ES推荐值(262144),导致mmap区域不足;需执行sysctl-wvm.max_map_count=262144并写入/etc/sysctl.conf永久生效,若使用systemd还需在override.conf中配置LimitMEMLOCK=infinity。
-
可使用du命令精确统计Linux文件或目录磁盘占用:支持-h(人类可读)、-s(汇总)、--exclude(排除)、--max-depth(限制深度)、watch(实时监控)等参数实现多样化空间分析需求。