首页
关于
Search
1
批量创建料品示例代码
9 阅读
2
应付余额报表
8 阅读
3
退货生成应收
6 阅读
4
在Linux下安装Nginx并配置反向代理
5 阅读
5
在 CentOS 7 下安装 Docker 的完整指南
4 阅读
U9
Linux
Java
Docker
登录
Search
标签搜索
sql
生单
nginx
Typecho
累计撰写
16
篇文章
累计收到
0
条评论
首页
栏目
U9
Linux
Java
Docker
页面
关于
搜索到
3
篇与
的结果
2025-03-20
🌟 Linux 内存交换空间(Swap)的完整教程
✅ 1. 什么是 Swap?Swap(交换空间) 是 Linux 系统中用于辅助物理内存(RAM)的一种虚拟内存。它在物理内存不足时,将部分数据临时存储在磁盘上的专用空间中,从而缓解内存压力,防止系统崩溃。物理内存(RAM): 系统主要运行数据的临时存储区域,速度快。交换空间(Swap): 当物理内存不足时,Linux 将部分数据换出到 Swap 中,释放 RAM 以供其他进程使用。✅ 作用防止内存溢出:当内存不够时,使用 Swap 避免程序崩溃。支持休眠:休眠时,RAM 数据写入到 Swap 中。系统性能优化:适当的 Swap 可提高系统稳定性。✅ 缺点速度慢:磁盘 I/O 速度远低于 RAM,频繁使用 Swap 会显著降低性能。磁盘磨损:在 SSD 上使用 Swap 可能会影响寿命。🔥 2. 查看当前 Swap 信息在 Linux 中,常用以下命令查看 Swap 使用情况:# 查看 Swap 使用情况 free -h # 查看 Swap 分区信息 swapon --show # 查看 Swap 空间大小和使用率 cat /proc/swaps # 使用 htop 查看内存和 Swap 信息 htop✅ 示例输出$ free -h total used free shared buff/cache available Mem: 7.8Gi 2.5Gi 4.3Gi 237Mi 1.0Gi 4.8Gi Swap: 2.0Gi 512Mi 1.5Gitotal:总内存大小。used:已使用的 Swap 空间。free:可用 Swap 空间。⚙️ 3. 创建 Swap 空间如果你的系统没有 Swap 分区或想要扩展 Swap 空间,可以手动创建:🛠️ 3.1 创建 Swap 文件1️⃣ 创建一个新的 Swap 文件sudo fallocate -l 2G /swapfile # 创建 2G Swap 文件 # 如果 fallocate 不支持,可以使用 dd 命令 # sudo dd if=/dev/zero of=/swapfile bs=1M count=20482️⃣ 设置正确权限sudo mkswap /swapfile3️⃣ 格式化为 Swap 格式sudo mkswap /swapfile4️⃣ 启用 Swap 文件sudo swapon /swapfile5️⃣ 验证 Swap 状态swapon --show✅ 示例输出NAME TYPE SIZE USED PRIO /swapfile file 2G 0B -26️⃣ 永久生效 将 Swap 文件添加到 /etc/fstab:echo '/swapfile swap swap defaults 0 0' | sudo tee -a /etc/fstab🛠️ 4. 调整 Swap 大小如果你想扩展或缩小现有的 Swap 空间:1️⃣ 禁用当前 Swapsudo swapoff /swapfile2️⃣ 调整 Swap 大小sudo fallocate -l 4G /swapfile # 扩展为 4G sudo chmod 600 /swapfile sudo mkswap /swapfile3️⃣ 重新启用sudo swapon /swapfile⚙️ 5. 删除 Swap 空间如果不再需要 Swap 文件,可以删除:1️⃣ 禁用 Swapsudo swapoff /swapfile2️⃣ 移除配置 编辑 /etc/fstab 文件,删除相关行:/swapfile swap swap defaults 0 03️⃣ 删除 Swap 文件sudo rm /swapfile🔧 6. 调优 Swap 设置Linux 使用 swappiness 参数控制内核在内存不足时使用 Swap 的倾向:0:尽量避免使用 Swap,仅在 RAM 不足时使用。1-100:数值越大,越倾向于使用 Swap。一般服务器推荐值:10-30桌面系统推荐值:60✅ 查看当前 swappinesscat /proc/sys/vm/swappiness✅ 临时修改 swappinesssudo sysctl vm.swappiness=10✅ 永久修改 swappiness 编辑 /etc/sysctl.conf:sudo nano /etc/sysctl.conf添加:vm.swappiness=10保存后生效:sudo sysctl -p📊 7. Swap 与性能优化建议服务器环境Swap 文件大小:物理内存的 1~2 倍。swappiness:10~30,减少对磁盘的依赖。桌面环境Swap 文件大小:等于物理内存大小。swappiness:60~80,保证内存溢出时不崩溃。特殊情况如果使用 SSD,尽量减少 Swap,以减少磁盘磨损。使用 ZRAM 压缩 Swap,提高性能:sudo apt install zram-tools sudo systemctl enable --now zramswap✅ 8. 总结Swap 是 Linux 系统在内存不足时使用的虚拟内存。你可以使用 Swap 分区或 Swap 文件。调整 swappiness 参数可优化系统性能。小心使用 Swap 于 SSD,避免频繁读写带来磁盘损耗。在性能敏感的服务器环境中,尽量减少 Swap 的使用。
2025年03月20日
2 阅读
0 评论
0 点赞
2025-02-18
在Linux下安装Nginx并配置反向代理
简介Nginx是一个高效的Web服务器和反向代理服务器,广泛用于负载均衡、缓存和作为反向代理的解决方案。本教程将详细介绍如何在Linux环境下安装Nginx,并配置反向代理。步骤一:更新系统在安装任何软件之前,首先确保系统软件包是最新的。可以通过以下命令来更新系统:sudo yum update -y # 对于CentOS/RHEL系统 sudo apt update && sudo apt upgrade -y # 对于Ubuntu/Debian系统步骤二:安装Nginx在Linux上安装Nginx相当简单,下面分别介绍在不同发行版上的安装方法。对于CentOS/RHEL系统:安装EPEL仓库:sudo yum install epel-release -y安装Nginx:sudo yum install nginx -y对于Ubuntu/Debian系统:安装Nginx:sudo apt install nginx -y步骤三:启动并配置Nginx安装完成后,可以启动Nginx服务并设置其开机自启动。启动Nginx服务:sudo systemctl start nginx设置Nginx开机自启动:sudo systemctl enable nginx检查Nginx状态:sudo systemctl status nginx如果Nginx正常启动,你应该可以通过浏览器访问服务器的IP地址,看到Nginx的默认欢迎页面。步骤四:配置反向代理反向代理是Nginx的一个重要功能,它能够将客户端请求转发到其他服务器上。这对于负载均衡或分离应用程序的前后端很有帮助。编辑Nginx配置文件:Nginx的配置文件通常位于/etc/nginx/nginx.conf或/etc/nginx/conf.d/default.conf,我们将编辑这个文件来添加反向代理配置。使用你喜欢的文本编辑器打开配置文件:sudo vi /etc/nginx/nginx.conf # 或者 sudo vi /etc/nginx/conf.d/default.conf配置反向代理:在server块中,加入如下配置,将流量代理到其他服务器。例如,将流量代理到http://127.0.0.1:3000:server { listen 80; server_name yourdomain.com; # 修改为你自己的域名或IP地址 location / { proxy_pass http://127.0.0.1:3000; # 将请求转发到本地的3000端口 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-Forwarded-Proto $scheme; } }这里的proxy_pass指令定义了请求被转发的目标地址。可以根据你的实际需求,修改为指向不同的端口或服务。保存并退出编辑器。测试Nginx配置:在重新加载配置之前,先检查配置文件是否有语法错误:sudo nginx -t如果没有错误,你将看到类似“syntax is okay”和“test is successful”的提示。重新加载Nginx配置:sudo systemctl reload nginx步骤五:防火墙设置如果你启用了防火墙,确保允许80端口的流量通过,以便外部可以访问Nginx。对CentOS/RHEL系统启用HTTP服务:sudo firewall-cmd --permanent --add-service=http sudo firewall-cmd --reload对Ubuntu/Debian系统启用HTTP服务:sudo ufw allow 'Nginx HTTP' sudo ufw reload步骤六:验证反向代理配置现在,你可以通过访问Nginx的域名或IP地址来验证反向代理是否正常工作。如果一切配置正确,Nginx将转发请求到配置的后端服务器(如http://127.0.0.1:3000),并返回该服务器的响应。总结通过本教程,你已经学会了如何在Linux上安装Nginx并配置反向代理。Nginx作为反向代理服务器,不仅可以提高Web应用的性能,还能实现负载均衡和高可用性。希望这篇文章能够帮助你顺利完成配置,提升你的系统架构和服务质量。
2025年02月18日
5 阅读
0 评论
0 点赞
2025-02-07
在 CentOS 7 下安装 Docker 的完整指南
引言Docker 作为一种轻量级的容器化技术,已广泛应用于软件开发、部署和运维领域。本文旨在为 CentOS 7 用户提供Docker 安装指南。1. 环境准备在安装 Docker 之前,请确保您的系统满足以下条件:操作系统:CentOS 7(建议使用最新的 7.x 版本)内核版本:3.10 及以上(可使用 uname -r 检查)网络连接:确保服务器能够访问互联网以获取必要的软件包2.卸载旧版本(可选)如果系统中已存在旧版本的 Docker(如 docker, docker-client, docker-engine),建议先卸载以避免冲突:sudo yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine⚠️ 注意事项关于yum源失效问题:bash <(curl -sSL https://linuxmirrors.cn/main.sh)3.安装必要的依赖包sudo yum install -y yum-utils device-mapper-persistent-data lvm2这些依赖包可确保 Docker 的存储驱动和容器管理功能正常运行。4. 添加 Docker 仓库使用官方提供的 Docker 仓库可以确保获取到最新稳定版本:sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo如果不成功请更换其他Docker仓库并非一定要官方仓库5. 安装 Docker Engine安装最新版本的 Docker Engine 及其组件:sudo yum install -y docker-ce docker-ce-cli containerd.io如需安装特定版本,可以使用以下命令查看可用版本:yum list docker-ce --showduplicates | sort -r然后指定版本安装:sudo yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io6. 启动并设置开机自启sudo systemctl start docker sudo systemctl enable docker验证 Docker 是否安装成功:docker --version sudo docker run hello-world成功输出 Hello from Docker! 表示安装完成。7. 配置加速器(可选)为了提升国内环境下的镜像下载速度,可以配置镜像加速器:sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json <<-'EOF' { "registry-mirrors": ["https://<your-mirror-address>"] } EOF sudo systemctl daemon-reload sudo systemctl restart docker网址自行百度docker镜像站替换https://<your-mirror-address>即可8. 常见问题及解决方案问题 1:Cannot connect to the Docker daemon解决方案:确保 Docker 服务已启动。sudo systemctl start docker问题 2:防火墙导致容器网络不通解决方案:调整防火墙规则,或使用 firewalld 进行端口放通。sudo firewall-cmd --permanent --zone=public --add-masquerade sudo firewall-cmd --reload结语通过本文的详细步骤,您应该能够在 CentOS 7 上成功安装并配置 Docker。随着容器化技术的广泛应用,掌握 Docker 的基础操作将极大提升开发与运维效率。如果遇到更多问题,建议查阅 Docker 官方文档 以获取最新支持。
2025年02月07日
4 阅读
0 评论
0 点赞