本文记录 AlmaLinux OS 9 系统下个人服务器环境搭建过程,以便后续查阅。
服务器主要用作部署 Web 服务,生态为 Node.js 相关。
默认是以root用户登录的,之后会切换到普通用户,不再使用root用户登录
uname -a
cat /etc/redhat-release
lsb_release -a
hostnamectl
用户名自行修改并设置密码
useradd -m -s /bin/bash yumine
passwd yumine
tee /etc/sudoers.d/yumine
个人选择关闭 SELinux
vi /etc/selinux/config
sestatus
首先开放一个新端口,以便切换 SSH 默认的22端口,例如2333
firewall-cmd --permanent --zone=public --add-port=2333/tcp
然后安装 nano 编辑器,使用教程:https://p3terx.com/archives/linux-nano-tutorial.html
dnf install nano
nano /etc/ssh/sshd_config
主要修改的地方:
找到 PermitRootLogin,修改为:
PermitRootLogin no
找到 Port,修改为:
Port 2333
service sshd restart
此时可以新建一个连接验证配置是否生效,注意原先的不要关,以便有问题的话再改回来
echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf
echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf
cat /etc/sysctl.conf
sysctl -p
sysctl net.ipv4.tcp_available_congestion_control
lsmod | grep bbr
接下来的命令都切换到刚才新建的普通用户下运行,用户名改成自己的
su yumine
gcc --version
g++ --version
sudo dnf install git
git --version
curl https://raw.githubusercontent.com/scopatz/nanorc/master/install.sh | sh
sudo dnf install epel-release
dnf search nginx
sudo dnf install nginx
sudo systemctl start nginx
sudo systemctl enable nginx
sudo systemctl status nginx
ps -ef | grep nginx
nginx -V
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload
btop是资源监控工具,ncdu是磁盘占用检查工具
sudo dnf install btop
btop
sudo dnf install ncdu
sudo ncdu .
curl -fsSL https://bun.sh/install | bash
source ~/.bashrc
bun --help
bun -v
# Deno 的版本可通过 `-s` 指定
curl -fsSL https://deno.land/install.sh | sh -s v1.46.3
source ~/.bashrc
deno -v
curl -fsSL https://fnm.vercel.app/install | bash
source ~/.bashrc
fnm use --install-if-missing 22
node -v
npm -v
npm i -g tldr
npm i -g yarn
npm i -g pnpm
npm i -g pm2
# 开机启动
pm2 startup
# 新增进程,最大内存占用自行修改或删掉
pm2 start "deno run -A main.js" --name "demo" --max-memory-restart 500M
# 同步配置
pm2 save
# 进程列表
pm2 ls
# 停止进程
pm2 stop demo
# 重启进程
pm2 restart demo
# 日志查看
pm2 log demo
sudo dnf install ffmpeg
ffmpeg -version
dnf 里的版本可能比较老,如果需要新版本可以手动安装
链接到 https://github.com/BtbN/FFmpeg-Builds/releases 获取新的
mkdir -p ~/env
cd ~/env
wget https://github.com/BtbN/FFmpeg-Builds/releases/download/latest/ffmpeg-n7.1-latest-linux64-gpl-7.1.tar.xz
tar -xvf ffmpeg-n7.1-latest-linux64-gpl-7.1.tar.xz
mv ffmpeg-n7.1-latest-linux64-gpl-7.1/bin/ffmpeg .
rm -rf ffmpeg-n7.1-latest-linux64-gpl-7.1
rm -rf ffmpeg-n7.1-latest-linux64-gpl-7.1.tar.xz
./ffmpeg -version
.bashrc然后编辑 ~/.bashrc ,将~/env路径添加到环境变量 Path 里,顺带配置一下 alias 和历史记录条数
# ~/.bashrc
# custom env path
export PATH="/home/yumine/env:$PATH"
# alias
alias ll='ls -alF'
alias la='ls -A'
alias l='ls -CF'
alias pn='pnpm'
alias g='git'
alias prs='pm2 restart'
alias pl='pm2 ls'
alias plg='pm2 log'
HISTSIZE=500 # 增大内存中保存的历史条数
HISTFILESIZE=10000 # 增大 .bash_history 文件保存的历史条数
运行source ~/.bashrc后生效,之后就根据个人需要进行应用部署啦
SSH 工具推荐使用 Xterminal,编辑文件、传输文件、资源监控什么的都挺好用
https://p3terx.com/archives/improve-linux-server-security.html
https://p3terx.com/archives/add-normal-users-with-adduser-and-useradd.html
https://p3terx.com/archives/linux-nano-tutorial.html
fin.
登录查看全部
参与评论
手机查看
返回顶部