针对文件的操作指令记录
清除文件内容递归清空指定路径下所有文件的内容,但不删除文件本身1234# truncate -s 0 表示将文件大小设置为0# {} + 表示对所有找到的文件执行这个操作find /path/to/directory -type f -exec truncate -s 0 {} +
nginx结合autoindex美化索引页面
前言 利用 nginx的 autoindex 模块,通过修改 nginx.conf 配置文件中的 add_after_body配置项来实现美化默认的索引页面。 原理:通过 js将原生界面的 dom元素提取出来,然后重新布局添加样式,最后添加到页面中并移出原来的 dom元素。 效果图 美化方案 Nginx-Fancyindex插件:但是需要自己编译nginx,比较麻烦 autoindex-add_after_body:可以非常方便的进行美化,只需要在nginx配置中添加一行 主要配置参考 这里将autoindex.html放在了nginx的根目录 123456789101112131415161718192021222324server { ...... charset utf-8; add_header Strict-Transport-Security "max-age=63072000; includeSubDomains; preload"; add_header...
Nginx配置gRPC协议
Nginx配置gRPC请求Nginx 在 1.13.10 中,新增了对gRPC的原生支持。有了对 gRPC 的支持,NGINX 就可以代理 gRPC TCP 连接,还可以终止、检查和跟踪 gRPC 的方法调用。 Nginx需要引入模块:--with-http_ssl_module --with-http_v2_module 为已经安装的Nginx添加新的编译模块: 进入解压的Nginx目录 执行命令:./configure --with-http_ssl_module --with-http_v2_module 执行命令:make && make install。执行make install时会将原有的文件替换掉,且会备份之前的文件 使用基础使用方式在客户端和服务器端之间插入 NGINX,NGINX 为服务器端的应用程序提供了一个稳定可靠的网关。 NGINX 使用 HTTP 服务器监听 gRPC 流量,并使用 grpc_pass 指令代理流量。 为 NGINX 创建以下代理配置,在端口 80 上侦听未加密的 gRPC 流量并将请求转发到端口 50051...
Centos7升级Glibc-2.28
检查glibc版本1ldd --version 安装 glibc-2.28 编辑时间可能会很长,最好找个空闲时间来升级 123456789101112# 下载并解压 glibc-2.28$ yum install -y bison$ cd /usr/src/$ wget https://ftp.gnu.org/gnu/glibc/glibc-2.28.tar.gz$ tar -xzvf glibc-2.28.tar.gz$ cd glibc-2.28# 创建临时文件$ mkdir build && cd build$ ../configure --prefix=/usr --disable-profile --enable-add-ons --with-headers=/usr/include --with-binutils=/usr/bin# 这一步时, 如果发生如下错误, 则需要进行gcc & make的升级,否则进行最后一步【继续编译glibc】These critical programs are missing or too old:...
转载:nf_conntrack: table full, dropping packet
netfilter/conntrack 相关内核参数往往是用 Linux 服务器的互联网小公司业务量上去之后遇到的第 3 个 “新手怪”。(第 1 位:进程可用的 FD 不足,第 2 位:IP 临时端口不足 + TIME_WAIT 状态的连接过多导致无法建立新连接) 很多人以为 Linux 经过这么多年优化,默认参数应该 “足够好”,其实不是。默认参数面向 “通用” 服务器,不适用于连接数和访问量比较多的场景。 症状服务器负载正常,但请求大量超时,服务器/应用访问日志看不到相关请求记录。 在 dmesg 或 /var/log/messages 看到大量以下记录: 1kernel: nf_conntrack: table full, dropping packet. 原因服务器访问量大,内核 netfilter 模块 conntrack 相关参数配置不合理,导致 IP 包被丢掉,连接无法建立。 详细nf_conntrack 模块在 kernel 2.6.15(2006-01-03 发布)被引入,支持 IPv4 和 IPv6,取代只支持 IPv4 的...
Nginx给网站添加用户认证配置
Nginx给网站添加用户认证配置( Basic HTTP authentication) 说明:ngx_http_auth_basic_module模块实现让访问者只有输入正确的用户密码才允许访问web内容。web上的一些内容不想被其他人知道,但是又想让部分人看到。nginx的http auth模块以及Apache http auth都是很好的解决方案。 默认情况下nginx已经安装了ngx_http_auth_basic_module模块。 Nginx认证配置实例生成认证文件123# printf "test:$(openssl passwd -crypt 123456)\n" >> /home/htpasswd# cat /home/htpasswd test:xyJkVhXGAZ8tM 注意:这里账号:test,密码:123456,记住认证文件路径 配置网站conf文件123456789101112131415server{ listen 80; server_name ...
手动/自动mount磁盘
手动挂载 由于没有配置自动挂载,导致服务器重启后丢失挂载,这时候可以参考如下命令进行手动挂载 先使用fdisk -l查看目前的分区后使用如下命令挂载到您需要挂载的挂载点上 可以看到有两块磁盘 123456789101112131415161718192021222324252627282930313233[root@VM_113_96_centos xx]# fdisk -lDisk /dev/vda: 53.7 GB, 53687091200 bytes, 104857600 sectorsUnits = sectors of 1 * 512 = 512 bytesSector size (logical/physical): 512 bytes / 512 bytesI/O size (minimum/optimal): 512 bytes / 512 bytesDisk label type: dosDisk identifier: 0x000c7a75 Device Boot Start End Blocks ...
nslookup和dig指令
dig和nslookup的安装Ubuntu,Debian: 1# apt install -y dnsutils Fedora / Centos: 1# yum install -y bind-utils nslookup命令详解nslookup命令用于查询DNS的记录,查看域名解析是否正常,在网络故障的时候用来诊断网络问题。 nslookup的用法相对来说还是蛮简单的,主要是下面的几个用法 直接查询查询一个域名的A记录。 1nslookup domain [dns-server] 如果没指定dns-server,用系统默认的dns服务器。 查询其他记录直接查询返回的是A记录,我们可以指定参数,查询其他记录,比如AAAA、MX等。 1234nslookup -qt=type domain [dns-server]nslookup -q=type domain [dns-server]nslookup -type=type domain [dns-server]nslookup -querytype=type domain...
因inodes占用资源过多导致no space left on device的问题
摘自:https://blog.csdn.net/weixin_34383474/article/details/121493708 问题现象使用gitlab runner的打包机器执行命令打包docker镜像时报 "no space left on device" 的错误,无法正确打包。 问题排查步骤 登录打包机查看机器剩余磁盘容量,得到结果物理机磁盘仍有剩余空间。 1df -h 通过复制文件证明磁盘空间确有剩余,但是在物理机上直接执行docker命令依然存在no space left on...
分享几个常用的运维Shell脚本
摘自:https://zhuanlan.zhihu.com/p/612782776 根据 PID 显示进程所有信息根据用户输入的 PID,过滤出该 PID 所有的信息 12345678910111213141516171819202122#! /bin/bashread -p "请输入要查询的PID: " Pn=`ps -aux| awk '$2~/^'${P}'$/{print $0}'|wc -l`if [ $n -eq 0 ];then echo "该PID不存在!!" exitfiecho -e "\e[32m--------------------------------\e[0m"echo "进程PID: ${P}"echo "进程命令:$(ps -aux| awk '$2~/^'$P'$/{for...
