【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实时进程监控推荐装 htopCtrlC 退出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 userip:/path远程复制文件本地 → 服务器ssh userip远程登录-搜索 进程命令作用示例find / -name *.log 2/dev/null找文件-grep -r error /var/log递归搜索内容-kill -9 PID强制杀进程-pkill nginx按名字杀-3. 程序部署全流程以常见语言为例2026 最新推荐通用部署步骤所有语言都一样登录服务器ssh root你的IP更新系统# Ubuntu/Debiansudoaptupdatesudoaptupgrade-y# CentOS/RHELsudodnf update-y安装常用工具sudo apt install curl wget git unzip htop -y上传代码scp -r ./myapp userip:/opt/myapp或用 git clone安装运行环境见下面用 systemd 做后台服务永不掉线配置防火墙sudo ufw allow 22,80,443Ubuntu或firewall-cmd --add-servicehttp具体语言部署一行命令安装最新版Node.js推荐 nvm 或 nodesourcecurl-fsSLhttps://deb.nodesource.com/setup_20.x|sudo-Ebash-sudoaptinstall-ynodejscd/opt/myappnpminstall--productionpm2 start app.js# 或用 systemdPython推荐 pyenv virtualenvsudoaptinstallpython3-pip python3-venv-ypython3-mvenv venvsourcevenv/bin/activate pipinstall-rrequirements.txt gunicorn-w4app:app# 或 uvicornGo静态二进制超简单# 编译好二进制上传cd/opt/myappchmodx myapp# 直接运行或 systemdJavaSpring Boot jarsudoaptinstallopenjdk-21-jdk-yjava-jarapp.jar--server.port8080Nginx 反代推荐sudoaptinstallnginx-ysudosystemctl start nginx# /etc/nginx/sites-available/default 写 upstream proxy_pass4. systemd 部署神器程序永不挂创建服务文件以 myapp.service 为例sudonano/etc/systemd/system/myapp.service内容通用模板[Unit] DescriptionMy Awesome App Afternetwork.target [Service] Typesimple Userwww-data WorkingDirectory/opt/myapp ExecStart/opt/myapp/myapp # 或 /usr/bin/node app.js Restartalways RestartSec3 LimitNOFILE65535 [Install] WantedBymulti-user.target启动命令sudosystemctl daemon-reloadsudosystemctl start myappsudosystemctlenablemyapp# 开机自启sudosystemctl status myapp# 查看日志journalctl-umyapp-f# 实时日志5. 部署后必做优化 监控安全改 SSH 端口、禁用 root 登录、装 fail2ban监控htopnetdata一键安装bash (curl -Ss https://get.netdata.cloud/kickstart.sh)日志journalctl或tail -f /var/log/nginx/error.log备份rsync crontab 定时一键脚本写个deploy.sh用git 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 我做主咱们服务器见