首页
Search
1
安装docker时报错container-selinux >= 2:2.74
126 阅读
2
rsync命令(可替代rm删除巨量文件)
103 阅读
3
docker 镜像加速器配置,daemon.json文件详解
91 阅读
4
使用国内镜像地址拉取k8s安装需要的images
79 阅读
5
Redhat 8版本安装ansible步骤
75 阅读
运维
自动化运维
数据库
容器与k8s
环境
云计算
脚本
登录
Search
标签搜索
命令
nginx
Mingrui
累计撰写
64
篇文章
累计收到
0
条评论
首页
栏目
运维
自动化运维
数据库
容器与k8s
环境
云计算
脚本
页面
搜索到
64
篇与
的结果
2024-03-10
Redhat 8版本安装ansible步骤
配置本地和网络yum源rm -rf /etc/yum.repos.d/* yum install -y https://mirrors.aliyun.com/epel/epel-release-latest-8.noarch.rpm sed -i 's|^#baseurl=https://download.example/pub|baseurl=https://mirrors.aliyun.com|' /etc/yum.repos.d/epel* sed -i 's|^metalink|#metalink|' /etc/yum.repos.d/epel* vi /etc/yum.repos.d/local.repo local-BaseOS] name=local-BaseOS baseurl=file:///mnt/BaseOS/ enabled=1 gpgcheck=0 [local-APPStream] name=local-APPStream baseurl=file:///mnt/AppStream/ enabled=1 gpgcheck=0 直接使用yum安装ansible时会报错问题: conflicting requests - nothing provides /usr/bin/python3.11 needed by ansible-8.3.0-1.el8.noarch - nothing provides python(abi) = 3.11 needed by ansible-8.3.0-1.el8.noarch - nothing provides python3.11dist(ansible-core) >= 2.15.3 needed by ansible-8.3.0-1.el8.noarch (尝试添加 '--skip-broken' 来跳过无法安装的软件包 或 '--nobest' 来不只使用最佳选择的软件包)正确的安装方式yum install python3 python3-pip pip3 install --upgrade pip pip3 install setuptools-rust pip3 install ansible
2024年03月10日
75 阅读
0 评论
0 点赞
2024-03-09
sed命令高级技巧
写入多条命令sed -i '/UseDNS/{ s/yes/no/ s/#// }' /etc/ssh/sshd_config #效果:将#UseDNS yes 该为:UseDNS no #注:此条命令是关闭ssh的DNS反查,可以加快ssh连接速度。 #或者使用-e参数 sed -ie ' /Use/s/#// s/yes/no/ ' /etc/ssh/sshd_config ls -l | awk '{print"\"" $9" " $10" "$(11)"\""}'| sed -e 's/NSD ADMIN // ' -e 's/[A-Z]/\l&/g'; 关于最后一条命令的解释:-e选项: 在单次运行中执行多个编辑命令。它的作用是 将后续的字符串参数视为独立的 sed 脚本命令,并按顺序依次应用这些命令到输入文本中。s/[A-Z]/1&/g:将所有的大写字母转换为小写删除第一个匹配到的行sed -i '0,/pattern/{/pattern/d;}' filename说明:0,/pattern/:表示从文件开始到第一个匹配 pattern 的行。/pattern/ 是匹配条件。{/pattern/d;}:{} 是一个命令块,对匹配到的行执行其中的命令。/pattern/d 表示删除匹配到的行。示例假设有如下文件test.txt line 1 pattern line 2 pattern line 3 只想删除第一个匹配到 pattern 的行,可以使用: sed '0,/pattern/{/pattern/d;}' test.txt 执行后,文件内容变为: line 1 line 2 pattern line 3
2024年03月09日
49 阅读
0 评论
0 点赞
2024-03-08
rsync命令(可替代rm删除巨量文件)
当一个文件夹下面有海量的文件需要删除时,使用rm命令往往可能会遇到问题。一个问题是删除速度慢,往往需要几分钟到几十分钟不等的时间才能完成操作;另一个问题是可能会有参数溢出的问题导致rm命令报错。此时,可以使用rsync命令来执行删除操作,主要用到的参数是--delete。比如,可以看到下面的例子中a文件夹下面有246803个文件。要删除这些文件,可以先建一个空文件夹b,然后用rsync命令让b文件夹与a文件夹进行同步。ls | wc -l 246803 #rm命令报错 rm -f * -bash: /usr/bin/rm: Argument list too long #使用rsync命令 rsync -av --delete /tset/b/ /tset/a/ #使用一个空的文件夹与a同步,使用--delete参数删除只存在于目标目录、不存在于源目录的文件。 sent 43 bytes received 3,676,572 bytes 294,129.20 bytes/sec total size is 0 speedup is 0.00 {lamp/}rsync :同步:增量拷贝,只传输变化过的数据命令参数详解rsync [选项...] 源目录 目标目录-n:测试同步过程,不做实际修改--delete:删除目标文件夹内多余的文档-a:归档模式,相当于-rlptgoD-v:显示详细操作信息-z:传输过程中启用压缩/解压--exclude 排除文件--include 用来指定必须同步的文件模式#同步时排除某些文件或目录 rsync -av --exclude='*.txt' source/ destination rsync -av --exclude '*.txt' source/ destination #上面命令排除了所有 TXT 文件。 #注意,rsync 会同步以“点”开头的隐藏文件,如果要排除隐藏文件,可以这样写--exclude=".*"。 #如果要排除某个目录里面的所有文件,但不希望排除目录本身,可以写成下面这样: rsync -av --exclude 'dir1/*' source/ destination #多个排除模式,可以用多个--exclude参数 rsync -av --exclude 'file1.txt' --exclude 'dir1/*' source/ destination rsync -av --exclude={'file1.txt','dir1/*'} source/ destination #如果排除模式很多,可以将它们写入一个文件,每个模式一行,然后用--exclude-from参数指定这个文件 rsync -av --exclude-from='exclude-file.txt' source/ destination关于/的注意事项不加/,源目录source会被完整的复制到目标目录destination下面,形成/destination/source 这样的目录结构源目录source后面有/,则只是将source目录里面的内容完整的同步到destination目录下,而不同步source目录本身。rsync -a source destination #destination目录下会有一个source文件夹 rsync -a source/ destination #destination目录下面会有source文件夹里面的内容,而没有source本身。其他rsync命令#模拟同步操作,显示将要发生的更改,但不实际执行。 rsync --dry-run source_dir destination_dir #限制带宽使用率,以 KB/s 为单位,在同步过程中限制带宽使用率为 500 KB/s rsync --bwlimit=500 source_dir destination_dir #允许在中断后重新传输,同时显示实时进度 rsync --progress --partial source_dir destination_dir #仅同步小于 100KB 的文件 rsync -a --max-size='100K' source_dir destination_dir #仅同步大于 1MB 的文件 rsync -a --min-size='1M' source_dir destination_dir #只同步文件夹,忽略文件 rsync -a --include='*/' --exclude='*' source_dir destination_dir #将同步过程信息记录到指定的日志文件中 rsync -avzP --log-file='log.txt' source_dir destination_dir #排除所有的 .txt 文件,并在目标目录中删除已排除的文件 rsync -a --exclude='*.txt' --delete-excluded source_dir destination_dir
2024年03月08日
103 阅读
0 评论
0 点赞
2024-03-06
nginx反向代理(负载均衡)中部分参数详解
nginx的代理功能是通过http proxy 模块实现的。该模块每个选项的详细解释如下。proxy_set_header 设置HTTP请求header项传给后端服务器节点,例如:可以实现让后端服务器节点获取访问客户端用户的真实IP地址。client_body_buffer_size 用于指定客户端请求主体缓冲区大小。proxy_connect_timeout 表示反向代理与后端服务器连接的超时时间,即发起握手等候响应的超时时间。proxy_send_timeout 表示代理后端服务器的数据传回时间,即在规定时间之内后端服务器必须传完所有的数据,否则nginx将断开这个连接。proxy_read_timeout 设置nginx从代理的后端服务器获取信息的时间。表示连接成功之后,nginx等待后端服务器的响应时间,也就是nginx已经进入后端的排队之中等候处理的时间。proxy_buffer_size 设置缓冲区大小,默认该缓冲区大小等于指令proxy_buffers 设置的大小。proxy_buffers 设置缓冲区大小。nginx从代理的后端服务器获取的响应信息,会放置到缓冲区。proxy_busy_buffers_size 用于设置系统繁忙时可以使用的proxy_buffer的大小。官方推荐的大小为proxy_buffers*2。proxy_temp_file_write_size 指定proxy缓存临时文件的大小。{lamp/}nginx反向代理重要参数解释proxy_pass http://server_pools;通过proxy_pass功能把用户的请求转发给反向代理定义的upstream服务器池proxy_set_header Host $host;在代理向后端服务器发送的http请求头中加入host字段信息,用于当后端服务器配置有多个虚拟主机时,可以识别代理的是哪个虚拟主机。这是节点服务器多虚拟主机时的关键配置proxy_set_header X-Forwarded-For $remote_addr;在代理向后端服务器发送的http请求头中加入X-Forwarded-For字段信息,用于后端服务器程序、日志等接收记录真实用户的IP,而不是代理服务器的IP。这是反向代理时,节点服务器获取用户真实IP的必要功能配置。proxy_set_header Host $host; proxy_set_header X-Forwarded-For $remote_addr; proxy_connect_timeout 60; proxy_send_timeout 60; proxy_read_timeout 60; proxy_buffer_size 4k; proxy_buffers 4 32k; proxy_busy_buffers_size 64k; proxy_temp_file_write_size 64k;{card-default label="特别说明" width=""}反向代理服务器如果配置了proxy_set_header X-Forwarded-For $remote_addr参数,这时如果节点服务器需要访问日志记录用户的真实IP,还需要在节点服务器上对日志格式进行配置,这样才能把代理传过来的X-Forwarded-For头信息记录下来。具体配置如下。{/card-default}#nginx.conf文件 http { include mime.types; …… log_format main '$remote_addr - $remote_user [$time_local] "$request"' '$status $body_bytes_sent "$http_referer"' '"$http_user_agent" " $http_x_forwarder_for"' ; …… }
2024年03月06日
55 阅读
0 评论
0 点赞
2024-03-05
nginx中location匹配规则与regex常用的正则表达式
location指令的作用是根据用户请求的URI来执行不同的应用。也就是根据用户请求的URI进行匹配,匹配成功即进行相关的操作location [=|~|~*|^~] uri { … }~:用于区分大小写的匹配(大小写敏感)~*:用于不区分大小写的匹配。!:可以用逻辑操作符“!”对上面的匹配取反,即“!~”、“!~*”^~:进行常规的字符串匹配检查后不做正则表达式的检查。不同匹配标识符的优先级优先级标识符匹配说明1location = / {精确匹配 /2location ^~ /images/ {匹配常规字符串,不做正则匹配检查3location ~* .(gif jpg jpeg)$ {正则匹配4location /documents/ {匹配常规字符串,如果有正则,优先匹配正则5location / {所有location都不能匹配后的默认匹配regex常用的正则表达式\ 将后面接着的字符标记为一个特殊字符或一个原义字符或一个向后引用。如,“\n”匹配一个换行符,“\”和“$”匹配“$”^ 匹配输入字符串的起始位置,$ 匹配输入字符串的结束位置匹配前面的字符零次或多次匹配前面的字符一次或多次? 匹配前面的字符零次或一次(pattern) 保留或作为一个整体。匹配括号内的pattern,并可以在后面获取相应的匹配。常用$0...$9属性获取小括号中匹配的内容
2024年03月05日
54 阅读
0 评论
0 点赞
1
...
8
9
10
...
13