আপনি কেবল ইনড ব্যবহার করে একটি ফাইল (ডিরেক্টরি বা যা কিছু) ব্যবহার করে ফাইলটির নাম পরিবর্তন করতে পারেন find
, তবে (ক) এতে থাকা ফাইল সিস্টেমটি মাউন্ট না করা হয়, বা (খ) অন্য একটি ফাঁকা ফাঁকা ডিরেক্টরিতে থাকা অন্য কোনও ফাইল সিস্টেম রয়েছে যা এতে অন্তর্ভুক্ত রয়েছে আপনার আগ্রহী ফাইলটি, ফাইলটি কেবল আপনার সিস্টেমে অ্যাক্সেসযোগ্য নয়। ক্ষেত্রে (ক), পুনর্নবীকরণ সহ সামগ্রীগুলিতে কিছু করার আগে আপনার ফাইল সিস্টেমটি মাউন্ট করতে হবে এবং (খ) এর ক্ষেত্রে আপনাকে ফাইল সিস্টেমটি আনমাউন্ট করতে হবে যা ডিরেক্টরিতে থাকা "শীর্ষে" মাউন্ট করা আছে আপনি নাম পরিবর্তন করতে চান ফাইল। দেখে মনে হচ্ছে আপনি কেস (খ) সম্পর্কে জিজ্ঞাসা করছেন।
যদি আমি আপনাকে সঠিকভাবে বুঝতে পারি তবে আপনি নিজের পুরানো /home
ডিরেক্টরিটি (যা আপনার মূল বিভাজনে অবস্থিত) অ্যাক্সেসযোগ্য করার চেষ্টা করছেন, তবুও আপনার নতুন পার্টিশনটি মাউন্ট করা রয়েছে /home
। যদি আপনি এটি চান তবে নিম্নলিখিতটি করুন:
সমস্ত ফাইল বন্ধ করুন এবং লগ আউট করুন। তারপরে লগ ইন করুন root
(এটির জন্য ভার্চুয়াল টার্মিনালটি ব্যবহার করুন C Ctrl-Alt-F2 টিপুন) নিম্নলিখিতটি চালান:
umount /home
mv /home /home-old
mkdir /home
mount -a
ls /home
ls /home-old
সবকিছু ঠিকঠাক থাকলে লগ আউট করে নিজের মতো করে লগ ইন করুন এবং সব ঠিকঠাক হওয়া উচিত।
ঘটনাক্রমে, কোনও ফাইলের ইনোডের জ্ঞান (ফাইলটি বর্তমান ডিরেক্টরিতে রয়েছে) ধরে রেখে নামকরণের আদেশটি হ'ল:
find . -maxdepth 1 -inum 123456789 -exec mv {} mynewname \;
123456789
অবশ্যই ইনোড নম্বরটি কোথায় । (দ্রষ্টব্য যে find
ফাইলের নাম এবং তার পথ নির্ধারণ করে এবং এই তথ্যটিকে এই পাস করে দেয় mv
; বিদ্যমান ফাইলের নাম কোনওভাবেই জড়িত না করে কোনও ফাইলের নাম পরিবর্তন করার কোনও উপায় নেই, তবে যদি আপনি ফাইলের নাম জানেন না তবে এটি যথেষ্ট সহজ।)