【Linux】Linux基本使用和程序部署

【Linux我做主】Linux基本使用和程序部署:从零到上线,一文吃透服务器日常

大家好,我是重阳。上期我们扒了 fopen 到 open 的内核本质,今天直接落地实战:Linux 服务器怎么用?程序怎么部署?
不管你是运维小白、后端开发者,还是想把个人项目上线到 VPS/云服务器,这篇 2026 最新版 速成指南(基于 Ubuntu 22.04/24.04 或 CentOS Stream 9/RHEL 9)够你用一年!

1. Linux 目录结构速览(记住这张图就够了)

/
├── bin, sbin     → 基本命令(ls, cp, mv...)
├── etc           → 配置文件天堂(nginx.conf, systemd 服务)
├── home          → 用户主目录(你的代码放这里!)
├── var           → 日志、数据(/var/log, /var/www)
├── tmp           → 临时文件
├── usr           → 用户程序、库
├── opt           → 第三方软件
├── proc, sys     → 内核虚拟文件系统(实时看内存、进程)
└── dev           → 设备文件

必背命令pwd(当前路径)、cd ~(回家)、cd ..(上一级)、ls -la(看隐藏文件和权限)

2. Linux 常用命令速查表(复制粘贴就行)

系统信息 & 资源监控

命令作用示例
uname -a系统内核信息查看版本
uptime系统运行时间 + 负载看服务器忙不忙
free -h内存使用(人类可读)内存够不够
df -h磁盘空间硬盘还剩多少
top / htop实时进程监控(推荐装 htop)Ctrl+C 退出
ps aux | grep nginx找进程查服务是否跑着

文件 & 目录操作(每天必用)

命令作用示例
ls -la列出所有文件+权限
pwd显示当前绝对路径
mkdir -p a/b/c递归创建目录
touch file.txt创建空文件
cp -r dir1 dir2复制目录
mv old new移动/重命名
rm -rf dir强制删除(小心!)
cat file / tail -f log查看/实时跟踪日志看错误

权限 & 用户管理

命令作用示例
chmod 755 file权限(rwxr-xr-x)给执行权限
chown user:group file改拥有者
sudo su -切换 root
adduser username新增用户
passwd username改密码

网络 & 下载

命令作用示例
ping 8.8.8.8测试网络
curl -I baidu.com检查网站是否通
wget https://xx.tar.gz下载文件
scp file user@ip:/path远程复制文件本地 → 服务器
ssh user@ip远程登录

搜索 & 进程

命令作用示例
find / -name "*.log" 2>/dev/null找文件
grep -r "error" /var/log递归搜索内容
kill -9 PID强制杀进程
pkill nginx按名字杀

3. 程序部署全流程(以常见语言为例,2026 最新推荐)

通用部署步骤(所有语言都一样)

  1. 登录服务器ssh root@你的IP
  2. 更新系统
   # Ubuntu/Debian
   sudo apt update && sudo apt upgrade -y
   # CentOS/RHEL
   sudo dnf update -y
  1. 安装常用工具sudo apt install curl wget git unzip htop -y
  2. 上传代码scp -r ./myapp user@ip:/opt/myapp 或用 git clone
  3. 安装运行环境(见下面)
  4. 用 systemd 做后台服务(永不掉线!)
  5. 配置防火墙sudo ufw allow 22,80,443(Ubuntu)或 firewall-cmd --add-service=http

具体语言部署(一行命令安装最新版)

Node.js(推荐 nvm 或 nodesource)

curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt install -y nodejs
cd /opt/myapp && npm install --production && pm2 start app.js  # 或用 systemd

Python(推荐 pyenv + virtualenv)

sudo apt install python3-pip python3-venv -y
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
gunicorn -w 4 app:app   # 或 uvicorn

Go(静态二进制,超简单)

# 编译好二进制上传
cd /opt/myapp
chmod +x myapp
# 直接运行或 systemd

Java(Spring Boot jar)

sudo apt install openjdk-21-jdk -y
java -jar app.jar --server.port=8080

Nginx 反代(推荐)

sudo apt install nginx -y
sudo systemctl start nginx
# /etc/nginx/sites-available/default 写 upstream + proxy_pass

4. systemd 部署神器(程序永不挂!)

创建服务文件(以 myapp.service 为例):

sudo nano /etc/systemd/system/myapp.service

内容(通用模板):

[Unit]
Description=My Awesome App
After=network.target

[Service]
Type=simple
User=www-data
WorkingDirectory=/opt/myapp
ExecStart=/opt/myapp/myapp   # 或 /usr/bin/node app.js
Restart=always
RestartSec=3
LimitNOFILE=65535

[Install]
WantedBy=multi-user.target

启动命令:

sudo systemctl daemon-reload
sudo systemctl start myapp
sudo systemctl enable myapp   # 开机自启
sudo systemctl status myapp   # 查看日志
journalctl -u myapp -f        # 实时日志

5. 部署后必做优化 & 监控

  • 安全:改 SSH 端口、禁用 root 登录、装 fail2ban
  • 监控htop + netdata(一键安装:bash <(curl -Ss https://get.netdata.cloud/kickstart.sh)
  • 日志journalctltail -f /var/log/nginx/error.log
  • 备份rsync + crontab 定时
  • 一键脚本:写个 deploy.shgit pull && systemctl restart myapp

一句话总结
Linux = 命令 + 文件 + systemd。掌握上面 30 个命令 + systemd 模板,你就从“只会点鼠标”变成“服务器我做主”!

想看 Docker 部署版Kubernetes 一键上线Nginx + HTTPS + Let’s Encrypt 还是 AI 模型(Ollama/vLLM)本地部署
评论区打数字 1/2/3/4,我下一期立刻出!🚀

推荐资源

  • 菜鸟教程 Linux 命令大全
  • 鸟哥私房菜(最经典)
  • man command(永远的神)

Linux 我做主,咱们服务器见!💻

文章已创建 5074

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

相关文章

开始在上面输入您的搜索词,然后按回车进行搜索。按ESC取消。

返回顶部