linux使用操作[2]

文章目录

  • 版权声明
  • 网络传输
    • ping命令
    • wget命令
    • curl命令
    • 端口
    • linux端口
    • 端口命令和工具
  • 进程管理
    • 查看进程
    • 关闭进程
  • 主机状态
    • top命令内容详解
    • 磁盘信息监控

版权声明

  • 本博客的内容基于我个人学习黑马程序员课程的学习笔记整理而成。我特此声明,所有版权属于黑马程序员或相关权利人所有。本博客的目的仅为个人学习和交流之用,并非商业用途。
  • 我在整理学习笔记的过程中尽力确保准确性,但无法保证内容的完整性和时效性。本博客的内容可能会随着时间的推移而过时或需要更新。
  • 若您是黑马程序员或相关权利人,如有任何侵犯版权的地方,请您及时联系我,我将立即予以删除或进行必要的修改。
  • 对于其他读者,请在阅读本博客内容时保持遵守相关法律法规和道德准则,谨慎参考,并自行承担因此产生的风险和责任。本博客中的部分观点和意见仅代表我个人,不代表黑马程序员的立场。

网络传输

ping命令

  • Ping命令是一种常用的网络诊断工具,用于测试主机之间的连接性,并测量从一个主机发送到另一个主机的往返时间(RTT)。
  • 基本语法:
    ping [-c num] ip或主机名
    
    • 选项:-c,检查的次数,不使用-c选项,将无限次数持续检查
    • 参数:ip或主机名,被检查的服务器的ip地址或主机名地址
  • Ping命令会向目标主机发送一个网络控制报文(ICMP Echo Request),然后等待目标主机回复(ICMP Echo Reply)。如果目标主机可达并且能够回复,ping命令会显示每个回复报文的往返时间(以毫秒为单位),以及统计信息如平均往返时间、丢包率等等。

Ping命令可用于以下目的:

  1. 检测网络连接问题:通过向目标主机发送 ICMP 报文并检查回复来判定能否与目标主机建立连接。
  2. 测试网络延迟:通过测量往返时间来估算网络延迟。
  3. 检测数据包丢失率:统计报文丢失率可以帮助判断网络连接的稳定性。
  4. 确定网络带宽:通过测量从一个主机发送到另一个主机的往返时间,可以粗略估算网络的带宽。
  • 注意,防火墙设置或目标主机的配置可能会阻止 ping 命令的正常工作,因此即使目标主机正常运行,也可能无法 ping 通。

wget命令

  • wget是在命令行环境下常用的非交互式的文件下载器,用于从Web服务器下载文件。它支持HTTP、HTTPS和FTP等协议,并提供了丰富的下载选项和功能。下面是对wget命令的简要说明:
  • 基本语法:
    wget [选项] [URL]
    

常用选项:

  1. -O, --output-document=文件名:将下载文件保存为指定的文件名。
  2. -P, --directory-prefix=目录:指定下载文件的保存目录。
  3. -c, --continue:断点续传,如果下载中断,下次执行wget命令时可以继续下载。
  4. -r, --recursive:递归下载,下载整个网站的内容(包括链接页面、图片文件等)。
  5. -np, --no-parent:仅在递归下载时有效,不下载父级目录中的文件。
  6. -nH, --no-host-directories:仅在递归下载时有效,不创建主机名相关的目录。
  7. -A, --accept=后缀名:指定要下载的文件类型,可以使用通配符。
  8. -q, --quiet:静默模式,不显示详细的下载信息。
  9. -b,可选,后台下载,会将日志写入到当前工作目录的wget-log文件
    • 通过tail命令可以监控后台下载进度:tail -f wget-log

示例用法:

  1. 下载单个文件:

    wget http://example.com/file.txt
    
  2. 断点续传下载:

    wget -c http://example.com/file.txt
    
  3. 递归下载整个网站:

    wget -r http://example.com/
    
  4. 下载文件并指定保存目录:

    wget -P /path/to/save http://example.com/file.txt
    

curl命令

  • curl(全名为“Client URL”)是一个功能强大的命令行工具,用于在终端中进行网络数据传输。它支持多种协议,包括HTTP、HTTPS、FTP、SCP、SFTP等,可以用于下载文件、上传文件、发送HTTP请求等。
  • 基本语法:
    curl [选项] [URL]
    

常用选项和用法:

  1. 发送HTTP请求:向指定的URL发送HTTP GET请求
   curl https://example.com
  1. 保存文件:
   curl -o 文件名 https://example.com/file.txt
  1. 继续下载:
   curl -C - -o 文件名 https://example.com/file.txt
  1. 上传文件:使用-T选项可以将本地文件上传到远程FTP服务器
   curl -T 本地文件路径 ftp://example.com/upload/
  1. HTTP POST请求:使用-X选项指定HTTP方法(POST),并使用-d选项发送POST数据
   curl -X POST -d "key1=value1&key2=value2" https://example.com/api
  1. 自定义请求头:使用-H选项可以添加自定义的HTTP请求头
   curl -H "Authorization: Bearer TOKEN" https://example.com/api
  1. 显示HTTP响应头:使用-I选项可以仅显示HTTP响应头信息
   curl -I https://example.com
  1. 跟随重定向:使用-L选项可以让curl自动跟随HTTP重定向
   curl -L https://example.com
  1. 静默模式:使用-s选项可以启用静默模式,减少输出信息
   curl -s https://example.com
  1. 限速下载:使用–limit-rate选项可以限制下载速度
curl --limit-rate 100K https://example.com/largefile.zip
  • 注意:curl与wget不同,curl仅提供了传输数据的功能,而wget除了下载文件还包括了递归下载等功能。

端口

  • 端口,是设备与外界通讯交流的出入口。
  • 端口可以分为:物理端口和虚拟端口两类
    • 物理端口:又可称之为接口,是可见的端口,如USB接口,RJ45网口,HDMI端口等
    • 虚拟端口:是指计算机内部的端口,是不可见的,是用来操作系统和外部进行交互使用的
      linux使用操作[2]_第1张图片

linux使用操作[2]_第2张图片

linux使用操作[2]_第3张图片

  • 计算机程序之间的通讯,通过IP只能锁定计算机,但是无法锁定具体的程序。通过端口可以锁定计算机上具体的程序,确保程序之间进行沟通。

linux端口

  • 在Linux系统中,端口是用于网络通信的逻辑通道,用于标识不同应用程序或服务。

  • Linux遵循基于TCP/IP协议的网络通信模型,其中端口号范围从0到65535。

  • 端口分为三类:

    • 公认端口:1~1023,通常用于一些系统内置或知名程序的预留使用,如SSH服务的22端口,HTTPS服务的443端口**【非特殊需要,不要占用这个范围的端口】**
    • 注册端口:1024~49151,通常可以随意使用,用于松散的绑定一些程序\服务
    • 动态端口:49152~65535,通常不会固定绑定程序,而是当程序对外进行网络链接时,用于临时使用。
      linux使用操作[2]_第4张图片
  • 如图中,计算机A的微信连接计算机B的微信,A使用的50001即动态端口,临时找一个端口作为出口。计算机B的微信使用端口5678,即注册端口,长期绑定此端口等待别人连接

端口命令和工具

  1. netstat命令:使用netstat命令来查看系统上当前的网络连接和监听的端口信息。

    • 安装netstat命令:
    yum -y install net-tools
    
    • 查看所有正在监听的端口:
       netstat -tuln
    
    • 查看指定端口是否正在监听:
       netstat -tuln | grep <端口号>
    
  2. nmap命令:nmap是一个网络扫描和安全评估工具,也可以用来扫描主机的开放端口。

    • 安装nmap工具
    yum -y install nmap
    
    • 扫描指定主机的开放端口:
    nmap <主机名或IP地址>
    
  3. ss命令:ss命令是替代netstat的工具,用于显示套接字统计信息,包括网络连接和监听的端口。

    • 安装ss命令:
    sudo yum install iproute
    
    • 查看当前打开的端口:
    ss -tuln
    

进程管理

  • 程序运行在操作系统中,是被操作系统所管理的。为管理运行的程序,每一个程序在运行的时候,便被操作系统注册为系统中的一个:进程,并会为每一个进程都分配一个独有的:进程ID(进程号)

查看进程

  1. ps命令:ps命令用于列出当前会话中的进程。常见的选项包括:
    • ps aux:列出所有用户的所有进程,包括详细信息。
    • ps -ef:与ps aux类似,但使用不同的输出格式。
    • ps -e | grep 进程名:查找特定名称的进程。

linux使用操作[2]_第5张图片

  • 示例:
   ps aux
   ps -ef
   ps -e | grep firefox

  • 从左到右分别是:
    • UID:进程所属的用户ID
    • PID:进程的进程号ID
    • PPID:进程的父ID(启动此进程的其它进程)
    • C:此进程的CPU占用率(百分比)
    • STIME:进程的启动时间
    • TTY:启动此进程的终端序号,如显示?,表示非终端启动
    • TIME:进程占用CPU的时间
    • CMD:进程对应的名称或启动路径或启动命令
  1. top命令:top命令以交互式方式实时显示系统的进程信息。

    • 它可以按CPU使用情况或内存使用情况对进程进行排序,并提供更新的性能统计信息。
      示例:
       top
    
    • 在top界面中,你可以按下q键退出。
  2. htop命令:htop是top的改进版本,提供了更多的交互式功能和信息展示。通常需要单独安装,可以使用包管理器进行安装。
    示例:

   sudo apt install htop  # 对于Debian/Ubuntu
   sudo yum install htop  # 对于Red Hat/CentOS
   htop

  1. grep和pkill命令:
    • pgrep命令用于通过进程名称查找进程的PID(进程ID)
    • pkill命令用于通过进程名称终止进程。
      示例:
   pgrep firefox
   pkill firefox
  1. pidof命令:pidof命令用于查找与给定进程名称相关的进程的PID。
    示例:
   pidof firefox
  1. ps aux | grep 进程名命令:可以使用ps命令与grep命令结合来查找特定进程。
    示例:
   ps aux | grep firefox

关闭进程

  • 通过kill命令关闭进程
  • 基础语法:
    kill [-9] 进程ID
    
    • 选项:-9,表示强制关闭进程。不使用此选项会向进程发送信号要求其关闭,但是否关闭看进程自身的处理机制。

主机状态

  • 通过top命令查看CPU、内存使用情况,类似Windows的任务管理器
    top
    
  • 默认每5秒刷新一次,语法:直接输入top即可,按q或ctrl + c退出

top命令内容详解

在这里插入图片描述

  • 第一行:top:命令名称,23:14:17:当前系统时间,up 110 days:启动了110天,2 users:2个用户登录,load:1、5、15分钟负载

在这里插入图片描述

  • 第二行:Tasks:146个进程,2 running:2个进程子在运行,97 sleeping:97个进程睡眠,0个停止进程,47个僵尸进程

在这里插入图片描述

  • 第三行:%Cpu(s):CPU使用率,us:用户CPU使用率,sy:系统CPU使用率,ni:高优先级进程占用CPU时间百分比,id:空闲CPU率,wa:IO等待CPU占用率,hi:CPU硬件中断率,si:CPU软件中断率,st:强制等待占用CPU率

在这里插入图片描述

  • 第四行:Kib Mem:物理内存,total:总量,free:空闲,used:使用,buff/cache:buff和cache占用

在这里插入图片描述

  • 第五行:KibSwap:虚拟内存(交换空间),total:总量,free:空闲,used:使用,buff/cache:buff和cache占用

在这里插入图片描述

  • PID:进程id
  • USER:进程所属用户
  • PR:进程优先级,越小越高
  • NI:负值表示高优先级,正表示低优先级
  • VIRT:进程使用虚拟内存,单位KB
  • RES:进程使用物理内存,单位KB
  • SHR:进程使用共享内存,单位KB
  • S:进程状态(S休眠,R运行,Z僵死状态,N负数优先级,I空闲状态)
  • %CPU:进程占用CPU率
  • %MEM:进程占用内存率
  • TIME+:进程使用CPU时间总计,单位10毫秒
  • COMMAND:进程的命令或名称或程序文件路径

磁盘信息监控

  • 使用df命令,可以查看硬盘的使用情况
  • 语法:
    df [-h]
    
    • 选项:-h,以更加人性化的单位显示
      linux使用操作[2]_第6张图片

你可能感兴趣的:(Linux学习,linux,php,运维)