সিটিটাইমে কীভাবে পরিবর্তন হয়?


8

আমি যখন ফাইলের সিটিটাইম টাইমস্ট্যাম্পটি পরিবর্তন করা হয় তখন ঠিকঠাকভাবে বোঝার চেষ্টা করছি। অনেক জায়গায় (যেমন, এখানে গৃহীত উত্তরে ) এটি প্রস্তাবিত হয় যে ফাইলের বৈশিষ্ট্যগুলির যে কোনও পরিবর্তন সিটিটাইমেও পরিবর্তন করবে। তবে এটি সত্য বলে মনে হচ্ছে না, কমপক্ষে আমার উবুন্টু 12.04 এ (হ্যাঁ, আমি জানি, কিছুটা পুরানো ...):

cat file.txt > /dev/null

টাইম পরিবর্তন করে, সুতরাং এটি ফাইলের বৈশিষ্ট্যগুলি (ফাইল ইনোডে) পরিবর্তন করে, তবে সিটিটাইম পরিবর্তন করে না।

অন্যান্য উত্স (যেমন, এখানে এবং এখানে ) প্রস্তাব দেয় যে কেবলমাত্র ফাইলের বৈশিষ্ট্যগুলির কিছু ক্রিয়াকলাপগুলি সিটিটাইমে পরিবর্তন করে, তবে একটি সুনির্দিষ্ট তালিকা সরবরাহ করা হয় না।

সিটিটাইমে কোন ক্রিয়াকলাপ পরিবর্তিত হয় তার সুনির্দিষ্ট রেফারেন্স আমি কোথায় পাব?


সমস্যাটির সাথে সম্পর্কিত হতে পারে cat, আপনি কি এটি দিয়ে পরীক্ষা করেছেন touch?
মাহদি

উত্তর:


8

ইউনিক্স সিস্টেমে তিনটি টাইম স্ট্যাম্প রয়েছে:

  • atime: প্রবেশাধিকার সময়

    এইবারের স্ট্যাম্পটি আপনাকে জানায় যে শেষবার কখন অ্যাক্সেস করা হয়েছিল , কেবলমাত্র পাঠের অ্যাক্সেস সহ।

  • ctime: সময় পরিবর্তন

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

    নোট করুন যে সময়কালীন পরিবর্তনগুলি একটি ব্যতিক্রম বলে মনে হচ্ছে কারণ তারা সিটিএম আপডেট আপডেট করে না। এটি সম্ভবত কারণ একটি সাধারণ পাঠ্য অ্যাক্সেস যা একটি টাইম আপডেট ট্রিগার করার জন্য যথেষ্ট, ফাইল বৈশিষ্ট্যে কোনও প্রাসঙ্গিক পরিবর্তন করে না। এবং সিটাইমের মূল উদ্দেশ্যগুলির মধ্যে একটি হ'ল কোনও ফাইল পরিবর্তন হয়েছে কিনা তা নির্ধারণ করতে ব্যাকআপ সরঞ্জামগুলিকে সহায়তা করা। এটাইম এই জাতীয় সরঞ্জামগুলির জন্য অপ্রাসঙ্গিক তথ্য এবং একটি পরিবর্তিত সময়কে আপডেট করার জন্য একটি ব্যাকআপ আপডেট করা কারণ কেউ ফাইল পড়েছেন তা অকেজো হবে।

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

  • mtime: সংশোধন সময়

    এইবারের স্ট্যাম্প আপনাকে জানায় কখন শেষবারের মতো ফাইলের সামগ্রীটি পরিবর্তন করা হয়েছিল


সুতরাং একটি সাধারণ পাঠ্য অ্যাক্সেস cat FILENAMEকেবলমাত্র টাইম পরিবর্তন করে , তবে কোনও ফাইল বৈশিষ্ট্য পরিবর্তিত না হওয়ায় সিটিটাইম হয় না। পরিবর্তিত সময়টি গণনা করে না।


ঠিক এটাই কথা: পরিবর্তিত সময়টি গণনা হয় না কেন ? এটি একটি ফাইল বৈশিষ্ট্য নয়?
ওয়েলহার্ডকোডার

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