ফাইল সিস্টেমের ধরণটি মাউন্ট হওয়ার আগে কীভাবে নির্ধারিত হয় তা বোঝা যাচ্ছে


4

এটির মাউন্ট করার আগে কোনও ব্লক ডিভাইসে ফাইল সিস্টেমের ধরণ নির্ধারণ করার জন্য কোনও কমান্ডলাইন সরঞ্জাম রয়েছে? এবং কীভাবে এটি অর্জিত হয়?

আমি বিশ্বাস করি যেহেতু আমি সাধারণত বাহ্যিক ডিস্ক মাউন্ট করি

$ mount /dev/sdXX /mnt

mountস্বয়ংক্রিয়ভাবে আপনার জন্য ফাইল সিস্টেম নির্ধারণ করে। আধুনিক জিইউআই সরঞ্জামগুলি এমনকি যদি এফএস এর জন্য ড্রাইভার উপস্থিত থাকে তবে ফাইল-সিস্টেম মাউন্ট না করে ডিস্ক ব্যবহার এবং অন্যান্য তথ্যের জন্য তদন্ত করে।

এখানে দৃশ্যপট

  • পার্টিশন টাইপ এবং ফাইল সিস্টেমের ধরণ মিলতে পারে।
  • বেশিরভাগ লিনাক্স ফাইল সিস্টেম পার্টিশন টাইপ "83" ব্যবহার করে, যা এতে থাকা fs সম্পর্কে বেশি তথ্য দেয় না offer
  • সংশ্লিষ্ট ড্রাইভ অনুপস্থিত, অনুপস্থিত xfsprogs, hfsprogs, ইত্যাদি হতে পারে

যখন অটো-মাউন্টিং ব্যর্থ হয়, একটি স্বেচ্ছামূলক পার্টিশন বা হাতে ডিস্ক চিত্র সহ, প্রতিটি ডাব্লু টাইপ প্রার্থীকে চেষ্টা করা ঠিক ততক্ষণ সম্ভব হয় না যতক্ষণ না আপনি সঠিকটি খুঁজে পান। বা যদি ফাইল সিস্টেমটি দূষিত হয় what এটির এফএস টাইপ অজানা হওয়ায় আপনি এটি নির্ধারিত সরঞ্জাম দিয়ে সনাক্ত করতে পারবেন না।

আমি মনে করি সুপারব্লকটিই যেখানে বেশিরভাগ ফাইল সিস্টেম এটির শনাক্তকারীকে সঞ্চয় করে। তবে বিভিন্ন এফ বিভিন্ন জায়গায় সুপারব্লক লিখে।

শুরুতে XXX বাইটের ডেটার কাঁচা ডাম্প কি এফএস টাইপ নির্ধারণের জন্য যথেষ্ট? কোথায় এবং কোন ফর্ম্যাটে এমন তথ্য সংরক্ষণ করা উচিত তার কোনও মান আছে?

এই ইস্যুতে যে কোনও অন্তর্দৃষ্টি প্রশংসিত হয়।

= - =

হালনাগাদ:

ফিলাগের উত্তরের জন্য থেক্স। তাই স্বাভাবিক fileপন্থা আসলে সর্বোত্তম পন্থা।

আমার সমস্যাটি ছিল কেবলমাত্র আমি একটি অদ্ভুত ফাইল সিস্টেমের মুখোমুখি হয়েছি, যার fileআউটপুট বরং অকেজো।

fileএর ডকুমেন্টেশনের আরও গভীর খনন করা (সম্ভবত সিস্টেম এটির পাশাপাশি এটি ব্যবহার করে বলেও) এই সমস্যাটি আরও ভালভাবে বুঝতে আমাকে সহায়তা করা উচিত।


1
আপডেটের প্রতিক্রিয়া হিসাবে: fileকেবল ফাইলটি পড়ে, আপনার ফাইলটি পড়ার প্রয়োজন ছাড়া এটি কোনও সিস্টেম কল ব্যবহার করে না।
ফিহাগ

উত্তর:


3

প্রথম বাইটগুলি (আক্ষরিকভাবে নয়, তবে সাধারণত প্রথম 4KiB এ) একটি স্বাক্ষর থাকে, যা বিশেষত অনন্য হিসাবে তৈরি করা হয়। fileউপযোগ এই স্বাক্ষর নির্ধারণ করতে পারেন। নিজের জন্য দেখুন:

$ # Create an example file we can write to. vdisk stands for your partition.
$ dd if=/dev/zero of=vdisk bs=1M count=40
$ mkfs.ext2 -qF vdisk
$ file vdisk
vdisk: Linux rev 1.0 ext2 filesystem data, UUID=cce25572-...-f4eba2957279
$ mkfs.xfs -fq vdisk
$ file vdisk
vdisk: SGI XFS filesystem data (blksz 4096, inosz 256, v2 dirs)
$ # How does file find out? Let's look inside the partition
$ hexdump vdisk -C  | head -n 1
00000000  58 46 53 42 00 00 10 00  00 00 00 00 00 00 28 00  |XFSB..........(.|

ফাইল সিস্টেম যে একটি বিস্তারিত তালিকা পেতে fileস্বীকার করে, কটাক্ষপাত আছে magic/Magdir/filesystemsমধ্যে file সোর্স কোড । যদি আপনি কেবল আপনার কার্নেল দ্বারা সমর্থিতদের include/linux/magic.hমধ্যে আগ্রহী হন তবে আপনার কার্নেল উত্সগুলিতে পরীক্ষা করুন।

আপনি যদি কোনও ব্লক ডিভাইসে বিশেষ আগ্রহী হন তবে -sবিকল্পটিও দরকারী, যেমনটি -Lলিঙ্কটি নিজেই পরিচালনা করার পরিবর্তে প্রতীকী লিঙ্কগুলি অনুসরণ করবে। উদাহরণস্বরূপ যদি লজিকাল ভলিউম এবং ডিভাইস-ম্যাপার ব্যবহার করে এমন কিছু:

file -Ls /dev/mapper/home

দরকারী হতে পারে।


আমি বুঝতে পারি যে, আমি এটি ডিস্কের চিত্রগুলি নির্ধারণ করতে ব্যবহার করি। এবং কোনও চিত্র ফাইলটিতে এটি চালানোর জন্য আপনাকে প্রথম বাইট ডিডি করতে fileহবে বা fileসর্বদা ব্লক ডিভাইসগুলির জন্য "ব্লক স্পেশাল" দেখায়।
হুয়াং তাও

তবে এটি সঠিকভাবে কাজ করার নিশ্চয়তা নেই? fileকোন ফাইল সিস্টেমে কোন স্বাক্ষরের মানচিত্রের রেকর্ড রাখতে হবে।
হুয়াং টাও

@ হুয়াং টাও দুঃখিত, আমি আপনার প্রশ্নটি পুরোপুরি পড়িনি এবং তাই ভুল পর্যায়ে উত্তর দিয়েছি। ব্লক ডিভাইসগুলি পরীক্ষা করতে -sবিকল্পটি (যেমন হিসাবে file -s /dev/sda1) ব্যবহার করুন ।
ফিহাগ

@ হুয়াং টাও ওয়েল, এটি কার্নেল দ্বারা সমর্থিত সমস্ত ফাইল সিস্টেমের পার্থক্য করতে যথেষ্ট ভাল কাজ করে। বেশিরভাগ ভাল ডিস্ক ফর্ম্যাটগুলিতে (ফাইল সিস্টেমের পাশাপাশি ফাইলগুলি) অন্য যে কোনও ফাইল টাইপ থেকে আলাদা করার জন্য একটি নির্দিষ্টভাবে তৈরি কার্ট্ট শিরোনাম অন্তর্ভুক্ত করে ।
ফিহাগ

1
অবশ্যই আমি / dev / sdb1 ব্যবহার করছিলাম, / dev / sdb নয়। আমি যা বলতে পারি তা থেকে পার্টিশনটি ডিস্কের ভান করে।
হুয়াং তাও
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.