## Linux服务器基础命令
1、uname -a #查看linux操作系统版本详细信息
(1)、第一字段linxu #系统名
(2)、第二字段jntm #主机名
(3)、第三字段3.10.0-693.el7.x86_64 #操作系统的发版版本号
①、3 #主版本号
②、10 #次版本号(奇数为开发版本,偶数为稳定版本)
③、0 #修订版本号(修改的次数)
④、693 #此版本的第N次修改
⑤、el7 #表示操作系统发行版本的版本 centos7/redhat7
⑥、x86_64 #编译框架(64位)
(4)、第四字段#1 SMP Tue Aug 22 21:09:27 UTC 2017 #内核版本
(5)、第五字段x86_64 #硬件平台
(6)、第六字段x86_64 #机器硬件名
(7)、第七字段x86_64 #系统处理器的体系结构
(8)、第八字段GNU/Linux #操作系统
2、cat /proc/cpuinfo 或者lscp #显示CPUinfo信息
(1)、CPU(s) #表示系统中可用的cpu数量
(2)、On-line CPU(s) list #表示在线的cpu标号0,1,2,3
(3)、Thread(s) per core #表示每个CPU中有几个线程
3、free -h #显示服务器内存使用情况
(1)、Total #内存总量
(2)、Used #已使用内存容量
(3)、Free #空闲内存容量
(4)、Shared # 共享内存的使用容量
(5)、Buff/cache # 缓存
4、top #查看cpu的使用率
(1)、第一行# top - 14:45:48 up 43 min, 1 user, load average: 0.00, 0.01, 0.05任务队列信息与命令 uptime 命令显示出的数据一致。
①、系统时间:14:45
②、运行时间:up 43 min (运行43分钟)
③、当前登录的用户: 1 user
④、负载均衡:load average: 0.00, 0.01, 0.05
1分钟,5分钟,15分钟的负载情况
这个数除以逻辑CPU的数量,结果高于5的时候表明系统在超负荷运转了
(2)、第二行Tasks: 167 total, 1 running, 166 sleeping, 0 stopped, 0 zombie显示的是任务进程
①、total #总进程
②、running #正在运行的进程
③、sleeping #休眠的进程
④、stopped #停止的进程
⑤、zombie #僵尸进程(如果系统有这个进程需要杀死)
(3)、第三行%Cpu(s): 0.0 us, 0.1 sy, 0.0 ni, 99.9 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st显示的是cpu占比使用情况
①、0.0us #用户空间占用的CPU百分比
②、0.2sy #内核空间占比CPU百分比
③、0.0ni #改变过优先级的进程占用CPU百分比
④、99.8id #空闲CPU百分比
(4)、第四行KiB Mem : 1867044 total, 838616 free, 336888 used, 691540 buff/cache #内存占比信息
①、total #内存总大小
②、free #剩余内存
③、used #已使用内存
④、buff/cache #缓存
(5)、第五行交换分区信息
(6)、第六行PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND #各个进程(任务)的状态监控
①、PID #进程的id
②、USER #进程的所有者
③、PR #进程优先级
④、NI #nice值 (负表示高优先级,正表示低优先级)
⑤、VIRT #进程使用的虚拟内存总量
⑥、RES #共享内存大小
⑦、 S #进程状态(D=不可中断的睡眠状态 R=运行 S=睡眠 T=跟踪/停止 Z=僵尸进程)
⑧、%CPU #进程CPU占比情况
⑨、%MEM #进程占用物理内存的情况
⑩、TIME+ #进程使用CPU的时间总计
COMMAND #进程名称
5、df #查看服务器的文件磁盘空间占比情况
(1)、df -ihT #查看文件系统列表
6、关机和重启linux命令
(1)、shutdown -h now 关闭系统
(2)、init 0 关闭系统
(3)、telinit 0 关闭系统
(3)、shutdown -h hours:minutes #定时关机
(4)、shutdown -c #取消定时关机
(5)、shutdown -r now #重启
(6)、reboot #重启
(7)、logout #注销
7、文件和目录相关命令
切换目录cd
(1)、cd #切换目录个人主目录
(2)、cd /home #切换到home目录
(3)、cd … #切换到上一级目录
(4)、cd …/…/ #切换到上一级的上一级目录
(5)、cd - #返回上次所在的目录
显示当前目录Pwd
查看目录中的文件 ls
(1)、ls #查看目录中的文件
(2)、ls -l #查看文件和目录的详细资料(跟ll同用)
(3)、ls -a #显示隐藏文件
(4)、ls *.zip #显示已.zip结尾的文件
查看该文件下由目录开始的树形结构tree
(1)、tree #查看文件下的其他文件树形结构
创建目录文件夹 mkdir
(1)、mkdir zz #当前目录下创建一个目录zz
(2)、mkdir xx cc #当前目录下创建2个目录 xx 和cc
(3)、mkdir -p vv/bb/nn #当前目录下递归创建
移动或者重命名文件mv
(1)、mv cc jj #重命名文件cc为jj
(2)、mv jj /root #移动当前文件cc移动到/root下
创建文件touch
(1)、touch 1.txt #创建一个1.txt
复制命令cp
(1)、cp 1.txt 2.txt #复制1.txt为2.txt
(2)、cp /home/* /root/ #复制/home下所有东西到/root下
(3)、cp -a vv /root #复制目录vv 到root下
删除命令rm (慎用)
(1)、rm 1.txt #删除当前目录下的文件1.txt
(2)、rm -f 1.txt #不提示删除当前目录下的文件1.txt
(3)、rm -r vv #删除一个目录vv
(4)、rm -rf vv #不提示删除一个目录(包含目录下的所有问题)
8、find查找命令
(1)、find /home -name “.txt” #查找/home目录下名称以.txt的文件
(2)、find /home -user root #查找/home目录下属于root的目录和文件
(3)、find /usr/bin -type f -atime +100 #查找/usr/bin下100天内没有被执行过的文件
(4)、find /home -type f -mtime +10 #查看/home下10天内被创建或者修改的文件
(5)、find ./* -name “1*” -exec rm -rf {} ; #查看当前目录下1开头的文件并删除(慎用)
(6)、find ./* -name “2*” -exec chmod +x {} ; #查找当前目录下以2开头的文件并增加执行权限
9、ln 软连接和硬链接
(1)、软连接和硬链接的区别
①、不管是软连接还是硬链接都不会额外占用磁盘空间
②、软连接会占用1个inode,硬链接不占用
③、硬链接不能跨文件系统,不能链接目录(软连接可以)
④、一般用的多的都是软连接
(2)、命令
比如说/var目录空间不足了,但是业务系统有个目录/var/lib/tomcat/logs目录必须存在,运维人员给了一个新的磁盘挂载到了opt下,那么就可以给/var/lib/tomcat/logs做个软连接,使/var/lib/tomcat/logs实际使用的磁盘空间是opt的
第一步:cp -ar /var/lib/tomcat/logs /opt/logs #复制
第二步:mv /var/lib/tomcat/logs /var/lib/tomcat/logs_back #备份
第三步 ln -s /opt/logs /var/lib/tomcat/logs #创建软连接
命令格式 ln -s 源目录 目标目录
10、du 统计文件大小
(1)、du -sh /home #统计home下的文件大小
11、查找命令which
(1)、命令格式 which 命令 #查找命令在什么目录下
12、mount挂载命令
(1)、mount /dev/hda2 /data/ #将/dev/hda2磁盘挂载到/data下
(2)、umount /dev/hda2 #卸载挂载/dev/hda2
(3)、mount -o loop file.lso /data/ #挂载一个file.lso镜像到/data下
(4)、mount -t smbfs -o username=user,password=pass //WinClient/share /mnt/share #挂载一个windows网络共享