Linux VPS 下SSH常用命令
命令是Linux系统上的重中之重一定要多加练习并熟悉各个命令的参数,不知道使用方法时可以在命令后面加上--help
了解该命令的参数。
目录操作:
rm -rf mydir
删除mydir目录,不需要确认,直接删除/mkdir dirname
创建名为dirname的目录/cd mydir
进入mydir目录/cd -
返回进入此目录之前所在的目录/cd ..
返回上一级目录,中间有空格/cd ~
回当前用户家目录/mv tools tool
把tools目录改名为tool/ln -s tool bac
给tool目录创建名为bac的符号链接,最熟悉的应该就是FTP中www链接到public_html目录了/cp -a tool /home/www
把tool目录,复制到/home/www目录下/ls
列出当前目录下的内容/
文件操作:
rm go.tar
删除go.tar文件/find mt.cgi
查找文件名为mt.cgi的文件/df -h
查看磁盘剩余空间/
文件权限:
chmod 755 /home/wwwroot/a.php
给a.php赋予755权限,如果是目录需要加上 -R 参数/chmod +x /home/wwwroot/a.sh
给a.sh赋予可执行权限/chown www:www /home/wwwroot/a.php
给a.php更改文件属主属组为www,如果是目录需要加上 -R 参数/
解压缩:
tar xvf wordpress.tar
解压tar格式的文件/tar tvf myfile.tar
查看tar文件中包含的文件/
tar cf toole.tar tool
把tool目录打包为toole.tar文件/tar zcf myfile.tar.gz tool
把tool目录打包且压缩为myfile.tar.gz文件,因为.tar文件几乎是没有压缩过的/
tar jcvf /var/bak/www.tar.bz2 /var/www/
创建.tar.bz2文件,压缩率高/tar xjf www.tar.bz2
解压tar.bz2格式
gzip -d myfile.tar.gz
解压myfile.tar.gz文件为.tar文件unzip phpbb.zip
解压zip文件,windows下要压缩出一个.tar.gz格式的文件还是有点麻烦的
zip -r myfile.zip myfile
把myfile目录打包为myfile.zip压缩文件
下载:
wget http://soft.myfile.net/web/nginx/nginx-0.8.0.tar.gz
下载远程服务器上的文件到自己的服务器wget -c http://soft.myfile.net/web/nginx/nginx-0.8.0.tar.gz
继续下载上次未下载完的文件
进程管理:
ps -aux ps
进程状态查询命令
ps
命令输出字段的含义:
[list] []USER,进程所有者的用户名。
[]PID,进程号,可以唯一标识该进程。
[]%CPU,进程自最近一次刷新以来所占用的CPU时间和总时间的百分比。
[]%MEM,进程使用内存的百分比。
[]VSZ,进程使用的虚拟内存大小,以K为单位。
[]RSS,进程占用的物理内存的总数量,以K为单位。
[]TTY,进程相关的终端名。
[]STAT,进程状态,用(R--运行或准备运行;S--睡眠状态;I--空闲;Z--冻结;D--不间断睡眠;W-进程没有驻留页;T停止或跟踪。)这些字母来表示。
[]START,进程开始运行时间。
[]TIME,进程使用的总CPU时间。
[*]COMMAND,被执行的命令行。
[/list]
ps -aux | grep nginx
在所有进程中,查找nginx的进程kill 1234
1234为进程ID,即ps -aux 中的PIDkillall nginx
killall 通过程序的名字,直接杀死所有进程,nginx为进程名
资源占用查询:
du -sh /home/wwwroot/*
查看/home/wwwroot/下各个目录的占用大小free -m
查看内存核swap使用情况top
查看程序的cpu、内存使用情况netstat -ntl
查看端口占用情况
用户管理:
adduser
添加用户,如adduser myfiledeluser
删除用户,如deluser myfilepasswd
修改密码,按提示输入密码,密码不显示
Vim操作:
移动类的:
h/j/k/l
左/下/上/右 移一格w
向后词移动 (前面加数字移动多少个词)b
向前词移动 (前面加数字移动多少个词)e
向后移到词末ge
向前移到词末$
行末0
行首tx
向右查找本行的x并移到那儿(大写时向左)33G
移到文件的第33行gg
文件首行G
文件尾行33%
文件的33%处H/M/L
屏幕的首/中/尾行zt/zz/zb
当前行移到屏幕的首/中/底部
跳转:
"
回到跳转来的地方CTRL-O
跳到一个 “较老” 的地方CTRL-I
则跳到一个 “较新” 的地方
查找:
/
向下查找(后加关键字)?
向上查找(后加关键字)n
下一条符合的记录
编辑:
i
转换到插入模式x
删除当前字符.
重复最后一次的修改操作(同PS里ctrl+f执行滤镜)u
撤销操作CTRL-R
重做p
将删除的字符插入到当前位置(put)
退出保存:
:q
退出:q!
不保存退出ZZ
保存后退出:e!
放弃修改重新编辑
Emby相关:
rclone挂载命令:
rclone mount 配置名: /google --allow-other --allow-non-empty --cache-dir=/home/cache --umask 0000 --buffer-size 512M --dir-cache-time 5000h --vfs-cache-mode full --vfs-read-chunk-size 8M --vfs-read-chunk-size-limit 512M --vfs-cache-max-size 60G --vfs-fast-fingerprint --no-checksum --vfs-cache-max-age 5000h --daemon
docker命令:
docker run \
--network=bridge \
-p '8096:8096' \
-p '8920:8920' \
-p '1900:1900/udp' \
-p '7359:7359/udp' \
-v /root/emby:/config \
-v /google/:/data \
-e TZ="Asia/Shanghai" \
-e UID=0 \
-e GID=0 \
-e GIDLIST=0 \
--restart always \
--name emby \
-d amilys/embyserver:beta
禁止ip+端口直接访问:
iptables -I DOCKER-USER -i eth0 -p tcp --dport 8096 -j DROP
iptables -I DOCKER-USER -i eth0 -s 允许的IP -p tcp --dport 8096 -j ACCEPT
# 注意:以上顺序不能反了,必须先禁止所有ip,再单独开放允许访问的ip
一些清理命令
清除
/var/log/journal
占用空间过大
sudo journalctl --vacuum-size=10M
# 这将保留最近的 10M 数据。
sudo journalctl --vacuum-time=10d
# 将删除过去 10 天之外的所有内容。
清理docker多余的空间
# 我们可以使用以下命令大致看下情况
docker system df -v
# 用于清理磁盘,删除关闭的容器、无用的数据卷和网络,以及无tag的镜像。
docker system prune
# 可以将没有容器使用 Docker 镜像都删掉。注意,这两个命令会把你暂时关闭的容器,以及暂时没有用到的Docker镜像都删掉了
docker system prune -a