在当今数字化时代,Linux系统因其稳定性和安全性,已经成为服务器运维的基石。AlmaLinux作为CentOS的继任者,同样具有强大的功能和良好的社区支持。通过以下5个实战项目案例,我们可以轻松提升Linux运维技能。
项目一:AlmaLinux环境搭建
目标
搭建一个基本的AlmaLinux服务器环境,包括网络配置、用户管理、防火墙设置等。
步骤
- 系统安装:下载AlmaLinux ISO镜像,使用虚拟机或物理服务器进行安装。
- 网络配置:编辑
/etc/sysconfig/network-scripts/ifcfg-ens33文件,设置静态IP地址。 - 用户管理:创建新用户,设置密码,并赋予sudo权限。
- 防火墙设置:使用
firewall-cmd命令开启必要的端口。
代码示例
# 安装AlmaLinux
sudo yum install almaLinux-release
# 设置静态IP地址
sudo nano /etc/sysconfig/network-scripts/ifcfg-ens33
# 修改以下内容
BOOTPROTO=static
IPADDR=192.168.1.100
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
# 启用网络服务
sudo systemctl enable NetworkManager
# 创建用户
sudo useradd -m -s /bin/bash user1
# 设置用户密码
sudo passwd user1
# 设置sudo权限
echo "user1 ALL=(ALL) ALL" | sudo tee /etc/sudoers.d/user1
项目二:Nginx Web服务器配置
目标
配置一个Nginx Web服务器,用于托管静态网页。
步骤
- 安装Nginx:使用
yum命令安装Nginx。 - 配置Nginx:编辑
/etc/nginx/nginx.conf文件,设置监听端口和服务器根目录。 - 创建网站目录:在
/var/www/html目录下创建网站目录。 - 配置虚拟主机:编辑
/etc/nginx/conf.d/default.conf文件,添加虚拟主机配置。
代码示例
# 安装Nginx
sudo yum install nginx
# 配置Nginx
sudo nano /etc/nginx/nginx.conf
# 修改以下内容
server {
listen 80;
server_name localhost;
location / {
root /var/www/html;
index index.html index.htm;
}
}
# 启动Nginx服务
sudo systemctl start nginx
sudo systemctl enable nginx
项目三:MySQL数据库安装与配置
目标
在AlmaLinux服务器上安装MySQL数据库,并创建一个数据库和用户。
步骤
- 安装MySQL:使用
yum命令安装MySQL。 - 配置MySQL:编辑
/etc/my.cnf文件,设置root密码。 - 创建数据库和用户:使用
mysql命令创建数据库和用户。
代码示例
# 安装MySQL
sudo yum install mysql-community-server
# 设置root密码
sudo mysql_secure_installation
# 创建数据库和用户
sudo mysql -u root -p
mysql> CREATE DATABASE mydatabase;
mysql> CREATE USER 'user1'@'localhost' IDENTIFIED BY 'password';
mysql> GRANT ALL PRIVILEGES ON mydatabase.* TO 'user1'@'localhost';
mysql> FLUSH PRIVILEGES;
mysql> EXIT;
项目四:Docker容器化部署
目标
使用Docker在AlmaLinux服务器上部署一个应用程序。
步骤
- 安装Docker:使用
yum命令安装Docker。 - 拉取镜像:使用
docker pull命令拉取应用程序镜像。 - 运行容器:使用
docker run命令启动容器。
代码示例
# 安装Docker
sudo yum install docker
# 启动Docker服务
sudo systemctl start docker
sudo systemctl enable docker
# 拉取镜像
sudo docker pull nginx
# 运行容器
sudo docker run -d -p 80:80 nginx
项目五:自动化运维脚本编写
目标
编写一个自动化运维脚本,用于检查服务器资源使用情况。
步骤
- 编写脚本:使用Bash编写一个检查CPU、内存和磁盘使用情况的脚本。
- 设置定时任务:使用
cron命令设置定时任务,定期执行脚本。
代码示例
# 编写脚本
sudo nano /usr/local/bin/check_system.sh
# 添加以下内容
#!/bin/bash
echo "CPU: $(top -bn1 | grep "Cpu(s)" | sed "s/.*, *\([0-9.]*\)%* id.*/\1/" | awk '{print 100 - $1}')%"
echo "Memory: $(free -m | awk 'NR==2{printf "%.2f%%", $3*100/$2 }')"
echo "Disk: $(df -h | awk 'NR==2{printf "%s", $5}')"
# 设置定时任务
sudo crontab -e
# 添加以下内容
*/5 * * * * /usr/local/bin/check_system.sh
通过以上5个实战项目案例,我们可以系统地提升Linux运维技能。在实际工作中,不断积累经验,才能成为一名优秀的Linux运维工程师。
