故梦博客 - Linux
type: channel
link: https://blog.gmya.net/tag/Linux/
items: Debian apt 更换阿里源
items: Ubuntu apt 更换阿里源
items: Nginx反向代理配置去除前缀
items: Linux下利用AdGuard Home搭建无广告跟踪的DNS解析服务器
items: 记录一次Linux利用grafana+prometheus搭建可视化展示资源使用率
items: Linux下利用wget仿站
items: Nginx之强制跳转https并加www
items: CentOS7修改系统语言为中文
items: CentOS7服务器下YUM源配置
items: Linux利用OneinStack搭建环境

Debian apt 更换阿里源
type: item
date: 2022-08-24T16:46:00+08:00
description: 查看debian版本cat /etc/issue备份官方源sudo mv /etc/apt/sources.list /etc/apt/sources.list.bak修改为阿里源vim /etc/apt/sources.list设置为以下内容deb http://mirrors.aliyun.com/debian/ bullseye main non-free contrib deb-src http://mirrors.aliyun.com/debian/ bullseye main non-free contrib deb http://mirrors.aliyun.com/debian-security/ bullseye-security main deb-src http://mirrors.aliyun.com/debian-security/ bullseye-security main deb http://mirrors.aliyun.com/debian/ bullseye-updates main non-free contrib deb-src http://mirrors.aliyun.com/debian/ bullseye-updates main non-free contrib deb http://mirrors.aliyun.com/debian/ bullseye-backports main non-free contrib deb-src http://mirrors.aliyun.com/debian/ bullseye-backports main non-free contrib执行更新apt-get update

Ubuntu apt 更换阿里源
type: item
date: 2022-08-24T15:01:00+08:00
description: 查看ubuntu的Codenamelsb_release -a备份官方源sudo mv /etc/apt/sources.list /etc/apt/sources.list.bak修改为阿里源vim /etc/apt/sources.list设置为以下内容deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse执行更新apt-get update

Nginx反向代理配置去除前缀
type: item
date: 2020-08-31T20:17:00+08:00
description: 使用nginx做反向代理的时候，可以简单的直接把请求原封不动的转发给下一个服务。设置proxy_pass请求只会替换域名，如果要根据不同的url后缀来访问不同的服务，则需要通过如下方法：方法一：加"/"server { listen 8000; server_name demo.gmit.vip; access_log "pipe:rollback /home/log/nginx/access.log interval=1d baknum=7 maxsize=1G" main; location ^~/user/ { proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-NginX-Proxy true; proxy_pass http://user/; } location ^~/order/ { proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-NginX-Proxy true; proxy_pass http://order/; } } ^~/user/表示匹配前缀是user的请求，proxy_pass的结尾有/， 则会把/user/*后面的路径直接拼接到后面，即移除user方法二：rewriteupstream user { server localhost:8089 weight=5; } upstream order { server localhost:8090 weight=5; } server { listen 80; server_name blog.gmya.net; access_log "pipe:rollback /home/log/nginx/access.log interval=1d baknum=7 maxsize=1G" main; location ^~/user/ { proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-NginX-Proxy true; rewrite ^/user/(.*)$ /$1 break; proxy_pass http://user; } location ^~/order/ { proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-NginX-Proxy true; rewrite ^/order/(.*)$ /$1 break; proxy_pass http://order; } } proxy_pass结尾没有/， rewrite重写了url

Linux下利用AdGuard Home搭建无广告跟踪的DNS解析服务器
type: item
date: 2020-08-31T20:13:00+08:00
description: 安装AdGuard Homewget https://static.adguard.com/adguardhome/release/AdGuardHome_linux_amd64.tar.gz tar xvf AdGuardHome_linux_amd64.tar.gz cd AdGuardHome sudo ./AdGuardHome -s install ./AdGuardHome -s status 安装完成浏览器打开IP端口3000 默认端口是3000然后配置管理可以修改后台端口ip:3000 DNS服务器默认的UDP53端口不建议更改更多命令AdGuardHome -s uninstall #卸载AdGuard Home服务 AdGuardHome -s start #启动服务 AdGuardHome -s stop #停止服务 AdGuardHome -s restart #重新启动服务 AdGuardHome -s status #显示当前的服务状态

记录一次Linux利用grafana+prometheus搭建可视化展示资源使用率
type: item
date: 2020-08-31T20:11:00+08:00
description: 准备工作首先准备好软件环境node_exporterprometheusgrafana这些是必备的安装工作首先我们安装node_exporternode_exporter的作用是用于机器系统数据收集。官网下载包官网包下载利用Linux命令下载安装wget https://github.com/prometheus/node_exporter/releases/download/v1.0.0-rc.0/node_exporter-1.0.0-rc.0.linux-amd64.tar.gz #下载node_exporter包 tar xvf node_exporter-1.0.0-rc.0.linux-amd64.tar.gz #解压下载来的包 mv node_exporter-1.0.0-rc.0.linux-amd64 node_exporter #把解压的目录改成node_exporter cd node_exporter #进入node_exporter目录 ./node_exporter #运行node_exporter 看到这图片代码安装运行成功了访问 http://localhost:9100/metrics接下来安装prometheusPrometheus的一类数据采集组件的总称。它负责从目标处搜集数据，并将其转化为Prometheus支持的格式。官网下载包官网包下载利用Linux命令下载安装wget https://github.com/prometheus/prometheus/releases/download/v2.16.0/prometheus-2.16.0.linux-amd64.tar.gz tar xvf prometheus-2.16.0.linux-amd64.tar.gz #解压下载来的包 mv prometheus-2.16.0.linux-amd64.tar.gz prometheus#把解压的目录改成prometheus cd prometheus #进入prometheus目录 这里我们要注意修改prometheus的配置文件利用vim在prometheus.yml文件scrape_configs下添加 - job_name: 'node' static_configs: - targets: ['localhost:9100'] 这里监听node_exporter的数据最后我们启动prometheus服务./prometheus #启动prometheus服务 访问 http://ip:9090/graph搜索up出现以下图片代表运行成功数据监听成功如果up{instance="localhost:9090",job="prometheus"} 0 up{instance="localhost:9100",job="node"} 0代表数据没监听到最后我们安装grafanawget https://dl.grafana.com/oss/release/grafana-6.6.2-1.x86_64.rpm sudo yum localinstall grafana-6.6.2-1.x86_64.rpm 其他服务器看官网地址 https://grafana.com/grafana/download?platform=linuxsudo systemctl start grafana-server #启动grafana访问 http://localhost:3000/login默认账号密码是 admin添加prometheus数据源添加Dashboards这里我们点Import 导入Dashboards输入官方下载的Dashboards json文件或者Dashboards的ID获取查看一下效果完工

Linux下利用wget仿站
type: item
date: 2020-08-31T20:06:00+08:00
description: 运行命令 wget -r -p -np -k blog.gmya.net 参数说明-r --recursive（递归） specify recursive download.（指定递归下载） -k --convert-links（转换链接） make links in downloaded HTML point to local files.（将下载的HTML页面中的链接转换为相对链接即本地链接） -p --page-requisites（页面必需元素） get all images, etc. needed to display HTML page.（下载所有的图片等页面显示所需的内容） -np --no-parent（不追溯至父级） don't ascend to the parent directory. 这里写代码片额外参数： -nc 断点续传 -o 生成日志文件 wget命令用来从指定的URL下载文件。wget非常稳定，它在带宽很窄的情况下和不稳定网络中有很强的适应性，如果是由于网络的原因下载失败，wget会不断的尝试，直到整个文件下载完毕。如果是服务器打断下载过程，它会再次联到服务器上从停止的地方继续下载。这对从那些限定了链接时间的服务器上下载大文件非常有用。

Nginx之强制跳转https并加www
type: item
date: 2020-08-31T19:48:00+08:00
description: 跳转HTTPS很多网站虽然支持 https, 但是直接在浏览器地址栏输入网址后, 默认 http 协议去访问的, http 强制跳转 https 的需求而生利用rewrite方法实现强制httpsif ($server_port !~ 443){ rewrite ^(/.*)$ https://$host$1 permanent; } 修改方法进入虚拟主机配置文件目录查看要修改的虚拟主机利用vim编辑器修改配置文件加以上代码修改后要重启Nginx Server 后才生效哦跳转WWW一些网站主域名是加了www的，但是访问想要访问gqink.cn仍然可以访问，那么加上下面代码即可跳转blog.gmya.net利用301跳转到https并加wwwif ($host ~ '^gqink.cn'){ return 301 https://blog.gmya.net$request_uri; } 修改方法进入虚拟主机配置文件目录查看要修改的虚拟主机利用vim编辑器修改配置文件加以上代码修改后也需要要重启Nginx Server 后才生效哦文章使用lnmpa环境演示宝塔用户可不看了 直接一键操作

CentOS7修改系统语言为中文
type: item
date: 2020-08-31T19:47:00+08:00
description: 查看当前语言包locale 查看系统安装的语言包locale -a zh_CN.UTF-8是简体中文，如果没有zh_CN.UTF-8,就需要安装语言包，存在的话可以直接设置安装简体中文语言包yum install kde-l10n-Chinese 检查语言包是否存在locale -a|grep zh_CN 设置为中文1.临时修改，重启服务器恢复LANG="zh_CN.UTF-8" 2.永久修改vi /etc/locale.conf 加下面内容到第一行LANG=zh_CN.UTF8 或者执行秀下面命令localectl set-locale LANG=zh_CN.UTF8

CentOS7服务器下YUM源配置
type: item
date: 2020-08-31T19:41:00+08:00
description: 本地YUM配置1.使用CentOS光盘作为本地yum源。2.实体机可以一直放入光盘。3.VM虚拟机下可移动设备-CD/DVD-连接前提准备mkdir /mnt/cdrom #创建用于挂载光盘的目录 mount /dev/cdrom /mnt/cdrom #挂载 umount /mnt/cdrom #卸载 cp-avf /mnt/cdrom /yum #若不想每次都放光盘，可复制光盘文件到本地硬盘yum目录下 创建repo文件cat>>/etc/yum.repos.d/CentOS-Local.repo<<-EOF [Local] name=LocalYum baseurl=file:///yum gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 EOF cat>>EOF与cat>>-EOF的区别如果重定向的操作符是<<-，那么分界符(EOF)所在行的开头部分的制表符（Tab）都将被去除可以解决由于脚本中的自然缩进产生的制表符在使用cat<<EOF时，输入完成后，需要在一个新的一行输入EOF结束stdin的输入。EOF必须顶行写，前面不能用制表符或空格键更新yum缓存yum clean all #清除缓存 yum makecache #生成缓存 yum list #显示所有已经安装和可以安装的程序包 网络yum源配置备份原始yum源cd /etc/yum.repos.d #进入yum文件夹 mv CentOS-Base.rpeo CentOS-Base.repo.bak #使用修改名字防止重叠 配置CentOS的DNSvim /etc/resolv.conf nameserver 114.114.114.114 #114DNS nameserver 8.8.8.8 #谷歌DNS 下载yum文件wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo 更新yum缓存yum clean all 生成新缓存yum makecache

Linux利用OneinStack搭建环境
type: item
date: 2020-08-31T19:28:00+08:00
description: OneinStack脚本介绍持续不断更新，支持交互、无人值守安装源码编译安装，大多数源码是最新stable版，并从官方网址下载提供多个数据库版本(MySQL-8.0, MySQL-5.7, MySQL-5.6, MySQL-5.5,MariaDB-10.3,MariaDB-10.2,MariaDB-10.1,MariaDB-5.5,Percona-8.0,Percona-5.7, Percona-5.6, Percona-5.5，AliSQL-5.6，PostgreSQL, MongoDB)提供多个PHP版本(PHP-7.4,PHP-7.3,PHP-7.2,PHP-7.1,PHP-7.0,PHP-5.6,PHP-5.5,PHP-5.4,PHP-5.3)提供Nginx、Tengine、OpenResty和nginx waf功能提供多个Apache版本（Apache-2.4，Apache-2.2）提供多个Tomcat版本（Tomcat-9，Tomcat-8，Tomcat-7，Tomcat-6）提供多个JDK版本（JDK-11.0，JDK-1.8，JDK-1.7，JDK-1.6）根据自己需求安装PHP缓存加速器，提供ZendOPcache、xcache、apcu、eAccelerator。及php加解密工具ionCube、ZendGuardLoader根据自己需求安装Pureftpd、phpMyAdmin根据自己需求安装Memcached、Redisjemalloc优化MySQL、Nginx提供添加虚拟主机脚本提供Nginx/Tengine/OpenResty/Apache、PHP、Redis、Memcached、phpMyAdmin升级脚本提供本地备、远程（rsync）、阿里云OSS、腾讯云COS、又拍云、七牛云、亚马逊S3、Google Drive和Dropbox备份脚本提供CentOS 6、7下HHVM安装包含以下组合lnmp（Linux + Nginx+ MySQL/MongoDB+ PHP）lamp（Linux + Apache+ MySQL/MongoDB+ PHP）lnmpa（Linux + Nginx+ MySQL/MongoDB+ PHP+Apache）：Nginx处理静态，Apache处理动态PHPlnmt（Linux + Nginx+ MySQL/MongoDB+Tomcat）：Nginx处理静态，Tomcat（JDK）处理JAVAlnpp（Linux + Nginx+ PostgreSQL+ PHP）lapp（Linux + Apache+ PostgreSQL+ PHP）lnmh（Linux + Nginx+ MySQL+ HHVM）支持操作系统CentOS 6~7（包括redhat）Debian 7～9Ubuntu 12～18Fedora 27~28Deepin 15Amazon Linux 2Aliyun Linux交互安装yum -y install wget screen #for CentOS/Redhat # apt-get -y install wget screen #for Debian/Ubuntu wget http://mirrors.linuxeye.com/oneinstack-full.tar.gz #包含源码，国内外均可下载 tar xzf oneinstack-full.tar.gz cd oneinstack #如果需要修改目录(安装、数据存储、Nginx日志)，请修改options.conf文件 screen -S oneinstack #如果网路出现中断，可以执行命令`screen -R oneinstack`重新连接安装窗口 ./install.sh 自动安装自动安装地址官方开发地址