আমার কি "লেজ: অচেনা ফাইল সিস্টেম টাইপ 0xbeefdead" সম্পর্কে চিন্তা করার দরকার আছে?


32

আমি একজন নিয়মিত টেক্সট ফাইল অনুসরণ করার চেষ্টা করছি tail -f -n 50 filename। আমি সবসময় এই ত্রুটি বার্তাটি ব্যতীত আমি ফাইলটি থেকে ঠিক ঠিক তথ্য পাই get

লেজ: অবিজ্ঞাত ফাইল সিস্টেম টাইপ 0xbeefdead

এটি প্রতিটি ফাইলেই ঘটে। 0xbeefdeadআমাকে চিন্তিত - এটা একটি হ্যাকার ট্যাগ মত দেখায়।

$ tail --version
tail (GNU coreutils) 8.4

3
0xdeadbeefপরিবর্তে এটি করা উচিত নয় ? :P
ডেভনুল

1
কাছের ভোট প্রত্যাহার।
slm

1
সম্ভবত সুস্পষ্ট তবে 0xDEADBEEF প্রায়শই অবিচ্ছিন্ন বাইট এবং এর মতো জিনিসগুলি নির্দেশ করতে ব্যবহৃত হয়। বিফড্যাড সম্ভবত এটির একটি স্মার্টাস টুইস্ট। en.wikipedia.org/wiki/Hexspeak (deadbeef অনুসন্ধান)
user426724

@ গোল্ডিলোকস: এটি একটি দুর্দান্ত গল্প তবে কোনও প্রশ্ন নেই। এছাড়াও, আপনার ক্যাপস লক কীটি ঠিক করুন।
বেন ভয়েগট

3
@ বেনভয়েগ ক্যাপস লক একপাশে রেখে তিনি একটি বৈধ পয়েন্ট দিয়েছেন। প্রশ্নটি পুরোপুরি স্পষ্ট: তিনি কেবল জিজ্ঞাসা করছেন তাঁর গরুর মাংস স্বাভাবিক কিনা।
নবীন

উত্তর:


34

আপনি যদি স্টোরনেক্সট ফাইল সিস্টেম ব্যবহার করার সময় এই সতর্কতাটি পেয়ে থাকেন এবং coreutils8.21 বা তারও আগের চলমান থাকেন , তবে উদ্বিগ্ন হওয়ার কিছু নেই; এই সতর্কতা বার্তা প্রত্যাশিত

গনুহ tailফাইলসিস্টেম ধরনের সংখ্যা সম্পর্কে hardwired জ্ঞান আছে, এবং সতর্ক করে যখন এটি একটি অজানা টাইপ encounters। StorNext ফাইলসিস্টেম জন্য সমর্থন যোগ করা হয়েছিল tailমধ্যে coreutilsএপ্রিল 2013 সালে, এবং মুক্তি পায় coreutils8.22। প্রতিশ্রুতি এখানে আছে । আপনি যদি সেই সংস্করণটি পেতে না পারেন coreutils, বা উত্সটি সম্পাদনা করতে এবং পুনরায় সংকলন করতে চান না, তবে এই প্রতিশ্রুতি থেকে আলাদা:

src/stat.c
@@ -399,6 +399,8 @@ enum
     return "selinux";
   case S_MAGIC_SMB: /* 0x517B remote */
     return "smb";
+  case S_MAGIC_SNFS: /* 0xBEEFDEAD remote */
+    return "snfs";
   case S_MAGIC_SOCKFS: /* 0x534F434B local */
     return "sockfs";
   case S_MAGIC_SQUASHFS: /* 0x73717368 local */

11
কেন একটি ইউজারস্পেস প্রোগ্রাম যেমন tailএকটি নির্দিষ্ট ফাইল সিস্টেমের সাথে সামঞ্জস্য করা প্রয়োজন? আমার ধারণা আমি কী বোঝাতে চাইছি, কোনও ফাইল সিস্টেমের বিমূর্ততা এটি নির্ভর করতে পারে?

15
@ ইলুমিনÉ, ফাইল সিস্টেমের ধরণ নির্ধারণের প্রধান কারণ হ'ল "টেল-ফ" অপারেশন: কোনও ফাইলের মধ্যে নতুন ডেটা লেখা হয়েছে কিনা তা বের করার সবচেয়ে কার্যকরী উপায়টি একটি ফাইল সিস্টেমের মধ্যে অন্যটিতে পরিবর্তিত হয়।
চিহ্নিত করুন

9
tail-fবিকল্পের সাথে এটি inotifyযদি ব্যবহার করতে পারে তবে তা ব্যবহার করে। তবে inotifyকেবলমাত্র স্থানীয় সিস্টেমের কার্নেল দ্বারা করা ক্রিয়াকলাপের ফলে পরিবর্তনগুলি পর্যবেক্ষণ করতে পারে। সুতরাং কেবলমাত্র যদি ফাইল আর্গুমেন্টটি "স্থানীয়" ফাইল সিস্টেম হিসাবে শ্রেণিবদ্ধ করা হয় তখনই তা tailব্যবহার করবে inotify
মার্ক প্লটনিক

7
এবং তথ্যের চূড়ান্ত অনুপস্থিত অংশটি হ'ল কার্নেল কোনও স্পষ্ট ইঙ্গিত দেয় না যে আপনি যখন কোনও ফাইল সিস্টেমের ইনোটাইফাই ব্যবহার করার চেষ্টা করেন যা এটি সমর্থন করে না, তাই এই ম্যাজিক নম্বরটি ক্লডজেফেষ্ট মূলত এটি ব্যবহারের একমাত্র নিরাপদ উপায়।
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.