কমান্ড-লাইন থেকে আমি কীভাবে একটি ext4 পার্টিশন তৈরি এবং টিউন করব?


41

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

টিউনিং - সংরক্ষিত ব্যবধান, লেখা-ব্যাক & অ্যাক্সেস বার
কিভাবে ক্ষেত্রে (ডিফল্ট অনুসারে) সরাইয়া সংরক্ষিত ডিস্ক স্থান সেট মুছে ফেলার জন্য ড্রাইভ 100% পূর্ণ হয়ে যায়। যেহেতু আমি কেবল 'ডেটা'র জন্য একটি গৌণ ড্রাইভ, তাই সংরক্ষিত অঞ্চল সরিয়ে ফেলা নিশ্চিত করে যে পুরো ড্রাইভটি ব্যবহারের জন্য উপলব্ধ।

আমি লেখার মাধ্যমে বনাম রাইটিং-ব্যাক এবং অ্যাক্সেসের সময়ের আপডেটগুলি (ফাইল এবং ডিরেক্টরিতে) এড়িয়ে যাওয়ার বিষয়ে কৌতূহল করছি যাতে পারফরম্যান্সের উন্নতি হয়।

উত্তর:


64

প্রথম এবং সবখানে:

!! সতর্কতা !!

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


একটি একক ext4 পার্টিশন হিসাবে দ্রুত কোনও ড্রাইভ সেট আপ করতে ...

  1. "ডিস্ক" শ্রেণীর সনাক্ত করা ডিভাইসগুলি দেখুন

    lshw -C disk
    
  2. বিদ্যমান পার্টিশন টেবিল দেখুন

    fdisk -l
    
  3. আমার নির্বাচিত ডিভাইসের জন্য পার্টিশন সারণীটি সম্পাদনা করুন (এই ক্ষেত্রে "sdx")

    fdisk /dev/sdx
    

    FDISK এর মধ্যে টিপুন:

    • d... থেকে elete বর্তমান পার্টিশন

    • n... একটি এন ই পার্টিশন তৈরি করতে

    • p... এটি পি রিমারি পার্টিশন হিসাবে নির্দিষ্ট করার জন্য

    • 1... এটি 1 টি এসটি প্রাথমিক পার্টিশন হিসাবে সেট করা

    • w... থেকে W পরিবর্তন মুহুর্তে।

  4. নতুন পার্টিশন সারণি প্রদর্শন করুন:

    fdisk -l
    
  5. নতুন পার্টিশনের ফাইল সিস্টেমটি টাইপ হিসাবে ফর্ম্যাট করুন ext4

    mkfs -t ext4 /dev/sdx1
    
  6. একটি নতুন ডিরেক্টরি তৈরি করুন যেখানে নতুন ড্রাইভটি মাউন্ট করবে:

    mkdir /storage
    mount /dev/sdx1 /storage
    

সুরকরণ

  1. সংরক্ষিত ব্লকগুলি (যেমন 0% সেট করুন) সরান, যেহেতু এই ড্রাইভটি কেবল ব্যবহারকারী ডেটার জন্য

    tune2fs -m 0 /dev/sdx1
    
  2. যেহেতু সার্ভারটি ইউপিএসে রয়েছে তাই লিখিত ব্যাক সেট করুন যাতে অ্যাপ্লিকেশনগুলি প্রকৃত ডিস্ক লেখার জন্য অপেক্ষা না করে

    tune2fs -o journal_data_writeback /dev/sdx1
    
  3. বুট আপ ব্যবহার করে মাউন্ট করুন /etc/fstabএবং লিখিত-ব্যাক নীতি সেট করুন

    vi /etc/fstab
    
  4. fstabআপনার ড্রাইভের জন্য প্রাসঙ্গিক লাইনটি সন্ধান করুন (বা যুক্ত করুন) । Fstab এর পরামিতিগুলি সাদা স্থান দ্বারা পৃথক করা হয়, উদাহরণস্বরূপ উপরে বর্ণিত ড্রাইভটি প্রদর্শিত হতে পারে:

    /dev/sdx1 /storage ext4 relatime,errors=remount-ro 0 1
    
    • প্রথম প্যারামিটারটি পার্টিশনটি সনাক্ত করে (হয় / dev / অথবা একটি দীর্ঘ ইউআইডি দ্বারা);
    • দ্বিতীয় প্যারামিটারটি হল পার্টিশনটি মাউন্ট করা হবে সেই পথে;
    • তৃতীয়টি ফাইল সিস্টেমের ধরণ;
    • চতুর্থ প্যারামিটারে বিকল্পগুলি রয়েছে;
    • পঞ্চমটি dumpব্যাকআপগুলির জন্য সময়সূচী; এবং,
    • ষষ্ঠ প্যারামিটারটি পাস নম্বর ( fsckক্রম নিয়ন্ত্রণের জন্য ব্যবহৃত হয় )।

বিকল্পগুলি (চতুর্থ প্যারামিটার) এতে পরিবর্তন করুন:

noatime,nodiratime,data=writeback,barrier=0,nobh,errors=remount-ro

সবকিছু ঠিকঠাক হয়েছে কি না তা পরীক্ষা করে পুনরায় বুট করুন।
মনে রাখবেন এই আদেশগুলি ধ্বংসাত্মক! ব্যাকআপ আছে এবং সাবধান!


3
স্টোরেজ এবং ext4 এর মধ্যে একটি স্থান থাকা উচিত। সুতরাং আদেশটি / দেব / এসডিএক্স 1 / স্টোরেজ এক্সট 4 রিলেটাইমের মতো, ত্রুটিগুলি = রিমান্ট-রো 0 1
গণেশ কৃষ্ণান

দুর্দান্ত গাইড! উপযুক্ত fstab বিকল্পগুলি কীভাবে নির্ধারণ করা যায় (কিছু তালিকার কেবল একটি লিঙ্ক দুর্দান্ত হবে) কীভাবে এখানে কিছু রেফারেন্স পাওয়া ভাল লাগবে
Sander

13

ব্যবহার parted

একটি নতুন হার্ড ড্রাইভে একটি নতুন ext4 পার্টিশন তৈরি করার জন্য নির্দেশাবলীর নীচে parted(উবুন্টু 14.04.4 এলটিএস এক্স 64 এ পরীক্ষিত)। partedসমর্থন GUID পার্টিশন টেবিল (GPT) এবং পরবর্তীকালে 2TB উপরে পার্টিশন ব্যবহার করা যেতে পারে, অসদৃশ fdisk

sudo lshw -C disk *-diskআপনার নতুন হার্ড ড্রাইভের যৌক্তিক নামটি দেখতে ব্যবহার করুন :

   description: ATA Disk
   product: ST6000NM0024-1HT
   vendor: Seagate
   physical id: 0.0.0
   bus info: scsi@1:0.0.0
   logical name: /dev/sdb
   version: SN05
   serial: Z4D30T30
   size: 5589GiB (6001GB)
   configuration: ansiversion=5 sectorsize=4096

যৌক্তিক নাম /dev/sdb। আমরা শুরু করতে পারি:

sudo parted /dev/sdb mklabel gpt # Creating the GUID Partition Table (GPT)

এর সাথে sudo parted /dev/sdb print, আমরা দেখতে পাচ্ছি জিপিটি তৈরি হয়েছে:

username@server:~$ sudo parted /dev/sdb print
Model: ATA ST6000NM0024-1HT (scsi)
Disk /dev/sdb: 6001GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt

Number  Start  End  Size  File system  Name  Flags

আমাদের ডিস্কের আকারও জানতে হবে (আমরা ইউনিট হিসাবে এমবি ব্যবহার করব):

sudo parted /dev/sdb print unit MB print free

যা ইঙ্গিত করে:

Disk /dev/sdb: 6001175MB

আমরা এখন প্রাথমিক পার্টিশনটি তৈরি করতে পারি যাতে এটি পুরো হার্ড ড্রাইভের জায়গা নেয়। পার্টিশন লেবেল সেট করতে:

sudo parted --align optimal /dev/sdb mkpart primary ext4 0% 6001175MB 

( https://unix.stackexchange.com/a/49274/16704 দেখুন আপনি কেন আমরা ব্যবহার করি তা জানতে চাইলে --align optimal)

এর সাথে sudo parted /dev/sdb print, আমরা দেখতে পাচ্ছি প্রাথমিক পার্টিশন লেবেলটি তৈরি হয়েছে:

username@server:~$ sudo parted /dev/sdb print
Model: ATA ST6000NM0024-1HT (scsi)
Disk /dev/sdb: 6001GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt

Number  Start   End     Size    File system  Name     Flags
 1      1049kB  6001GB  6001GB  xfs          primary

পার্টিশনটি তৈরি করতে আমাদের তখন mkfs ব্যবহার করতে হবে :

sudo mkfs.ext4 /dev/sdb1

পার্টিশনটি এখন তৈরি হয়েছে, আমাদের এটি মাউন্ট করতে হবে। এটি করতে, sudo nano /etc/fstabএবং নিম্নলিখিত লাইনটি যুক্ত করুন ( /crimeaআমরা ফোল্ডারে নতুন পার্টিশনটি মাউন্ট করার জন্য বেছে নিই):

/dev/sdb1       /crimea ext4 defaults   0       0      

আমরা ফোল্ডারটি তৈরি এবং পুনরায় লোড /etc/fstab:

sudo mkdir /crimea
sudo mount -a # Remount /etc/fstab without rebooting in Linux

আপনি নতুন মাউন্ট করা পার্টিশনটি এটি ব্যবহার করে দেখতে পারেন df -h:

/dev/sdb1                      5.5T   58M  5.2T   1% /crimea

এর sudo nano /etc/fstabপরিবর্তে, /dev/sdb1আপনি এর ব্যবহার করতে পারেন UUIDযা আপনি এটির সাথে খুঁজে পেতে পারেন sudo lshw -C volume:

*-volume
       description: EXT4 volume
       vendor: Linux
       physical id: 1
       bus info: scsi@1:0.0.0,1
       logical name: /dev/sdb1
       logical name: /crimea
       version: 1.0
       serial: c3559307-795b-66db-9844-8e974c88a1cf
       size: 200MiB
       capacity: 5589GiB
       capabilities: journaled extended_attributes huge_files dir_nlink extents ext4 ext2 initialized
       configuration: created=2016-06-24 14:56:55 filesystem=ext4 lastmountpoint=/boot modified=2016-07-01 17:15:55 mount.fstype=ext4 mount.options=rw,relatime,data=ordered mounted=2016-07-01 17:07:19 name=primary state=mounted

অন্যথায় আপনি কেবল এটি করতে পারেন sudo blkid /dev/sdb1:

/dev/sdb1: UUID="c3559307-795b-66db-9844-8e974c88a1cf" TYPE="ext4"

নতুন লাইনটি হ'ল /etc/fstab:

UUID=c3559307-795b-66db-9844-8e974c88a1cf          5.5T   58M  5.2T   1% /crimea

https://unix.stackexchange.com/a/137868/16704 ব্যাখ্যা করে যে কেন ইউআইডি (লিকিড্যাট, সিসি বাই-সা 3.0) ব্যবহার করা ভাল:

ইউআইডি ব্যবহার করার সুবিধাটি হ'ল এটি অপারেটিং সিস্টেমটি আপনার হার্ড ডিস্কটি দেয় এমন আসল ডিভাইস নম্বর থেকে স্বতন্ত্র। চিত্রটি আপনি সিস্টেমে অন্য একটি হার্ড ডিস্ক যুক্ত করেছেন এবং কোনও কারণে ওএস স্থির করে যে আপনার পুরানো ডিস্কটি sdbপরিবর্তে এখন sba। আপনার বুট প্রক্রিয়াটি স্ক্রু হবে যদি fstab ডিভাইসের নামের দিকে নির্দেশ করে। তবে ইউইউডিগুলির ক্ষেত্রে এটি ঠিক থাকবে।


সারাংশ:

sudo lshw -C disk                # Checking the location of the new drive. It is /dev/sdb.     
sudo parted /dev/sdb mklabel gpt # Creating the GUID Partition Table (GPT)
sudo parted /dev/sdb print       # Checking that the GPT has been created
sudo parted /dev/sdb print unit MB print free # see 6001175MB size
sudo parted --align optimal /dev/sdb mkpart primary ext4 0% 6001175MB # Creating partition label
sudo mkfs.ext4 /dev/sdb1         # Creating the partition
sudo nano /etc/fstab             # Add line `/dev/sdb1 /crimea ext4 defaults 0 0`
sudo mount -a # Remount /etc/fstab without rebooting

পরিবর্তে ওএসকে শেষ এমবি বলার sudo parted --align optimal /dev/sdb mkpart primary ext4 0% 6001175MBচেয়ে ext4 0% 100%সতর্কতা এড়ানো ভাল হবে : ফলাফলটি পার্টিশনটি সর্বোত্তম পারফরম্যান্সের জন্য সঠিকভাবে সংযুক্ত করা হয়নি।
পাবলো মেরিন-গার্সিয়া
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.