Linux初入(二)

首先介绍一下在平常程序中常见的错误:

1、Java.lang.OutOfMemory(内存泄露) --->OOM 数据读写,上传文件的服务,下载文件的服务,淘宝发放优惠卷

2、TimeOut,超时 主要指的是客户端不断的向服务端发送请求,服务端这边的资源有限(内存和CPU),那么有可能会出现超时

3、Java空指针 Java.lang.NullPointException 4、Java.StackOverExpection 堆栈溢出

帮助命令

 man

   Linux命令的软件开发⼈员编写⼀个⾼度结构化的⽂档⼿册,也就是man的⽂件。所以当⼀个软件在被安装   后,它 的man⽂件也会随着安装,所以可以使⽤man命令来查看该命令的具体使⽤⽅法

  man ls

   man rm

 Info

   使⽤man可以查看⼀个命令的帮助document,但是可以使⽤info,就会进⼊到⼀个完全交互式的环境,具     体如下:

info ls

 info rm

   帮助命令能够全面的了解到具体命令实施方法

Linux权限操作

  Linux 系统中,⽂件的基本权限由 9 个字符组成,以 rwxrw-r-x 为例,我们可以使⽤数字来代表各个权限,各个权 限与数字的对应关系如下:

  读:r-->4 写:w-->2 执行:x--->1

  所有者、所属组和其他人分别对应的权限值

  所有者=rwx=4+2+1=7 所属组=rw=4+2+6 其他人=r+x=4+1=5

  chmod可以对权限值进行更改

  使⽤数字修改⽂件权限的 chmod 命令基本格式为: [root@localhost ~]# chmod [-R] 权限值 ⽂件名 -R(注意是⼤写)选项表示连同⼦⽬录中的所有⽂件,也都修改设定的权限

  代码:chmod 655 login.json

   ls -ll或-l或ll可以查看详细文件信息

   没有执行权限时不能进行剪切之类的操作

chmod使用字母修改权限

  既然文件的基本权限就是3种用户(所有者、所属组和其他人)搭配3种权限(rwx),chmod命令中用u、g、p分别代表3种身份,还用a表示全部的身份(all的缩写)。另外,chmod命令仍使用r、w、x分别表示读、写、执行权限。

  使用字母修改文件权限的chmod命令,其基本格式如图所示。

 

  直接使用 一行代码对权限进行更改

资源占用命令

    free -(单位m,g,h) 查看内存

      一般-h较为清晰的能够看到大小

    (1) free命令默认是以kb为单位显示的,可以⽤free -m ⽤Mb单位来显示。

    (2) Mem⾏ : total = used + free 其中buffers和cached虽然计算在used内, 但其实为可⽤内存。

    (3) Mem下⼀⾏:used为真实已占内存,free为真实可⽤内存。

    (4)Swap:内存交换区的使⽤情况。

    TOP整体负载

      uptime

      load average:最近一分钟,五分钟,十五分钟系统的资源

      第一行:系统时间 + 系统运⾏时间 + ⼏个⽤户 + 1/5/15分钟系统平均负载

      第二行:进程总熟(total)+正在运行进程数(running)+睡眠进程数(sleeping)+停止的进程数(stopped)+僵尸进程数(zombie)

      第三行:用户空间CPU占比(us)+内核空间CPU占比(sy)+CPU空置率(id)

      注解:

      PID :进程

      ID USER :⽤户名

      PR :优先级

      NI :负值表示⾼优先级,正值表示低优先级。

      VIRT :虚拟内存 RES : 真实内存 SHR :共享内存

      S:进程状态 D=不可中断的睡眠状态; R=运⾏; S=睡眠 ;T=跟踪/停⽌; Z=僵⼫进程

      参数:

      top -d 2 :每隔2秒显式所有进程的资源占⽤情况

      top -c :每隔5秒显式进程的资源占⽤情况,并显示进程的命令⾏参数(默认只有进程名)

      top -p 12345 -p 6789:每隔5秒显示pid是12345和pid是6789的两个进程的资源占⽤情况

      top -d 2 -c -p 123456 :每隔2秒显示pid是12345的进程的资源使⽤情况,并显式该进程启动的命令⾏参数

      在top的命令⾥⾯,按m是对内存进⾏排序,按p是按cpu进⾏排序

    nmon

      查看系统的资源,需要额外的安装(动态实时,可视化)

      使⽤该命令可以监控Linux的各个资源信息,输⼊nmon,输出如下:

    htop

      yum install htop

    atop

      yum install atop

端口查看

 Isof

   lsof(list open files)是⼀个列出当前系统打开⽂件的⼯具。 lsof 查看端⼝占⽤语法格式:lsof -i:端⼝

 sudo lsof -i:3306

 

    8080

 netstat

   netstat -tunlp 用于显示tcp、udp的端口和进程等相关情况

   grep是过滤,只查看被查找的信息

   netstat 查看端口占用语法格式;

   netstat -tunlp | grep 端口号

   -t (tcp) 仅显示tcp相关选项

   -u (udp)仅显示udp相关选项

   -n 拒绝显示别名,能显示数字的全部转化为数字

   -l 仅列出在Listen(监听)的服务状态

   -p 显示建⽴相关链接的程序名

   windows里面

     netstat -ano | findstr 80:查询端口占用的进程pid 使用进程PID查询那个程序占用

posted on 2022-07-29 15:59  xiaobia1  阅读(56)  评论(0)    收藏  举报