ভাই এমএফসি -7340 ডেব ড্রাইভার দ্বারা ভাঙা ডিপিকিজি কীভাবে ঠিক করবেন


9

আমি বলছি যে একটি উপযুক্ত-ত্রুটি ত্রুটি পেয়েছি

E: The package brmfc7340lpr needs to be reinstalled, but I can't find an archive for it.

Brmfc7340lpr একটি প্রিন্টার ড্রাইভার - এটি একটি স্থানীয় দেব ফাইল। একটি ডিপি কেজি বা অ্যাপট-গেইজ শুদ্ধকরণ কাজ করে না, হয় না apt-get install -f

স্থানীয় দেব ফাইল থেকে আমি কীভাবে একটি প্যাকেজ পুনরায় ইনস্টল করব?

আউটপুট:

box-name% sudo apt-get upgrade
[sudo] password for username: 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
E: The package brmfc7340lpr needs to be reinstalled, but I can't find an archive for it.
box-name% sudo apt-get purge brmfc7340lpr
Reading package lists... Done
Building dependency tree       
Reading state information... Done
E: The package brmfc7340lpr needs to be reinstalled, but I can't find an archive for it.
box-name% sudo dpkg --purge brmfc7340lpr 
dpkg: error processing brmfc7340lpr (--purge):
 Package is in a very bad inconsistent state - you should
 reinstall it before attempting a removal.
Errors were encountered while processing:
 brmfc7340lpr
box-name% sudo dpkg --install brmfc7340lpr-2.0.2-1.i386.deb
Selecting previously deselected package brmfc7340lpr.
(Reading database ... 725204 files and directories currently installed.)
Preparing to replace brmfc7340lpr 2.0.2-1 (using .../brmfc7340lpr-2.0.2-1.i386.deb) ...
Unpacking replacement brmfc7340lpr ...
start: Unknown job: lpd
dpkg: warning: subprocess old post-removal script returned error exit status 1
dpkg - trying script from the new package instead ...
start: Unknown job: lpd
dpkg: error processing brmfc7340lpr-2.0.2-1.i386.deb (--install):
 subprocess new post-removal script returned error exit status 1
start: Unknown job: lpd
dpkg: error while cleaning up:
 subprocess new post-removal script returned error exit status 1
Errors were encountered while processing:
brmfc7340lpr-2.0.2-1.i386.deb
box-name% sudo apt-get install -f                                     
Reading package lists... Done
Building dependency tree       
Reading state information... Done
E: The package brmfc7340lpr needs to be reinstalled, but I can't find an archive for it.
box-name% 

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

উত্তর:


13

আপনি সর্বদা ব্যবহার করে একটি প্যাকেজ ইনস্টল করতে পারেন (পুনরায়) dpkg:

dpkg --install local-file.deb

"ক্লিন রুম" ইনস্টলেশন করার জন্য, আপনি প্রথমে প্যাকেজটি পরিষ্কার করতে পারেন এবং তারপরে আবার এটি ইনস্টল করতে পারেন:

dpkg --purge brmfc7340lpr
dpkg --install brmfc7340lpr*.deb

--force-dependsঅন্য কিছু প্যাকেজ যদি নির্ভর করে তবে আপনাকে শুদ্ধ করার সময় বিকল্প যোগ করতে হবে brmfc7340lpr

আপডেট: আপনার পোস্ট করা ট্রান্সক্রিপ্টের উপর ভিত্তি করে, মনে হচ্ছে brmfc7340lprপ্যাকেজটি পুনরায় ইনস্টল করা যাবে না কারণ এর অপসারণের পরে স্ক্রিপ্ট ত্রুটিযুক্ত হয়েছে।

এই ফাইলগুলি ডিরেক্টরিতে সংরক্ষণ করা হয় /var/lib/dpkg/info; প্রতিটি প্যাকেজের জন্য X, এই স্ক্রিপ্টগুলির মধ্যে যে কোনও একটি থাকতে পারে:

  • X.postinstপ্যাকেজ ইনস্টল করার পরে চালান , উদাহরণস্বরূপ, প্যাকেজ দ্বারা সরবরাহিত পরিষেবা শুরু করা।

  • X.prermপ্যাকেজটি মুছে ফেলা / মুছে ফেলার আগে চালান , উদাহরণস্বরূপ, প্যাকেজটি সরবরাহ করা ডেমোন বন্ধ হয়ে গেছে তা নিশ্চিত করতে।

  • X.postrmপ্যাকেজটি সরানোর পরে চালান , উদাহরণস্বরূপ, প্যাকেজটি ব্যবহার করে বিকল্পভাবে কোনও পরিষেবা সিগন্যাল করতে যে এটি আর উপলব্ধ নেই। (উদাহরণস্বরূপ, একটি প্রিন্টার ড্রাইভার প্যাকেজটি নির্দিষ্ট ড্রাইভারের উপর নির্ভর করে প্রিন্টারগুলি সরাতে সিপিএস / এলপিআর সিগন্যাল করতে চাইতে পারে))

এখন, এই brmfc7340lprপ্যাকেজটি lpd মুছে ফেলার পরে প্রিন্টার ডেমনটি পুনরায় চালু করার চেষ্টা করেছে , যা উবুন্টু পরিবর্তে সিউপিএস ব্যবহার করে কাজ করবে না: আপনার অবশ্যই একটি সিইপিএস-সামঞ্জস্যপূর্ণ প্রিন্টার ড্রাইভারের সন্ধান করা উচিত - জর্জি কাস্ত্রোর উত্তরের লিঙ্কটি দেখুন। (আমি মনে করি এটি প্যাকেজে একটি বাগ, কারণ এটি lpdনিঃশর্তভাবে পরিষেবাটি আরম্ভ করা উচিত নয় , তবে এটি ইতিমধ্যে চালু থাকলে এটি পুনরায় লোড করুন ))

এগিয়ে যাওয়ার সর্বোত্তম বিকল্পটি এই লঞ্চপ্যাডের উত্তর থেকে আসে :

ln -s /etc/init.d/cpus /etc/init.d/lpd

lpdপরিষেবা পরিবর্তে অনুসন্ধান করা হলে এটি কার্যকরভাবে (পুনরায়) সিউপিএস শুরু করবে ।

অন্যথায়, আমি কেবল দুটি বিকল্প দেখতে পাচ্ছি, উভয়ই অপ্রীতিকর:

  1. হয় /var/lib/dpkg/info/brmfc7340lpr.postrmস্ক্রিপ্টটি সম্পাদনা করুন , এবং যে লাইনটি আহ্বান করছে তা মন্তব্য করুন /etc/init.d/lpd start (বা restartবা stop), (উদাহরণস্বরূপ, কেবল এটির সাথে প্রতিস্থাপন করুন /bin/true)। অন্য বিকল্পটি হ'ল exit 0স্ক্রিপ্টে প্রথম প্রথম মন্তব্য না করা লাইন হিসাবে স্থাপন করা। এটি আমার প্রিয় হবে তবে শেল স্ক্রিপ্টগুলি সম্পাদনা করার সাথে কিছুটা আত্মবিশ্বাসের প্রয়োজন।

  2. ইনস্টল করুন lpr, brmfc6340lprপ্যাকেজটি শুদ্ধ করুন , শুদ্ধ করুন lpr: এটির lprজন্য ডিফল্ট উবুন্টু প্রিন্টার স্পুলিং সিস্টেম সিইপিএস-এর সাথে দ্বন্দ্ব হিসাবে কিছুটা মনোযোগ প্রয়োজন :

    ক। sudo aptitude install lpr(এটি সরিয়ে ফেলবে cups-bsdএবং ubuntu-desktopপার্শ্ব প্রতিক্রিয়া হিসাবে)

    খ। sudo aptitude purge brmfc7340lpr lpr(এখনই কাজ করা উচিত)

    গ। sudo aptitude install cups-bsd ubuntu-desktop(সিস্টেমটিকে তার মূল অবস্থায় পুনরুদ্ধার করুন)


dpkg --install কাজ করে না
রোমান এ। টায়চার

1
@ রোমন আপনি কি ত্রুটি বার্তা পাবেন? --purgeআগে এবং তারপরে কি --installকাজ করে?
রিকার্ডো মুরি

@ রোমন এমন কিছু নির্দিষ্ট নির্দেশাবলীর সাথে আপডেট হয়েছে যা সাহায্য করতে পারে। আমি এন্ড্রুসোমথিংয়ের মন্তব্যে একমত যে এটিকে আর সাধারণ প্রশ্ন মনে হচ্ছে না এবং এর নাম পরিবর্তন করা উচিত।
রিকার্ডো মুরি

1
অস্থায়ীভাবে এটি ইনস্টল করার জন্য আমি এলপিডিটির নাম পরিবর্তন করে এনপিলডিএন শেষ করেছি।
রোমান এ। টেকার

5

রিকার্ডোর সমাধানটি কাজ করা উচিত, আমি অনুমান করছি যে সমস্যাটি এখানে রয়েছে:

start: Unknown job: lpd

অনুমান 1: দেখে মনে হচ্ছে ডিব এমন কোনও পরিষেবা পুনরায় চালু করার চেষ্টা করছে যা চলছে না এবং ত্রুটিযুক্ত হচ্ছে। lprসংগ্রহস্থলগুলি থেকে প্যাকেজটি ইনস্টল করার চেষ্টা করুন এবং তারপরে ডেবটি ইনস্টল করুন এবং দেখুন এটি কার্যকর কিনা।

অনুমান 2: মনে হচ্ছে আপনি কোনও ভাই 7340 প্রিন্টারের জন্য কোনও ওয়েবসাইট থেকে একটি ডেব ইনস্টল করার চেষ্টা করছেন: আপনি যদি এটি অন্য কোনও প্রশ্নে বিভক্ত করতে চান তবে এই পৃষ্ঠাটি একটি ভাল সূচনা পয়েন্ট হতে পারে।


lpd: শুরু শুরু /etc/init.d/lpd: অজানা কাজ
রোমান উ: Taycher

3

আসলে, আমি একই সমস্যা মধ্যে দৌড়ে। আউট আমি পালাক্রমে কিছু অপ্রাসঙ্গিক তথ্য অনুসৃত এবং নির্মিত /etc/init.d/lpdকরার জন্য একটি softlink হিসাবে ফাইল lpd জন্য স্ক্রিপ্ট চেক এবং যদি উপস্থিত থাকে, সার্ভিস শুরু করার চেষ্টা করে। আমি init.d ডিরেক্টরিতে সফটলিঙ্কযুক্ত এলপিডি ফাইলটি মোছার পরে, প্যাকেজ ইনস্টলেশন এবং অপসারণটি স্বাভাবিক অবস্থায় ফিরে আসল।/etc/init.d/cups.postrm


2

এখানে সমস্যাটি দেখা যাচ্ছে যে প্যাকেজটি নিজেকে অর্ধ-ইনস্টল করার ব্যবস্থা করেছে, তবে এখন এর রক্ষণাবেক্ষণকারী স্ক্রিপ্টগুলি সমস্ত ব্যর্থ হয় (এলপিডি পরিষেবা শুরু করতে না পারার কারণে)।

আপনার /var/lib/dpkg/info/brmfc7340lpr.postrmফাইলটি সম্পাদনা করে এবং #এলপিডি শুরু করার চেষ্টা করা লাইনটি (লাইনের শুরুতে যোগ করে) মন্তব্য করার মাধ্যমে এটি সমাধান করতে সক্ষম হওয়া উচিত (বা সমস্ত কিছু মন্তব্য করার জন্য)। এরপরে dpkg --configure -aপ্যাকেজটি মুছে ফেলার আগে আপনাকে যথাযথভাবে ইনস্টল করার জন্য চালানো উচিত ।

আপনি অনুক্রমে প্যাকেজ রক্ষণাবেক্ষণকারী স্ক্রিপ্ট আরো এডিট করতে হবে পারে প্যাকেজ মুছে ফেলার জন্য - তারা সব থাকব /var/lib/dpkg/info/, এবং তারা ভালো কিছু নামে করা হবে brmfc7340lpr.Xযেখানে Xএক হতে পারে preinst, postinst, prerm, postrm

দুর্বল লিখিত প্যাকেজটি যে ধরণের সর্বনাশ করতে পারে তার এটি উদাহরণ।

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