আমি "/ etc / passwd" ফাইলটি মুছে ফেলেছি এবং লগ ইন করতে পারি না


22

আমি আমার ব্যবহারকারীর নাম এবং আমার হোম ডিরেক্টরি ( /home/username) এবং আমার সিস্টেমটি ক্রাশ হতে শুরু করেছিলাম। আমি passwdফাইলটি মুছলাম কিন্তু আমার একটি ব্যাকআপ ছিল passwd_bkp। আমি এই নামান্তর করতে চেষ্টা passwd_bkpহিসাবে passwdএবং এটি কাজ করে নি। কোনও কমান্ড কার্যকর করা হচ্ছে না ... আমি একটি টার্মিনাল উইন্ডোতে ছিলাম।

আমি আমার সিস্টেমটি পুনরায় চালু করেছি এবং এখন আমি লগ ইন করতে পারি না GR GRUB দুটি বিকল্প দেয়: লিনাক্স এবং পুনরুদ্ধার মোড।

আমি রুট হিসাবে একটি সেশন খোলার চেষ্টা করেছি তবে এটি বলছে যে ফাইল সিস্টেমটি দূষিত। আমি আমার ফাইলগুলি অ্যাক্সেস করতে পারি না

আমি কি আমার সমস্ত ফাইল হারিয়েছি?


1
আপনার ফলোআপ প্রশ্নে: পুনরুদ্ধার কৌশলটি ব্যবহার করে আপনার পাসওয়ার্ড প্রতিস্থাপন করুন। দেখুন: Askubuntu.com
প্রশ্নগুলি

1
@ ডেভিড 6 যখন কোনও /etc/passwdফাইল নেই বলে কোনও ব্যবহারকারী লগইন করতে পারবেন না , তখন পাসওয়ার্ডটি পুনরায় সেট করাও সম্ভব হয় না। আপনাকে passwdফাইলটি পুনরুদ্ধার করতে হবে (বা পুনরায় তৈরি করতে হবে) । এবং এটি হয়ে গেলে সাধারণত পাসওয়ার্ডটি পুনরায় সেট করার দরকার হয় না।
এলিয়াহ কাগন

@ এলিয়া কাগান: রাজি হয়েছে, তবে আমি / ইত্যাদি / পাসডাব্লুড ব্যাকআপ অনুলিপি থেকে পুনরুদ্ধার করার পরে অনুসরণ-সংক্রান্ত প্রশ্নের উত্তর দিচ্ছিলাম ।
ডেভিড

ত্রুটি সম্পর্কে আপনাকে আরও সুনির্দিষ্ট হতে হবে।
psusi

উত্তর:


32

না, আপনার বিবরণ প্রদত্ত, আপনি আপনার কোনও ফাইল হারাবেন নি (বাদ /etc/passwdদিয়ে আপনি যা মুছে ফেলেছেন তবে যা আপনি ব্যাক আপ করেছেন)।

একটি উবুন্টু লাইভ সিডি / ডিভিডি বা লাইভ ইউএসবি ফ্ল্যাশ ড্রাইভ বুট করুন। Try Ubuntu(না Install Ubuntu) নির্বাচন করুন । ডেস্কটপ লোড হয়ে গেলে, একটি নটিলাস (ফাইল ব্রাউজার) উইন্ডোটি খুলুন। আপনি নিজের উবুন্টু সিস্টেমের জন্য বিভাজনটি সন্ধান করতে পারেন Devices। এটি মাউন্ট করতে এটিতে ক্লিক করুন।

এখন আপনি ব্যাকআপ পুনরুদ্ধার করতে পারেন। তবে আপনাকে এটি রুট হিসাবে করতে হবে। এটি করার একটি দুর্দান্ত উপায়।

  1. একটি টার্মিনাল উইন্ডো খুলুন ( Ctrl+ Alt+ T)। টার্মিনালে, কীটি টাইপ করুন cdএবং টাইপ করুন Space, তবে Enterএখনও টিপুন না।

  2. নটিলাসে, etcইনস্টল করা উবুন্টু সিস্টেমের ভিতরে ডিরেক্টরিটি সন্ধান করুন । (এটি etcলাইভ সিডির ডিরেক্টরি হিসাবে একই নয় the etcইনস্টল উবুন্টু সিস্টেমের অভ্যন্তরে যে ডিরেক্টরিটি আপনি সন্নিবেশ করেছিলেন সেই বিভাগে ডিরেক্টরিটি রয়েছে))

  3. এই etcডিরেক্টরিটি টার্মিনালে টেনে আনুন , যা cd ...কমান্ডটি সমাপ্ত করে টার্মিনালে তার পুরো পথটি পেস্ট করবে ।

  4. Enterকমান্ড চালাতে টিপুন । এখন আপনি সেই ডিরেক্টরিতে রয়েছেন যাতে আপনার passwdফাইল রয়েছে। আমি ধরে নিচ্ছি যে আপনার ব্যাকআপ ফাইলটি, passwd_bkpএখানেও রয়েছে।

  5. এই আদেশটি চালান:

    sudo cp passwd_bkp passwd
    

এটি passwdআপনার ব্যাকআপ থেকে ফাইলটি পুনরুদ্ধার করে , সুতরাং এখন আপনাকে পুনরায় বুট করতে, সিডি / ডিভিডি বা ইউএসবি ফ্ল্যাশ ড্রাইভটি সরিয়ে ফেলতে এবং আপনার ইনস্টল করা উবুন্টু সিস্টেমে ফিরে বুট করতে সক্ষম হওয়া উচিত। আপনার ইনস্টল করা উবুন্টু সিস্টেমটি আবার কাজ করা উচিত।


ভবিষ্যতে, যদি আপনি সচেতন হওয়া উচিত যে নিজে সম্পাদন করা করা বাঞ্ছনীয় নয় /etc/passwd, /etc/group, /etc/shadow, অথবা /etc/gshadow। পরিবর্তে, আপনার সিস্টেমে ব্যবহারকারী এবং গোষ্ঠীগুলিতে আপনার প্রয়োজনীয় পরিবর্তনগুলি করার জন্য আপনাকে উবুন্টুর অংশ হিসাবে সরবরাহিত ইউটিলিটিগুলি ব্যবহার করা উচিত। আপনি সম্ভবত সচেতন যে আপনি এটি সিস্টেম সেটিংসে বা এর মাধ্যমে সম্পাদনা করতে পারবেন users-admin। তবে এর জন্য খুব শক্তিশালী কমান্ড-লাইন ইউটিলিটিগুলি রয়েছে যা নিজে নিজে কনফিগারেশন ফাইল সম্পাদনা করার চেয়ে অনেক বেশি নিরাপদ এবং সহজ। উবুন্টুতে সর্বাধিক প্রাসঙ্গিক এ জাতীয় ইউটিলিটিগুলির বিষয়ে ডকুমেন্টেশন:

  • adduser / addgroup
  • deluser / delgroup
  • usermod
  • groupmod
  • useradd(এর চেয়ে নিম্ন-স্তরের adduser, আপনার adduserপরিবর্তে সাধারণত ব্যবহার করা উচিত )
  • userdel(এর চেয়ে নিম্ন-স্তরের deluser, আপনার deluserপরিবর্তে সাধারণত ব্যবহার করা উচিত )
  • groupadd(এর চেয়ে নিম্ন-স্তরের addgroup, আপনার addgroupপরিবর্তে সাধারণত ব্যবহার করা উচিত )
  • groupdel(এর চেয়ে নিম্ন-স্তরের delgroup, আপনার delgroupপরিবর্তে সাধারণত ব্যবহার করা উচিত )
  • passwd
  • gpasswd
  • pwck
  • grpck

আপনি সেই কয়েকটি ব্যবহারকারীর সাথে আপনার ব্যবহারকারীর নাম পরিবর্তন করতে পারেন । এই উত্তরটি বিস্তারিতভাবে একটি উপায় ব্যাখ্যা করে। যাইহোক, আপনার সচেতন হওয়া উচিত (যেমনটি সেখানে একটি মন্তব্য দ্বারা স্পর্শ করা হয়েছে) যে কিছু অ্যাপ্লিকেশন ধরে নেয় আপনার ব্যবহারকারী নাম একই রয়েছে the সুতরাং আপনার ব্যবহারকারীর নাম পরিবর্তন করা কিছু সমস্যার কারণ হতে পারে।


তোমাকে অনেক ধন্যবাদ. এখানে দক্ষিণ ব্রাজিলের সকালে চারটা ঘড়ি ... আমি এতটা উদ্বিগ্ন ছিলাম যে আমি ঘুমাতে পারিনি। আমি চেষ্টা করব ...
jooo রডরিগো লিও

2
আপনি যদি ব্যাকআপ না করেন তবে ব্যবহার করার চেষ্টা করুন /etc/passwd-বা /var/backups/passwd.bak। সঠিক অনুমতি নির্ধারণ করতে ভুলবেন না। উদাহরণ:sudo install -m644 /etc/passwd- /etc/passwd
লেকেনস্টেইন

4

লাইভসিডি বুট করার বিকল্প হিসাবে, আপনি eরেসকিউ মোড এন্ট্রি সম্পাদনা করতে, এবং init=/bin/shকার্নেল যুক্তি যুক্ত করতে গ্রাব মেনুতে টিপতে পারেন could এটি আপনাকে সরাসরি একটি রুটের শেলের সাথে নামিয়ে দেবে যেখানে আপনি ফাইল সিস্টেম রিড-রাইটিং পুনরায় গণনার পরে ব্যাকআপ ফাইলটি মূলটিতে অনুলিপি করতে পারবেন mount -o remount,rw /


1
আপনি কি নিশ্চিত যে এটি কাজ করবে? ছাড়া /etc/passwd, রুট নামে কোনও ব্যবহারকারী নেই, এবং uid = 0 সহ কোনও ব্যবহারকারী নেই । প্রয়োজনীয় ইউটিলিটিগুলি প্রয়োজনীয়ভাবে সেই অস্বাভাবিক পরিস্থিতিতে কাজ করবে?
এলিয়াহ কাগন

1
@ এলিয়াকাগান, সর্বদা uid = 0 সহ ব্যবহারকারী থাকে কারণ কার্নেলটি প্রথম প্রক্রিয়াটি শুরু করে এমন একটি ইউইড u cpঅথবা mv/ ইত্যাদি / পাসডাব্লুডের প্রয়োজন নেই।
psusi

এই আমার বোবা বাট সংরক্ষণ! আমি ক্রন্টব স্টাফ সম্পর্কিত / ইত্যাদি / ছায়াতে ম্যানুয়াল সম্পাদনা করি। আমি জানতাম না যে কেউ 'ছায়া' নিয়ে গণ্ডগোল করে না .... আমি ভেবেছিলাম যে আমি চ ** সিসিডি ছিলাম তবে @ স্পেসির জন্য godশ্বরকে ধন্যবাদ জানাই .... আমি পুনরুদ্ধারের জন্য গ্রাব মেনুটি সম্পাদনা করেছি / বিন / এসএস বলেছিলেন , তার মাউন্টটি অনুসরণ করে এবং / ইত্যাদি / তে দুর্নীতিগ্রস্থদের উপর দিয়ে / var / ব্যাকআপগুলি থেকে শ্যাডো অনুলিপি করে রেখেছি ... নতুন হিসাবে ভাল .. ধন্যবাদ
রোউনট্রিওব

2

এই উত্তরটি পড়া চালিয়ে যাওয়ার আগে আপনার প্রথমে এলিয়াহ কাগনের উত্তরটি পড়া উচিত। তিনি পরিস্থিতিটি কীভাবে মোকাবেলা করবেন এবং ম্যানুয়ালি / ইত্যাদি / পাসডাব্লুড কেন পরিবর্তন করার প্রয়োজন হয় না তা তিনি ব্যাখ্যা করেছেন।

যাইহোক আপনি যদি সত্যিই জানেন যে আপনি কী করছেন এবং আপনাকে ম্যানুয়ালি সম্পাদনা/etc/passwd করতে হবে তবে আপনি এটি করতে পারেন, তবে তবুও আপনার পছন্দসই সম্পাদক দিয়ে ফাইলগুলি পরিবর্তন করা উচিত নয়। পরিবর্তে সরঞ্জাম আছে

vipw

ম্যান পেজগুলি থেকে:

The vipw and vigr commands edits the files /etc/passwd and /etc/group,
respectively. With the -s flag, they will edit the shadow versions of those
files, /etc/shadow and /etc/gshadow, respectively. The programs will set
the appropriate locks to prevent file corruption.

উদাহরণস্বরূপ, যদি আপনি কোনও ব্যবহারকারী ইউআইডি পরিবর্তন করতে চান তবে আমি যতদূর জানি ফাইলগুলি ম্যানুয়ালি সম্পাদনা করা একমাত্র উপায়। এছাড়াও যদি আপনি কোনও ব্যবহারকারীর পাসওয়ার্ড পরিবর্তন করতে চান এবং এটি না জেনে তার আগেরটিতে ফিরে যান তবে এর সাথে কোনও উপায় নেই usermod। তবে যদি আপনি হ্যাশ পাসওয়ার্ডটি ছায়া ফাইলের আকারে সংরক্ষণ করেন তবে ব্যবহারকারীর পাসওয়ার্ড পরিবর্তন করে আপনি পরে ছায়া ফাইল সম্পাদনা করে হ্যাশ পাসওয়ার্ড যুক্ত করতে পারেন vipw -s


1

এলিয়াকাগান এর উত্তর অনুসরণ করার পরে আমি লগইন করতে পারিনি lightdmএবং আমার অ্যাকাউন্টটি তালিকাভুক্ত হয়নি। আমি আবিষ্কার করেছি যে passwdফাইলটির অনুমতিটি সঠিকভাবে সেট আপ করা হয়নি; লাইটডিএম ব্যবহারকারীর এটিতে অ্যাক্সেস নেই। এখানে আমি এটি ঠিক করেছি:

একটি টিটি Ctrl+ Alt+ এ লগ ইন করুনF1

/etcডিরেক্টরিতে পরিবর্তন করুন

cd /etc

তারপরে অনুমতিগুলি পরিবর্তন করুন 644

sudo chmod 644 passwd

তাহলে কর ls -la

অনুমতি স্ট্রিং এর মত দেখতে হবে

-rw-r--r--

-1

আপনি যদি খালি টার্মিনালটি লগইন করতে পারেন এবং এটি ব্যবহার করে দেখতে পারেন:

sudo cp /etc/passwd- /etc/passwd
sudo chmod 644 /etc/passwd

আর

পুনরুদ্ধার মোডে বা উবুন্টু লাইভ সিডি থেকে বুট করুন। তারপরে, আপনার পুরানো ড্রাইভটি মাউন্ট করুন:

mkdir /olddrive
mount /dev/hda5 /olddrive
assuming that your old drive is on /dev/hda5.
then, cd to /olddrive/etc
type:
echo "root::0:0:Superuser:/:/bin/bash" > passwd

তারপরে পুনরায় বুট করুন। এটি রুটের জন্য কোনও পাসডাব্লুড সেট করবে না।

তারপরে, আপনি লগইন করতে পারেন, আপনার সমস্ত অ্যাকাউন্ট আবার তৈরি করতে পারেন, ইত্যাদি

আপনি যে ব্যাক আপটি বলেছিলেন তাও ব্যবহার করতে পারেন (আমার মনে হয়) /etc/passwd-

সম্পাদনা : (অন্য পদ্ধতিটি আমি এর আগে চেষ্টা করি নি তবে আমার মনে হয় এটিও কার্যকর হওয়া উচিত)

  • বুটে GRUB শুরু করুন (বুট Escকরার সময় টিপুন )
  • চাপুন e(পুনরুদ্ধার মোড)
  • eকার্নেল দিয়ে শুরু করে লাইনের উপরে টিপুন
  • টিপুন Spaceএবং প্রবেশ করুনinit=/bin/bash
  • প্রেস Enter
  • প্রেস b
  • কমান্ড প্রম্পটে টাইপ করুন: cp /etc/passwd- /etc/passwd
  • আবার GRUB এ পুনরায় বুট করুন
  • চাপুন e(পুনরুদ্ধার মোড)
  • eকার্নেল দিয়ে শুরু করে লাইনের উপরে টিপুন
  • টিপুন Spaceএবং প্রবেশ করুনinit=/bin/bash
  • প্রেস Enter
  • প্রেস b
  • কমান্ড প্রম্পটে টাইপ করুন mount -o remount,rw /
  • প্রকার passwd YOURUSERNAMEHERE(যদি আপনি ls /homeব্যবহারকারীর তালিকার জন্য আপনার ব্যবহারকারীর নামটি জানেন না (তবে এটি একটি লোয়ার কেস এল এবং লোয়ার কেস এস))
  • প্রম্পটে নতুন পাসওয়ার্ড লিখুন
  • সাধারণ বুটে পুনরায় বুট করুন।

সূত্র

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