Linux VPS 下SSH常用命令

Linux VPS 下SSH常用命令

lev1ne 25 2023-06-17

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 中的PID
killall nginx killall 通过程序的名字,直接杀死所有进程,nginx为进程名

资源占用查询:

du -sh /home/wwwroot/* 查看/home/wwwroot/下各个目录的占用大小
free -m 查看内存核swap使用情况
top 查看程序的cpu、内存使用情况
netstat -ntl 查看端口占用情况

用户管理:

adduser 添加用户,如adduser myfile
deluser 删除用户,如deluser myfile
passwd 修改密码,按提示输入密码,密码不显示

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

一些教程: