一、系统更新
1、更新系统
1.1、Debian/Ubuntu系统更新
apt update -y && apt install -y curl && apt install -y wget && apt install -y sudo
1.2、CentOS系统更新
yum update -y && yum install -y curl && yum install -y wget && yum install -y sudo
2、安装BBR加速
四合一 BBR Plus / 原版BBR / 魔改BBR (推荐)
支持环境:Centos 7, Debian 8/9, Ubuntu 16/18 测试通过, 不支持 OVZ
脚本如下:
wget -N --no-check-certificate "https://raw.githubusercontent.com/chiakge/Linux-NetSpeed/master/tcp.sh" && chmod +x tcp.sh && ./tcp.sh
3、安装SWAP
注意:VPS的内存如果过小,建议设置一下SWAP,一般为内存的1-1.5倍即可,可以让系统运行更流畅!
wget https://www.moerats.com/usr/shell/swap.sh && bash swap.sh
wget -O box.sh https://raw.githubusercontent.com/BlueSkyXN/SKY-BOX/main/box.sh && chmod +x box.sh && clear && ./box.sh
选择18,然后输入你想要扩容的数值即可。
二、root命令
1、临时ROOT
为了频繁的执行某些只有超级用户才能执行的权限,而不用每次输入密码,可以使用该命令
是Linux终端命令下改变用户对命令使用权限的命令
sudo -i
2、切换至root用户
su : 切换到某某用户模式,提示输入密码时的密码为切换后账户的密码,用法为“su 账户名称”。
如果后面不加账户时系统默认为root账户,密码也为超级账户的密码。没有时间限制。
su - root
# 修改当前用户密码命令
passwd
#修改root密码
sudo passwd root
三、端口放行
Centos放行端口 linux中firewalld防火墙命令
特别提醒:修改后需要重启防火墙方可生效
安装防火墙
yum install firewalld
查看已经开放的端口
firewall-cmd --list-ports
检查端口被哪个进程占用
netstat -lnp|grep 3000
列出所有端口
netstat -ntlp
PS:centos7默认没有 netstat 命令,需要安装 net-tools 工具,yum install -y net-tools
- 查看防火墙状态:
systemctl status firewalld
Centons放行端口案例
firewall-cmd --zone=public --add-port=3000/tcp --permanent
firewall-cmd --zone=public --add-port=3000/udp --permanent
firewall-cmd --reload
四、常用命令
1、进入文件夹CD命令
cd..是回到上一级目录
cd.是当前目录
cd/是回到根目录
cd ~回到用户主目录
#显示当前文件目录
pwd
复制文件
#进入当前要复制的文件路径里面,cp+要复制的文件名称+需要复制的文件新的路径
cp
重命名
mv
移动文件
7、执行权限命令
文件不可见,赋予执行权限777
cd /opt/alist
chmod 777 data
8.0、新建文件夹
#新建文件夹,后面1234文件新建文件夹的名字
mkdir 1234
#在新建的文件夹里面创建文件
touch 1234
8.1、Linux删除单个文件
-f:–force 不提示,强制删除文件或目录,但是会忽略不存在的文件
-i:–interactive 进行交互式删除,删除前逐一询问确认
-r, -R:–recursive 递归删除,将指定目录下的所有文件与子目录一并删除
-v: –verbose 详细显示进行的步骤
–help 显示此帮助信息并退出
–version 输出版本信息并退出
rm file.txt
强制删除文件
格式:rm -f+文件名
rm -f
8.2、Linux删除文件夹
Linux 下隐藏文件是指以符号 . 开头的文件,这种文件使用 ls 命令不能直接查看,需要加上 -a 选项才可以看到。所以如果需要删除该目录下所有隐藏文件的话,可以这样操作:
格式:rm -rf +文件夹名
rm -rf file
8.3、压缩和解压命令
在Linux系统中,压缩和解压缩文件夹的常用命令是tar,它可以打包、压缩和解压文件和目录。具体格式为tar [选项] [文件]。选项中,-c表示打包,-x表示解包,-v表示显示详细信息,-f指定文件名,-z表示打包同时压缩或解压缩。
例如,tar -czvf memos.tar.gz memos
可以压缩目录或文件,而tar -xzvf memos.tar.gz
可以解压目录或文件。
要打包memos文件夹,可以使用以下命令:
tar -czvf memos.tar.gz memos
这个命令将会使用tar工具将memos文件夹打包成一个名为memos.tar的归档文件,然后使用gzip压缩算法将其压缩成一个名为memos.tar.gz的压缩文件。
解压命令:
tar -xzvf memos.tar.gz
9、linux查看文件ls
参考文献:更多命令点击进入
9.1、通过ls列出文件或目录
运行没有选项的ls命令没有加任何选项的格式列出文件和目录,我们将无法查看文件类型,大小,修改日期和时间,权限和链接等详细信息。
#列出当前文件夹,下面的所有的文件和文件夹,隐藏文件及文件夹不显示,需要显示隐藏文件,ls -a
ls -a
9.2、ls命令列出文件的索引
“ls -i”选项将列出每个文件和目录的索引(称为inode)编号。以下示例中,您可以在文件和目录之前打印一些数字索引/inode。
ls -i
9.3、通过ls列出文件的长列表
使用”ls -l”选项将显示当前目录每行一个内容的长列表格式。该行以”文件或目录权限,所有者和组名,文件大小,创建/修改日期和时间,文件/文件夹名称”的一些特征开始。
ls -l
#以列表形式显示文件,且隐藏文件也显示
ls -la
linux下判断一个文件是否可执行,关键看是否有可执行权限,比如:
在终端中输入:ls -l ,会列出类似于下的列表:
-rwxrwxr-x 1 bingyue bingyue 48141 Jul 17 02:50 redis-trib.rb*
-rw-rw-r– 1 bingyue bingyue 2163 Aug 5 23:34 release.c
drwxrwxr-x 2 bingyue bingyue 4096 Jul 22 20:03 Documents
以下面输出为例,下划线区域说明了文件的权限,包括可读、可写、可执行等等。
【-】【rwx】【rwx】【r-x】 1 bingyue bingyue 2324109 Aug 5 23:35 redis-cli*
我们可以把每一行分解成五部分。
- 第一部分标志着它是文件还是目录:文件用 -(连字符)标记,目录用 d 来标记。
- 接下来的三个部分分别是用户、组和其他人的对应权限。
- 最后一部分是 访问控制列表 (ACL)的标志,是记录着特定用户或者用户组对该文件的操作权限的列表。
Linux 的权限级别可以用字母或数字标识。有三种权限类型:
- 可读取:r 或 4
- 可写入:w 或 2
- 可执行:x 或 1
9.4、通过ls列出所有文件包括隐藏文件
ls -a’ 将列出所有以 ( ‘.’ ) 格式开头的隐藏文件以及普通文件。在Unix/Linux中,所有隐藏文件都以点”.”开头。格式被标记为隐藏。
ls -a
9.5、通过ls列出文件或者目录以/结尾
使用”ls -F”将在每个目录的末尾添加”/”分类。在下面的示例中,您可以看到所有目录都以”/”符号结尾列出。
ls -F
1、查看后台正在运行的程序
ps auxw
1、CPU架构查询
或ssh登录系统后通过如下命令查询软件架构:
Linux架构命令 图片查看
uname -a
2、查看操作系统32还是64
debian系列命令
dpkg的命令可⽤于查看 Debian/ Ubuntu 操作系统是 32 位还是 64 位
dpkg --print-architecture
3、查看系统版本相关命令
$ uname -a # 查看系统,主机名,内核版本,系统架构等命令
$ top # 总览系统全面信息命令,Ctrl + C 退出界面
$ hostname # 查看服务器主机名命令
$ cat /etc/debian_version #当前liunx系统大的版本
$ cat /etc/issue # 查看 Ubuntu Debian 系发行版版本命令
$ cat /etc/redhat-release # 查看 CentOS RedHat 系发行版版本命令
$ cat /etc/os-release # 查看通用 Linux 发行版版本命令
4、查看CPU相关命令
$ cat /proc/cpuinfo # 查看 CPU 核心数,架构,名字,频率,缓存,指令集等命令
$ grep name /proc/cpuinfo # 查看 CPU 名字命令
$ grep cores /proc/cpuinfo # 查看 CPU 核心数命令
$ grep MHz /proc/cpuinfo # 查看 CPU 频率命令
5、查看内存相关命令
$ cat /proc/meminfo # 查看内存硬件相关信息命令
$ free -m # 查看内存总量,使用量,swap 信息等命令
$ swapon -s # 查看 swap 交换分区的路径,大小命令
6、查看硬盘分区相关系统命令
$ df -h # 查看硬盘分区以及占用情况命令
$ du -sh [指定路径] # 查看指定路径文件或目录大小命令
$ fdisk -l # 查看硬盘大小,数量,类型命令
7、查看系统时间负载相关情况命令
$ uptime # 查看开机时间,系统用户数,平均负载命令
$ cat /proc/loadavg # 查看系统负载命令
$ w # 查看系统时间,负载,登入用户,用户使用资源情况命令
$ top # 总览系统全面信息命令,Ctrl + C 退出界面
8、查看网络相关情况命令
debian当前ip,或者命令查看
#这个命令同时会显示IPv4和IPv6地址:图片查看
ip add
ifconfig -a
$ ifconfig # 查看网卡及本机 ip 情况命令(需要系统安装了 net-tools 工具)
$ ip addr show # 功能同上,新的 Linux 发行版已经逐渐用 ip 命令替代 ifconfig 相关功能命令
$ iptables -L # 查看防火墙等相关情况命令
$ netstat -s # 查看系统网络连接情况统计信息命令
$ netstat -tunlp # 查看服务器端口监听使用情况命令
$ netstat -auntp # 查看已经建立连接的端口情况命令
$ lsof -i:[端口] # 查看指定端口占用情况命令
$ route -n # 查看路由表命令
9、查看进程相关命令
$ ps -aux # 列出所有进程以及相关信息命令
$ kill -9 [进程PID] # 从上命令取到相关进程的PID后,高权限kill杀死进程命令命令
$ top # 总览系统全面信息命令,Ctrl + C 退出界面
10、查看用户相关命令
$ w # 查看系统时间,负载,登入用户,用户使用资源情况命令
$ cut -d: -f1 /etc/passwd # 查看系统所有用户命令
$ last # 查看系统前几次登陆情况
$ crontab -l # 查看用户计划任务情况命令
$ crontab -e # 编辑计划任务命令
11、查看开机启动相关命令
$ chkconfig # 查看开机启动服务命令
$ ls /etc/init.d # 查看开机启动配置文件命令
$ cat /etc/rc.local # 查看 rc 启动文件
五、时间和日期
1、Linux 查看当前时间
date
date -R
2、安装时间工具
yum install rdate #CentOS系统#
apt install rdate #Debian系统#
3、NTP校时工具
Debian系统安装NTP校时包
apt-get install ntpdate
CentOS系统安装NTP校时包
yum install ntp
4、网络时间同步命令
ntpdate 0.cn.pool.ntp.org
如果上面time.nist.gov服务器同步不了,提示如下:
19 Apr 12:02:42 ntpdate[1495]: no server suitable for synchronization found,可以换下面几个时间服务器试试:
time.nist.gov
time.nuri.net
0.asia.pool.ntp.org
1.asia.pool.ntp.org
2.asia.pool.ntp.org
3.asia.pool.ntp.org
如果想每隔一定时间自动校时,只需将上面的命令加入至Cron就行了
00 12 * * * /sbin/ntpdate cn.pool.ntp.org
cn.pool.ntp.org是ntp网络授时组织的中国授时源
但是服务器采用ntp更新时间,经常牵扯到UTC是否开启的问题,开启了时间就会快8个小时,这个问题在我使用wordpress的wp autopost插件采集文章时会出现问题。前段时间朋友给我了下面的命令,一条命令解决之前的所有问题。
rdate -t 60 -s stdtime.gov.hk
如提示 -bash: rdate: command not found,直接输入以下命令安装:
yum install rdate #CentOS系统#
apt install rdate #Debian系统#
下面是rdate的命令使用方法介绍
功能说明:显示其他主机的日期与时间。
语 法:rdate -ps[主机名称或IP地址…]
补充说明:执行rdate指令,向其他主机询问系统时间并显示出来。
参 数:
-p 显示远端主机的日期与时间。
-s 把从远端主机收到的日期和时间,回存到本地主机的系统时间。
-u 传输协议使用UDP协议
-l 使用syslog显示错误信息
-t <时间> 设置超时时间
5、手动设置时间和日期
例如:将系统日期设定成2009年11月3日的命令 :
date -s 11/03/2009
将系统时间设定成下午5点55分55秒的命令:
date -s 17:55:55
将当前时间和日期写入BIOS,避免重启后失效命令 :
hwclock -w
复制相应的时区文件,替换系统时区文件,或者创建链接文件
cp /usr/share/zoneinfo/$主时区/$次时区 /etc/localtime
例如:在设置中国时区使用亚洲/上海(+8)
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
timedatectl set-timezone Asia/Shanghai
6、vps 时间同步
有些vps禁止链接ntp服务器,导致ntpd服务无法连接到时间服务器,会出现时间无法同步的问题,如果你要使用某些科学上网服务的话是要同步时间的。
方法其实也很简单,就是做个定时任务去某个服务器上抓时间然后通过date命令修改服务器vps上的时间
mkdir /html/scripts
cat time.sh
date -s "$(wget -qSO- --max-redirect=0 [google.com](http://google.com/) 2>&1 | grep Date: | cut -d' ' -f5-8)Z"
crontab -l
0 1 * * * /bin/bash /html/scripts/time.sh
七、esxi后台查看
使用方法:
ssh工具连接esxi后台,输入以下代码
dcui