■解压(tar)
[root@localhost ~]# tar -xf /inetpub/wwwroot/manong.20080808.tar.gz
参数说明:
-x:解压*.tar.gz压缩包
-v:显示解压过程(这个参数一般不需要加)
-f:压缩文件名称(该参数必须放在最后,并且后面要跟压缩文件名称)
■打包(zip)
[root@localhost /]# zip -r demo.zip /demo/
参数说明:
-r:递归处理(将指定目录下的所有文件和子目录一并处理)
■解压(unzip)
[root@localhost /]# unzip -oq demo.zip
参数说明:
-o:不询问用户,直接覆盖原有文件
-q:安静模式(即不显示压缩过程)
在后台执行命令
[root@localhost /]# nohup 要执行的命令 & # 执行左边的命令后输入exit退出终端即可
■创建组和用户
[root@localhost ~]# groupadd nginx && useradd -s /sbin/nologin -g nginx -M nginx && \ # 创建nginx组和nginx用户
groupadd mysql && useradd -s /sbin/nologin -g mysql -M mysql && \ # 创建mysql组和mysql用户
groupadd php && useradd -s /sbin/nologin -g php -M php && \ # 创建php组和php用户
groupadd memcached && useradd -s /sbin/nologin -g memcached -M memcached && \ # 创建memcached组和memcached用户
groupadd git && useradd -s /bin/bash -g git -d /home/git git # 创建git组和git用户
参数说明:
-s:用户登录后使用的shell
-g:用户所属组
-M:不建立用户主目录,即不建立“/home/{用户名}/”目录
-d:用户登录后进入的目录,一般设为用户主目录
■查看所有用户
[root@localhost ~]# cat /etc/passwd |cut -f 1 -d :
■修改用户密码
[root@localhost ~]# passwd 用户名
■修改用户主要组
[root@localhost ~]# usermod -g 组名 用户名
■修改用户次要组(附加组)
[root@localhost ~]# usermod -a -G 次要组1,次要组2,次要组3 用户名 # 加入次要组,可同时加入多个次要组
[root@localhost ~]# gpasswd -d 用户名 次要组 # 移出次要组
■修改用户shell
[root@localhost ~]# usermod -s /sbin/nologin 用户名 # 方式一
[root@localhost ~]# chsh -s /sbin/nologin 用户名 # 方式二
■删除用户
[root@localhost ~]# userdel -r 用户名
参数说明:
-r:删除用户主目录(/home/用户名)
■删除组
[root@localhost ~]# groupdel 组名
■新建目录(make directory)
[root@localhost ~]# mkdir -p /dir1/dir2/dir3/dir4/dir5
参数说明:
-p:递归创建(用于创建多级目录),若不使用该参数,那么在创建多级目录时就必须手动逐层创建
■修改目录名或文件名,移动目录或文件也是使用该命令(相当于剪切粘贴)
[root@localhost ~]# mv -f /tmp/oldname.txt /tmp/newname.txt
参数说明:
-f:强制覆盖,不再询问用户是否要覆盖,使用此参数请注意提前备份相关目录或文件
■复制目录或文件
[root@localhost ~]# cp -rf /tmp/file.txt /tmp/file.bak.txt
参数说明:
-r:递归复制,对于复制目录如果不递归则只复制直接子目录,不会复制孙子及后代目录
-f:强制覆盖,不再询问用户是否要覆盖,使用此参数请注意提前备份相关目录或文件
■创建软链接(符号链接)
[root@localhost ~]# ln -sf /tmp/file.txt /tmp/file.txt.link
参数说明:
-s:链接类型为软链接(符号链接)
-f:如果链接已存在则将其删除并重新创建(相当于修改链接指向)
■上传或下载文件
[root@localhost ~]# rz -be # 上传文件
[root@localhost ~]# sz -be /tmp/filename.txt # 下载文件
参数说明:
-b:使用二进制格式传输,默认使用文本格式
-e:对所有控制字符转义
备注:为使文件上传到服务器后与客户端原始文件一致,最好同时设置-b和-e参数。
■往文件写入内容
[root@localhost ~]# echo 'hello, world' > /tmp/filename.txt # 覆盖写入
[root@localhost ~]# echo 'hello, world' >> /tmp/filename.txt # 尾部追加写入
■查看挂载情况
[root@localhost ~]# df
■查看磁盘使用情况
[root@localhost ~]# df -lh
■查看内存使用情况
[root@localhost ~]# free -h
■查看CPU信息
[root@localhost ~]# cat /proc/cpuinfo | grep "model name" | uniq # 型号
[root@localhost ~]# cat /proc/cpuinfo | grep "physical id" | sort | uniq | wc -l # 数量
[root@localhost ~]# cat /proc/cpuinfo | grep "cpu cores" | uniq # 核心数
■查看操作系统版本
[root@localhost ~]# cat /etc/redhat-release
■查看分区信息
[root@localhost ~]# fdisk -l
■查看某个目录及其子目录的大小
[root@localhost ~]# du -h --max-depth=1 /inetpub/wwwroot/
■查看IP地址
[root@localhost ~]#
ifconfig -a
[root@localhost ~]#
ip addr
■重启网卡
[root@localhost ~]#
systemctl restart network
■监控网络带宽
[root@localhost ~]# ifconfig # 查看网络名称,一般为eth0或eth1
[root@localhost ~]# iftop -i eth0
■获取PHP-FPM的进程数
[root@localhost ~]# netstat -napo |grep "php-fpm" | wc -l
■检查指定端口是否被占用(以8080端口为例)
[root@localhost ~]# netstat -anp |grep 8080
■查看443端口的连接情况
[root@localhost ~]# netstat -an |grep 'ESTABLISHED' |grep -i '443' |wc -l # 仅显示连接数量
[root@localhost ~]# lsof -i:443 # 显示详细连接信息
■查看TCP的连接情况
[root@localhost ~]# netstat -an |grep 'ESTABLISHED' |grep 'tcp' |wc -l # 仅显示连接数量
■查看服务器当前时间
[root@localhost ~]# date -d today +"%Y年%m月%d日 %H:%M:%S"
■同步服务器时间
[root@localhost ~]# ntpdate time.nist.gov