Tìm hiểu chính xác những thiết bị nào bên trong máy tính Linux của bạn hoặc được kết nối với nó. Chúng tôi sẽ bao gồm 12 lệnh để liệt kê các thiết bị được kết nối của bạn.
Dùng 12 lệnh trong cơ bản
Tuy nhiên, có nhiều cách để nuôi mèo, tôi sẵn sàng đặt cược rằng có nhiều cách hơn để liệt kê các thiết bị được kết nối hoặc đặt bên trong máy tính Linux của bạn. Chúng tôi sẽ cho bạn thấy 12 người trong số họ. Và đó không phải là tất cả trong số họ!
Chắc chắn, có rất nhiều sự trùng lặp trong thông tin mà bạn có thể thoát ra khỏi các lệnh này, vậy tại sao lại phải mô tả nhiều trong số chúng?
Vâng, đối với một điều, các biến thể trong nội dung và chi tiết làm cho chúng đủ khác nhau mà một số người sẽ thích một phương pháp hơn một phương pháp khác. Định dạng đầu ra của một lệnh có thể tự cho vay đặc biệt tốt cho một trường hợp sử dụng cụ thể. Định dạng của một lệnh khác có thể phù hợp lý tưởng với lệnh được truyền qua grep
hoặc phương pháp xử lý tiếp theo khác.
Chủ yếu mặc dù, nó là để làm cho bài viết càng chung chung càng tốt. Thay vì quyết định những lệnh nào sẽ được quan tâm hoặc sử dụng cho độc giả của chúng tôi, chúng tôi muốn cung cấp một mẫu rộng rãi các lệnh có sẵn và để độc giả của chúng tôi chọn những lệnh nào họ sẽ sử dụng và những lệnh nào họ sẽ bỏ qua.
Một số cài đặt cần thiết
Hầu hết các lệnh này được bao gồm trong phân phối Linux của bạn theo mặc định. Ubuntu, Fedora và Manjaro đã được sử dụng làm mẫu phân phối đại diện từ các nhánh chính của các gia đình Debian, Red Hat và Arch.
Tất cả ba bản phân phối cần thiết để cài đặt procinfo
, cung cấp lsdev
lệnh. Các lsscsi
lệnh cũng cần phải được cài đặt trên cả ba.
Để cài đặt lsdev
và lsscsi
, sử dụng các lệnh này.
Ubuntu:
sudo apt-get cài đặt Procinf
sudo apt-get cài đặt lsscsi
Fedora:
sudo dnf cài đặt Procinfo
sudo dnf cài đặt lsscsi
Manjaro
sudo pacman -Syu Procinfo
sudo pacman -Syu lsscsi
Đáng ngạc nhiên, Manjaro, nổi tiếng là một loại phân phối trần trụi là phân phối có hầu hết các lệnh chúng ta sẽ xem xét cài đặt sẵn.
Ubuntu và Fedora cần hwinfo
cài đặt, và Fedora cũng cần lshw
và hdparm
cài đặt.
Ubuntu:
sudo apt-get cài đặt hwinfo
Fedora:
sudo dnf cài đặt hwinfo
sudo dnf cài đặt lshw
sudo dnf cài đặt hdparm
1. Lệnh mount
Lệnh mount được sử dụng để gắn kết các hệ thống tập tin .
Nhưng việc ban hành lệnh không có tham số sẽ khiến nó liệt kê tất cả các hệ thống tập tin được gắn kết, cũng như các thiết bị mà chúng được đặt. Vì vậy, chúng ta có thể sử dụng điều này như một phương tiện để khám phá những thiết bị đó.
gắn kết
Đầu ra từ mount
có thể dài hơn bạn mong đợi, đặc biệt nếu bạn đã sử dụng snap
phương pháp để cài đặt phần mềm. Mỗi lần bạn sử dụng, snap
bạn có được một hệ thống tập tin giả khác và chúng được liệt kê theo mount
. Tất nhiên, những thứ này không có các thiết bị vật lý liên quan đến chúng, vì vậy chúng chỉ che khuất hình ảnh thật.
Nếu bạn phát hiện ra một hệ thống tập tin thực sự trong danh sách đang ngồi trên ổ cứng, chúng ta có thể cô lập nó với grep
.
Các ổ đĩa cứng được xác định theo tên, thường được gọi là sd sd. Các phân vùng được xác định bằng cách thêm 1 cho phân vùng đầu tiên và 2 cho phân vùng thứ hai, v.v.
Vì vậy, ổ cứng đầu tiên sẽ là sda và phân vùng đầu tiên trên ổ đĩa đó sẽ được gọi là sda1. Ổ đĩa cứng được giao tiếp thông qua các tệp thiết bị đặc biệt (được gọi là tệp khối) trong / dev và sau đó được gắn ở đâu đó trên cây hệ thống tệp.
Lệnh này được sử dụng grep
để lọc ra các chi tiết của bất kỳ ổ đĩa nào bắt đầu với bản sd sd.
gắn kết | grep / dev / sd
Đầu ra chứa ổ cứng duy nhất trong máy được sử dụng để nghiên cứu bài viết này.
Phản hồi từ mount
cho chúng tôi biết rằng ổ đĩa / dev / sda được gắn tại / (gốc của cây hệ thống tập tin) và nó có hệ thống tập tin ext4. Các rwv trên mạng cho biết nó đã được gắn ở chế độ đọc-ghi
Relatime là lược đồ được sử dụng bởi các thói quen cập nhật dấu thời gian của tệp. Thời gian truy cập không được ghi vào đĩa trừ khi thời gian sửa đổi (mtime) hoặc thời gian thay đổi (ctime) của tệp gần đây hơn thời gian truy cập gần nhất hoặc thời gian truy cập (atime) cũ hơn ngưỡng do hệ thống xác định . Điều này giúp giảm đáng kể số lượng cập nhật đĩa cần diễn ra đối với các tệp thường xuyên truy cập.
Các lỗi của Wap = remount-ro chỉ ra rằng nếu có đủ lỗi nghiêm trọng, hệ thống tập tin sẽ được xử lý lại ở chế độ chỉ đọc.
Để có thể di chuyển qua sản lượng từ mount
và dễ dàng hơn chỗ những loại phân vùng được gắn trên các thiết bị, đường ống đầu ra từ mount
thông qua less
.
gắn kết | ít hơn
Cuộn qua đầu ra cho đến khi bạn thấy các hệ thống tệp được kết nối với / dev các tệp đặc biệt.
2. Lệnh lsblk
Các lsblk
lệnh liệt kê các thiết bị khối , mount point của họ, và các thông tin khác. Nhập lsblk
vào một dòng lệnh:
lsblk
Đầu ra cho thấy:
- Tên : tên của thiết bị khối
- Maj: Min : Số chính hiển thị loại thiết bị. Số tối thiểu là số thiết bị hiện tại trong danh sách các thiết bị thuộc loại đó. 7: 4, ví dụ, có nghĩa là thiết bị lặp số 4.
- RM : Thiết bị có thể tháo rời hay không. 0 có nghĩa là không, 1 có nghĩa là có.
- Kích thước là dung lượng của thiết bị.
- RM : Cho dù thiết bị chỉ đọc hay không. 0 có nghĩa là không, 1 có nghĩa là có.
- Loại : Loại thiết bị, ví dụ: loop, dir (thư mục), đĩa, rom (CD ROM), v.v.
- Mountpoint : Nơi hệ thống tập tin của thiết bị được gắn kết.
Để khử lộn xộn đầu ra và loại bỏ các thiết bị lặp, chúng ta có thể sử dụng -e
tùy chọn (loại trừ) và cung cấp số loại thiết bị mà chúng ta muốn bỏ qua.
Lệnh này sẽ gây ra lsblk
bỏ qua các thiết bị loop (7) và cd room (11).
lsblk -e 7,11
Kết quả bây giờ chỉ chứa sda ổ cứng.
3. Lệnh df
Các df
báo cáo lệnh trên dung lượng ổ cứng và đã qua sử dụng và còn trống .
Gõ df
vào dòng lệnh và nhấn Enter.
df
Bảng đầu ra cho thấy:
- Filesystem : Tên của hệ thống tập tin này.
- Khối 1K : Số khối 1K có sẵn trên hệ thống tệp này.
- Được sử dụng : Số khối 1K đã được sử dụng trên hệ thống tệp này.
- Có sẵn : Số khối 1K không được sử dụng trên hệ thống tệp này.
- Sử dụng% : Lượng không gian được sử dụng trong hệ thống tệp này được cung cấp dưới dạng phần trăm.
- Tệp : Tên hệ thống tệp, nếu được chỉ định trên dòng lệnh.
- Mounted on : Điểm gắn kết của hệ thống tập tin.
Để xóa các mục không mong muốn khỏi đầu ra, hãy sử dụng -x
tùy chọn (loại trừ). Lệnh này sẽ ngăn các mục thiết bị vòng lặp được liệt kê.
df -x squashfs
Đầu ra nhỏ gọn dễ dàng hơn nhiều để phân tích các thông tin quan trọng.
4. Lệnh fdisk
Các fdisk
lệnh là một công cụ được thiết kế để thao tác các bảng phân vùng đĩa, nhưng nó có thể được sử dụng để xem thông tin là tốt. Chúng ta có thể sử dụng điều này để lợi thế khi chúng ta đang điều tra các thiết bị trong máy tính.
Chúng tôi sẽ sử dụng -l
tùy chọn (danh sách) để liệt kê các bảng phân vùng. Bởi vì đầu ra có thể rất dài, chúng tôi sẽ dẫn đầu ra từ fdisk
xuyên qua less
. Bởi vì fdisk
có khả năng thay đổi bảng phân vùng đĩa, chúng ta phải sử dụng sudo
.
sudo fdisk -l
Bằng cách cuộn qua less
bạn sẽ có thể xác định các thiết bị phần cứng. Đây là mục cho sda ổ cứng. Đây là ổ cứng vật lý 10 GB.
Bây giờ chúng tôi biết danh tính của một trong những thiết bị phần cứng, chúng tôi có thể yêu cầu fdisk
báo cáo về mục đó một mình.
sudo fdisk -l / dev / sda
Chúng tôi nhận được một đầu ra có chiều dài giảm đáng kể.
5. Tập tin / Proc
Các tập tin giả trong / Proc có thể được xem để có được một số thông tin hệ thống. Tệp chúng ta sẽ xem là / Proc / mounts, sẽ cung cấp cho chúng ta một số thông tin liên quan đến các hệ thống tệp được gắn. Chúng tôi sẽ không sử dụng gì lớn hơn cat
để xem các tập tin.
mèo / Proc / gắn kết
Danh sách hiển thị tệp thiết bị đặc biệt trong / dev được sử dụng để giao tiếp với thiết bị và điểm gắn kết trên cây hệ thống tệp.
Chúng tôi có thể tinh chỉnh danh sách bằng cách sử dụng grep
để tìm các mục có / dev / sd trong đó. Điều này sẽ lọc ra các ổ đĩa vật lý.
mèo / Proc / gắn kết | grep / dev / sd
Điều này cho chúng tôi một báo cáo dễ quản lý hơn nhiều.
Chúng tôi có thể bao gồm một chút bằng cách sử dụng grep
để tìm kiếm các thiết bị có tập tin thiết bị đặc biệt / dev / sd và / dev / sr. Điều này sẽ bao gồm ổ đĩa cứng và CD ROM cho máy này.
mèo / Proc / phân vùng | grep s [nd]
Hiện có hai thiết bị và một phân vùng được bao gồm trong đầu ra.
6. Lệnh lspci
Các lspci
lệnh liệt kê tất cả các thiết bị PCI trong máy tính của bạn.
lspci
Thông tin được cung cấp là:
- Khe cắm : Khe cắm thiết bị PCi được trang bị trong
- Lớp : Lớp của thiết bị.
- Tên nhà cung cấp : Tên của nhà sản xuất.
- Tên thiết bị : Tên của thiết bị.
- Hệ thống con : Tên nhà cung cấp hệ thống con (nếu thiết bị có hệ thống con).
- Tên hệ thống con : Nếu thiết bị có hệ thống con.
- Số sửa đổi : Số phiên bản của thiết bị
- Giao diện lập trình : Giao diện lập trình, nếu thiết bị cung cấp một.
7. Lệnh lsusb
Các lsusb
lệnh sẽ liệt kê các thiết bị được kết nối với cổng USB trên máy tính của bạn cũng như các thiết bị USB được kích hoạt được xây dựng vào máy tính của bạn.
lsusb
Máy tính thử nghiệm này có máy quét Canon được gắn vào đó là thiết bị USB 5 và ổ USB ngoài là thiết bị USB 4. Thiết bị 3 và 1 là trình xử lý giao diện USB bên trong.
Bạn có thể nhận được một danh sách dài hơn bằng cách sử dụng -v
tùy chọn (dài dòng) và thậm chí nhiều phiên bản dài hơn bằng cách sử dụng -vv
.
8. Lệnh lsdev
Các lsdev
lệnh hiển thị thông tin về tất cả các thiết bị được cài đặt .
Lệnh này tạo ra rất nhiều đầu ra, vì vậy chúng tôi sẽ chuyển nó qua ít hơn.
lsdev | ít hơn
Có nhiều thiết bị phần cứng được liệt kê trong đầu ra.
9. Lệnh lshw
Các lshw
lệnh liệt kê các thiết bị kết nối với máy tính của bạn. Đây là một lệnh khác với rất nhiều đầu ra. Trên máy tính thử nghiệm, có hơn 260 dòng thông tin được tạo ra. Chúng tôi sẽ đưa nó qua less
một lần nữa.
Lưu ý rằng bạn cần sử dụng sudo
với lshw
để tận dụng tối đa nó. Nếu bạn không, nó sẽ không thể truy cập tất cả các thiết bị.
sudo lshw | ít hơn
Đây là mục nhập cho CD ROM với giao diện SCSI. Như bạn có thể thấy thông tin được cung cấp cho từng thiết bị rất chi tiết. lshw
đọc hầu hết thông tin từ các tệp khác nhau trong / Proc.
Nếu bạn muốn một đầu ra ngắn hơn, ít chi tiết hơn, bạn có thể sử dụng --short
tùy chọn.
10. Lệnh lsscsi
Như bạn có thể tưởng tượng bây giờ, lsscsi
lệnh liệt kê các thiết bị SCSI được kết nối với máy tính của bạn.
lsscsi
Dưới đây là các thiết bị SCSI được kết nối với máy thử nghiệm này.
11. Lệnh dmidecode
Các dmidecode
lệnh giải mã các bảng Giao diện quản lý máy tính để bàn (DMI) và trích xuất thông tin liên quan đến phần cứng được kết nối với máy tính và bên trong máy tính.
DMI đôi khi cũng được gọi là SMBIOS (Hệ thống đầu vào / đầu ra cơ bản quản lý hệ thống) mặc dù chúng thực sự là hai tiêu chuẩn khác nhau.
Một lần nữa, chúng tôi sẽ dẫn điều này qua less
.
mã hóa | ít hơn
Các dmidecode
lệnh có thể báo cáo về hơn 40 loại phần cứng khác nhau.
12. Lệnh hwinfo
Các hwinfo
lệnh là các tiết hầu hết tất cả chúng. Khi chúng tôi nói rằng bạn cần bỏ qua một cái gì đó less
, lần này không phải là tùy chọn. Trên máy tính thử nghiệm, nó tạo ra 5850 dòng đầu ra!
Bạn có thể bắt đầu mọi thứ một cách nhẹ nhàng bằng cách bao gồm --short
tùy chọn.
hwinfo -
Nếu bạn thực sự cần phải xem chi tiết hạt mịn nhất, lặp lại điều này và bỏ qua --short
tùy chọn.