ম্যাক ওএস এক্সে সেক্টরের আকারগুলি কী কী?


15

আমি এইচএফএস প্লাস উইকিপিডিয়া পৃষ্ঠায় পড়েছি যে কোনও ম্যাকের ডিফল্ট সেক্টরের আকার 512 বি। তবে, আমি আরও পড়লাম যে ম্যাকস 4kb সেক্টর সমর্থন করে। আমার কী রয়েছে তা আমি কীভাবে নির্ধারণ করতে পারি, 512 বি বা 4 কেবি সেক্টর? আমি মনে করি 512 সঠিক উত্তর, তবে আমি নিশ্চিত হতে চাই।

উত্তর:


27

টার্মিনালে, আপনি ডিভাইস ব্লক আকার সহ ড্রাইভ সম্পর্কে তথ্য পেতে ডিসকুইটিল ব্যবহার করতে পারেন:

$ diskutil info / | grep "Block Size"
  Device Block Size:        512 Bytes

1
ধন্যবাদ তীমথিয় - এই আদেশ সম্পর্কে জানতেন না। ওএস এক্স এর অধীনে ডিস্কের তথ্য / ম্যানিপুলেশনের জন্য কোনও ধনকুণ্ডের মতো দেখে মনে হচ্ছে
ক্যালরাসি

সাবধানতা: এই উত্তরটি ডিভাইস ব্লক আকার এবং বরাদ্দ ব্লক আকারের মধ্যে পার্থক্য করে না। এগুলি খুব আলাদা হতে পারে এবং ওপেনের জন্য ব্লক আকারটি ওপি যা খুঁজছে তা হতে পারে, যেহেতু এটি ফাইল সিস্টেম ব্যবহার করে। মাইকের উত্তর দেখুন।
লার্শ

12

প্রথম, নোট করুন যে ডিভাইস ব্লক আকার ফাইল সিস্টেমের দ্বারা ব্যবহৃত ব্লকের আকার থেকে পৃথক। ডিস্কুটিল দ্বারা উল্লিখিত পূর্বের মানটি হার্ডওয়্যার দ্বারা ব্যবহৃত কাঁচা ব্লক আকারকে বোঝায়। কমান্ড লাইনের দ্বারা পরবর্তী মানটি পরীক্ষা করার সহজ উপায় আমি খুঁজে পাইনি, তবে আপনি কেবল একটি শূন্য-বাইট ফাইল তৈরি করতে পারেন তারপরে অনুসন্ধানকারীর কাছ থেকে তথ্য পান। এটি 0 বাইট বলবে, তবে ডিস্কে 4k ব্যবহৃত হবে।

দ্বিতীয়ত, আপনি কমান্ড লাইন প্রোগ্রামটি ব্যবহার করে 4 কে ব্লক আকারের বৃহত একটি এইচএফএস + ফাইল সিস্টেম তৈরি করতে পারেন newfs_hfs। সবচেয়ে সহজ উপায় হ'ল ডিস্ক ইউটিলিটিটি ড্রাইভ বিভক্ত করার জন্য এবং ডিফল্ট ফর্ম্যাটিংয়ের সাথে একটি পার্টিশন তৈরি করা, তারপরে /bin/dfব্লক ডিভাইস নির্ধারণ করতে ব্যবহার করুন (কেবলমাত্র উদাহরণ /dev/disk0s2:)। তারপরে সেই পার্টিশনটি আনমাউন্ট করুন (ব্যবহার umount /dev/diskXXXবা ডিস্ক ইউটিলিটি) এবং H৪ কে ব্লক করে এইচএফএস + হিসাবে পুনরায় ফর্ম্যাট করুন:

newfs_hfs -v VolumeName -b 65536 /dev/disk0s2

একটি ছোট ফাইল এখন k৪ কে ডিস্কে দখল করে আছে তা যাচাই করার জন্য উপরের তথ্য প্রাপ্তির টিপটি ব্যবহার করুন (এটি 10-পাওয়ার ইউনিটগুলির জন্য 65k বলতে পারে)।

পারফরম্যান্স হ'ল এটি করার প্রধান কারণ হ'ল, যদি সংরক্ষণ করা বেশিরভাগ ডেটা বড় ফাইল (যেমন এমপি 3, ফটো, ভিডিও, .জাইপ ফাইল, ইত্যাদি) হয় এবং এটি ডিস্কের খণ্ডন কম রাখতে সহায়তা করে। আপনি বেশিরভাগ ছোট ফাইল সংরক্ষণের পরিকল্পনা করছেন তবে অবশ্যই বিরক্ত করবেন না।

আমি দেখতে পেয়েছি যে ডিফল্ট 4 কে ব্লক আকারের সাথে বড় বড় ড্রাইভগুলিতে (> 1 টিবি) এইচএফএস হিসাবে ফর্ম্যাট করা হয়, যখন ড্রাইভের সক্ষমতা নিকটে আসে, লেখার পারফরম্যান্স মারাত্মকভাবে হ্রাস পায়। আমি অনুমান করছি যে পার্টিশনটি খণ্ডিত হওয়ার কারণে এবং সর্বশেষ 1% তথ্য লেখার জন্য নিখরচায় ব্লকগুলি খুঁজে বের করতে এবং শিকার করতে হয়েছিল। আমি আশা করছি বৃহত্তর ব্লক আকারগুলি এই সমস্যাটি কিছুটা কমিয়ে দেবে।


ফাইল সিস্টেম ব্লক আকার দ্বারা দেওয়া হয় stat -f %k .
lhf

এছাড়াও: যদি আপনার ফাইল সিস্টেমের ব্লক আকারটি ড্রাইভের শারীরিক ব্লকের আকারের সাথে মেলে তবে ড্রাইভে এটি আরও সহজ। অন্যথায়, প্রতিটি লেখাই আসলে একটি পঠন-পরিবর্তিত-লেখার চক্র হতে হবে, (অবশ্যই ক্যাচিং সহায়তা করে))
এডওয়ার্ড ফালক

পুনরায়: "কমান্ড লাইনের দ্বারা পরবর্তী মানটি পরীক্ষা করার সহজ উপায় আমি খুঁজে পাইনি" আমি পুরানো সংস্করণগুলি সম্পর্কে জানি না, তবে ম্যাকোস সিয়েরা 10.12.6 এ diskutil infoকখনও কখনও আপনাকে বরাদ্দ ব্লকের আকার বলব: Allocation Block Size: 32768 Bytesপাশাপাশি ডিভাইস ব্লকের আকার। rdisk2s0কার্ড রিডারে এসডি কার্ডের সাথে কাঁচা ডিভাইস ব্যবহার করার সময় আমি এটি সত্য বলে মনে করেছি । হার্ড ড্রাইভের জন্য কীভাবে এটি কাজ করা যায় তা আমি জানি না।
লার্শ

9

টার্মিনাল উইন্ডো প্রম্পট থেকে নিম্নলিখিত কমান্ডটি প্রয়োগ করে ওএস এক্স ডিভাইস ব্লকের আকার নির্ধারণ করা যেতে পারে:

diskutil info / | grep "Block Size"

যা নিম্নলিখিত তথ্যগুলি আউটপুট দেবে:

Device Block Size: 512 Bytes

statইউটিলিটি ব্যবহার করে ফাইল সিস্টেম ব্লকের আকার নির্ধারণ করা যেতে পারে :

stat -f %k .

যা আপনাকে সর্বোত্তম ফাইল সিস্টেম আই / ও অপারেশন ব্লক আকার বাইটে প্রদর্শন করবে:

4096

4

পুরানো এইচএফএস ফাইল সিস্টেমের সাথে, ম্যাকিনটোসের জন্য একটি ফাইল সিস্টেমে অ্যাপলের দ্বিতীয় প্রচেষ্টা, কেবলমাত্র একটি ডিস্কে 65,535 অবধি ব্লক থাকতে পারে। ব্লক সাইজটি বর্ধিত ডিস্ক আকারের একটি ক্রিয়াকলাপ ছিল বন্টনে সর্বাধিক সংখ্যক বরাদ্দ ব্লক, 65,535 দ্বারা বিভক্ত। ছোট ডিস্কগুলির জন্য এটি ঠিক ছিল, তবে যখন ডিস্ক আকারগুলি 1GB আকারে পৌঁছতে শুরু করে ন্যূনতম বরাদ্দ ব্লকের আকার 16 কেবি (1073741824/65535) = 16384.25, তবে আপনাকে 16384 এ ছাঁটাই করতে হবে।

এর অর্থ হ'ল 1 জিবি এইচএফএস ডিস্কের 1 বাইট ফাইলের জন্য হার্ড ড্রাইভে সঞ্চয় করার জন্য 16,384 বাইট প্রয়োজন, তাই সেখানে খুব বেশি অপচয় করা স্থান ছিল। সুতরাং অ্যাপল নষ্ট স্থান হ্রাস করার জন্য এইচএফএস + মোড়ক তৈরি করেছে।

ব্লকের আকার উচ্চতর করার একটি উপায় থাকতে পারে তবে আপনি কেন চান?

এখানে একটি দ্রুত বাশ স্ক্রিপ্ট যা আপনার বর্তমানে সংযুক্ত সমস্ত ডিস্কের জন্য সমস্ত ডিস্কিনফো আউটপুট তালিকাভুক্ত করবে।

#!/bin/bash

for disk in /dev/disk*s*
do
    diskutil info $disk
    echo "**************************************************************************************"
    echo " "
done

আপনার প্রতিক্রিয়ার জন্য ধন্যবাদ, মার্ক, তবে আমি মনে করি আপনি আমার প্রশ্নটি ভুল বুঝে থাকতে পারেন। আমি অনুসন্ধান করছি যে এইচএফএস প্লাসের (ম্যাকের জন্য বর্তমান ডিফল্ট ফাইল সিস্টেম) কোনও ব্লকের আকার কী। যদিও এইচএফএসের ব্যর্থতা সম্পর্কে আকর্ষণীয়।
ক্যালরাসি

মুল বক্তব্যটি এটি পরিবর্তিত হয় তবে এটি সাধারণত 512 বাইট বলে মনে হয়।
Ƭارک

0

দেখে মনে হচ্ছে যে ডিভাইস ব্লকের আকার এখন 4096 বাইট, আইএম্যাকস (আইম্যাক 18,1) এ এনটিএফস্প্রোগ ব্যবহার করে লোকেদের জন্য সমস্যা তৈরি করেছে।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.