作为前端,怎么让其他同事给你挑大拇哥?运维命令简易上手
💎 服务器命令知识
切换权限
复制
sudo su 权限名称 // 不填时,默认为root
// 💡:有的用户名设置了密码,还需要输入密码回车验证1.2.
下载第三方包
不同的服务器操作系统,下载包的命令不一样
Debian/Ubuntu 发行版:sudo apt-get install unzipCentOS/RHEL 发行版:sudo yum install unzipFedora 发行版:sudo dnf install unzip改变目录
复制
cd . // 返回上级
cd ~ // 返回根目录
cd /home/work // 返回指定目录
// 💡技巧:输入字母按tab键会自动补全1.2.3.4.
改变文件
复制
// 移动文件
mv /a /b
// 将a移动到b目录下,a可以是文件,也可以是目录
// 💡技巧:如果指定的新地址不存在,则会创建新目录
// 重命名
mv a b // 将a命名为b
// 删除文件
rm -rf 文件名 // 删除指定文件1.2.3.4.5.6.7.8.9.10.
文件压缩
复制
zip -r command_file.zip file1 file2
// 将文件1,文件2压缩为command_file.zip压缩包
// 💡:zip需要下载第三方包才能用,而unzip一般为系统自带的命令
unzip a.zip // 解压a.zip文件
// 有时解压文件会提示文件已存在,输入y即可覆盖1.2.3.4.5.6.
预览文件
使用cat预览文件内容
复制
cat nginx.conf1.
搜索文件
复制
grep "list" spring.log // 从spring.log中查看包含`list`的句子
grep "list" spring.log > new.txt
// 从spring.log中查找包含`list`的句子,并输出到new.txt的文件中1.2.3.
编辑文件
使用vim命令编辑文件
复制
vim nginx.conf1.
此时仅仅是预览,接着输入i,表示输入,这时候文件末尾会出现
复制
-- INSERT --1.
表示可以在光标位置输入了
保存文件
完成输入之后,按下esc表示要退出编辑了,此时又回到预览状态 输入:wq表示保存修改。:q!表示不保存修改退出
复制
:wq // 保存修改
:q! // 不报错更改1.2.
ssh远程登录
需要打开cmd终端,输入
复制
ssh useName@adress
// 例如:ssh work@10.0.0.112.114,如果有密码输入回车就好1.2.
还有一种特殊的情况,如果端口不是默认的22,需要你手动指定
复制
ssh -p 23 work@10.0.0.112.1141.
有的服务器可能有密钥验证,需要你将本地的git密钥放在服务器指定位置才可以。
然后你就可以在本地cmd操作远程服务器了!
scp 远程传输文件
复制
// 下载服务器文件到本地
scp work@10.0.0.112.114:/path/filename /local_dir(本地目录)
// 本地文件上传至服务器
scp /local_dir work@10.0.0.112.114:/path/filename(本地目录)
💡:如果是目录,可以加参数 -r1.2.3.4.5.6.7.
💎 nginx命令知识
如果你上手是崭新的服务器,你还需要下载nginx,下载完之后才能使用
查看nginx配置地址
这时,如果你不知道配置地址在哪个目录可以使用下面的命名,返回结果就是地址信息
复制
nginx -t
// nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
// nginx: configuration file /etc/nginx/nginx.conf test is successful1.2.3.
nginx启动和关闭
复制
// 重新加载配置文件,一般配置文件修改之后需要运行这个命令
nginx -s reload
// 硬关闭nginx服务
nginx -s stop
// 优雅的关闭,关闭的时候有请求就等候请求结束在关闭
nginx -s quit
// 启动nginx服务
nginx -s start1.2.3.4.5.6.7.8.
可能会碰到的问题
大多数情况下,你会遇到下面的两种情况的报错:
复制
// ❌
nginx: [error] open() "/var/run/nginx/nginx.pid" failed (2: No such file or directory)
// ❌
nginx: [error] invalid PID number "" in "/var/run/nginx/nginx.pid"1.2.3.4.
这两种情况下可以试试下面的两个方法
复制
// 重载配置文件,依然报错的话尝试第二个
nginx -s reload
// 杀掉进程
kill nginx
// 然后重启
nginx1.2.3.4.5.6.7.
配置nginx
通常,我们仅仅需要关注serve的配置,大概如下
复制
server {
listen 8080; # 监听端口
server_name project_name; # 网站名称
root /home/work/project_name; # 静态文件地址,自己根据情况指定
# 如果你的项目指定了basename,那么这里需要路径重写
# 否则所有的静态文件请求都会返回html文件
location ~* ^/(basename) {
rewrite "^/basename/(.*)$" /$1 break;
try_files $uri /index.html;
}
# 如果你的接口地址不是直接请求后端,而是和前端地址一样
# 那么需要设置nginx代理,可以这样设置
location /api {
pass_proxy: http://10.0.0.112.114:9000
}
# 设置允许跨域
proxy_set_header Access-Control-Allow-Origin *;
# 设置一些缓存相关的请求头
add_header Cache-Control no-cache;
}1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.
🎉 总结
这些知识虽然比较浅显,不是那么专业级别的深入,但是已经足够应对大多数部署场景了,很多情况下,我们新来的后端都会被我的这些技能惊讶到!
THE END