সহজ রাস্তা
btrfs-zero-log /dev/sda5
আপনার এই সমস্যাটি হচ্ছে কারণ একটি লেনদেন (লিখুন বা মুছুন) জার্নাল লগে আটকে আছে এবং ডিস্ক এটির সাথে মেলে না।
কিভাবে এটা কাজ করে:
সুতরাং যখন ডেটা 1 ম জার্নালে লেখা হয় তার পরে ডিস্কে লেখা হয় (বা একই সাথে, তবে জার্নাল কেবল আসন্ন লেখার সম্পর্কে মেটাডেটা সংরক্ষণ করে - নিশ্চিত নয় ... সেই অংশটি সম্পর্কে আরও গবেষণা প্রয়োজন) ...
যাইহোক আপনি যদি এই লেখার মাঝখানে সিস্টেমটি মুছে ফেলেন / মুছুন বা সিস্টেমটিকে কিছু হিকআপ করুন (আপনার ইউআরটিফের মাউন্ট পয়েন্টটি ধারণ করে এমন ইউএসবি বাতিল করে দিন), তবে যখন এটি ফিরে আসে যে মাউন্টটি কাজ করবে না এটি ব্যর্থ হবে ( dmesg এবং btrfsck হবে) আপনাকে আরও বিশদে ত্রুটিগুলি দেখান) ...
ডেমসগের দিকে তাকালে আপনি সেই একই ট্রানজিড মেসেজ দেখতে পাবেন।
আপনি এরকম কিছু দেখতে পাবেন:
parent transid verify failed on 109973766144 wanted 1823 found 1821
এর অর্থ হল যে বিটিআরএফস 1826 (এটি জার্নালে ছিল) বদলে চেয়েছিল তবে ডিস্কে এটি 1821 দেখেছিল So আমি ব্যক্তিগতভাবে এখানে কেবল একটি 2 টি লেনদেনের কারণে একটি ব্রিটফ-জিরো-লগকে ঝুঁকিপূর্ণ করব। তবে এটি যদি আপনার একমাত্র ডেটা হয় তবে ১০০% নিরাপদ থাকুন (আপনার কাছে যদি সমালোচনামূলক ডেটা থাকে তবে এটির কেবল কখনও 1 কপি থাকা উচিত নয়, সর্বদা নিরাপদ অন্য স্থানে একটি অনুলিপি / ব্যাকআপ থাকা উচিত - বিটিআরএফএস নির্মাতাদের দোষ দেওয়া ব্যাকআপ না রাখার দায় নিজস্বতার অভাবে ব্যক্তির বিরুদ্ধে ন্যায়সঙ্গত করুন - বিটিআরএফএস ব্যাকআপ সমাধান নয়, এটি একটি ফাইল সিস্টেম - এটির অনুলিপি ছাড়া অন্য কোনও সত্যিকারের ব্যাকআপ সমাধান আর নেই যেখানে - এমনকি প্যারিটি বা মিররযুক্ত ড্রাইভও নয়, একটি সত্য ব্যাকআপ টেক্সাসে আপনার কার্যালয়ে থাকা কপিরাইটের অনুলিপি আল্পসে ভূগর্ভস্থ কোথাও বসে আছেন)
parent transid verify failed on 31302336512 wanted 62455 found 62456
এখানে জার্নালটি 62455 চাইছে তবে 62456 এ ডিস্কটি এগিয়ে রয়েছে, সুতরাং আপনার ক্ষেত্রে আমি কেবল জার্নালটি সাফ করব। জার্নালটি এবার আপডেট হয়নি। আবার আমি আপনাকে নিরাপদ জিনিস হ'তে বলেছিলাম, যদি এটি আপনার কেবলমাত্র ডেটা এবং এর মেগা সমালোচনা করে (আপনার জন্য লজ্জাজনক), এবং আমি নিরাপদ হওয়ার জন্য প্রথমে নীচের ক্রিয়াকলাপগুলি করব।
বিটিআরএফএসকে / ডেভ / এসডিএ 5 চালানো (যা কেবলমাত্র একটি পঠনযোগ্যভাবে পরীক্ষা করে যাতে এটি সম্পূর্ণ নিরাপদ হয়, কেবলমাত্র বিটিআরএসপি বিকল্পগুলির যেটি আপনাকেই চিন্তিত করতে হবে) আপনাকে সেই বার্তাগুলিও প্রদর্শন করবে।
তবে সাবধান থাকুন যদি সেই ডেটা সমালোচনা হয় তবে আমি প্রথমে করতাম (অন্যান্য জেনেটরা যেমন বলেছে)
mount -t btrfs -o rootflags=recovery,nospace_cache /dev/sda3 /mnt/sda3
mount -t btrfs -o rootflags=recovery,nospace_cache,clear_cache /dev/sda3 /mnt/sda3
mount -t btrfs -o recovery,nospace_cache,nospace_cache /dev/sda3 /mnt/sda3
তারপরে আপনার সমস্ত ফাইল সিপি বা আরএসএনসি নিরাপদ স্থানে নিয়ে যান, তারপরে বিটিআরএফএস-জিরো-লগ নিরাপদ করুন, যদি এটির একটি সফল ক্রিয়াকলাপ আপনি কেবলমাত্র আপনার সিস্টেমে ব্যাক আপ করার জন্য অনেক সময় ব্যয় করেছেন (তবে এটি সফল না হলে, আপনি কেবল আপনার সংরক্ষণ করেছেন গাধা)
তারপরে যদি মাউন্টগুলি ব্যর্থ হয় একটি বিটিআরএফ পুনরুদ্ধার করে (সিস্টেমের ডাম্প, আমি এটির পুনঃসূচনাযোগ্য অপারেশনটি বুঝতে পারি, তবে এটি Y বা y এর জন্য বার বার জিজ্ঞাসা করে রাখে তাই আউটপুটটি দেখুন)
btrfs restore /dev/sda5 /USB
তারপরে নিরাপদে (যখন বিটিআরএফএস পুনরুদ্ধার সম্পন্ন হবে) বিটিআরএফএস-জিরো-লগ করুন, যদি এটির সফল অপারেশন আপনি কেবলমাত্র আপনার সিস্টেমকে ব্যাক আপ করার জন্য অনেক সময় ব্যয় করেছেন (তবে এটি সফল না হলে, আপনি কেবল নিজের গাধাটি সংরক্ষণ করেছেন)
আপনি প্রথমে স্ক্রিন চালাতে পারেন
screen /bin/bash
btrfs restore /dev/sda5 /USB
স্ক্রিন সাইড নোট
বিচ্ছিন্ন করতে (কমান্ড এখনও চলবে): কন্ট্রোল-এ টাইপ করুন ": বিচ্ছিন্ন" উদ্ধৃতি ছাড়াই ENTER টিপুন
বিচ্ছিন্ন করার আরেকটি উপায়: তারপরে পুটি বা আপনার টার্মিনালের বাইরে গিয়ে এটি বিচ্ছিন্ন হয়ে যাবে (কমান্ডটি / পুনরুদ্ধারটি এখনও চলবে)।
এটি পরীক্ষা করতে, কেবল এটিতে আবার স্ক্রিন করুন:
screen -x
স্ক্রীন -x সেশনগুলিতে সংযুক্ত হবে, এমনকি যদি এটি পৃথক করা হয়, এবং -h এর বিপরীতে, এটি ইতিমধ্যে সংযুক্ত থাকলেও এটি সংযুক্ত করবে)
আপনার যদি বেশ কয়েকটি স্ক্রিন থাকে তবে স্ক্রীন -x আপনাকে জানাবে যে অধিবেশনটির সাথে সংযুক্ত করার জন্য আপনাকে আরও নির্দিষ্ট হতে হবে:
screen -ls
সমস্ত সেশনের তালিকার জন্য ls, এটি মনে রাখা সহজ।
পিআইডি দেখতে আপনি এটি করতে পারেন:
ps aux | grep screen
একবার আপনার পিআইডি সন্ধান করার পরে, স্ক্রিনটি এভাবে চালান:
screen -x PID
এটি একটি নির্দিষ্ট সেশনে সংযুক্ত হবে। আপনি একই স্ক্রিনের সাথে একাধিক সেশন / পুটিস সংযুক্ত থাকতে পারেন (তারা একই পাঠ্য আউটপুট দেবে, আপনি একটিতে কমান্ড লিখতে পারেন এবং সেগুলি অন্য পুটিতে মিরর করা হবে)
nospace_cache
?