* Another way to use multiple repo, other than what i mentioned in previous email (different repo with different priority# ), is to: * Set all repo's base, main/default, stable, extra, etc sections/channels on priority 10, and set all repo's other channels/sections like "testing", (source, debuginfo, ) etc on priority 15: repo#1 main-sections priority 10, others 15 repo#2 main-sections priority 10, others 15 repo#3 main-sections priority 10, others 15 repo#4 main-sections priority 10, others 15 * Use only RHEL compatible channels of any repo. (Avoid fedora, generic, other-non-Rhel-distro, etc, unless you are getting source/src.rpm/SRPM for rebuilding on CentOS ). * Since they all has same priority, highest/last version will get highest preference. * run : yum groupinfo "Base" It will show Mandatory, Default, etc app list for CentOS. And run this before adding other repo, so that you get a fresh list related only to CentOS. * run : yum check-update or, run : yum list updates --disableplugin=filter-data,priorities --disableexcludes=all --enablerepo=\* (First try without --enablerepo=\* option ) * You will see, (or If you see,) any other 3d party repo (other than CentOS ) app/libs, is/are trying to replace base/core components from CentOS Mandatory, Default, etc category areas, then put those pkgs/apps/libs in "exclude=pkg-name ..", inside those 3rd party repo, so that those pkgs do not replace base/core CentOS components. * And, if you choose a very specific app/lib from a very specific repo, for example, postgresql from Postgresql repo, then see my previous email for "exclude" list, place those postgresql related pkgs/items in all repo in their all sections/channels other than Postgresql repo itself, including CentOS repo in all sections/channels. * Do not do actual update, unless you see or you are 100% sure, shown repo and apps/libs/pkg are coming from the repo/channel which you want and safe, if you are not sure, ask for help here but search on google, read more docs, manuals, and research little bit first. * If you search with words like these : "pkgname error problem" or "pkgname error problem centos", then you should/will see what kind of error or problem may occur with that pkg. Take steps so that no error occurs. Please correct my mistake(s) on these simple (above ) suggestions, info. Thanks, -- Bright Star. Received from Bry8 Star, on 2013-01-30 4:08 AM: > Sorry, mentioned [pgdg92] twice. Pls ignore/delete > the [pgdg92] that has priority 15. > > > > Received from Bry8 Star, on 2013-01-28 10:16 AM: >> For PostgreSQL, i've done these (shown below) at >> initial/test stage: (pls DO NOT follow/copy it, >> try to understand pattern and do what fits for >> your case/need). >> >> From a VE instance inside HN: >> >> yum has these plugins: >> fastestmirror, filter-data, keys, >> list-data, merge-conf, presto, priorities, security, verify. >> >> # CentOS-Base.repo >> [CentOS-base] >> #<...snip...> >> enabled=1 >> # i do not want below set from centos repo >> # as these exacts are released by postgre devs >> # but other postgre portions from others i do want >> exclude=postgresql.* postgresql-contrib* >> postgresql-debuginfo* postgresql-devel* postgresql-docs* >> postgresql-jdbc.* postgresql-jdbc-debuginfo* postgresql-libs* >> postgresql-odbc.i686 postgresql-odbc-debuginfo* >> postgresql-plperl* postgresql-plpython* postgresql-pltcl* >> postgresql-server* postgresql-tcl.i686 postgresql-tcl-debuginfo* >> postgresql-test* >> priority=1 >> >> [CentOS-updates] >> #<...snip...> >> enabled=1 >> exclude=postgresql.* >> postgresql-contrib* postgresql-debuginfo* postgresql-devel* >> postgresql-docs* postgresql-jdbc.* postgresql-jdbc-debuginfo* >> postgresql-libs* postgresql-odbc.i686 postgresql-odbc-debuginfo* >> postgresql-plperl* postgresql-plpython* postgresql-pltcl* >> postgresql-server* postgresql-tcl.i686 postgresql-tcl-debuginfo* >> postgresql-test* >> priority=1 >> >> [CentOS-extras] >> #<...snip...> >> enabled=1 >> exclude=postgresql.* >> postgresql-contrib* postgresql-debuginfo* postgresql-devel* >> postgresql-docs* postgresql-jdbc.* postgresql-jdbc-debuginfo* >> postgresql-libs* postgresql-odbc.i686 postgresql-odbc-debuginfo* >> postgresql-plperl* postgresql-plpython* postgresql-pltcl* >> postgresql-server* postgresql-tcl.i686 postgresql-tcl-debuginfo* >> postgresql-test* >> priority=1 >> >> [CentOSplus] >> #<...snip...> >> enabled=1 >> exclude=kernel.* >> kernel-firmware.* kernel-headers.* postgresql.* >> postgresql-contrib* postgresql-debuginfo* postgresql-devel* >> postgresql-docs* postgresql-jdbc.* postgresql-jdbc-debuginfo* >> postgresql-libs* postgresql-odbc.i686 postgresql-odbc-debuginfo* >> postgresql-plperl* postgresql-plpython* postgresql-pltcl* >> postgresql-server* postgresql-tcl.i686 postgresql-tcl-debuginfo* >> postgresql-test* >> priority=1 >> >> # pgdg92-centos.repo >> [pgdg92] >> #<...snip...> >> enabled=1 >> priority=10 >> >> [pgdg92-source] >> #<...snip...> >> enabled=1 >> priority=10 >> >> #scntflnx.repo >> [SciLnx-6x-os] >> #<...snip...> >> enabled=1 >> exclude=redhat-rpm-config.* postgresql.* postgresql-devel* >> postgresql-docs* postgresql-contrib* postgresql-jdbc.* >> postgresql-libs* postgresql-odbc* postgresql-plperl* >> postgresql-plpython* postgresql-pltcl* postgresql-server* >> postgresql-test* >> priority=13 >> >> [SciLnx-6x-updates-fastbugs] >> #<...snip...> >> enabled=1 >> exclude=postgresql.* postgresql-devel* postgresql-docs* >> postgresql-contrib* postgresql-jdbc.* postgresql-libs* >> postgresql-odbc* postgresql-plperl* postgresql-plpython* >> postgresql-pltcl* postgresql-server* postgresql-test* >> priority=13 >> >> [SciLnx-6x-updates-security] >> #<...snip...> >> enabled=1 >> exclude=postgresql.* postgresql-devel* postgresql-docs* >> postgresql-contrib* postgresql-jdbc.* postgresql-libs* >> postgresql-odbc* postgresql-plperl* postgresql-plpython* >> postgresql-pltcl* postgresql-server* postgresql-test* >> priority=13 >> >> [SciLnx-6x-debuginfo] >> #<...snip...> >> enabled=0 >> priority=13 >> >> [SciLnx-6x-SRPMS] >> #<...snip...> >> enabled=1 >> priority=13 >> >> [pgdg92] >> #<...snip...> >> enabled=1 >> priority=15 >> >> ... other repo & distro ... >> >> In above way, i get most from PosteGre repo, and other postgre >> related side packages from other repos. if i were to place >> exclude=postgre* then all packages would have gotten excluded, >> and then the extra postgre pkg which are not released by postgre, >> would get hidden/excluded as well, though, i could have used this >> approach for to get that: >> >> includepkgs=related-extra-postgre-pkg >> >> to get those. but then i would need specific name, but what if >> new extra pkg that i dont know yet, is included, but since i have >> not specified specifically, those would get hidden/excluded. (my >> repo inquiries have shown, many other repo has at-least 1 to 3 or >> some up to 6 extra postgre related tools which are not released >> by postgre devs themselves). >> >> Few patterns/logics which i like to follow: >> >> repo#1, rpm priority 1, srpm priority 50 >> repo#2, rpm priority 10, srpm priority 40 >> repo#3, rpm priority 15, srpm priority 30 >> repo#4, rpm priority 20, srpm priority 20 >> ... >> >> Priority numbering pattern/logic: >> Since i'm using centos as my >> base, so various DISTRO & REPO rpm/binary which are closest to >> CentOS & CentOS's source RHEL, those distro & repo will get >> lowest priority# close to centos. i like to think/visualize in >> this way ... a LIST from top to down, now number them from top to >> bottom 1, 2, 3.. CentOS is at position 1, the top-most position. >> The lowest priority number, is at highest, upper position in the >> list, is chosen first by yum/installer, and has highest >> priority, if it(yum) wants to install something. >> >> my knol is this (i could be wrong): >> RHEL based source -> >> |-> CentOS base. >> |-> Scientific Linux. >> |-> Oracle Linux. >> |-> ClearOS >> Linux. >> >> (Fedora stable source -> RHEL -> RHEL source). >> >> EPEL has extra small tools/apps/libs for RHEL base apps/libs, and >> also for RHEL based clone/derivative distros (few mentioned >> above). >> RPMforge/dag has many perl related stuff. >> REMI has latest+stable PHP, MySql related stuff. >> ELrepo is for hardware latest+stable drivers, kernels. >> kdeRedhat is mostly for latest+stable KDE, QT, >> samba, etc. >> RPMFusion has closed-source-free, open-source-free, >> non-free etc apps. >> ATrpms has MythTV, Scientific Apps, etc. >> LnxTechNet has audio,video,etc apps. >> >> And Fedora 17, 18 source/src/SRPMS are needed to be re-built on >> cnetos for those apps/libs, then those can be used with centos. >> >> Pkg "Excluding" pattern/logic: >> (means, Getting specific pkg from Non-Centos repo): >> Now for example if i want something specific >> called "pkg-set-3" from repo#3, then i would have to place those >> specific pkgs inside the "exclude" line in repo(s) which are >> listed at upper position on the repo-list, so that will be >> repo#2, repo#1, so it will be: >> # repo_1.repo file inside /etc/yum.repos.d >> [repo_1] >> exclude=pkg-set-3 >> >> # repo_2.repo file inside /etc/yum.repos.d >> [repo_2] >> exclude=pkg-set-3 >> # in 'exclude' pkgs are 'space' separated >> >> Where & How to tweak & apply intelligence/knowledge and >> experience and tricks , etc for repo-config ? i like to call it >> HI (Human Intelligence), multiple (or one) developer's initial HI >> becomes AI in a software. >> >> Each repo file will most likely have one or more section/channel >> like below: >> [section-or-channel-name] >> config_options=values >> ... >> >> in repo#2, the "pkg-set-3" can be placed inside all >> section/channel of that repo file. >> >> For setting repo#1 (in our case, this is centos), we will have to >> do these: >> >> set "enabled=" to 0 in all new repo, (except centos.repo), or, by >> using yum command-line options instruct "yum" to disable all >> repo, then instruct yum to enable only >> centos-base,centos-updates, etc repo only and then do "yum >> check-update", like this: >> >> yum --disablerepo=\* --enablerepo=base,update,centosplus,extra >> check-update >> >> ... above command will show if centos repo has new updates (or >> no updates) for your system. >> >> then set enabled=1 in those section/channel which you need for >> the app/lib (pk-set-3) which you wanted. >> >> then run do "yum check-update". ... It will show list of app/lib >> which will be updated if you were to run "yum update" or "yum >> upgrade". >> >> Also see other helpful yum commands. >> >> Since these yum commands will show app/lib name and which repo >> has it, observe carefully and make a hand-written list first (or >> write on a text file on the client computer from where you're >> connecting to your centos server which you are trying to >> configure), a list, apps/libs which you need to exclude from >> which repo. >> >> Other helpful YUM COMMANDS: >> >> yum list updates '*' --disableplugin=filter-data,priorities >> --disableexcludes=all >> >> ... should show what updates will be in queue if all "excludes" >> are ignored. >> >> yum list all available 'pkg-name*' >> --disableplugin=filter-data,priorities --disableexcludes=all >> >> ... should show which of your repos has any package that are >> close to the name "pkg-name" and will also show their version # >> and what repo has it. >> >> Anytime you change any "somename.repo" file, then its better to >> do first: yum check-update (but do not update, unless you are >> sure which app is coming from which exact repo and if that is >> what you want or not). >> >> Please ADD/POST MORE/YOUR HELPFUL COMMANDS, and tell us what it >> does, where useful. >> >> Since source/SRPMS is/are needed when you/i need to make src.rpm, >> so distro & repo closest to CentOS gets higher priority, usually >> that is in reverse order than the RPM/binaries. >> >> Please correct my mistakes and add your responses, ideas, >> suggestions, logics, patterns, etc. >> >> Thanks in advance, >> >> -- Bright Star. >> >> >> >> Received from Johnny Hughes,, on 2013-01-28 12:50 AM: >>> On 01/27/2013 06:20 PM, Rob Kampen wrote: >>>> On 01/28/2013 04:43 AM, Mark LaPierre wrote: >>>>> On 01/27/2013 08:18 AM, Bry8 Star wrote: >>>>>> Hi Anthony, it would be really great, to see various >>>>>> types of repo-configs on centos wiki, now if few >>>>>> helpful& experienced users can grab this idea and come >>>>>> forward and share their repo config (and their case/usage >>>>>> scenario along with that), then that would be great. >>>>>> >>>>>> <snip> >>>>>> >>>>>> (Sorry for spelling& grammar mistakes in previous and >>>>>> in this posting, pls kindly disregard, its not a grammar >>>>>> discussion thread). >>>>>> >>>>>> -- Bry8Star. >>>>>> >>>>>> >>>>>> >>>>>> Received from Anthony K, on 2013-01-27 2:48 AM: >>>>>>> On 26/01/13 14:59, Bry8 Star wrote: >>>>>>>> CentOS webpage/site should also show to all users, >>>>>>>> some example of using multiple repos and how to >>>>>>>> implement effective includepkgs, exclude, priority >>>>>>>> etc directives properly for some certain last& >>>>>>>> STABLE app(s) (which is by default not in CentOS), so >>>>>>>> that others can understand the pattern, or have a >>>>>>>> pointer for them. Just mentioning about, that, there >>>>>>>> is such things called "includepkgs=...", >>>>>>>> "exclude=..." ad now go do it yourself (and sorry no >>>>>>>> example), obviously does not help that much to users, >>>>>>>> and its CentOS's loss as well, users go away to other >>>>>>>> distros, and ultimately many of them are lost in the >>>>>>>> jungle. -- Bright Star (Bry8Star). >>>>>>> But you appear to be missing the "C" part in CentOS >>>>>>> (or Community Enterprise OS). If you can contribute to >>>>>>> the Wiki, then the immediate problem is solved in that >>>>>>> such threads can be pointed to the Wiki and slows the >>>>>>> growth of my CentOS list folder! >>>>>>> >>>>>>> Frankly, if you have a good point to make that would >>>>>>> benefit the masses and you have spare time, then it's >>>>>>> best to create a Wiki page for it. >>>>>>> >>>>>>> Cheers, ak. >>>>>>> >>>>> There is already a fine page on this subject on the wiki. >>>>> >>>>> http://wiki.centos.org/AdditionalResources/Repositories >>>>> >>>> The point being made is that various people have the >>>> knowledge and experience to advise a startup setting for >>>> priority= for each repo I know that what I'm using has caused >>>> conflicts that have been quite time consuming to resolve - >>>> what works for others would be most helpful I do recognise >>>> that this will vary depending upon what tools are required >>>> but as a start: 1. developer workstation - what repos and >>>> what priority 2. LAMP server - probably just CentOS repos and >>>> something which deals with later php / perl / ruby 3. web / >>>> internet workstation - needs audio and video stuff working >>>> just my thoughts for starters. >>> >>> That totally depends on what you need to install and what repo >>> it is in. Since 3rd party repos are constantly adding new >>> packages that they did not have last week, it is impossible to >>> say what would be the proper priorities. >>> >>> I already posted what I personally do, which is: >>> >>> Install CentOS and set Base, updates, extras, and fasttrack to >>> a Priority=1 >>> >>> I usually do not need to enable centosplus, but if I do, I set >>> it to Priority=2 and I put "excludes=<pkg_names>" in the >>> Priority=1 repos for the packages I want let CentOS plus >>> replace in those repos. >>> >>> I then normally add EPEL and set the Priority=10 for that. >>> >>> Hopefully, that is all I need to add. >>> >>> If I have to add any more repositories, first make sure my >>> packages are currently all updated by doing a yum upgrade. >>> Then I add the new repos one at a time and I make them >>> Priority=10 (the same as EPEL) ... and after I add them , i do >>> a "yum update". If it tries to update, I look at the packages >>> and decide if I am going to allow the update or not ... if I am >>> ok to do the updates, then I do them and make sure it works. >>> Then I would install the packages I need from that repo. Then >>> I would add the next new repo till I get to the end. >>> >>> The best scenario is that all your 3rd party repos can >>> co-exist at the same Priority setting and that is where I start >>> (at Priority=10) ... and if something does not work, I >>> troubleshoot it and take individual action. >>> >>> Each individual machine is going to require a unique and >>> separate group of settings based on what you want to install >>> ... which is why there is no official recommendations. >>> >>> I personally am using the following repos right now on my main >>> Desktop, which is CentOS-6.3: >>> >>> adobe-linux-x86_64 | 951 B 00:00 base | 3.7 kB 00:00 >>> cr | 3.0 kB 00:00 elrepo | 1.9 kB 00:00 elrepo-extras | >>> 1.9 kB 00:00 extras | 3.5 kB 00:00 fasttrack | 3.5 kB >>> 00:00 google-chrome | 951 B 00:00 google-musicmanager | >>> 951 B 00:00 livna | 1.3 kB 00:00 nux-dextop | 2.7 kB >>> 00:00 rpmforge | 1.9 kB 00:00 updates | 3.5 kB 00:00 >>> >>> All of the secondary repos are set to the same priorities and >>> everything seems to work. >>> >>> Right now I have an "exclude=wxGtk*" for rpmforge for some >>> reason. And an "exclude=nx freenx*" for Nux! repo. >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> _______________________________________________ >>> CentOS mailing >>> list CentOS@xxxxxxxxxx >>> http://lists.centos.org/mailman/listinfo/centos >>> >> >> >> >> _______________________________________________ >> CentOS mailing >> list CentOS@xxxxxxxxxx >> http://lists.centos.org/mailman/listinfo/centos >> > > > > _______________________________________________ > CentOS mailing list > CentOS@xxxxxxxxxx > http://lists.centos.org/mailman/listinfo/centos >
Attachment:
signature.asc
Description: OpenPGP digital signature
_______________________________________________ CentOS mailing list CentOS@xxxxxxxxxx http://lists.centos.org/mailman/listinfo/centos