1. 前言
在Linux系统中,ls有相关的命令族或者命令群的,比如lshw
是查硬件信息的,lsusb
是查USB设备的。本文主要介绍以ls开头的命令行工具作用以及使用案例。
2. 使用lsscsi
命令查看SCSI设备或者主机属性
在Linux系统中,查看SCSI设备或者主机和它们的属性列表
[root@zcwyou ~]# lsscsi -g
输出结果
[0:0:0:0] disk VMware, VMware Virtual S 1.0 /dev/sda /dev/sg0
[2:0:0:0] cd/dvd NECVMWar VMware IDE CDR10 1.00 /dev/sr0 /dev/sg1
3. 使用lsblk
命令查看块设备
[root@zcwyou ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 40G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 39G 0 part
├─centos-root 253:0 0 37G 0 lvm /
└─centos-swap 253:1 0 2G 0 lvm [SWAP]
sr0 11:0 1 918M 0 rom
查看文件系统
[root@zcwyou ~]# lsblk -f
NAME FSTYPE LABEL UUID MOUNTPOINT
sda
├─sda1 xfs 3214fea5-66c2-43cc-b39f-f7cf2d823d65 /boot
└─sda2 LVM2_member keHaHQ-3S8r-n7jf-cUmU-gluN-Hffr-LezH9P
├─centos-root xfs 05b52f24-f7f5-4132-8637-7bb972b74119 /
└─centos-swap swap fe1dd696-959b-4b0a-af89-99eab9e18ce0 [SWAP]
sr0 iso9660 CentOS 7 x86_64 2018-11-25-21-21-31-00
查看块设备相关权限
[root@zcwyou ~]# lsblk -m
NAME SIZE OWNER GROUP MODE
sda 40G root disk brw-rw—-
├─sda1 1G root disk brw-rw—-
└─sda2 39G root disk brw-rw—-
├─centos-root 37G root disk brw-rw—-
└─centos-swap 2G root disk brw-rw—-
sr0 918M root cdrom brw-rw—-
4. 使用lsb_release
查看Linux发行版相关规范信息
安装lsb_release命令
[root@zcwyou ~]# yum -y install redhat-lsb-core
[root@zcwyou ~]# lsb_release
LSB Version: :core-4.1-amd64:core-4.1-noarch
[root@zcwyou ~]# lsb_release -a
LSB Version: :core-4.1-amd64:core-4.1-noarch
Distributor ID: CentOS
Description: CentOS Linux release 7.6.1810 (Core)
Release: 7.6.1810
Codename: Core
5. Linux系统使用lsusb
查看USB设备信息
安装lsusb
命令
[root@zcwyou ~]# yum -y install usbutils
[root@zcwyou ~]# lsusb
[root@zcwyou ~]# lscpu
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
CPU(s): 2
On-line CPU(s) list: 0,1
Thread(s) per core: 1
Core(s) per socket: 2
座: 1
NUMA 节点: 1
厂商 ID: GenuineIntel
CPU 系列: 6
型号: 78
型号名称: Intel(R) Core(TM) i5-6300U CPU @ 2.40GHz
步进: 3
CPU MHz: 2495.999
BogoMIPS: 4991.99
虚拟化: VT-x
超管理器厂商: VMware
虚拟化类型: 完全
L1d 缓存: 32K
L1i 缓存: 32K
L2 缓存: 256K
L3 缓存: 3072K
NUMA 节点0 CPU: 0,1
Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss ht syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon nopl xtopology tsc_reliable nonstop_tsc eagerfpu pni pclmulqdq vmx ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch ssbd ibrs ibpb stibp tpr_shadow vnmi ept vpid fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 invpcid rtm mpx rdseed adx smap clflushopt xsaveopt xsavec arat spec_ctrl intel_stibp flush_l1d arch_capabilities
7. Linux使用lspci
命令查看系统中PCI总线和连接了哪些设备
安装lspci
命令
[root@CentOS7 ~]# yum provides lspci
[root@zcwyou ~]# lspci
8. Linux使用lshw
命令查看服务器硬件详细信息
Linux安装lshw
命令
[root@zcwyou ~]# yum -y install lshw
使用复杂格式查看硬件信息
[root@zcwyou ~]# lshw -short
只查看存储和控制器信息
[root@zcwyou ~]# lshw -class disk -class storage
使用HTML格式只查看网卡信息
[root@zcwyou ~]# lshw -html -class network
以图形化界面显示硬件配置信息
[root@zcwyou ~]# lshw-gtk
了解如何使用lshw命令查找有关硬盘,RAM速度,pci设备等的更多信息。您也可以使用这些Linux命令来收集有关Linux系统和硬件的信息。
9. Linux使用ls
命令查看目录内容
长格式输出目录内容
ls -l
附加一个显示文件性质的字符
ls -F
查看所有文件包括隐藏文件
ls -a
递归列出子目录
ls -R
收集链接符号或目录的信息
ls -d
按修改时间对文件列表进行排序
ls -t
以人类可读的单位显示文件大小
ls -h
忽略以~符号结尾的备份文件,不显示它们
ls -B
显示SELinux安全文本
ls -Z
优先显示目录内容,服务器上使用最有用
ls –group-directories-first -l
颜色化显示输出结果
ls –color
不显示以.txt结尾的文件
ls --hide='*.txt' -l
10. 使用lsof
显示正在打开的Linux文件、网络端口和进程等
列出所有正在打开的文件
lsof | less
查看正在被zcwyou
用户打开的文件
lsof -u zcwyou -i
查看所有被进程号为8888的进程打开的IPv4网络文件:
lsof -i 4 -a -p 8888
查找打开或占用了80端口的进程
lsof -i TCP:80
列出被打开的IPv6网络文件
lsof -i 6
列出被打开的IPv4网络文件
lsof -i 4
列出占用TCP端口号1-1024的进程
lsof -i TCP:1-1024
列出所有占用TCP或UDP端口号为2000-2005的文件
lsof -i @127.0.0.1:2000-2005
列出在/dev/sr0设备中,所有被打开的文件
lsof /dev/sr0
查出为什么DVD光驱或者光盘无法弹出的原因
lsof /dev/dvd
查看所有被打开的文件,除了root用户的
lsof -i -u^root
查出到底是谁正在查找/etc/foobar这个文件
lsof /etc/foobar
11. 使用lsattr
列出第二个扩展文件系统上的文件属性
即使你是root用户,也无法编辑或删除文件?使用lsattr
列出这些文件:
lsattr /etc/passwd
使用lsattr
命令给某些文件加写保护
echo 'Test' > foobar
chattr +i foobar
查看文件属性
lsattr foobar
试试用root用户删除这个文件
rm foobar
执行结果:
rm: 不能删除`foobar’: 没有操作权限
即无法修改文件:无法删除或重命名,无法为此文件创建链接,也无法将数据写入文件:
删除这个属性:
chattr -i foobar
12. 使用lshal命令查看硬件抽象层的设备数据库信息
HAL (Hardware Abstraction Layer) 提供一种简易的方式发现系统中的硬件
查看系统中的硬件信息
lshal -u /org/freedesktop/Hal/devices/computer
13. 使用lsinitramfs
命令显示给定initramfs映像的内容
它允许用户快速检查一个(或多个)指定的initramfs文件的内容。这有助于找出initramfs映像中是否包含给定驱动程序(例如RAID设备驱动程序):
查看当前Linux系统中的initramfs内容
lsinitramfs /boot/initrd.img-$(uname -r)
查找是否包含透明加密或者解密驱动
lsinitramfs /boot/initrd.img-$(uname -r) | grep 'dm-'
14. 使用lsmod
命令所以正在加载的设备驱动
lsmod
15. 使用lspcmcia
命令
查找有关由Linux驱动的系统中存在的PCMCIA套接字和设备的信息:
lspcmcia
16. Linux使用lswm
命令
使用此命令发现新的wiimotes(Wii Remote) – 任天堂Wii游戏机的主控制器。它可以与X一起使用来控制光标等等:
lswm
17. 使用lsdvd
命令查看DVD光盘的内容
使用此命令读取DVD的内容并将内容打印到显示器并转储以便在外部应用程序中进一步处理。
默认输出,以人类可读的方式显示
lsdvd
查看音频信息
lsdvd -a
查看章节信息
lsdvd -c
查看字幕信息
lsdvd -s
其它功能演示
lsdvd -s -t track-number
lsdvd -a -t 1
你可以使用mplayer播放DVD中的内容
mplayer dvd://1 -dvd-device /dev/dvd
18. 使用lslk
命令列出与系统本地文件关联的所有锁
lslk
19. lsmbox
命令列出所有cgroup(控制组)
使用此命令列出所有cgroup(控制组),Linux内核功能用于限制,计算和隔离进程组的资源使用情况(如CPU,内存,磁盘I / O等)。
lscgroup
20. 使用lsdiff
查看修补程序修改了哪些文件
对补丁中文件的顺序进行排序,您可以使用:
lsdiff patch | sort -u | xargs -rn1 filterdiff patch -i
仅显示修补程序中添加的文件:
lsdiff -s patch | grep ‘^+’ | cut -c2- | xargs -rn1 filterdiff patch -i
要显示所有文件的标题:
lsdiff -n patch | (while read n file do sed -ne "n,(($n+1))p" patch done)
21. 使用lspst
列出MS Outlook个人文件夹的文件数据
使用此命令列出PST(MS Outlook个人文件夹)文件数据。它生成一个简单的数据列表(联系人,电子邮件主题等):
lspst mypst-file
22. 使用lsdnssec命令来模糊有关DNSSEC相关文件的信息
这些文件可以在命令行中指定,也可以在命令行中给出的目录中找到。 -d标志控制lsdnssec输出中的详细信息量。
lsdnssec file
lsdnssec
显示有关其收集信息的每个区域的以下信息:
关键信息
显示关于当前使用的密钥的关键信息。包含一个条形图,显示密钥的年龄与配置的预期密钥生存时间的关系。
此信息是从lsdnssec找到的任何.krf文件中收集的。
滚动状态
如果通过rollerd滚动任何区域键,则显示滚动状态。还会显示达到下一个状态所需的时间。
此信息是从lsdnssec找到的任何.rollrec文件中收集的。
评论前必须登录!
注册