কোন লিনাক্স ফাইল সিস্টেম এসএসডি দিয়ে সবচেয়ে ভাল কাজ করে


119

উইকি থেকে:

গুরুত্বপূর্ণ টিআরআইএম ফাংশনটি লিনাক্স ওএস দ্বারা 2.6.33 কার্নেল (2010 সালের শুরুর দিকে উপলব্ধ) দিয়ে শুরু হয় supported তবে বিভিন্ন ফাইল সিস্টেমের মধ্যে সমর্থন এখনও বেমানান বা উপস্থিত নেই। সঠিক পার্টিশন প্রান্তিককরণ ইনস্টলেশন সফ্টওয়্যার দ্বারা সঞ্চালিত হয় না।

সুতরাং, কোন ফাইল সিস্টেম এসএসডি-র জন্য সবচেয়ে ভাল কাজ করে এবং ইনস্টল করার সময় ট্রিম + পার্টিশন প্রান্তিককরণ সমর্থন করে এবং উবুন্টুতে উপলব্ধ?

উত্তর:


89

ফাইল সিস্টেম এক্সটি 4 + ট্রিম:

  • টিআরআইএমের সাথে এক্সটি 4 এসএসডি ড্রাইভে অপ্রয়োজনীয় লেখার চক্র হ্রাস করে পারফরম্যান্সের উন্নতি করে কারণ তারা লেখার পুনর্লিখনের চক্রকে সীমাবদ্ধ করে।
  • উবুন্টু এবং আরও কিছু লিনাক্স স্বাদ বক্সের বাইরে ট্রিমের সাহায্যে এক্সটি 4 সমর্থন করে।

সোয়াপ পার্টিশন:

  • লেখার চক্র হ্রাস করতে আবার এসএসডি-তে আপনার কোনও সুইপ স্পেস না রয়েছে তা নিশ্চিত করুন।
  • আপনার যদি মেকানিকাল ড্রাইভ থাকে, তবে আপনার যান্ত্রিক ড্রাইভে একটি সোয়্যাপ স্পেস তৈরি করা উচিত এবং এসএসডি তে এড়ানো উচিত।

পার্টিশন সারিবদ্ধকরণ:

  • পার্টিশনটি একটি পরিষ্কার 1MB সীমানায় শুরু করা উচিত যাতে ফাইল সিস্টেমের ব্লক আকারটি এসএসডি-র ব্লক আকারের সাথে একত্রিত হয়।

সুতরাং মেকানিকাল হার্ডড্রাইভে একটি এক্সপ্লোর পরিচালনা ট্র্যাক ব্যবহার করুন অথবা এসএসডি-তে কোনও সুইপ নেই।

উপরের উত্সটি উল্লেখ করে প্রয়োগ করা যেতে পারে: এসএসডি পারফরম্যান্সকে কীভাবে সর্বোচ্চ করা যায়


GPT আধুনিক পদ্ধতি ব্যবহার করছে gdisk& grub 2.0.x, (আমি কেউ কোনো উত্তর নীচের এটি উল্লিখিত) এবং উপস্থিত MBR পুরাতন ব্যবহার উত্তরাধিকার পদ্ধতি grub 0.9.7এবং fdisk.. তুমি এখানে আরো জানতে পারেন: wiki.archlinux.org/index.php/Solid_State_Drives
aliasgar

7
আপনি নির্দিষ্ট করে nodiratimeদিলে এটি নির্দিষ্ট করা অপ্রয়োজনীয় noatime। সম্মত হন, এটি দুর্দান্ত noatimeস্নায়ুর কাছে দুর্দান্ত এবং উন্নত বলে মনে হচ্ছে, তবে যেহেতু ইনোডগুলিতে একটি সময় অক্ষম করা হয় এবং ডিরেক্টরিগুলিও ইনড হয় তাই এটি "আপনার হাত ধুয়ে ফেলুন, এবং আপনার থাম্বগুলিও ধুয়ে নিন" বলার মতো like :)
রেডসান্দ্রো

অভিজ্ঞতার বাইরে আমি বলতে পারি যে কোনও সময়সূচী ("নুপ") সময়সীমার চেয়ে দ্রুত কাজ করে না।
ড্রামফায়ার

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

2
@ এলিয়াসগার কি এফ 2 এফএস একটি ভাল পছন্দ বনাম এক্সট 4?
SebMa

67

সংক্ষিপ্ত উত্তর

  • চয়ন করুন ext4 এই , এবং হয় সঙ্গে এটি মাউন্ট discardজন্য বিকল্প TRIM সমর্থন, বা FITRIM ব্যবহার (নিচে দেখুন)। noatimeআপনি যদি "এসএসডি পরিধান" ভয় পান তবে বিকল্পটিও ব্যবহার করুন ।

  • মাল্টি-অ্যাপ্লিকেশন সার্ভারগুলিতে আপনার ডিফল্ট আই / ও সিডিউলার (সিএফকিউ) পরিবর্তন করবেন না , কারণ এটি প্রক্রিয়াগুলির মধ্যে সুষ্ঠুতা সরবরাহ করে এবং স্বয়ংক্রিয় এসএসডি সমর্থন রয়েছে। তবে লোডের অধীনে আরও ভাল প্রতিক্রিয়া জানাতে ডেস্কটপগুলিতে ডেডলাইন ব্যবহার করুন

  • যথাযথ ডেটা প্রান্তিককরণের সহজেই গ্যারান্টি দিতে প্রতিটি পার্টিশনের শুরুর ক্ষেত্রটি অবশ্যই 2048 (= 1 MiB) এর একাধিক হতে হবে । আপনি fdisk -cu /dev/sdXএগুলি তৈরি করতে ব্যবহার করতে পারেন। সাম্প্রতিক বিতরণগুলিতে, এটি স্বয়ংক্রিয়ভাবে আপনার জন্য এটি যত্ন নেবে।

  • এসএসডি-তে অদলবদল করার আগে দু'বার চিন্তা করুন। এটি সম্ভবত এইচডিডি-তে অদলবদলের তুলনায় অনেক দ্রুত হবে তবে এটি ডিস্কটি আরও দ্রুত পরিধান করবে (যা প্রাসঙ্গিক নাও হতে পারে, নীচে দেখুন)।

দীর্ঘ উত্তর

  • ফাইল-সিস্টেম:

Ext4 হ'ল সর্বাধিক সাধারণ লিনাক্স ফাইল সিস্টেম (ভালভাবে বজায় রাখা)। এটা তোলে এসএসডি সঙ্গে ভাল কর্মক্ষমতা উপলব্ধ করা এবং সমর্থন TRIM সময়ের ভাল এসএসডি কর্মক্ষমতা রাখা (এবং FITRIM) বৈশিষ্ট্য (এই দ্রুত পরে লিখতে অ্যাক্সেসের জন্য অব্যবহৃত মেমরি ব্লক মুছে ফেলা হবে)। NILFS বিশেষত ফ্ল্যাশ মেমরি ড্রাইভ জন্য ডিজাইন করা হয়েছে, কিন্তু আছে না সত্যিই বেশী ভালো সঞ্চালন ext4 এই benchmarks উপর। Btrfs এখনো পরীক্ষামূলক বিবেচনা করা হয় (এবং সত্যিই ভাল কাজ করে না পারেন )।

  • এসএসডি পারফরম্যান্স এবং ট্রিম:

TRIM বৈশিষ্ট্য এসএসডি ব্লক যে ফাইলসিস্টেম দ্বারা আর ব্যবহার করা হয় না মুছে যায়। এটি দীর্ঘমেয়াদী রচনার কার্য সম্পাদনকে অনুকূল করবে এবং তাদের নকশার কারণে এসএসডি-তে প্রস্তাবিত। এর অর্থ হ'ল ফাইল সিস্টেমটি অবশ্যই সেই ব্লকগুলি সম্পর্কে ড্রাইভটি বলতে সক্ষম হবে। discardমাউন্ট বিকল্প ext4 এই ধরনের ইস্যু করবে TRIM কমান্ড যখন ফাইলসিস্টেম ব্লক মুক্ত করা হয়। এটি অনলাইন বাতিল

যাইহোক, এই আচরণটি একটি সামান্য পারফরম্যান্স ওভারহেডকে বোঝায়। লিনাক্স ২.6.৩7 যেহেতু আপনি FITRIM এর সাহায্যে (যেমন ক্রোনট্যাব থেকে) discardমাঝে মাঝে ব্যাচ বাতিল করা বাছাই করতে পারেন । fstrimউপযোগ আছে এই (অনলাইন), সেইসাথে -E discardবিকল্প fsck.ext4। তবে এই সরঞ্জামগুলির "সাম্প্রতিক" সংস্করণ আপনার প্রয়োজন হবে।

  • এসএসডি পরিধান:

আপনি আপনার ড্রাইভে রাইটস সীমাবদ্ধ করতে চাইতে পারেন কারণ এসএসডি-র এ ক্ষেত্রে একটি সীমিত জীবনকাল রয়েছে। তবে খুব বেশি চিন্তা করবেন না , আজকের সবচেয়ে খারাপ 128 জিবি এসএসডি 5 বছরেরও বেশি সময় ধরে কমপক্ষে 20 গিগাবাইট লিখিত ডেটা সমর্থন করতে পারে (প্রতি সেল প্রতি 1000 লিখিত চক্র)। আরও ভাল (এবং আরও বড়গুলি) আরও দীর্ঘস্থায়ী হতে পারে: আপনি সম্ভবত এরপরেই এটি প্রতিস্থাপন করে ফেলবেন।

আপনি যদি এসএসডি-তে অদলবদল করতে চান , কার্নেলটি একটি নন-রোটেশনাল ডিস্কটি লক্ষ্য করবে এবং অদলবদলকে অকার্যকরভাবে ব্যবহার করবে (কার্নেল স্তর পরিধান সমতলকরণ): তারপরে SSযখন স্যুপ সক্রিয় করা হবে তখন আপনি কার্নেল বার্তায় একটি (সলিড স্টেট) দেখতে পাবেন :

2097148 কে / দেব / এসডিএ-তে অদলবদল যুক্ত করা হচ্ছে। অগ্রাধিকার: -1 এক্সটেন্টস: 1 জুড়ে: 2097148 কে এস এস

  • I / O সময়সূচী:

এছাড়াও, আমি অধিকাংশ সঙ্গে একমত aliasgar এর উত্তর (? এমনকি যদি তার অধিকাংশই -illegally হয়েছে - থেকে অনুলিপি এই ওয়েবসাইট ), কিন্তু আমি এই ব্যাপারে কিছুটা অসম্মতি আবশ্যক নির্ধারণকারী অংশ। ডিফল্টরূপে, লিফ্ট অ্যালগরিদম প্রয়োগ করে সময়সীমা নির্ধারণকারী ঘূর্ণন ডিস্কগুলির জন্য অনুকূলিত হয় । সুতরাং, আসুন এই অংশটি পরিষ্কার করুন।

সময়সূচী সম্পর্কে দীর্ঘ উত্তর

কার্নেল ২.6.২৯ থেকে শুরু করে, এসএসডি ডিস্কগুলি স্বয়ংক্রিয়ভাবে সনাক্ত হয়ে যায় এবং আপনি এটি দিয়ে যাচাই করতে পারেন:

cat /sys/block/sda/queue/rotational

আপনার 1হার্ড ডিস্কের 0জন্য এবং এসএসডি পাওয়া উচিত।

এখন, সিএফকিউ শিডিয়ুলার এই তথ্যের উপর ভিত্তি করে তার আচরণটি মানিয়ে নিতে পারে। লিনাক্স ৩.১ থেকে কার্নেল ডকুমেন্টেশন cfq-iosched.txtফাইলটি বলে :

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

এছাড়াও, সময়সীমা নির্ধারণকারী সেক্টরের সংখ্যার উপর ভিত্তি করে রোটাল ডিস্কগুলিতে আনর্ডারড হেড মুভমেন্ট সীমাবদ্ধ করার চেষ্টা করে। কার্নেল ডকটি উদ্ধৃত করা হচ্ছে deadline-iosched.txt, fifo_batch বিকল্পের বর্ণনা :

অনুরোধগুলি একটি নির্দিষ্ট ডেটা দিকনির্দেশের (পড়ুন বা লিখুন) `` ব্যাচগুলিতে বিভক্ত করা হয়েছে যা সেক্টর ক্রম বাড়ানোর ক্ষেত্রে পরিবেশন করা হয়েছে।

তবে এসএসডি ব্যবহার করার সময় এই প্যারামিটারটি 1 এ টিউন করা আকর্ষণীয় হতে পারে:

এই প্যারামিটারে প্রতি অনুরোধের বিলম্বিতা এবং সামগ্রিক থ্রুপুটটির মধ্যে ভারসাম্য সুর করে। যখন কম বিলম্বিতা প্রাথমিক উদ্বেগ, তখন আরও ভাল হয় (যেখানে 1 টির মান প্রথমে আসে প্রথম পরিবেশন করা আচরণ)। ফিফটো_বাচ বাড়ানো সাধারণভাবে থ্রুটপুট উন্নত করে, বিলম্বতার প্রকরণের ব্যয়ে।

কিছু মানদণ্ড পরামর্শ দেয় যে বিভিন্ন সময়সূচীর মধ্যে পারফরম্যান্সে সামান্য পার্থক্য রয়েছে। তাহলে, কেন ন্যায্যতার প্রস্তাব দেওয়া হচ্ছে না ? যখন সিএফকিউ খুব কমই বেঞ্চে খারাপ হয় । যাইহোক, ডেস্কটপ সেটআপগুলিতে, আপনি সাধারণত লোডের অধীনে ডেডলাইন ব্যবহার করে আরও ভাল প্রতিক্রিয়া অনুভব করতে পারেন, এর নকশার কারণে (সম্ভবত কম থ্রুটপুট ব্যয় হলেও)।

এটি বলেছিল, একটি আরও ভাল বেঞ্চমার্ক এর সাথে সময়সীমা ব্যবহার করার চেষ্টা করবে fifo_batch=1

ডিফল্টরূপে এসএসডিগুলিতে ডেডলাইন ব্যবহার করতে, আপনি একটি ফাইল তৈরি করতে পারেন, নীচের মত বলুন /etc/udev.d/99-ssd.rules:

# all non-rotational block devices use 'deadline' scheduler
# mostly useful for SSDs on desktops systems
SUBSYSTEM=="block", ATTR{queue/rotational}=="0", ACTION=="add|change", KERNEL=="sd[a-z]", ATTR{queue/scheduler}="deadline"

পার্টিশন সারিবদ্ধকরণ দ্বারা সাম্প্রতিক বিতরণগুলিতে স্বয়ংক্রিয়ভাবে যত্ন নেওয়া হচ্ছে এর অর্থ কী? আপনি যখন উবুন্টু ইনস্টলেশন চলাকালীন ম্যানুয়াল পার্টিশন ব্যবহার করেন বা জিপিটারে বিভাজন করার সময় এটি প্রয়োগ হয়?
জার্নো

2
@ জার্নো বেশিরভাগ সাম্প্রতিক বিতরণগুলিতে (এখন বেশ কয়েক বছর ধরে), বিভক্তকরণ সরঞ্জামগুলি, fdisk থেকে গ্রাফিকাল জিনিসগুলির মাধ্যমে, ডিভাইস শুরু থেকে 1Mb এর বহুগুণে পার্টিশন সাজানোর ক্ষেত্রে স্বয়ংক্রিয়-ডিফল্ট থাকে to এই প্রাকৃতিকভাবে 512byte, 4k, 8k, এবং অর্ধেক হাজার কোটি ব্লক / গুচ্ছ আকারের সাথে প্রান্তিক হয় যা 2 ^ n প্রকৃতির। পার্টিশনের ভুল-প্রান্তিককরণ এটি প্রায় অসম্ভব করে তোলে যদি আপনি এটির জন্য উল্লেখযোগ্য প্রচেষ্টা না করেন।
হত্যাকারী

13

আর্চলিনাক্স নিবন্ধ সলিড স্টেট ড্রাইভগুলি ফাইল সিস্টেমের চয়েস বিভাগে বলেছে :

Ext2 / 3/4, Btrfs ইত্যাদি সহ ফাইল সিস্টেমের জন্য অনেকগুলি বিকল্প বিদ্যমান

Btrfs
btrfs সমর্থন লিনাক্স কার্নেলের মেইনলাইন 2.6.29 রিলিজের সাথে অন্তর্ভুক্ত করা হয়েছে। কেউ কেউ মনে করেন যে এটি উত্পাদন ব্যবহারের জন্য যথেষ্ট পরিপক্ক নয় তবে এই সম্ভাব্য উত্তরাধিকারীর প্রথমদিকে অবদানকারীদেরও রয়েছে 4। ব্যবহারকারীরা আরও তথ্যের জন্য বিটিআরএফএস নিবন্ধটি পড়তে উত্সাহিত হন ।

Ext4
এক্সট 4 অন্য একটি ফাইল সিস্টেম যা এসএসডি সমর্থন করে। এটি ২.6.২৮ সাল থেকে স্থিতিশীল হিসাবে বিবেচিত এবং দৈনিক ব্যবহারের জন্য এটি যথেষ্ট পরিপক্ক। বিটিআরএফএসের বিপরীতে, ext4 স্বয়ংক্রিয়ভাবে ডিস্কের প্রকৃতি সনাক্ত করে না; ব্যবহারকারীদের অবশ্যই fstab (অথবা tune2fs -o বাতিল / dev / sdaX সহ) বাতিল করার মাউন্ট বিকল্পটি ব্যবহার করে অবশ্যই স্পষ্টভাবে TRIM কমান্ড সমর্থন সক্ষম করতে হবে।

বিটিআরএফ এবং এক্সট্রা উভয়ই এসএসডির দক্ষ ব্যবহারের জন্য দুটি প্রধান প্রয়োজনীয়তা পূরণ করে:

  • ফাইল সিস্টেমটি অন্তর্নিহিত এসএসডি-তে এটিএটআরআরআইএম কমান্ড দিতে সক্ষম হতে হবে
  • ফাইল সিস্টেমে ডিস্কে বিনা শর্তে রাইটিং করা উচিত

পারফরম্যান্সের জন্য, আরও দুটি প্রয়োজনীয়তা রয়েছে:

  • পার্টিশনগুলি এসএসডি-র ব্লক আকারের সাথে সংযুক্ত করা দরকার
  • প্রতিটি এক্সট 4 ফর্ম্যাট করা পার্টিশনের জন্য অবশ্যই স্পষ্টরূপে টিআরআইএম সক্ষম করতে হবে

প্রথমটি আজকাল বেশিরভাগ লিনাক্স ইনস্টলারগুলির সাথে স্বয়ংক্রিয়। "-cu" পতাকাগুলি দিয়ে শুরু করা হলে fdisk 1024KB সীমানায় পার্টিশন তৈরি করবে।

দ্বিতীয়টি বিটিআরএফএসের জন্য স্বয়ংক্রিয়, তবে এক্সট্রোলের জন্য এটি "/ etc / fstab" ফাইলের প্রতিটি Ext4 পার্টিশনের জন্য মাউন্ট বিকল্পগুলির তালিকায় "বাতিল" যোগ করে ম্যানুয়ালি করা হয়। আরো বিস্তারিত জানার জন্য এই দেখতে হাওটুর

আমার মতে, Ext4 এর জন্য fstab এর সাথে এই সামান্য বিস্মৃত হওয়া এই পরিপক্ক এবং দুর্দান্ত ফাইল সিস্টেমটি ব্যবহার না করার কোনও কারণ নয়।


-2

বিটিআরএফএস আইএমও। উবুন্টু ৮.০৪ এবং পরবর্তী সময়ে জিআরবি-র সংস্করণগুলি জিপিটি সচেতন included জিপিটি এবং জিডিস্কের সাহায্যে এটি আপনার জন্য আপনার পার্টিশনগুলি সারিবদ্ধ করবে। আমি বিশ্বাস করি fdisk যদিও এটি করবে will

যাইহোক, এখানে একটি বিটিআরএফএস ফাইল সিস্টেমে একটি উবুন্টু ইনস্টলের লিঙ্ক।

http://www.linuxbsdos.com/2011/05/05/how-to-install-ubuntu-11-04-on-a-btrfs-file-system/

আশা করি এইটি কাজ করবে.

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