Conflict between packages

pluto | Δευ, 03/23/2009 - 21:54 | 1' | 23

Προσπαθώντας το σύστημα να κάνει τις αναβαθμίσεις του αυτόματα μου βγάζει το εξής

Test Transaction Errors:   file /var/www/moodle/web/lib/magpie/rss_fetch.inc from install of moodle-1.9.4-3.fc10.noarch conflicts with file from package php-magpierss-0.72-4.fc10.noarch

Λέει ότι υπάρχει Conflict between packages. Δεν ξέρω τι γίνεται, αλλά είναι πολύ ενοχλητικό γιατί εδώ και 2 ώρες μου βγάζει διαδοχικά 2 παράθυρα σφαλμάτων που καταλαμβάνουν και αρκετό χώρο. Μπορείτε να μου εξηγήσετε περί τίνος πρόκειται και πώς να το σταματήσω; Είμαι νέος στο λογισμικό

Φόρουμ
Δώσε αστέρια!

MO: (ψήφοι: 0)

Σχόλια

To moodle που πας να κατεβάσεις δεν είναι συμβατό με την έκδοση της php που έχεις μέσα. Επειδή δεν ξέρω τι διανομή έχεις, εικάζω ότι έχεις μπλέξει λίγο τα repositories σου οπότε σου φέρνει κάτω εκδόσεις διαφορετικών προγραμμάτων που δεν είναι συμβατές μεταξύ τους. ( το ένα π.χ μπορεί να είναι πιο παλιό από το άλλο.)

Για κάνε ένα κόπο και δώσε μας εδώ το

/etc/apt/sources.list

( sudo gedit /etc/apt/sources.list) να δούμε τι παίζει με τα repositories.

weirdisok]

Βοήθησέ λίγο. Δεν ξέρω να δίνω εντολές. Σ' ευχαριστώ..

 

Πήγαινε στο μενού στο Τοποθεσίες -- > Υπολογιστής μου και άνοιξε το Σύστημα αρχείων. Εκεί πας στον φάκελο etc--> apt και κάνεις δεξί κλικ στο αρχείο sources.list--> ανοιγμα με κειμενογράφο. Επιλέγεις όλο το κείμενο ( ctrl+A) , το αντιγράφεις (ctrl+C) και το κάνεις επικόληση εδώ.

 

~~~~~~~~~~~~~~~

Αρχάριοι του forum ενωθείτε... βροντοφωνάξτε :

Συγνώμη...επειδή είμαι αρχάριος...πείτε πως θα το κάνω μεσα απο το γραφικό περιβάλλον ?

 

Ευχαριστώ για την υπομονή. Πήγα στο φάκελο etc. Έχει ένα σωρό άλλους αλλά όχι αυτόν που ζητήσατε. Έκανα και αναζήτηση μήπως βρω έτσι το αρχείο αλλά τίποτα..

weirdisok]

Ευχαριστώ για την υπομονή. Πήγα στο φάκελο etc. Έχει ένα σωρό άλλους αλλά όχι αυτόν που ζητήσατε. Έκανα και αναζήτηση μήπως βρω έτσι το αρχείο αλλά τίποτα..

Weirdisok σου ζητώ συγνώμη για το μπέρδεμα που σου προκάλεσα αφού δεν πρόσεξα οτι χρησιμοποιείς fedora, αυτός είναι και ο λόγος που λέμε πάντα οτι.... "όταν έχουμε πρόβλημα πρέπει να αναφέρουμε Διανομή-Έκδοση " για να μπορεί αυτός που θα σε βοηθήσει να καταλάβει σε τί περιβάλλον είσαι.

 

Αν και δεν γνωρίζω απο fedora (είμαι Ubuntu user) αν δεν κάνω λάθος στο fedora ο φάκελος αντί του apt είναι ο yum.repos.d και ανοίγεις το αρχείο που λήγει σε .repo και κάνεις όπως σου είπα πριν. Πρέπει να δώσεις λίγο χρόνο στον ευτό σου να διαβάσεις την πολύ καλή μετάφρασή σχετικά με την διαχείρηση των πακέτων του fedora "μάθετε το yum"

 

~~~~~~~~~~~~~~~

Αρχάριοι του forum ενωθείτε... βροντοφωνάξτε :

Συγνώμη...επειδή είμαι αρχάριος...πείτε πως θα το κάνω μεσα απο το γραφικό περιβάλλον ?

 

Έχεις δίκιο. Διαβάζω τους οδηγούς αλλά δεν καταλαβαίνω πολλά πράγματα.. Πράγματι βρήκα το φάκελο yum.repos.d

αλλά έχει μέσα 14 αρχεία τα οποία έχουν όλα την ίδια επέκταση..

Προσωπικά δεν ξέρω να σε βοηθήσω για το που θα βρεις το sources.list του fedora. Δεν είχα ποτέ μου fedora και δεν ξέρω καν πως δείχνει και τι είναι που..

weirdisok]

Έχεις δίκιο. Διαβάζω τους οδηγούς αλλά δεν καταλαβαίνω πολλά πράγματα.. Πράγματι βρήκα το φάκελο yum.repos.d

αλλά έχει μέσα 14 αρχεία τα οποία έχουν όλα την ίδια επέκταση..

Λογικά η επέκταση είναι .repo.

Πρέπει να μας πεις ποια είναι αυτά τα αρχεία. Μπορείς να κάνεις copy/paste τα ονόματά τους εδώ;

Επίσης, μπορείς να ανοίξεις ένα τερματικό και να δώσεις την εντολή:

yum repolist

για να δεις ποια είναι τα αποθετήρια. Κάνε και αυτά τα αποτελέσματα copy/paste.

Λογικά (ξανά) έχεις ενεργά κάποια αποθετήρια στα οποία υπάρχει το ίδιο πακέτο σε διαφορετική έκδοση και υπάρχει σύγκρουση (που θα έπρεπε να λύνεται από το yum...)

 

--

"the car's on fire and there's no driver at the wheel.
and the sewers are all muddied with a thousand lonely suicides.
and a dark wind blows."  GYBE

dimitris]

Λογικά (ξανά) έχεις ενεργά κάποια αποθετήρια στα οποία υπάρχει το ίδιο πακέτο σε διαφορετική έκδοση και υπάρχει σύγκρουση (που θα έπρεπε να λύνεται από το yum...)

Πολλά ζητάς.... απο το yum και τα RPM..... δεν ντρέπεσαι... τσ τσ τσ τσ....

Trolling detected....

 

~~~~~~~~~~~~~~~

Αρχάριοι του forum ενωθείτε... βροντοφωνάξτε :

Συγνώμη...επειδή είμαι αρχάριος...πείτε πως θα το κάνω μεσα απο το γραφικό περιβάλλον ?

 

@weirdisok: Στην fedora για κάθε repo υπάρχει ξεχωριστό αρχείο στο /etc/yum.repos.d/ με κατάληξη .repo. Για να τα δεις σε μια πιο "ανθρώπινη" μορφή χρησιμοποίησε το

προγραμματάκι Software Sources/ Πηγές λογισμικού που θα βρεις στο menu:

Στην περίπτωση όμως που σε απασχολεί δεν τίθεται θέμα "συγκρουόμενων" αποθετηρίων καθώς και τα 2 πακέτα υπάρχουν στα επίσημα της διανομής -και δεν πρέπει υπάρχουν conflicts, δοκίμασα την εγκατάσταση... Μάλλον το πρόβλημα είναι στον updater. Δοκίμασε να κάνεις την αναβάθμιση από γραμμή εντολών:

 

su -c "yum upgrade"

Η διαδικασία μπορεί να γίνει και με το yumex.

 

Αν είναι έτσι όπως τα λέει ο mobinmob, αναφωνώ "mea culpa"!

Εννοώ ό,τι δεν ήξερα ότι και τα δύο πακέτα βρίσκονται στο ίδιο αποθετήριο. Είναι και πάλι όμως αρνητικά εντυπωσιακό να κάνει conflict με δύο πακέτα του ίδιου αποθετηρίου...

 

--

"the car's on fire and there's no driver at the wheel.
and the sewers are all muddied with a thousand lonely suicides.
and a dark wind blows."  GYBE

Γι αυτό υποψιάζομαι τον updater... Το packagekit δεν χρησιμοποιεί κατευθείαν το yum - η επικοινωνία γίνεται μέσω του σχετικού helper (yumbackend.py) του προγράμματος, το οποίο κάποιες φορές δίνει περίεργα αποτελέσματα.

mobinmob]

Γι αυτό υποψιάζομαι τον updater... Το packagekit δεν χρησιμοποιεί κατευθείαν το yum, αλλά η επικοινωνία γίνεται μέσω του σχετικού helper (yumbackend.py) του προγράμματος, το οποίο κάποιες φορές δίνει περίεργα αποτελέσματα.

Τέλεια, κάποιος που ξέρει τι του γίνεται με τα rpm.

Καλώς όρισες mobinmob (μιας κ είναι τα πρώτα σου post)!

-- gnu_labis

Το Linux ΔΕΝ είναι Windows!!!

Oρίστε.. Μπήκε στο φόρουμ και ένας άνθρωπος με υπομονή και αντοχές..

Έυγε mobinmob που κατέχεις το σπορ των rpm.. Καλώς μας ήρθες!

Έχετε όλοι υπομονή. Περιττό να πω ότι δεν καταλαβαίνω λέξη από όσα λέτε ούτε πώς να τα κάνω πράξη.... (&*^$%^%)

Θα σας κάνω επικόλληση τα αρχεία που μου είπατε και ελπίζω να βρω καμιά άκρη γιατί το πρόβλημα επιμένει και μάλιστα εμφανίστηκε ξαφνικά. Μέχρι πρότινος γίνονταν φυσιολογικά οι αναβαθμίσεις.

Άκου να δεις τι έχεις πάθει.. ( από όσο κατάλαβα και εγώ γιατί όπως σου είπα δεν έχει προηγούμενη εμπειρία με την fedora. Τα δύο πακέτα που κάνουν conflict βρίσκονται στο ίδιο repository ( κάτι το οποίο είναι απίστευτό και μάλλον σπάνιο). Στην αρχή υπέθεσα εκτός ότι του ότι είχες debian ή debian based διανομή ( κανένα ubuntu ή τίποτα τέτοιο) ότι είχες βάλει δύο διαφορετικά repositories, ένα πιο παλιό ας πούμε και ένα πιο καινούργιο και για αυτό τα δύο πακέτα που ήθελες να εγκαταστήσεις δεν συνεργαζόντουσαν αρμονικά.

Τελικά από ότι λένε εδώ και τα παιδιά, τα δύο πακέτα βρίσκονται στο ίδιο repository οπότε θα πρέπει να διαλέξεις πια έκδοση του moodle θα εγκαταστήσεις, έπειτα να αλλάξεις repository αφού βρεις που βρίσκεται η συμβατή με το moodle που θα εγκαταστήσεις έκδοση της php και να την εγκαταστήσεις από εκεί.

Μπερδεψουά .. αλλά γίνεται.

@weirdisok: To πρόβλημα είναι κατα πάσα πιθανότητα το σύστημα που χρησιμοποιεί το fedora για τις αναβαθμίσεις του. Δεν υπάρχει στην πραγματικότητα conflict - δοκίμασα να εγκαταστήσω με το yum τις ίδιες εκδόσεις των 2 πακέτων και η διαδικασία ολοκληρώθηκε χωρίς πρόβλημα. H πρότασή μου είναι να κάνεις την αναβάθμιση από γραμμή εντολών.

Αν έχεις KDE θα ανοίξεις το Konsole με Δεξί κλικ --> Konsole.

Αν εχεις GNOME θα ανοίξεις το gnome-terminal από το menu - Εφαρμογές -->Εργαλεία συστήματος --> Τερματικό.

Θα δώσεις την εντολή:

su -c "yum upgrade"

Λογικά οι αναβαθμίσεις θα εγκατασταθούν κανονικά. Αν υπάρχει και πάλι πρόβλημα δώσε μας (copy - paste) το αποτέλεσμα της παραπάνω εντολής...

 

 

Το αποτέλεσμα της παραπάνω εντολής είναι

Transaction Check Error:
  file /var/www/moodle/web/lib/magpie/rss_fetch.inc from install of moodle-1.9.4-3.fc10.noarch conflicts with file from package php-magpierss-0.72-4.fc10.noarch

Error Summary
---------------------

Τα αρχεία που περιλαμβάνονται στο yum.repos.d είναι τα: adobe-linux-i386, fedora, fedora-rawhide, fedora-updates, fedora-updates-testing, livna, rpmfusion-free, rpmfusion-free-rawhide, rpmfusion-free-updates, rpmfusion-free-updates-testing, rpmfusion-nonfree, rpmfusion-nonfree-rawhide, rpmfusion-nonfree-updates, rpmfusion-nonfree-updates-testing. Όλα με επέκταση .repo.

 

Τέλος, η εντολή yum repolist μου έδωσε τα εξής:

repo id                                     repo name                                                           status
adobe-linux-i386                      Adobe Systems Incorporated                                enabled:     17
fedora                                      Fedora 10 - i386                                                  enabled:     11416
livna                                         rpm.livna.org for 10 - i386                                     enabled:     3
rpmfusion-free                          RPM Fusion for Fedora 10 - Free                          enabled:     324
rpmfusion-free-updates             RPM Fusion for Fedora 10 - Free - Updates          enabled:     582
rpmfusion-nonfree                     RPM Fusion for Fedora 10 - Nonfree                     enabled:     142
rpmfusion-nonfree-updates        RPM Fusion for Fedora 10 - Nonfree - Updates     enabled:     413
updates                                    Fedora 10 - i386 - Updates                                  enabled:     4403
repolist: 17300

Τα repos είναι μια χαρά (έχω ακριβώς τα ίδια).

Το πρόβλημα είναι ελαφρώς ... παράλογο.

Το πακέτο του Moodle περιλαμβάνει την magpierss, και τα αρχεία της -και αυτό στο οποίο παρουσιάζεται conflict- τα στέλνει στο /var/www/moodle/web/lib/magpie/. Το πακέτο php-magpierss στέλνει το αρχείο το οποίο εμφανίζεται στο μήνυμα λάθους στο /usr/share/php/magpierss/... 

Σε παρακαλώ, ανέβασε ολόκληρο το output της εντολής για update/upgrade και όχι μόνο το μήνυμα λάθους.

Δοκίμασε να κάνεις αναβάθμιση από το applet που εμφανίζεται στοv χώρο ειδοποιήσεων εξαιρώντας το συγκεκριμένο πακέτο.

 

Edit:

Υπάρχει ένα bug report για το conflict (; )... Δοκίμασε να μετονομάσεις τον φάκελο /var/www/lib/magpie/ σε κάτι άλλο ή να τον σβήσεις -καλύτερα το δεύτερο.

Δεν θα 'πρεπε να χρειάζεται κάτι τέτοιο - στην εγκατάσταση του moodle στο σύστημά μου δεν υπάρχουν symlinks...

Πιο αναλυτικά για το πρόβλημα (απ' ότι μπορώ να καταλάβω)....

Μέχρι κάποια έκδοση του πακέτου του moodle, στην διαδρομή /var/www/moodle/web/lib/magpie δεν υπήρχε κάποιος κατάλογος με αρχεία, αλλά ένας συμβολικός δεσμός που έδειχνε στο /usr/share/php/magpierss/. Έτσι το moodle χρησιμοποιούσε την βιβλιοθήκη αυτή που "πακετάρονταν" ξεχωριστά και την οποία χρησιμοποιούν/μπορούν να χρησιμοποιήσουν και άλλα προγράμματα χωρίς να "κουβαλά" το καθένα αντίγραφο της. Στο σύστημα του weirdisok πρέπει να είναι ακόμα symbolic link. Σε νεώτερη έκδοση του πακέτου, λόγω κάποιας ασυμβατότητας με την upstream magpierss, το πακέτο του moodle απέκτησε (να του ζήσει...) δικό του αντίγραφο της βιβλιοθήκης που στην εγκατάσταση θα αντικαθιστούσε τον "συμβολικό δεσμό" προς την ξεχωριστά πακεταρισμένη βιβλιοθήκη. Το πρόβλημα δημιουργείται επείδη ο συμβολικός δεσμός δεν διαγράφεται πριν γίνει το test ... Έτσι, εμφανίζεται το νέο πακέτο να προσπαθεί να αντιγράψει αρχεία που υπάρχουν ήδη και ανήκουν στην ξεχωριστά πακεταρισμένη magpierss.

Το πρόβλημα πρέπει να εμφανίζεται μόνο σε αναβάθμιση του moodle. Στο σύστημά μου, που επιχείρησα "καθαρή" εγκατάσταση δεν υπάρχει ο συμβολικός δεσμός που μπερδεύει τo test.

Οι λύσεις που προτείνονται είναι 2:

1. Διαγραφή του link  και μετά αναβάθμιση:

 

su -c "rm -f /var/www/moodle/web/lib/magpie && yum upgrade"
 

 

 

2. Διαγραφή του php-magpierss χωρίς να υπολογιστούν τα προγράμματα που το έχουν σαν εξάρτηση και επανεγκατάστασή μετά την αναβάθμιση:

 

 su -c "rpm -e --nodeps  php-magpierss && yum upgrade && yum install php-magpierss"
 

 

 Λόγος επεξεργασίας: Διόρθωση ορθογραφικού λάθους

Οσον αφορα το πρωτο και αν φυσικα εδωσα σωστα την εντολη:

Cannot remove- Αρνηση προσβασης...

Μάλιστα...Το cannot remove είναι "περίεργη" απάντηση -η εντολή δίνεται με δικαιώματα root. Δοκίμασε να διαγράψεις το symbolic link τρέχοντας τον filemanager σου σαν root.

Αν δεν γίνει κάτι δοκίμασε την δεύτερη εντολή - copy-paste, δεν υπάρχει λόγος να γράφεις...