精华内容
下载资源
问答
  • 首先选择的是 Install,就是文字安装,安装的时候经过选择国家语言,到探测网络硬件,屏幕上显示“探测网络硬件”,然后就一直卡在那。然后又用了 Graphical Install,结果还是一样,等了半个小时还是卡着不动。 在...

    在虚拟机上安装 Kali 的时候什么问题都没有,在实体机上安装就出现问题了。

    首先选择的是 Install,就是文字安装,安装的时候经过选择国家语言,到探测网络硬件,屏幕上显示“探测网络硬件”,然后就一直卡在那。然后又用了 Graphical Install,结果还是一样,等了半个小时还是卡着不动。

    在网上找了有方法可以跳过探测网络硬件的,但是我试过了发现还是不行,因为他跳过探测网络硬件的话,后面的获取网络地址还是会卡住。

    然后没办法了,就准备先从 Live 进系统看看,进这个倒是一点问题都没有,然后在主菜单的系统工具看到了一个 Install Kali,通过这个安装就成功了。

    不过如果是多系统的话,在后面的安装 Grub 引导可能会出现问题,如果无法安装引导的话,就用主菜单-系统工具-系统管理-Gparted 分区编辑器把要安装的分区删除,重来一遍,就能正常安装引导了。

    本文固定链接:http://www.itechzero.com/kali-linux-install-stuck-on-detect-network-hardware-solution.html,转载请注明出处。

    展开全文
  • LINUX探测硬件信息命令大全

    千次阅读 2013-04-25 10:53:50
    LINUX探测硬件信息的命令 查看服务器的机器型号和序列号: dmidecode | grep "Product" 用硬件检测程序kudzu探测硬件:service kudzu start ( or restart) 查看CPU信息:cat /proc/cpuinfo 查看板卡信息...
    在LINUX下探测硬件信息的命令

    查看服务器的机器型号和序列号: dmidecode | grep "Product"
    用硬件检测程序kudzu探测新硬件:service kudzu start ( or restart)
    查看CPU信息:cat /proc/cpuinfo
    查看板卡信息:cat /proc/pci
    查看PCI信息:lspci (相比cat /proc/pci更直观)
    查看内存信息:cat /proc/meminfo
    查看网卡信息 : lshw -C network 或者lshw -class network
    查看网卡型号 : lspci | grep Ethernet
    查看USB设备:cat /proc/bus/usb/devices
    查看键盘和鼠标:cat /proc/bus/input/devices
    查看系统硬盘信息和使用情况:fdisk & disk - l & df
    查看各设备的中断请求(IRQ):cat /proc/interrupts
    查看系统体系结构:uname -a
    dmidecode查看硬件信息,包括bios、cpu、内存等信息
    dmesg | more 查看硬件信息
    对于“/proc”中文件可使用文件查看命令浏览其内容,文件中包含系统特定信息:
    Cpuinfo 主机CPU信息
    Dma 主机DMA通道信息
    Filesystems 文件系统信息
    Interrupts 主机中断信息
    Ioprots 主机I/O端口号信息
    Meninfo 主机内存信息
    Version Linux内存版本信息
    还有一个关于硬盘的命令:hdparm(可以用来优化硬盘,这里只是查看信息)
    显示硬盘的相关设置
    #hdparm /dev/sda
    /dev/sda:
     HDIO_DRIVE_CMD(identify) failed: Invalid exchange
     readonly = 0 (off)
     readahead = 256 (on)
     geometry = 35539[柱面数]/255[磁头数]/63[扇区数], sectors = 570949632[总扇区数], start = 0[起始扇区数]
    显示硬盘的柱面、磁头、扇区数
    #hdparm -g /dev/sda
    /dev/sda:
    geometry = 35539[柱面数]/255[磁头数]/63[扇区数], sectors = 570949632[总扇区数], start = 0[起始扇区数]
    评估硬盘的读取效率(停止所有服务,多测几次)
    root@ubuntu:~# hdparm -T /dev/sda
    /dev/sda:
     Timing cached reads: 7540 MB in 2.00 seconds = 3771.50 MB/sec
    root@ubuntu:~# hdparm -t /dev/sda
    /dev/sda:
     Timing buffered disk reads: 226 MB in 3.04 seconds = 74.36 MB/sec
    root@ubuntu:~# hdparm -Tt /dev/sda
    /dev/sda:
     Timing cached reads: 7750 MB in 2.00 seconds = 3876.91 MB/sec
     Timing buffered disk reads: 270 MB in 3.00 seconds = 89.99 MB/sec
    -T
    用于以基准测试和比较为目的的缓存读取计时.要得到有意义的结果, 应该在内存不少于2M,系统没有其它活动(没有其它活动的程序) 的条件下,重复操作2-3次.它显示了不存取磁盘直接从Linux缓存 读取数据的速度.这项测量实际上标示了被测系统的处理器,缓存 和内存的吞吐量. 如果标志 -t 也被指定,那么一个基于 -T 输出结果的修正量将被综合到 -t 操作报告的结果中.
    -t
    用于以基准测试和比较为目的的缓存读取计时.要得到有意义的结果, 应该在内存不少于2M,系统没有其它活动(没有其它活动的程序) 的条件下,重复操作2-3次.它显示了不使用预先的数据缓冲从磁盘 这项测量标示了Linux下没有任何文件系统开销时磁盘可以支持多快的连续数据读取.为确保测量的精确,缓存在 -t 的过程中通过BLKFLSBUF控制被刷新. 如果标志 -T 也被指定,那么一个基于 -T 数促结果的修正量将被综合到 -t 操作报告的结果中.






       系统
        # uname -a # 查看内核/操作系统/CPU信息
        # head -n 1 /etc/issue # 查看操作系统版本
        # cat /proc/cpuinfo # 查看CPU信息
        # hostname # 查看计算机名
        # lspci -tv # 列出所有PCI设备
        # lsusb -tv # 列出所有USB设备
        # lsmod # 列出加载的内核模块
        # env # 查看环境变量
       
        资源
        # free -m # 查看内存使用量和交换区使用量
        # df -h # 查看各分区使用情况
        # du -sh <目录名> # 查看指定目录的大小
        # grep MemTotal /proc/meminfo # 查看内存总量
        # grep MemFree /proc/meminfo # 查看空闲内存量
        # uptime # 查看系统运行时间、用户数、负载
        # cat /proc/loadavg # 查看系统负载
       
        磁盘和分区
        # mount | column -t # 查看挂接的分区状态
        # fdisk -l # 查看所有分区
        # swapon -s # 查看所有交换分区
        # hdparm -i /dev/hda # 查看磁盘参数(仅适用于IDE设备)
        # dmesg | grep IDE # 查看启动时IDE设备检测状况
       
        网络
        # ifconfig # 查看所有网络接口的属性
        # iptables -L # 查看防火墙设置
        # route -n # 查看路由表
        # netstat -lntp # 查看所有监听端口
        # netstat -antp # 查看所有已经建立的连接
        # netstat -s # 查看网络统计信息
       
        进程
        # ps -ef # 查看所有进程
        # top # 实时显示进程状态
       
        用户
        # w # 查看活动用户
        # id <用户名> # 查看指定用户信息
        # last # 查看用户登录日志
        # cut -d: -f1 /etc/passwd # 查看系统所有用户
        # cut -d: -f1 /etc/group # 查看系统所有组
        # crontab -l # 查看当前用户的计划任务
       
        服务
        # chkconfig --list # 列出所有系统服务
        # chkconfig --list | grep on # 列出所有启动的系统服务
       
        程序
        # rpm -qa # 查看所有安装的软件包
        常用命令整理如下:
        查看主板的序列号: dmidecode | grep -i 'serial number'
        用硬件检测程序kuduz探测新硬件:service kudzu start ( or restart)
        查看CPU信息:cat /proc/cpuinfo [dmesg | grep -i 'cpu'][dmidecode -t processor]
        查看内存信息:cat /proc/meminfo [free -m][vmstat]
        查看板卡信息:cat /proc/pci
        查看显卡/声卡信息:lspci |grep -i 'VGA'[dmesg | grep -i 'VGA']
        查看网卡信息:dmesg | grep -i 'eth'[cat /etc/sysconfig/hwconf | grep -i eth][lspci | grep -i 'eth']
        <!--more-->
        查看PCI信息:lspci (相比cat /proc/pci更直观)
        查看USB设备:cat /proc/bus/usb/devices
        查看键盘和鼠标:cat /proc/bus/input/devices
        查看系统硬盘信息和使用情况:fdisk & disk – l & df
        查看各设备的中断请求(IRQ):cat /proc/interrupts
        查看系统体系结构:uname -a
        查看及启动系统的32位或64位内核模式:isalist –v [isainfo –v][isainfo –b]
        dmidecode查看硬件信息,包括bios、cpu、内存等信息
        测定当前的显示器刷新频率:/usr/sbin/ffbconfig –rev \?
        查看系统配置:/usr/platform/sun4u/sbin/prtdiag –v
        查看当前系统中已经应用的补丁:showrev –p
        显示当前的运行级别:who –rH
        查看当前的bind版本信息:nslookup –class=chaos –q=txt version.bind
        dmesg | more 查看硬件信息
        lspci 显示外设信息, 如usb,网卡等信息
        lsnod 查看已加载的驱动
        lshw
        psrinfo -v 查看当前处理器的类型和速度(主频)
        prtconf -v 打印当前的OBP版本号
        iostat –E 查看硬盘物理信息(vendor, RPM, Capacity)
        prtvtoc /dev/rdsk/c0t0d0s 查看磁盘的几何参数和分区信息
        df –F ufs –o i 显示已经使用和未使用的i-node数目
        isalist –v
       
       
        备注: proc – process information pseudo-filesystem 进程信息伪装文件系统

    展开全文
  • LINUX探测硬件信息的命令

    千次阅读 2017-03-06 21:13:53
    ,其中,ifrn_name为网络接口的名称,ifr_ifru.ifru_hwaddr为网络接口的MAC地址。 #ifndef MAX_IFINDEX # define MAX_IFINDEX 8 #endif static int getmacaddr (const char *ip, char *id, size_t max) { int i, ...


    在很多系统软件的开发中,需要使用一些系统的唯一性信息。所以,得到主机的CPUID、硬盘序列号及网卡的MAC地址,就成个一件很重要的应用。

    需要的准备知识有:

    1. GCC的嵌入汇编,具体的GCC嵌入汇编知识,请参考相关手册
    2. ioctl系统调用,具体的调用方法,请查看手册页

    获取CPUID

    按照网上提供的说明,CPUID并不是所有的Intel CPU都支持的。如果支持,汇编调用为:eax置0000_0003,调用cpuid。

    以下为实现代码(在我的CPU上,并没有得到):

    #define cpuid(in,a,b,c,d)  asm("cpuid": "=a" (a), "=b" (b), "=c" (c), "=d" (d) : "a" (in));
    static int
    getcpuid (char *id, size_t max)
    {
      int i;
      unsigned long li, maxi, maxei, ebx, ecx, edx, unused;
    
      cpuid (0, maxi, unused, unused, unused);
      maxi &= 0xffff;
    
      if (maxi < 3)
        {
          return -1;
        }
    
      cpuid (3, eax, ebx, ecx, edx);
    
      snprintf (id, max, "%08lx %08lx %08lx %08lx", eax, ebx, ecx, edx);
      fprintf (stdout, "get cpu id: %s/n", id);
      return 0;
    }
    

    获取硬盘序列号

    这个的实现,采用的是读取/etc/mtab文件,找到/(即根目录)挂载的设备文件,然后打开它,再用系统调用ioctl来实现的。

    ioctl第二个参数为HDIO_GET_IDENTITY, 获得指定文件描述符的标志号

    ioctl的第三个参数为struct hd_driveid ,在Linux/hdreg.h中,struct hd_driveid的声明有

    <em>struct hd_driveid {
    	unsigned short	config;		/</em> lots of obsolete bit flags */
    	unsigned short	cyls;		/* Obsolete, "physical" cyls */
    	unsigned short	reserved2;	/* reserved (word 2) */
    	unsigned short	heads;		/* Obsolete, "physical" heads */
    	unsigned short	track_bytes;	/* unformatted bytes per track */
    	unsigned short	sector_bytes;	/* unformatted bytes per sector */
    	unsigned short	sectors;	/* Obsolete, "physical" sectors per track */
    	unsigned short	vendor0;	/* vendor unique */
    	unsigned short	vendor1;	/* vendor unique */
    	unsigned short	vendor2;	/* Retired vendor unique */
    	unsigned char	serial_no[20];	/* 0 = not_specified */
    	unsigned short	buf_type;	/* Retired */
    	unsigned short	buf_size;	/* Retired, 512 byte increments
    					 * 0 = not_specified
    					 */
            ……
    };
    
    
    ,这其中,serial_no为硬盘的序列号。如果此项为0,则为没有提供。

    思路明确了,以下为实现代码:

    #include <string.h>

    #include<stdio.h>

        #include <sys/ioctl.h>
        #include <linux/hdreg.h>
        #include <fcntl.h>
        #include <stdlib.h>
        #include<ctype.h>

    static int
    getdiskid (char *id, size_t max)
    {
      int fd;
      struct hd_driveid hid;
      FILE *fp;
      char line[0x100], *disk, *root, *p;
    
      fp = fopen ("/etc/mtab", "r");
      if (fp == NULL)
        {
          fprintf (stderr, "No /etc/mtab file./n");
          return -1;
        }
    
      fd = -1;
      while (fgets (line, sizeof line, fp) != NULL)
        {
          disk = strtok (line, " ");
          if (disk == NULL)
    	{
    	  continue;
    	}
    
          root = strtok (NULL, " ");
          if (root == NULL)
    	{
    	  continue;
    	}
    
          if (strcmp (root, "/") == 0)
    	{
    	  for (p = disk + strlen (disk) - 1; isdigit (*p); p --)
                {
                 *p = '/0';
                }
    	  fd = open (disk, O_RDONLY);
    	  break;
    	}
        }
    
      fclose (fp);
    
      if (fd < 0)
        {
          fprintf (stderr, "open hard disk device failed./n");
          return -1;
        }
    
      if (ioctl (fd, HDIO_GET_IDENTITY, &hid) < 0)
        {
          fprintf (stderr, "ioctl error./n");
          return -1;
        }
    
      close (fd);
    
      snprintf (id, max, "%s", hid.serial_no);
      fprintf (stdout, "get hard disk serial number: %s/n", id);
      return 0;
    }
    

    获取MAC地址

    通过创建一个socket,然后bind特定的IP地址,就可以通过ioctl得到这个套按地绑定的网络接口名称。然后再通过网络接口名称,得到MAC地址。

    如果ioctl的第二个参数为SIOCGIFNAME, 则获得指定网络接口的名称;如果ioctl的第二个参数为SIOCGIFHWADDR,则获得指定网络接口的MAC地址

    ioctl的第三个参数为struct ifreq ,在linux/if.h头文件里,struct ifreq声明如下:

    <em>struct ifreq
    {
    #define IFHWADDRLEN	6
    	union
    	{
    		char	ifrn_name[IFNAMSIZ];		/</em> if name, e.g. "en0" */
    	} ifr_ifrn;
    
    	union {
    		struct	sockaddr ifru_addr;
    		struct	sockaddr ifru_dstaddr;
    		struct	sockaddr ifru_broadaddr;
    		struct	sockaddr ifru_netmask;
    		struct  sockaddr ifru_hwaddr;
    		short	ifru_flags;
    		int	ifru_ivalue;
    		int	ifru_mtu;
    		struct  ifmap ifru_map;
    		char	ifru_slave[IFNAMSIZ];	/* Just fits the size */
    		char	ifru_newname[IFNAMSIZ];
    		void *	ifru_data;
    		struct	if_settings ifru_settings;
    	} ifr_ifru;
    }
    
    
    ,其中,ifrn_name为网络接口的名称,ifr_ifru.ifru_hwaddr为网络接口的MAC地址。
    #ifndef MAX_IFINDEX
    # define MAX_IFINDEX    8
    #endif
    
    static int
    getmacaddr (const char *ip, char *id, size_t max)
    {
    
      int i, sockfd;
      struct sockaddr_in *loc;
      struct ifreq req[1];
    
      sockfd = socket (AF_INET, SOCK_DGRAM, 0);
      if (sockfd < 0)
        {
          fprintf (stderr, "Unable to create socket./n");
          return -1;
        }
    
      for (i = 0; i <= MAX_IFINDEX; ++ i)
        {
          req->ifr_ifindex = i;
    
          if (ioctl (sockfd, SIOCGIFNAME, req) < 0)
            {
              fprintf (stderr, "ioctl error: %s/n", strerror (errno));
              continue;
            }
    
          if (ioctl (sockfd, SIOCGIFADDR, req) < 0)
            {
              fprintf (stderr, "ioctl interface index [%d] error: %s/n", i, strerror (errno));
              continue;
            }
    
          loc = (struct sockaddr_in *) (&(req->ifr_ifru.ifru_addr));
          if (loc->sin_addr.s_addr == inet_addr (ip))
            {
              fprintf (stderr, "%s bind at %s./n", ip, req->ifr_name);
              break;
            }
        }
    
      if (i > MAX_IFINDEX)
        {
          fprintf (stderr, "input IP error./n");
          close (sockfd);
          return -1;
        }
    
      if (ioctl (sockfd, SIOCGIFHWADDR, req) < 0)
        {
          fprintf (stderr, "ioctl error: %s/n", strerror (errno));
          close (sockfd);
          return -1;
        }
    
      close (sockfd);
    
      snprintf (id, max, "%02X%02X%02X%02X%02X%02X",
                req->ifr_hwaddr.sa_data[0] & 0xff,
                req->ifr_hwaddr.sa_data[1] & 0xff,
                req->ifr_hwaddr.sa_data[2] & 0xff,
                req->ifr_hwaddr.sa_data[3] & 0xff,
                req->ifr_hwaddr.sa_data[4] & 0xff,
                req->ifr_hwaddr.sa_data[5] & 0xff);
    
      fprintf (stdout, "MAC address of %s: [%s]./n", req->ifr_name, id);
      return 0;
    }
    第二种方法:
    #include <stdio.h>
    #include <sys/types.h>
    #include <sys/socket.h>
    #include <sys/ioctl.h>
    #include <netinet/in.h>
    #include <net/if.h>
    #include <net/if_arp.h>
    #include <arpa/inet.h>
    #include <errno.h>
    
    #define ETH_NAME	"eth0"
    
    int main()
    {
    int sock;
    struct sockaddr_in sin;
    struct sockaddr sa;
    struct ifreq ifr;
    unsigned char mac[6];
    
    sock = socket(AF_INET, SOCK_DGRAM, 0);
    if (sock == -1)
    {
    perror("socket");
    return -1;		
    }
    
    strncpy(ifr.ifr_name, ETH_NAME, IFNAMSIZ);
    ifr.ifr_name[IFNAMSIZ - 1] = 0;
    
    if (ioctl(sock, SIOCGIFADDR, &ifr) < 0)
    {
    perror("ioctl");
    return -1;
    }
    
    memcpy(&sin, &ifr.ifr_addr, sizeof(sin));
    fprintf(stdout, "%s ip: %s\n", ETH_NAME, inet_ntoa(sin.sin_addr));
    
    memset(mac, 0, sizeof(mac));
    if (ioctl(sock, SIOCGIFHWADDR, &ifr) < 0)
    {
    perror("ioctl");
    return -1;
    }
    
    memcpy(&sa, &ifr.ifr_addr, sizeof(sin));
    memcpy(mac, sa.sa_data, sizeof(mac));
    fprintf(stdout, "%s mac: %.2X:%.2X:%.2X:%.2X:%.2X:%.2X\n", ETH_NAME, mac[0], mac[1], mac[2], mac[3], mac[4], mac[5]);
    return 0;
    }

    SD卡ID获取

    使用以下命令:cat /sys/devices/platform/jz-msc.0/mmc_host/mmc0/mmc0:1234/cid或者使用通配符cat /sys/devices/platform/jz-msc.0/mmc_host/mmc0/mmc0:*/cid 得到32个字节的数据:0254 4d53 4130 3847 0610 ebb5 5000 a93f 在kernel/drivers/mmc/core/sd.c文件中:以下数组结构用于保存SD卡ID card->raw_cid[0];card->raw_cid[1];card->raw_cid[2];card->raw_cid[3]; linux内核中对应的代码位于: kernel/drivers/mmc/core/sd.ckernel/drivers/mmc/core/mmc.ckernel/include/linux/mmc/card.hkernel/include/linux/mmc/mmc.h 关键字: Linux MMC卡驱动读取SD卡ID如何读取SD卡ID如何获取SD卡ID如何获取SD卡序列号





    在LINUX下探测硬件信息的命令

    查看服务器的机器型号和序列号: dmidecode | grep "Product"
    用硬件检测程序kudzu探测新硬件:service kudzu start ( or restart)
    查看CPU信息:cat /proc/cpuinfo
    查看板卡信息:cat /proc/pci
    查看PCI信息:lspci (相比cat /proc/pci更直观)
    查看内存信息:cat /proc/meminfo
    查看网卡信息 : lshw -C network 或者lshw -class network
    查看网卡型号 : lspci | grep Ethernet
    查看USB设备:cat /proc/bus/usb/devices
    查看键盘和鼠标:cat /proc/bus/input/devices
    查看系统硬盘信息和使用情况:fdisk & disk - l & df
    查看各设备的中断请求(IRQ):cat /proc/interrupts
    查看系统体系结构:uname -a
    dmidecode查看硬件信息,包括bios、cpu、内存等信息
    dmesg | more 查看硬件信息
    对于“/proc”中文件可使用文件查看命令浏览其内容,文件中包含系统特定信息:
    Cpuinfo 主机CPU信息
    Dma 主机DMA通道信息
    Filesystems 文件系统信息
    Interrupts 主机中断信息
    Ioprots 主机I/O端口号信息
    Meninfo 主机内存信息
    Version Linux内存版本信息
    还有一个关于硬盘的命令:hdparm(可以用来优化硬盘,这里只是查看信息)
    显示硬盘的相关设置
    #hdparm /dev/sda
    /dev/sda:
     HDIO_DRIVE_CMD(identify) failed: Invalid exchange
     readonly = 0 (off)
     readahead = 256 (on)
     geometry = 35539[柱面数]/255[磁头数]/63[扇区数], sectors = 570949632[总扇区数], start = 0[起始扇区数]
    显示硬盘的柱面、磁头、扇区数
    #hdparm -g /dev/sda
    /dev/sda:
    geometry = 35539[柱面数]/255[磁头数]/63[扇区数], sectors = 570949632[总扇区数], start = 0[起始扇区数]
    评估硬盘的读取效率(停止所有服务,多测几次)
    root@ubuntu:~# hdparm -T /dev/sda
    /dev/sda:
     Timing cached reads: 7540 MB in 2.00 seconds = 3771.50 MB/sec
    root@ubuntu:~# hdparm -t /dev/sda
    /dev/sda:
     Timing buffered disk reads: 226 MB in 3.04 seconds = 74.36 MB/sec
    root@ubuntu:~# hdparm -Tt /dev/sda
    /dev/sda:
     Timing cached reads: 7750 MB in 2.00 seconds = 3876.91 MB/sec
     Timing buffered disk reads: 270 MB in 3.00 seconds = 89.99 MB/sec
    -T
    用于以基准测试和比较为目的的缓存读取计时.要得到有意义的结果, 应该在内存不少于2M,系统没有其它活动(没有其它活动的程序) 的条件下,重复操作2-3次.它显示了不存取磁盘直接从Linux缓存 读取数据的速度.这项测量实际上标示了被测系统的处理器,缓存 和内存的吞吐量. 如果标志 -t 也被指定,那么一个基于 -T 输出结果的修正量将被综合到 -t 操作报告的结果中.
    -t
    用于以基准测试和比较为目的的缓存读取计时.要得到有意义的结果, 应该在内存不少于2M,系统没有其它活动(没有其它活动的程序) 的条件下,重复操作2-3次.它显示了不使用预先的数据缓冲从磁盘 这项测量标示了Linux下没有任何文件系统开销时磁盘可以支持多快的连续数据读取.为确保测量的精确,缓存在 -t 的过程中通过BLKFLSBUF控制被刷新. 如果标志 -T 也被指定,那么一个基于 -T 数促结果的修正量将被综合到 -t 操作报告的结果中.






       系统
        # uname -a # 查看内核/操作系统/CPU信息
        # head -n 1 /etc/issue # 查看操作系统版本
        # cat /proc/cpuinfo # 查看CPU信息
        # hostname # 查看计算机名
        # lspci -tv # 列出所有PCI设备
        # lsusb -tv # 列出所有USB设备
        # lsmod # 列出加载的内核模块
        # env # 查看环境变量
       
        资源
        # free -m # 查看内存使用量和交换区使用量
        # df -h # 查看各分区使用情况
        # du -sh <目录名> # 查看指定目录的大小
        # grep MemTotal /proc/meminfo # 查看内存总量
        # grep MemFree /proc/meminfo # 查看空闲内存量
        # uptime # 查看系统运行时间、用户数、负载
        # cat /proc/loadavg # 查看系统负载
       
        磁盘和分区
        # mount | column -t # 查看挂接的分区状态
        # fdisk -l # 查看所有分区
        # swapon -s # 查看所有交换分区
        # hdparm -i /dev/hda # 查看磁盘参数(仅适用于IDE设备)
        # dmesg | grep IDE # 查看启动时IDE设备检测状况
       
        网络
        # ifconfig # 查看所有网络接口的属性
        # iptables -L # 查看防火墙设置
        # route -n # 查看路由表
        # netstat -lntp # 查看所有监听端口
        # netstat -antp # 查看所有已经建立的连接
        # netstat -s # 查看网络统计信息
       
        进程
        # ps -ef # 查看所有进程
        # top # 实时显示进程状态
       
        用户
        # w # 查看活动用户
        # id <用户名> # 查看指定用户信息
        # last # 查看用户登录日志
        # cut -d: -f1 /etc/passwd # 查看系统所有用户
        # cut -d: -f1 /etc/group # 查看系统所有组
        # crontab -l # 查看当前用户的计划任务
       
        服务
        # chkconfig --list # 列出所有系统服务
        # chkconfig --list | grep on # 列出所有启动的系统服务
       
        程序
        # rpm -qa # 查看所有安装的软件包
        常用命令整理如下:
        查看主板的序列号: dmidecode | grep -i 'serial number'
        用硬件检测程序kuduz探测新硬件:service kudzu start ( or restart)
        查看CPU信息:cat /proc/cpuinfo [dmesg | grep -i 'cpu'][dmidecode -t processor]
        查看内存信息:cat /proc/meminfo [free -m][vmstat]
        查看板卡信息:cat /proc/pci
        查看显卡/声卡信息:lspci |grep -i 'VGA'[dmesg | grep -i 'VGA']
        查看网卡信息:dmesg | grep -i 'eth'[cat /etc/sysconfig/hwconf | grep -i eth][lspci | grep -i 'eth']
        <!--more-->
        查看PCI信息:lspci (相比cat /proc/pci更直观)
        查看USB设备:cat /proc/bus/usb/devices
        查看键盘和鼠标:cat /proc/bus/input/devices
        查看系统硬盘信息和使用情况:fdisk & disk – l & df
        查看各设备的中断请求(IRQ):cat /proc/interrupts
        查看系统体系结构:uname -a
        查看及启动系统的32位或64位内核模式:isalist –v [isainfo –v][isainfo –b]
        dmidecode查看硬件信息,包括bios、cpu、内存等信息
        测定当前的显示器刷新频率:/usr/sbin/ffbconfig –rev \?
        查看系统配置:/usr/platform/sun4u/sbin/prtdiag –v
        查看当前系统中已经应用的补丁:showrev –p
        显示当前的运行级别:who –rH
        查看当前的bind版本信息:nslookup –class=chaos –q=txt version.bind
        dmesg | more 查看硬件信息
        lspci 显示外设信息, 如usb,网卡等信息
        lsnod 查看已加载的驱动
        lshw
        psrinfo -v 查看当前处理器的类型和速度(主频)
        prtconf -v 打印当前的OBP版本号
        iostat –E 查看硬盘物理信息(vendor, RPM, Capacity)
        prtvtoc /dev/rdsk/c0t0d0s 查看磁盘的几何参数和分区信息
        df –F ufs –o i 显示已经使用和未使用的i-node数目
        isalist –v
       
       
        备注: proc – process information pseudo-filesystem 进程信息伪装文件系统

    展开全文
  • linux查看硬件配置命令

    万次阅读 多人点赞 2019-08-02 15:25:02
    文章目录硬件查看命令cat /proc/cpuinfo 分析输出 硬件查看命令 系统  # uname -a # 查看内核/操作系统/CPU信息  # head -n 1 /etc/issue # 查看操作系统版本  # cat /proc/cpuinfo # 查看CPU信息  # hostname #...

    硬件查看命令
    系统
      # uname -a             # 查看Linux内核版本及操作系统信息
      # cat /proc/version    # 查看Linux内核版本及操作系统信息
      
      # lsb_release -a       # 查看操作系统版本
      
      # cat /proc/cpuinfo    # 查看CPU信息
      
      # hostname       # 查看计算机名
      # lspci -tv      # 列出所有PCI设备
      # lsusb -tv      # 列出所有USB设备
      # lsmod          # 列出加载的内核模块
      # env            # 查看环境变量
      
    资源
      # free -m         # 查看内存使用量和交换区使用量
      # df -h           # 查看各分区使用情况
      # du -sh <目录名>  # 查看指定目录的大小
      # grep MemTotal /proc/meminfo   # 查看内存总量
      # grep MemFree /proc/meminfo    # 查看空闲内存量
      # uptime                        # 查看系统运行时间、用户数、负载
      # cat /proc/loadavg             # 查看系统负载
    磁盘和分区
      # mount | column -t    # 查看挂接的分区状态
      # fdisk -l             # 查看所有分区
      # swapon -s            # 查看所有交换分区
      # hdparm -i /dev/hda   # 查看磁盘参数(仅适用于IDE设备)
      # dmesg | grep IDE     # 查看启动时IDE设备检测状况
    网络
      # ifconfig        # 查看所有网络接口的属性
      # iptables -L     # 查看防火墙设置
      # route -n        # 查看路由表
      # netstat -lntp   # 查看所有监听端口
      # netstat -antp   # 查看所有已经建立的连接
      # netstat -s      # 查看网络统计信息
    进程
      # ps -ef          # 查看所有进程
      # top             # 实时显示进程状态
    用户
      # w                        # 查看活动用户
      # id <用户名>              # 查看指定用户信息
      # last                     # 查看用户登录日志
      # cut -d: -f1 /etc/passwd  # 查看系统所有用户
      # cut -d: -f1 /etc/group   # 查看系统所有组
      # crontab -l               # 查看当前用户的计划任务
    服务
      # chkconfig --list            # 列出所有系统服务
      # chkconfig --list | grep on  # 列出所有启动的系统服务
    程序
      # rpm -qa # 查看所有安装的软件包
    其他常用命令整理如下:
      查看主板的序列号:dmidecode | grep -i 'serial number'
      用硬件检测程序kuduz探测新硬件:service kudzu start ( or restart)
      查看CPU信息:cat /proc/cpuinfo [dmesg | grep -i 'cpu'][dmidecode -t processor]
      查看内存信息:cat /proc/meminfo [free -m][vmstat]
      查看板卡信息:cat /proc/pci
      查看显卡/声卡信息:lspci |grep -i 'VGA'[dmesg | grep -i 'VGA']
      查看网卡信息:dmesg | grep -i 'eth'[cat /etc/sysconfig/hwconf | grep -i eth][lspci | grep -i 'eth']
      查看PCI信息:lspci (相比cat /proc/pci更直观)
      查看USB设备:cat /proc/bus/usb/devices
      查看键盘和鼠标:cat /proc/bus/input/devices
      查看系统硬盘信息和使用情况:fdisk & disk – l & df
      查看各设备的中断请求(IRQ):cat /proc/interrupts
      查看系统体系结构:uname -a
      查看及启动系统的32位或64位内核模式:isalist –v [isainfo –v][isainfo –b]
      查看硬件信息,包括bios、cpu、内存等信息:dmidecode
      测定当前的显示器刷新频率:/usr/sbin/ffbconfig –rev ?
      查看系统配置:/usr/platform/sun4u/sbin/prtdiag –v
      查看当前系统中已经应用的补丁:showrev –p
      显示当前的运行级别:who –rH
      查看当前的bind版本信息:nslookup –class=chaos –q=txt version.bind
      查看硬件信息:dmesg | more
      显示外设信息, 如usb,网卡等信息:lspci
      查看已加载的驱动:
      lsnod
      lshw
      查看当前处理器的类型和速度(主频):psrinfo -v
      打印当前的OBP版本号:prtconf -v
      查看硬盘物理信息(vendor, RPM, Capacity):iostat –E
      查看磁盘的几何参数和分区信息:prtvtoc /dev/rdsk/c0t0d0s
      显示已经使用和未使用的i-node数目:
      df –F ufs –o i
      isalist –v
      对于“/proc”中文件可使用文件查看命令浏览其内容,文件中包含系统特定信息:
      主机CPU信息:Cpuinfo
      主机DMA通道信息:Dma
      文件系统信息:Filesystems
      主机中断信息:Interrupts
      主机I/O端口号信息:Ioprots
      主机内存信息:Meninfo
      Linux内存版本信息:Version
    备注: proc – process information pseudo-filesystem 进程信息伪装文件系统
    
    cat /proc/cpuinfo 分析输出
    # 总核数 = 物理CPU个数 X 每颗物理CPU的核数 
    # 总逻辑CPU数 = 物理CPU个数 X 每颗物理CPU的核数 X 超线程数
    
    # 查看物理CPU个数
    cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l
    
    # 查看每个物理CPU中core的个数(即核数)
    cat /proc/cpuinfo| grep "cpu cores"| uniq
    
    # 查看逻辑CPU的个数
    cat /proc/cpuinfo| grep "processor"| wc -l
    
    
    -- ===============================================
    processor    :系统中逻辑处理核的编号。对于单核处理器,则课认为是其CPU编号,对于多核处理器则可以是物理核、或者使用超线程技术虚拟的逻辑核
    vendor_id    :CPU制造商
    cpu family   :CPU产品系列代号
    model      :CPU属于其系列中的哪一代的代号
    model name    :CPU属于的名字及其编号、标称主频
    stepping     :CPU属于制作更新版本
    cpu MHz      :CPU的实际使用主频
    cache size    :CPU二级缓存大小
    physical id    :单个CPU的标号
    siblings       :单个CPU逻辑物理核数
    core id        :当前物理核在其所处CPU中的编号,这个编号不一定连续
    cpu cores      :该逻辑核所处CPU的物理核数
    apicid         :用来区分不同逻辑核的编号,系统中每个逻辑核的此编号必然不同,此编号不一定连续
    fpu            :是否具有浮点运算单元(Floating Point Unit)
    fpu_exception  :是否支持浮点计算异常
    cpuid level    :执行cpuid指令前,eax寄存器中的值,根据不同的值cpuid指令会返回不同的内容
    wp             :表明当前CPU是否在内核态支持对用户空间的写保护(Write Protection)
    flags          :当前CPU支持的功能
    bogomips       :在系统内核启动时粗略测算的CPU速度(Million Instructions Per Second)
    clflush size   :每次刷新缓存的大小单位
    cache_alignment :缓存地址对齐单位
    address sizes   :可访问地址空间位数
    
    cat /proc/meminfo
    $cat /proc/meminfo
    MemTotal:        2052440 kB //总内存
    MemFree:           50004 kB //空闲内存
    Buffers:           19976 kB //给文件的缓冲大小
    Cached:           436412 kB //高速缓冲存储器(http://baike.baidu.com/view/496990.htm)使用的大小
    SwapCached:        19864 kB //被高速缓冲存储用的交换空间大小
    Active:          1144512 kB //活跃使用中的高速缓冲存储器页面文件大小
    Inactive:         732788 kB //不经常使用的高速缓冲存储器页面文件大小
    Active(anon):     987640 kB //anon:不久
    Inactive(anon):   572512 kB
    Active(file):     156872 kB
    Inactive(file):   160276 kB
    Unevictable:           8 kB
    Mlocked:               8 kB
    HighTotal:       1177160 kB //The total and free amount of memory, in kilobytes, that is not directly mapped into kernel space.
    HighFree:           7396 kB // The HighTotal value can vary based on the type of kernel used.
    LowTotal:         875280 kB // The total and free amount of memory, in kilobytes, that is directly mapped into kernel space.  used.
    LowFree:           42608 kB //The LowTotal value can vary based on the type of kernel
    SwapTotal:        489940 kB //交换空间总大小
    SwapFree:         450328 kB //空闲交换空间
    Dirty:               104 kB //等待被写回到磁盘的大小
    Writeback:             0 kB //正在被写回的大小
    AnonPages:       1408256 kB //未映射的页的大小
    Mapped:           131964 kB //设备和文件映射的大小
    Slab:              37368 kB //内核数据结构缓存的大小,可减少申请和释放内存带来的消耗
    SReclaimable:      14164 kB //可收回slab的大小
    SUnreclaim:        23204 kB //不可收回的slab的大小23204+14164=37368
    PageTables:        13308 kB //管理内存分页的索引表的大小
    NFS_Unstable:          0 kB //不稳定页表的大小
    Bounce:                0 kB //bounce:退回
    WritebackTmp:          0 kB //
    CommitLimit:     1516160 kB
    Committed_AS:    2511900 kB
    VmallocTotal:     122880 kB //虚拟内存大小
    VmallocUsed:       28688 kB //已经被使用的虚拟内存大小
    VmallocChunk:      92204 kB
    HugePages_Total:       0 //大页面的分配
    HugePages_Free:        0
    HugePages_Rsvd:        0
    HugePages_Surp:        0
    Hugepagesize:       2048 kB
    DirectMap4k:       10232 kB
    DirectMap2M:      899072 kB
    
    展开全文
  • LINUX 查看硬件设备

    2011-03-29 14:53:00
    Linux查看硬件信息及驱动设备用硬件检测程序kudzu探测硬件:service kudzu start ( or restart)查看CPU信息:cat /proc/cpuinfo查看板卡信息:cat /proc/pci查看PCI信息:lspci (相比cat /proc/pci更直观)查看...
  • linux查看系统硬件命令大全

    千次阅读 2016-02-23 18:48:39
    linux查看设备命令 系统 # uname -a # 查看内核/操作系统/CPU信息  # head -n 1 /etc/issue # 查看操作系统版本 # cat /proc/cpuinfo # 查看CPU信息  # hostname # 查看计算机名 # lspci -tv
  • linux常用查看硬件设备信息命令

    千次阅读 2020-03-11 09:38:22
    linux常用查看硬件设备信息命令 转载:http://blog.chinaunix.net/uid-26782198-id-3242120.htm linux常用查看硬件设备信息命令 # uname -a # 查看内核/操作系统/CPU信息 # head -n 1 /etc/issue # 查看操作系统版本...
  • Linux配置网络详细笔记

    千次阅读 多人点赞 2021-04-17 10:44:14
    查找端口冲突的应用9.linux arp命令10.arping命令探测IP是否冲突11.arp静态绑定配置:12.反弹shell实现远程控制3.配置主机名:4.网络配置命令4.1 IP配置4.2 route命令:3.3 netstat命令:3.4 iprou
  • Linux网络监控工具总结

    万次阅读 2016-10-17 23:23:15
    GitHub Linux网络监控工具总结 AderXCoding/system/tools/network_monitor本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可, 转载请注明出处 对任何规模的业务来说, 网络监控工具都...
  • 硬件检测程序kuduz探测硬件:service kudzu start ( or restart) 查看CPU信息:cat /proc/cpuinfo 查看板卡信息:cat /proc/pci 查看PCI信息:lspci (相比cat /proc/pci更直观) 查看内存信息:cat /proc/...
  • Linux下的硬件驱动——USB设备

    千次阅读 2008-05-01 07:21:00
    USB设备越来越多,而Linux硬件配置上仍然没有做到完全即插即用,对于Linux怎样配置和使用他们,也越来越成为困扰我们的一大问题。本文着力从Linux系统下设备驱动的架构,去阐述怎样去使用和配置以及怎样编制USB...
  • Linux 网络基础篇

    千次阅读 多人点赞 2020-05-30 22:47:36
    从今天开始开始更新Linux网络基础,希望大家多多关注,指出错误,我的Linux系统管理已经更新完成,有需要的可以去看看,链接: 链接: 从零开始学习Linux. Linux 网络基础篇第一章 计算机基础第一节 进制转换第二章...
  • linux网络编程

    千次阅读 2016-01-04 18:03:34
    linux网络编程linux网络编程 网络编程相关协议 1 TCPIP协议概述 2 OSI参考模型及TCPIP参考模型 3 TCP协议 4 UDP协议 5 协议的选择 网络相关概念 1 socket概念 2 socket类型 3 socket信息数据结构 4 数据存储优先顺序...
  • Linux下的硬件驱动——USB设备(上)(驱动配置部分) 赵明 (carl__zhao@163.com), 联想软件设计中心嵌入式研发处系统设计工程师 简介: USB设备越来越多,而Linux硬件配置上仍然没有做到...
  • Linux下的硬件驱动——USB设备(上)(驱动配置部分)USB设备越来越多,而Linux硬件配置上仍然没有做到完全即插即用,对于Linux怎样配置和使用他们,也越来越成为困扰我们的一大问题。本文着力从Linux系统下设备...
  • 硬件检测程序kuduz探测硬件:service kudzu start ( or restart)查看CPU信息:cat /proc/cpuinfo查看板卡信息:cat /proc/pci查看PCI信息:lspci (相比cat /proc/pci更直观)查看内存信息:cat /proc/meminfo...
  • linux kernel网络驱动

    千次阅读 2012-09-13 15:38:56
    Linux Device Driver书籍(17) http://linux.chinaunix.net/techdoc/develop/2008/09/28/1035250.shtml ... 网络接口是第 3 类标准的 Linux 设备, 本章描述它们如何与内核其他部分交互. 一
  • LINUX查看硬件配置命令

    万次阅读 2013-04-16 22:31:02
    今天安装了9台Linux服务器,型号完全不一样(有DELL、HP和IBM服务器),又懒得去对清单,如何在Linux下cpu的个数和核数呢?另外,nginx的cpu工作模式也需要确切的知道linux服务器到底有多少个逻辑cpu,不过现在...
  • Linux下的硬件驱动——USB设备(下)

    千次阅读 2007-08-29 10:19:00
    前言在上篇《 Linux下的硬件驱动--USB设备(上)(驱动配制部分)》中,我们知道了在Linux下如何去使用一些最常见的USB设备。但对于做系统设计的程序员来说,这是远远不够的,我们还需要具有驱动程序的阅读、修改和...
  • Linux下的硬件驱动——USB设备(上)

    千次阅读 2007-08-29 10:16:00
    USB设备越来越多,而Linux硬件配置上仍然没有做到完全即插即用,对于Linux怎样配置和使用他们,也越来越成为困扰我们的一大问题。本文着力从Linux系统下设备驱动的架构,去阐述怎样去使用和配置以及怎样编制USB...
  • 硬件检测程序kuduz探测硬件:service kudzu start ( or restart) 查看CPU信息:cat /proc/cpuinfo [dmesg | grep -i 'cpu'][dmidecode -t processor] 查看内存信息:cat /proc/meminfo [free -m]...
  • ping命令常用于测试源网络主机到目标网络主机的连通性,同时评估网络连接质量。 功能: (1)能验证网络的连通性 (2)会统计响应时间和TTL(IP包中的Time To Live,生存周期) 那么如何验证的呢? (1)ping命令...
  • Linux查看硬件信息的命令

    千次阅读 2013-05-07 13:12:53
    LINUX查看硬件配置命令 系统 # uname-a # 查看内核/操作系统/CPU信息  #head -n 1 /etc/issue # 查看操作系统版本 #cat /proc/cpuinfo # 查看CPU信息  #hostname # 查看计算机名 #lspci -tv # 列出所有...
  • 在上篇《 Linux下的硬件驱动--USB设备(上)(驱动配制部分)》中,我们知道了在Linux下如何去使用一些最常见的USB设备。但对于做系统设计的程序员来说,这是远远不够的,我们还需要具有驱动程序的阅读、修改和开发...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 14,298
精华内容 5,719
关键字:

linux探测网络硬件

linux 订阅