Đường dẫn nguồn của thiết bị lặp


8

Vì tò mò, tôi muốn biết có cách nào để tìm ra nguồn của phân vùng được gắn không?

Ví dụ: đầu ra của df -hlà:

/ dev / loop1 3M 3M 0 100% / phương tiện / vòng lặp

Từ đầu ra này, tôi biết một thiết bị lặp 3M được gắn vào /media/loop, nhưng tôi không có đầu mối để xác định vị trí chính xác của /dev/loop1thiết bị.

root@SHW:~# mount -o loop /home/SHW/Downloads/TinyCore-current.iso
/mnt/loop mount: block device /home/SHW/Downloads/TinyCore-current.iso is write-protected, mounting read-only
root@SHW:~# tail -n1 /proc/mounts
/dev/loop1 /mnt/loop iso9660 ro,relatime 0 0

Làm cách nào để tìm ra đường dẫn tuyệt đối của /dev/loop1f Tôi không biết ai đã gắn các phân vùng đó? (Trong trường hợp này là đường dẫn /home/SHW/Downloads/TinyCore-current.iso.)

Câu trả lời:


10

Sử dụng losetup's --listlựa chọn :

$ losetup --list /dev/loop0
NAME       SIZELIMIT OFFSET AUTOCLEAR RO BACK-FILE
/dev/loop0         0      0         0  0 /tmp/backing-file

Nếu bạn chỉ muốn tệp, sử dụng -Otùy chọn để chọn cột:

$ losetup --list --noheadings -O BACK-FILE /dev/loop0
/tmp/backing-file

Tùy chọn này là một phần của các phiên bản gần đây của util-linux. Các phiên bản trước chỉ hỗ trợ -atùy chọn, liệt kê tất cả các thiết bị hoạt động ở định dạng khó xử lý hơn:

$ losetup -a
/dev/loop0: []: (/tmp/backing-file)

Dù bằng cách nào, nó không quá nặng nề để xử lý theo cách bạn muốn.


Một cũng có thể chỉ cần sử dụng losetup /dev/(target).
neverMind9

0

Để có được đường dẫn tập tin sao lưu, hãy sử dụng:

cat /sys/block/loop1/loop/backing_file

-2

Tôi không có manh mối để xác định vị trí chính xác của thiết bị / dev / loop1.

Bạn có ý nghĩa gì bởi vị trí chính xác của /dev/loop1thiết bị? /dev/loop*trong đó * là một số là các thiết bị loopback (ảo), được sử dụng để gắn kết các hệ thống tập tin không nằm trên các thiết bị khối khác, chẳng hạn như đĩa cứng. Bạn có thể liệt kê chúng và xem nơi chúng được gắn kết, sử dụng mountlệnh và bạn có thể thiết lập một cái mới bằng cách sử dụng losetuplệnh.

Nếu bạn muốn biết một /dev/nút được gắn vào thiết bị vật lý nào , thì có nhiều cách để làm điều đó. Bạn có thể sử dụng udevadmđể truy vấn udev. Trên hệ thống của tôi, các lệnh sau cung cấp thêm thông tin về sdađĩa:

$ udevadm info --query=path --name=sda
/devices/pci0000:00/0000:00:1f.2/ata4/host3/target3:0:0/3:0:0:0/block/sda
$ udevadm info --query=symlink --name=sda
disk/by-id/ata-ST3500418AS_6VMD78AY disk/by-id/wwn-0x5000c500224ac74f

Ngoài những thứ này, bạn có thể sử dụng lspciđể có thêm thông tin về nơi thiết bị được gắn vật lý. Trên hệ thống của tôi, /dev/sdađược gắn vào bộ điều khiển sata:

$ lspci
[snip]
00:1f.2 SATA controller: Intel Corporation 7 Series/C210 Series Chipset Family 6-port SATA Controller [AHCI mode] (rev 04)
[snip]
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.