মাউন্ট এইচএফএস + ড্রাইভের সাথে সমস্যা


12

আমার কিছু hfsplus ড্রাইভ মাউন্ট করতে সমস্যা হচ্ছে। আমার কেবল তাদের কেবল পঠনযোগ্য মাউন্ট করা দরকার। (জার্নাল অক্ষম করা কোনও বিকল্প নয়) আমি প্রচুর গবেষণা করে জানতে পেরেছিলাম যে কার্নেল সংস্করণ ২.6.৩ 2. থেকে ২.6.৩৮ এ পরিবর্তিত হওয়ার কারণে সমস্যাটি শুরু হয়েছিল।

এই লিঙ্কটি একবার bugs.launchpad.net এ দেখুন

সুতরাং আমি এটি লিনাক্স কার্নেল সংস্করণ ২.6.৩7 এবং এর চেয়ে কম দিয়ে পরীক্ষা করেছি এবং এটি যেমনটি করা উচিত ঠিক তেমন কাজ করেছে।

আমার সংস্করণ যা উপরে 3.2.0-54-জেনেরিক (উবুন্টু 12.04) সহ উপরের সংস্করণগুলি এইচএফস্প্ল্লাস চিত্র এবং ডিস্কগুলি মাউন্ট করে কাজ করে নি। সুতরাং আমার উবুন্টু 9 থেকে জেনেরিক 2.6.31-14-এর মতো একটি কার্যকারী সংস্করণ থেকে hfsplus মডিউলটি দরকার।

আমি এই আদেশগুলিতে এইচএফএস + ডিডি চিত্রের সাথে এই ক্ষেত্রে ব্যবহার করি। তবে আমি অন্যান্য এইচএসপিপ্লাসের শারীরিক ড্রাইভ এবং অন্যান্য চিত্রের সাহায্যে এটি করেছি। এগুলি সমস্ত কার্নেল ২.6.৩7 এবং নিম্নের সাথে কাজ করে তবে নতুন সংস্করণে নয়:

sudo losetup -d /dev/loop0
sudo losetup /dev/loop0 -o $((512*409640)) /folder/iMac_21.dd

sudo mount -t hfsplus /dev/loop0 /mnt/hfs
mount: wrong fs type, bad option, bad superblock on /dev/loop0,
missing codepage or helper program, or other error

dmesg | tail
[84980.380254] hfs: invalid secondary volume header

আমাকে এই তথ্য "প্রমাণ" যুক্ত করতে হবে যে সমস্যাটি কার্নেল ২.6.৩৮ এর পরে রয়েছে। এই একবার দেখুন। এটি প্যারাগন থেকে আসা একটি এনটিএফএস আন্ড এইচএফএস + ড্রাইভার।

"What's new in Paragon NTFS & HFS+ for Linux 8.5:
Support for modern Linux Kernels (up to 2.6.38);"
paragon-software.com/home/ntfs-linux-per/features.html

সমস্যা সমাধানের জন্য আমি /lib/modules/2.6.27/kernel/fs/hfsplus.koআমার বর্তমান 3.2.0-54-জেনেরিক কার্নেলটিতে অনুলিপি করেছি। তবে তা কার্যকর হয়নি। আমি কীভাবে আমার বর্তমান 3.2.0-54-জেনেরিক কার্নেল উবুন্টু 12.04 লিনাক্সের মধ্যে এইচএফস্প্লস অংশটি পেতে পারি? অথবা আমার কর্নেলটি ঠিক ঠিক ২.6.৩7 এর মতো কাজ করতে কীভাবে ঠিক করবেন?

আমি যে সেরা ইঙ্গিতটি দেখেছি তা হ'ল এটি

উত্তর:


18

এই প্রশ্নটি কিছুটা পুরানো তবে একই পরিস্থিতিতে এইচএফএস + পার্টিশন মাউন্ট করার চেষ্টা করার সময় আমি এটি পেরিয়ে এসেছি এবং এর সমাধান খুঁজে পেয়েছি। এটি কীভাবে কার্নেল সংস্করণের সাথে সম্পর্কিত তা আমি নিশ্চিত নই, খনিটি 3.13 (3.13.7-1 x86_64, দেবিয়ান)।

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

পার্টিশনের আকার এবং তার অফসেট সরবরাহ করুন।

দীর্ঘ উত্তর

প্রথমে পার্টেড থেকে বাইটে পার্টিশনের তথ্য পান; আপনার শুরু এবং আকারের সংখ্যাগুলি দরকার। পার্টেড সেশনের উদাহরণ এখানে (যেমন আপনি অনুমান করতে পারেন, আমার হার্ড ড্রাইভের চিত্রটি /mnt/macbook.dd):

$ /sbin/parted /mnt/macbook.dd
WARNING: You are not superuser.  Watch out for permissions.
GNU Parted 2.3
Using /mnt/macbook.dd
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) unit
Unit?  [compact]? b
(parted) p
Model:  (file)
Disk /mnt/macbook.dd: 160041885696B
Sector size (logical/physical): 512B/512B
Partition Table: gpt

Number  Start       End            Size           File system  Name                  Flags
 1      20480B      209735679B     209715200B     fat32        EFI system partition  boot
 2      209735680B  159907647487B  159697911808B  hfs+         Customer

আমি যদি কেবল অফসেট (শুরু) সরবরাহ করে পার্টিশনটি মাউন্ট করার চেষ্টা করি তবে আমি আপনার মতো একই ত্রুটি পেয়েছি:

# mount -v -t hfsplus -o ro,loop,offset=209735680 /mnt/macbook.dd /media/mac
mount: enabling autoclear loopdev flag
mount: going to use the loop device /dev/loop0
mount: wrong fs type, bad option, bad superblock on /dev/loop0,
       missing codepage or helper program, or other error
       In some cases useful info is found in syslog - try
       dmesg | tail  or so
# dmesg | tail -n2
[117791.463123] hfsplus: invalid secondary volume header
[117791.463132] hfsplus: unable to find HFS+ superblock

যাইহোক, আপনার কোনও ক্ষতিপূরণ ব্যবহার করার দরকার নেই, মাউন্ট স্বয়ংক্রিয়ভাবে এটি আপনার জন্য করে। এখন আমি যদি পার্টিশনের আকার (সিজিলিমেট) যুক্ত করি তবে এটি পুরোপুরি কাজ করে:

# mount -v -t hfsplus -o ro,loop,offset=209735680,sizelimit=159697911808 /mnt/macbook.dd /media/mac
mount: enabling autoclear loopdev flag
mount: going to use the loop device /dev/loop0
/mnt/macbook.dd on /media/mac type hfsplus (ro,offset=209735680,sizelimit=159697911808)

4
আপনার সমাধানটি আমার জন্য "অবৈধ মাধ্যমিক ভলিউম শিরোলেখ" বার্তাটির যত্ন নেয়, তবে "এইচএফএস + সুপারব্লকটি সন্ধান করতে অক্ষম" ত্রুটিটি রয়ে গেছে :(
ক্রম্পেলসটিল্টস্কিন

1
ডেমসগে এখনও উভয় ত্রুটি পেয়েছি যদিও আমি অফসেট এবং সিজিলিমেট উভয়ই নির্দিষ্ট করেছি
wkarl

অফসেটটি কী হবে তা পরিষ্কার নয় - আমার জন্য, Numberআমার ডিভাইসটি 1 offset=1এবং offset=0উভয়ই ব্যর্থ হয়
মাইকেলচিরিকো

16

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

যদিও এমসিএ দ্বারা প্রদত্ত উত্তরটি কাজ করা উচিত যদি পার্টিশনটি আসলে এইচএফএস + পার্টিশন হয় তবে ওএসএক্স যোসমেট থেকে শুরু করে ম্যাকের জন্য পূর্বনির্ধারিত পার্টিশনের ধরণটি "কোর স্টোরেজ" হয়, যা লজিক্যাল ভলিউমগুলি পরিচালনা করতে ব্যবহৃত হয়। এর অর্থ হ'ল আপনি যা যা মাউন্ট করতে চান তা হ'ল "মূল স্টোরেজ" পার্টিশনের ভিতরে একটি লজিক্যাল ভলিউম (এইচএফএস + ফাইলসাইম ব্যবহার করে)।

আপনার পার্টিশনটি "অ্যাপল কোর স্টোরেজ" টাইপ করা হয়েছে কিনা তা দেখতে আপনি ব্যবহার করতে পারেন gdisk: AF05"অ্যাপল কোর স্টোরেজ" af00এর কোড , যখন "অ্যাপল এইচএফএস / এইচএফএস +" এর কোড।

যদি আপনার ডিস্কটি "অ্যাপল কোর স্টোরেজ" ব্যবহার করে তবে আপনি এই উত্তরে প্রদত্ত গাইডটি মাউন্ট করার জন্য ব্যবহার করতে পারেন ।


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