উবুন্টুতে কীভাবে পুস্তককে পুঙ্খানুপুঙ্খভাবে মুছে ফেলা এবং পুনরায় ইনস্টল করবেন? [বন্ধ]


221

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

আমি করার পরে:

apt-get purge postgresql
apt-get install postgresql

এটা বলেছে

Setting up postgresql-8.4 (8.4.3-0ubuntu9.10.1) ...
Configuring already existing cluster (configuration: /etc/postgresql/8.4/main, data: /var/lib/postgresql/8.4/main, owner: 108:112)
Error: move_conffile: required configuration file     /var/lib/postgresql/8.4/main/postgresql.conf does not exist
Error: could not create default cluster. Please create it manually with

  pg_createcluster 8.4 main --start

or a similar command (see 'man pg_createcluster').
update-alternatives: using /usr/share/postgresql/8.4/man/man1/postmaster.1.gz to provide /usr/share/man/man1/postmaster.1.gz (postmaster.1.gz) in auto mode.

Setting up postgresql (8.4.3-0ubuntu9.10.1) ...

আমার একটি "/ etc / postgresql" আছে যার মধ্যে কিছুই নেই এবং "/ etc / postgresql-common /" এর একটি 'pg_upgradecluser.d' ডিরেক্টরি এবং root.crt এবং user_clusters ফাইল রয়েছে।

/ ইত্যাদি / পাসডাব্লুডের একটি পোস্টগ্রিজ ব্যবহারকারী রয়েছে; শুদ্ধ স্ক্রিপ্টটি এটি স্পর্শ করে না। এখানে লক্ষণগুলির একটি গুচ্ছ দেখা গেছে যা আমি কেবল পরবর্তীগুলি প্রকাশ করার জন্য কাজ করি।

ঠিক এই দ্বিতীয়, আমি যখন "pg_createcluster ..." কমান্ডটি চালাচ্ছি তখন এটি অভিযোগ করে যে '/var/lib/postgresql/8.4/main/postgresql.conf অস্তিত্বহীন', সুতরাং আমি তাদের মধ্যে একটি খুঁজে পাব তবে আমি ' আমি নিশ্চিত যে এটি শেষ হবে না।

এমন কোনও সহজ ওয়ান-লাইনার (বা দুটি) নেই যা এটি পুরোপুরি জ্বালিয়ে দেবে এবং আমাকে আবার শুরু করতে দেবে?


2
এক-ক্লিক ইনস্টলার ব্যবহার করে দেখুন, এটি আরও সহজ, এর ডিরেক্টরিগুলি / etc / এবং / var এ ছড়িয়ে নেই। এগুলি সবই একটি ডিরেক্টরিতে সংরক্ষিত থাকে
মাইকেল বুয়েন

2
এটি কোনও সাধারণ কম্পিউটিং প্রশ্ন নয়, এবং পোস্টগ্র্যাসকিএল স্ট্যান্ডার্ড স্ট্যাকওভারফ্লো বিষয়। প্রশ্নটি আবার খোলা উচিত।
অ্যান্ড্রু

উত্তর:


446

বিকল্প ক

যদি আপনার ইনস্টলটি ইতিমধ্যে ক্ষতিগ্রস্থ না হয় তবে আপনি অযাচিত পোস্টগ্র্যাসকিউএল সার্ভার ("ক্লাস্টার") ব্যবহার করে ফেলে দিতে পারেন pg_dropcluster। একটি সম্পূর্ণ খাঁজকারীর অগ্রাধিকার হিসাবে এটি ব্যবহার করুন এবং আপনি যদি কেবল একটি নতুন পোস্টগ্রেএসকিউএল উদাহরণ দিয়ে পুনরায় চালু করতে চান তবে পুনরায় ইনস্টল করুন।

$ pg_lsclusters
Ver Cluster Port Status Owner    Data directory              Log file
11  main    5432 online postgres /var/lib/postgresql/11/main /var/log/postgresql/postgresql-11-main.log
$ sudo systemctl stop postgresql@11-main
$ sudo pg_dropcluster --stop 11 main
$ sudo pg_createcluster --start 11 main

বিকল্প বি

আপনার যদি সত্যিই একটি পূর্ণ পরিশুদ্ধি এবং পুনরায় ইনস্টল করার প্রয়োজন হয় তবে প্রথমে নিশ্চিত হয়ে নিন যে PostgreSQL চলছে না। ps -C postgresকোন ফল প্রদর্শন করা উচিত।

এখন চালান:

apt-get --purge remove postgresql\*

আপনার সিস্টেম থেকে পোস্টগ্রিএসকিউএল সবকিছু সরিয়ে ফেলতে। কেবলমাত্র postgresখালি মেটা-প্যাকেজ হিসাবে প্যাকেজটি পরিষ্কার করা যথেষ্ট নয়।

সমস্ত পোস্টগ্রাইএসকিউএল প্যাকেজগুলি সরানো হয়ে গেলে, চালনা করুন:

rm -r /etc/postgresql/
rm -r /etc/postgresql-common/
rm -r /var/lib/postgresql/
userdel -r postgres
groupdel postgres

আপনার এখন সক্ষম হওয়া উচিত:

apt-get install postgresql

বা সম্পূর্ণ ইনস্টলের জন্য:

apt-get install postgresql-8.4 postgresql-contrib-8.4 postgresql-doc-8.4

19
আমি হাতের সম্পাদনা করতে পরামর্শ মুছে ফেলার জন্য উত্তর reworked থাকেন /etc/passwdএবং /etc/groupনিরাপদ পক্ষে userdelএবং groupdel। এছাড়াও, dselectপ্যাকেজগুলির হাতে-বাছাইয়ের পরিবর্তে নির্ভরযোগ্যতার সাথে মেলে একটি অ্যাপল ওয়াইল্ডকার্ড ব্যবহার করুন।
ক্রেগ রিঞ্জার

11
+1 এর জন্য pg_dropcluster!! (উদাহরণস্বরূপ ব্যবহার pg_dropcluster --stop 9.1 main:)
অনুজ গুপ্ত

5
সেই শুদ্ধ তালিকাতে libpq5 এবং libpq-dev যুক্ত করুন, সেই lib আমাকে প্রচুর সমস্যা দিয়েছে, যতক্ষণ না আমি এটিকে সঠিক সংস্করণে পুনরায় ইনস্টল করি
রোজারিও চ্যাভস

পোস্টগ্রিসএসকিউএল 9.4 এর সাথেও ডেবিয়ান 8 এ কাজ করে।

2
আমি যোগ করতে হবে rm -r /var/log/postgresql
গ্রেগরি অ্যারেনিয়াস

45

আমারও অনুরূপ পরিস্থিতি ছিল: আমার একটি ডেবিয়ান হুইজির উপর পোস্টগ্রেস্কেল 9.1 রক্ষা করা প্রয়োজন (আমি এর আগে 8.4 থেকে স্থানান্তরিত হয়েছি এবং আমার ত্রুটি হচ্ছে)।

আমি কি করেছিলাম:

প্রথমত, আমি কনফিগারেশন এবং ডাটাবেস মুছে ফেলেছি

$ sudo pg_dropcluster --stop 9.1 main

তারপরে পোস্টগ্রেস্কেল সরানো হয়েছে

$ sudo apt-get remove --purge postgresql postgresql-9.1 

এবং তারপরে পুনরায় ইনস্টল করা হয়েছে

$ sudo apt-get install postgresql postgresql-9.1

আমার ক্ষেত্রে আমি লক্ষ্য করেছি /etc/postgresql/9.1 খালি ছিল, এবং দৌড়ে service postgresql startকিছুই ফিরল না

সুতরাং, আরও গুগল করার পরে আমি এই আদেশটি পেয়েছি:

$ sudo pg_createcluster 9.1 main

এটির সাহায্যে আমি সার্ভারটি শুরু করতে পারতাম, তবে এখন আমি লগ-সম্পর্কিত ত্রুটিগুলি পাচ্ছিলাম। আরও অনুসন্ধানের পরে, আমি / var / log / postgresql ডিরেক্টরিতে অনুমতি পরিবর্তন করে শেষ করেছি

$ sudo chown root.postgres /var/log/postgresql
$ sudo chmod g+wx /var/log/postgresql

এটি সমস্যার সমাধান করেছে, আশা করি এটি সাহায্য করবে


14

পদক্ষেপগুলি যেগুলি Ubuntu 8.04.2সরানোর জন্য আমার পক্ষে কাজ করেছেpostgres 8.3

  1. সমস্ত Postgres সম্পর্কিত প্যাকেজ তালিকা

    dpkg -l | grep postgres
    
    ii  postgresql                            8.3.17-0ubuntu0.8.04.1           object-relational SQL database (latest versi
    ii  postgresql-8.3                        8.3.9-0ubuntu8.04                object-relational SQL database, version 8.3
    ii  postgresql-client                     8.3.9-0ubuntu8.04                front-end programs for PostgreSQL (latest ve
    ii  postgresql-client-8.3                 8.3.9-0ubuntu8.04                front-end programs for PostgreSQL 8.3
    ii  postgresql-client-common              87ubuntu2                        manager for multiple PostgreSQL client versi
    ii  postgresql-common                     87ubuntu2                        PostgreSQL database-cluster manager
    ii  postgresql-contrib                    8.3.9-0ubuntu8.04                additional facilities for PostgreSQL (latest
    ii  postgresql-contrib-8.3                8.3.9-0ubuntu8.04                additional facilities for PostgreSQL
  2. উপরের সমস্ত তালিকাভুক্ত করুন

    sudo apt-get --purge remove postgresql postgresql-8.3  postgresql-client  postgresql-client-8.3 postgresql-client-common postgresql-common  postgresql-contrib postgresql-contrib-8.3
  3. নিম্নলিখিত ফোল্ডারগুলি সরান

    sudo rm -rf /var/lib/postgresql/
    sudo rm -rf /var/log/postgresql/
    sudo rm -rf /etc/postgresql/

সমস্ত পোস্টগ্রিস সম্পর্কিত প্যাকেজগুলি সরানো আমার পক্ষে কাজ করেছিল। আমার কিছু 8.4 এবং 9.1 প্যাকেজ মিশ্রিত ছিল। যা সবকিছু মুছে ফেলার সাথে মিলিত হয়েছিল তা আমাকে অবশেষে 9.1 পুনরায় ইনস্টল করার অনুমতি দেয় এবং এর সাথে কাজ করে সমস্ত কিছু রয়েছে।
নিক

1
ওয়াইল্ডকার্ড সহ অনেক সহজ:apt-get --purge remove postgresql\*
ক্রেগ রিঞ্জার

12

আমি জানি একটি উত্তর ইতিমধ্যে সরবরাহ করা হয়েছে, কিন্তু নির্বাচনটি আমার পক্ষে কাজ করে নি। প্যাকেজগুলি অপসারণ করার জন্য এটি কী কাজ করেছিল তা এখানে:

# search postgr  | grep ^i
i   postgresql                      - object-relational SQL database (supported 
i A postgresql-8.4                  - object-relational SQL database, version 8.
i A postgresql-client-8.4           - front-end programs for PostgreSQL 8.4     
i A postgresql-client-common        - manager for multiple PostgreSQL client ver
i A postgresql-common               - PostgreSQL database-cluster manager       

# aptitude purge postgresql-8.4 postgresql-client-8.4 postgresql-client-common postgresql-common postgresql

rm -r /etc/postgresql/
rm -r /etc/postgresql-common/
rm -r /var/lib/postgresql/

অবশেষে, সম্পাদনা / ইত্যাদি / পাসডাব্লু এবং / ইত্যাদি / গ্রুপ


এই নির্দেশাবলী ডিবিয়ান স্কিজে / এসিডে কাজ করেছে
এভজেনি

ওয়াইল্ডকার্ড ব্যবহার করা সহজ উপায়; আপডেট 1 ম উত্তর দেখুন।
ক্রেগ রিঞ্জার


9

আমি অনুসরণ না করা পদক্ষেপগুলি অনুসরণ করে আনইনস্টল এবং পুনরায় ইনস্টল করতে। যা আমার পক্ষে কাজ করেছিল।

প্রথমে ইনস্টল করা পোস্টগ্রিজ সরান: -

সুডো এপটি-গেট পুরিজ পোস্টগ্রার *

sudo আপ্ট-গেট অটোরেমোভ করুন

তারপরে 'সিনাপটিক' ইনস্টল করুন:

sudo apt-get synaptic ইনস্টল করুন

sudo অ্যাপটি-আপডেট আপডেট

তারপরে পোস্টগ্রাগ ইনস্টল করুন

sudo apt-get postgresql postgresql-योगदान ইনস্টল করুন


2

আমি কেবল উবুন্টু ১৩.০৪ এর জন্য একই সংখ্যায় পড়েছি। এই আদেশগুলি পোস্টগ্রিস 9.1 কে সরিয়ে দিয়েছে:

sudo apt-get purge postgresql
sudo apt-get autoremove postgresql

এটি আমার কাছে ঘটেছিল সম্ভবত দ্বিতীয় কমান্ডটিই প্রয়োজনীয়, তবে সেখান থেকে আমি পোস্টগ্র্যাস 9.2 ইনস্টল করতে সক্ষম হয়েছি (sudo apt-get postgresql-9.2 ইনস্টল করুন)।


0

আমি উত্তরগুলি অনুসরণ করছিলাম, যখন / ইত্যাদি / গোষ্ঠীটি সম্পাদনা করছিলাম তখন আমি এই লাইনটিও মুছলাম:

ssl-cert:x:112:postgres

তারপরে, পোস্টগ্র্যাস্কল ইনস্টল করার চেষ্টা করার সময়, আমি এই ত্রুটি পেয়েছি

Preconfiguring packages ...
dpkg: unrecoverable fatal error, aborting:
 syntax error: unknown group 'ssl-cert' in statoverride file
E: Sub-process /usr/bin/dpkg returned an error code (2)

"Ssl-cert: x: 112: postgres" লাইনটি / ইত্যাদি / গোষ্ঠীতে ফিরিয়ে দেওয়া ঠিক হয়েছে বলে মনে হচ্ছে (তাই আমি পোস্টগ্র্যাসকিএল ইনস্টল করতে সক্ষম হয়েছি)


2
লাইনটি মুছে ফেলার সময় আপনি পুরো "এসএসএল-সার্ট" গোষ্ঠীটি সরিয়ে ফেলেছেন, যা এসএসএল দিয়ে সর্বনাশ তৈরি করতে পারে। পরিবর্তে, এসএসএল-সার্ট গ্রুপ থেকে পোস্টগ্রাগগুলি সরাতে কোলনের পরে "পোস্টগ্রিজ" মুছুন।
জন মে

2
মূল নির্দেশাবলী আপনাকে হ্যান্ড-এডিট করার পরামর্শ দেওয়ার ক্ষেত্রে খুব ভুল হয়েছিল /etc/passwdকখনই নাuserdelঅ্যান্ড groupdelকমান্ডগুলি ব্যবহার করুন এবং ভবিষ্যতে আপনার সমস্যা হবে না।
ক্রেগ রিঞ্জার

-2

আমি আমার উবুন্টু 16.04 এ একই সমস্যার মুখোমুখি হয়েছি

তবে আমি সমস্যাটি স্থির করেছি এবং এটি খুব সহজ মাত্র এই পদক্ষেপগুলি অনুসরণ করুন এবং আপনি আপনার সিস্টেমে পোস্টগ্রিসক্লল 10 ইনস্টল করতে সক্ষম হবেন:

এটি আপনার উত্সগুলিতে তালিকা যোগ করুন list

sudo vim /etc/apt/sources.list

deb http://ftp.de.debian.org/debian/ wheezy main non-free contrib

deb-src http://ftp.de.debian.org/debian/ wheezy main non-free contrib

তারপরে আপনার pgdg.list ফাইলটিতে এই লিঙ্কটি যুক্ত করুন যদি এটি না থাকে তবে আপনাকে তৈরি করতে হবে & লিঙ্ক যুক্ত করতে হবে এবং এটি সংরক্ষণ করতে হবে।

sudo vim /etc/apt/sources.list.d/pgdg.list

deb http://apt.postgresql.org/pub/repos/apt/ xenial-pgdg main

deb http://apt.postgresql.org/pub/repos/apt/ precise-pgdg main

তারপরে আপনার সিস্টেম আপডেট করুন

sudo apt-get update

sudo apt-get upgrade

এবং যে আনমেট নির্ভরতা ইনস্টল করুন:

apt-get install ssl-cert

এটাই. এখন এই কমান্ড ব্যবহার করে postgresql ইনস্টল করুন

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