"Fdisk -l" যেমন LVM লজিক্যাল ভলিউমের জন্য পার্টিশনের তালিকা এবং তাদের ধরণের তালিকা পছন্দ করে?


22

আপনি কি জানেন যে "fdisk -l" কীভাবে ড্রাইভ পার্টিশন সারণি তালিকাভুক্ত করে এবং প্রতিটি পার্টিশনের জন্য পার্টিশন আইডি / প্রকারগুলি প্রদর্শন করে?

LVM লজিক্যাল ভলিউমের জন্য পার্টিশন আইডি পাওয়ার অনুরূপ উপায় আছে কি?

সম্পাদনা: আমি "lvs" সম্পর্কে সচেতন, যা বেশিরভাগই আমি সন্ধান করছি (এটি আমাকে যৌক্তিক খণ্ডগুলির তালিকা দেয়, "fdisk -l" এর মতো ধরণের ... বাদে এটি কী কী তা জানার জন্য দরকারী লজিকাল ভলিউমগুলির পার্টিশন ধরণের (যা আমি "ভার্চুয়াল পার্টিশন" হিসাবে ভাবতে চাই) সেগুলি হয় info তথ্যটি ডানদিকের শেষ দুটি কলামে "fdisk -l" তালিকাভুক্ত করে ((যেমন "8e" শারীরিক ক্ষেত্রে এলভিএম পার্টিশন, বা লিনাক্স এক্সট্রা ইত্যাদির জন্য "83")।

আমি যে সরঞ্জামটি সন্ধান করছি এটি LVM এর অংশ নাও থাকতে পারে; সম্ভবত কিছু অন্যান্য ইউটিলিটি যা একটি পার্টিশন দেওয়া পার্টিশন আইডি / প্রিন্ট মুদ্রণ করতে পারে?


1
cat /etc/fstabএমনকি ফাইলসিস্টেমের প্রকারটি এমনকি lvm সহ প্রদর্শনের চেষ্টা করুন ... মনে হচ্ছে সুস্পষ্ট, তবে এটি প্রশ্নের উত্তর দেয় ...

উত্তর:


16

লিনাক্স এলভিএমের পার্টিশন আইডি 8e, fdisk দ্বারা প্রতিবেদন করা হয়েছে।

$ sudo fdisk -l

Disk /dev/sda: 8589 MB, 8589934592 bytes
255 heads, 63 sectors/track, 1044 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x00008ec7

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1        1013     8136891   8e  Linux LVM
/dev/sda2            1014        1044      249007+   5  Extended
/dev/sda5            1014        1044      248976   83  Linux

আপনার পক্ষে এটি পরিচালনা করা সহজ করার জন্য LVM হ'ল স্টোরেজ ডিভাইসের উপরে একটি বিমূর্ত স্তর। আমি নিশ্চিত নই যে এফডিআইএসকি যা চায় তার বাইরে আর কোন তথ্য আপনি চান, কারণ এলভিএমের পার্টিশন আইডি প্রদর্শিত হয়। তবে, LVM লজিক্যাল ভলিউম সম্পর্কে অতিরিক্ত তথ্যের জন্য আপনি 'lvscan', 'lvs' এবং 'lvdisplay' ব্যবহার করতে পারেন।

$ sudo lvscan 
  ACTIVE            '/dev/ops1test/root' [7.35 GB] inherit
  ACTIVE            '/dev/ops1test/swap_1' [388.00 MB] inherit

$ sudo lvs 
  LV     VG       Attr   LSize   Origin Snap%  Move Log Copy%  Convert
  root   ops1test -wi-ao   7.35G                                      
  swap_1 ops1test -wi-ao 388.00M                                      

$ sudo lvdisplay
  --- Logical volume ---
  LV Name                /dev/ops1test/root
  VG Name                ops1test
  LV UUID                BfKOpy-L7Ql-905o-7tFk-nnsV-0c7I-w4g9y6
  LV Write Access        read/write
  LV Status              available
  # open                 1
  LV Size                7.35 GB
  Current LE             1881
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           252:0

  --- Logical volume ---
  LV Name                /dev/ops1test/swap_1
  VG Name                ops1test
  LV UUID                8SNfQ9-Hlfk-Edsb-vmL1-DeE3-nBRR-YAM1dV
  LV Write Access        read/write
  LV Status              available
  # open                 2
  LV Size                388.00 MB
  Current LE             97
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           252:1

একইভাবে, আপনি ভলিউম গ্রুপ সম্পর্কে নিজেই 'vgscan', 'vgs' এবং 'vgdisplay' দিয়ে তথ্য শিখতে পারেন।

$ sudo vgscan
  Reading all physical volumes.  This may take a while...
  Found volume group "ops1test" using metadata type lvm2

$ sudo vgs
  VG       #PV #LV #SN Attr   VSize VFree 
  ops1test   1   2   0 wz--n- 7.76G 32.00M

$ sudo vgdisplay
  --- Volume group ---
  VG Name               ops1test
  System ID             
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  3
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                2
  Open LV               2
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               7.76 GB
  PE Size               4.00 MB
  Total PE              1986
  Alloc PE / Size       1978 / 7.73 GB
  Free  PE / Size       8 / 32.00 MB
  VG UUID               ofpvks-2EDZ-limu-0wAh-tYUN-ISG3-mSS65O

4
এছাড়াও: শারীরিক আয়তন সম্পর্কে তথ্য পাওয়ার জন্য পিভিএস, পিভিডিপ্লাই এবং পিভিস্ক্যান ...
ফ্রেইহাইট

9

লজিকাল ভলিউমগুলিতে পুরানো ডস পার্টিশনগুলির মতো "টাইপ" থাকে না। ইউনিক্স ফাইলগুলির মতো, সেগুলি কী তা জানতে আপনাকে সেগুলি পড়তে হবে। এর মতো কিছুতে কৌশলটি করা উচিত:

lvs --all --noheadings | while read lv vg rest; do file --dereference --special-files "/dev/mapper/$(echo $vg | sed 's/-/--/')-$lv"; done

এই আদেশটি যে আউটপুট দেবে তার উদাহরণ এখানে দেওয়া হয়েছে (কিছুটা ছাঁটা হয়েছে):

[...]
/dev/mapper/VolGroup00-LogVol00: Linux rev 1.0 ext4 filesystem data, UUID=b000000e-00f0-0cde-b000-fa0d000ddc00 (extents) (64bit) (large files) (huge files)
[...]

2
দুর্দান্ত উত্তর দেখে মনে হচ্ছে ওপি কী চেয়েছে তা অন্য কেউ বুঝতে পারেনি। আপনার স্ক্রিপ্টে আমাকে একটি পরিবর্তন করতে হয়েছিল: আমি ফাইল কমান্ডে --dereferences বিকল্পটি যুক্ত করেছি। প্রতিটি এলভি ডিভাইস ম্যাপার দ্বারা / dm-X এর সাথে যুক্ত থাকে।
কোডওয়াগল

1
ধন্যবাদ @ কোডওগল ধন্যবাদ; বিকল্প যুক্ত। আমি যখন '09-এ উত্তরটি লিখেছিলাম তখন বিকল্পটির প্রয়োজন ছিল না, তবে সময় পরিবর্তন হয়েছিল।
টেডি

2
এটি গ্রহণযোগ্য উত্তর হওয়া উচিত!
ল্যানক্সিক্স

1
যখন আপনার ভিজি নামটি ড্যাশ করবেন তখন কাজ করে না, এগুলি দ্বিগুণ হয়ে যায়, উত্তর আপডেট করে। সম্ভবত একই সমস্যা এলভি নামগুলির জন্য প্রযোজ্য, তবে আমি এটি পরীক্ষা করিনি।
sjas

6

এলভিএম শারীরিক ডিস্কের উপরে একটি বিমূর্ততা।

লজিকাল ভলিউম (যা আপনি ফাইলগুলি ফর্ম্যাট করতে এবং স্থাপন করতে পারেন) ভলিউম গ্রুপগুলি থেকে বরাদ্দ করা হয়েছে, যা এক বা একাধিক শারীরিক এক্সটেন্টস দ্বারা তৈরি করা যেতে পারে - আসল শারীরিক ডিস্ক পার্টিশন।

আপনার প্রশ্নটি কিছুটা অস্পষ্ট। যদি আপনি কোন ডিস্কের পার্টিশনগুলি লজিকাল ভলিউম শারীরিকভাবে বসবাস করে তা দেখাতে চান, lvdisplay --maps সহায়তা করতে পারে:

# lvdisplay - মানচিত্র
  --- যৌক্তিক আয়তন ---
  এলভি নাম / দেব / ভলগ্রুপ 100 / মূল
  ভিজির নাম ভলগ্রুপ 100
  এলভি ইউআইডিএক্সএক্সএক্সএক্সএক্সএক্সএক্সএক্সএক্সএক্সএক্সএক্সএক্সএক্সএক্সএক্সএক্সএক্সএক্সএক্সএক্সএক্সএক্সএক্সএক্সএক্সএক্সএক্সএক্সএক্সএক্সএক্স
  এলভি রাইট অ্যাক্সেস পড়ুন / লিখুন
  এলভি স্থিতি উপলব্ধ
  # খোলা 1
  এলভি আকার 5.00 জিবি
  বর্তমান লে 160
  বিভাগ 1
  বরাদ্দ উত্তরাধিকারী
  এগিয়ে সেক্টর অটো পড়ুন
  - বর্তমানে 256 এ সেট করা হয়েছে
  253: 0 টি ডিভাইস ব্লক করুন

  --- বিভাগ ---
  যৌক্তিক পরিধি 0 থেকে 159:
    রৈখিক টাইপ করুন
    শারীরিক আয়তন / দেব / এসডিএ 2
    শারীরিক প্রসার 0 থেকে 159

প্রশ্নের উত্তর না দিয়ে তবে আপনার এলভি খণ্ডিত কিনা তা যাচাই করার একমাত্র উপায়। উপোট করুন, এটি অন্য কোথাও দেখেনি।
sjas

6

লজিকাল ভলিউমগুলির "টাইপ" ধারণা নেই, এগুলি কেবল ডিভাইসগুলি ব্লক করে। আপনি যদি কোনও ব্লক ডিভাইসের সামগ্রীগুলি পরীক্ষা করতে চান এবং এটিতে কী রয়েছে তা নির্ধারণ করতে চান, আপনি সম্ভবত blkidসরঞ্জামটি দেখতে চাইতে পারেন , যা ঠিক এটি করে।


5

1) একটি লজিকাল ভলিউম কোনও (শারীরিক) ডিস্ক বিভাজন নয়। এটি একটি ভার্চুয়াল ব্লক ডিভাইস যা ডিভাইস ম্যাপার দিয়ে লিনাক্স কার্নেলের অভ্যন্তরে তৈরি করা হয়েছিল। এটি এমন একটি প্রযুক্তি যা দুটি ডিস্ক পার্টিশন এবং একটি ডিস্ক পার্টিশন ব্যবহার করে দুটি ব্লক ডিভাইস এবং আরও অনেক কিছু ব্যবহার করে একটি ব্লক ডিভাইস সেটআপ করতে ব্যবহার করতে পারে।

# dmsetup targets 

আপনি যদি ডিএম এর হোম পৃষ্ঠায় যান সে সম্পর্কে আরও জানতে চান তবে এটির ম্যানুয়াল পৃষ্ঠাগুলি পরীক্ষা করুন , রেডহ্যাট ম্যানুয়ালটি পড়ুন বা উদাহরণস্বরূপ এই নিবন্ধটি পড়ুন। এটি দুর্দান্ত প্রযুক্তি কেবল উইকিপিডিয়ায় উল্লিখিত হয়েছে।

2) উদাহরণস্বরূপ আমার বাড়ির কম্পিউটারে আমার ফিজিকাল ডিস্ক পার্টিশনগুলির পাশাপাশি ডিএম ডিভাইস (লজিকাল ভলিউম) রয়েছে।

# cat /proc/partitions

বড় নাবালিকা # ব্লক নাম

   3     0   80043264 hda
   3     1     204800 hda1
   3     2   79831029 hda2
   3    64   19589976 hdb
   3    65     104391 hdb1
   3    66   19478812 hdb2
 253     0   17432576 dm-0
 253     1    2031616 dm-1
 253     2   77762560 dm-2
 253     3    2064384 dm-3

প্রাথমিকভাবে তাদের কোনও প্রকার বা আইডি নেই, তারা কেবল শুরুর ক্ষেত্রের সংখ্যা এবং দৈর্ঘ্যের সাথে সংজ্ঞায়িত করা হয়েছে।

# dmsetup status -j 253 -m 0
0 34865152 linear

সুতরাং dm-0 হ'ল একটি খণ্ড যা 34865152 কিছু শারীরিক ডিভাইসের সেক্টর নিয়ে গঠিত।

# dmsetup deps -j 253 -m 0
1 dependencies  : (3, 66)

এবং এই ডিভাইসটি হল / dev / hdb2 পার্টিশন!

# fdisk /dev/hdb
Command (m for help): p
   Device Boot      Start         End      Blocks   Id  System
/dev/hdb1   *           1          13      104391   83  Linux
/dev/hdb2              14        2438    19478812+  8e  Linux LVM

এবং এটি টিএমম্যান দ্বারা উল্লিখিত এলভিএম (8 ই) টাইপ পার্টিশন।

# pvs
  PV         VG         Fmt  Attr PSize  PFree
  /dev/hda2  VolGroup   lvm2 a-   76,13G    0 
  /dev/hdb2  VolGroup00 lvm2 a-   18,56G    0 

এই একক (শারীরিক) ডিস্ক বিভাজনটি একটি দলের মধ্যে লজিক্যাল ভলিউম ধারণ করতে পারে। আমার দুটি ডিস্ক রয়েছে তাই এরকম দুটি গ্রুপ রয়েছে এবং প্রতিটি গ্রুপের দুটি যৌক্তিক ডিভাইস রয়েছে।

# lvs
  LV       VG         Attr   LSize  Origin Snap%  Move Log Copy%  Convert
  lv_root  VolGroup   -wi-a- 74,16G                                      
  lv_swap  VolGroup   -wi-a-  1,97G                                      
  LogVol00 VolGroup00 -wi-ao 16,62G
  LogVol01 VolGroup00 -wi-ao  1,94G 

সুতরাং ডিএম -0 এবং ডিএম -1 হ'ল দুটি এলভি (lvroot এবং lvswap) আমার প্রথম ডিস্কের / dev / hdb2 পার্টিশনে নির্মিত হয়েছে (CentOS সহ) যখন dm-2 এবং dm-3 আমার / dev / hda2 পার্টিশনে নির্মিত LVs আমার দ্বিতীয় ডিস্কের (ফেডোরার সাথে)।

লজিক্যাল ডিভাইসগুলিতে লেবেল (ইউআইডি) থাকতে পারে। উপরের উল্লিখিত lvdisplay কমান্ড দিয়ে আপনি এগুলি পরীক্ষা করতে পারেন। তবে সেগুলি কেবলমাত্র লেবেল, যা আপনি বড়, সংখ্যালঘু সংখ্যার (-j -m স্যুইচ) পরিবর্তে (-u) ব্যবহার করতে পারেন।


4

Lsblk আপনার প্রয়োজনীয় তথ্য সরবরাহ করে?

[root@localhost ~]# lsblk -o TYPE,NAME,KNAME,UUID,MOUNTPOINT,SIZE                                                                                                                                                                        
TYPE NAME                KNAME UUID                                   MOUNTPOINT  SIZE
rom  sr0                 sr0   2014-07-04-15-59-23-00                             362M
disk vda                 vda                                                        1G
part └─vda1              vda1  7eadd712-6571-4722-8a5e-5d419176f6dc   /boot      1023M
disk vdb                 vdb   eVbl9d-dxf0-yqiV-evZC-FHPB-RrZb-eb1897              20G
lvm  ├─vg_system-lv_swap dm-0  44bb22f8-d8c6-482c-8763-36ee58c2528e   [SWAP]        1G
lvm  ├─vg_system-lv_usr  dm-1  c1f9ac62-17a3-4dfa-88b6-6a26394dd270   /usr          2G
lvm  ├─vg_system-lv_root dm-2  6724461a-2401-42ec-8180-fb7582040b68   /            10G
lvm  ├─vg_system-lv_var  dm-3  f2044fb7-5a64-4ae3-8407-891f75aba534   /var          2G
lvm  └─vg_system-lv_home dm-4  8ad80cce-bdf4-43e9-b755-b987169ed062   /home         2G
[root@localhost ~]# 

0

লজিকাল ভলিউমের পার্টিশন আইডি বা টাইপ নেই। এগুলি দৈহিক এক্সটেন্টস (পিই) দ্বারা গঠিত যা একাধিক শারীরিক ভলিউম (পিভি) এর উপরে ছড়িয়ে থাকতে পারে , যার প্রত্যেকটিই পার্টিশন (যেমন / dev / sda2) বা সম্পূর্ণ ডিস্ক (যেমন / dev / sdb) হতে পারে।



0

পার্টিশন টাইপ আইডি কেবলমাত্র পার্টিশন টেবিলের মধ্যে সংরক্ষণ করা হয়, পার্টিশনে নিজেই নয়। অন্যদিকে, LVM লজিকাল ভলিউমগুলি সাধারণত পৃথক পার্টিশনের মতোই ডিস্ক হিসাবে ধরা হয় না, সুতরাং কোনও পার্টিশন টেবিল নেই এবং তাই অনুসন্ধানের জন্য কোনও পার্টিশন টাইপ ID নেই।

এছাড়াও লক্ষ করুন যে আইডি টাইপটি কেবল লিনাক্সের তথ্যমূলক উদ্দেশ্যে (যদিও এটি উইন্ডোজের ক্ষেত্রে সত্য নয়)। Partition পার্টিশনের বিষয়বস্তু এবং ফাইল সিস্টেমে এর কোনও প্রভাব নেই।


0

আমি মনে করি এই এক-লাইন কমান্ড সাহায্য করতে পারে:

for i in $(df -h | grep mapper | cut -d" " -f1); do echo $i; lvdisplay --maps $i | grep "Physical volume"; done

আউটপুট এটির অনুরূপ:

/dev/mapper/myserver-root
    Physical volume /dev/sda5
/dev/mapper/SambaShares
    Physical volume /dev/sdb1
    Physical volume /dev/sdo1
    Physical volume /dev/sdp
/dev/mapper/Test--Disc
    Physical volume /dev/sdf1
    Physical volume /dev/sdg1
    Physical volume /dev/sdh1
    Physical volume /dev/sdi1
/dev/mapper/Clonezilla-partimag
    Physical volume /dev/sdk1
    Physical volume /dev/sdj1
    Physical volume /dev/sdl1
    Physical volume /dev/sdm1
    Physical volume /dev/sdn1
    Physical volume /dev/sdq1

0

"মার্ক ভি" থেকে আগের পোস্টটি দেখলে আপনি দেখতে পাবেন lsblk কমান্ডটি ব্যবহৃত হয়েছিল।

এটি একটি দুর্দান্ত বিকল্প, তবে বেশিরভাগ উত্তর থেকে বাদ দেওয়া হয়েছে এমন ধরণের জন্য ওপি জিজ্ঞাসা করেছিল। উপরে থেকে lsblk ব্যবহার করা এবং "FSTYPE" যুক্ত করা আপনি প্রত্যাশিত প্রকারটি পাবেন:

# lsblk -o TYPE,NAME,KNAME,UUID,MOUNTPOINT,SIZE,FSTYPE
TYPE NAME               KNAME UUID                                   MOUNTPOINT  SIZE FSTYPE
disk fd0                fd0                                                        4K
disk sda                sda                                                      100G
part ├─sda1             sda1  a6f1731f-e2bf-4dae-a443-269b079388a6   /boot         1G xfs
part ├─sda2             sda2  6CCtv5-HHYq-aXDm-m4jj-IpD3-rfv7-AI57D9              49G 
LVM2_member
lvm  │ ├─cl_hadron-root dm-0  0c8bfb8b-ec32-4152-9abd-b6bc5c475b00   /            97G xfs
lvm  │ └─cl_hadron-swap dm-1  8aeeadab-69da-49ff-991d-dad8857fb82b   [SWAP]        2G 
swap
# 
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.