{"id":1794,"date":"2017-05-22T08:00:50","date_gmt":"2017-05-22T07:00:50","guid":{"rendered":"https:\/\/www.my-it-brain.de\/wordpress\/?p=1794"},"modified":"2017-05-21T09:05:40","modified_gmt":"2017-05-21T08:05:40","slug":"rhel-7-wie-stelle-ich-sicher-dass-nur-pakete-aus-unterstuetzten-quellen-installiert-sind","status":"publish","type":"post","link":"https:\/\/www.my-it-brain.de\/wordpress\/rhel-7-wie-stelle-ich-sicher-dass-nur-pakete-aus-unterstuetzten-quellen-installiert-sind\/","title":{"rendered":"RHEL 7: Wie stelle ich sicher, dass nur Pakete aus unterst\u00fctzten Quellen installiert sind?"},"content":{"rendered":"<p>In diesem Artikel dokumentiere ich (vor allem f\u00fcr mich selbst), wie man ein System in einen Zustand versetzen kann, in dem ausschlie\u00dflich RPM-Pakete aus Repositories (Repos) installiert sind, f\u00fcr die man kommerziellen Support erh\u00e4lt.<\/p>\n<p>Dazu gehe ich kurz auf den Hintergrund der Aufgabenstellung ein, bevor ich anschlie\u00dfend eine m\u00f6gliche L\u00f6sung beschreibe.<\/p>\n<h2>Die Hintergrundgeschichte<\/h2>\n<p>F\u00fcr meine ersten Gehversuche mit Red Hat Enterprise Linux habe ich mich unter der URL &#8222;<a href=\"https:\/\/developers.redhat.com\/\">https:\/\/developers.redhat.com\/<\/a>&#8220; f\u00fcr eine Developer Subscription registriert. Diese gestattet die unbeschr\u00e4nkte Nutzung zu Forschungs- und Entwicklungszwecken.<\/p>\n<p>Mit der Developer Subscription erh\u00e4lt man Zugriff auf eine ganze Reihe von Repos, aus denen man Software installieren kann. Etliche Pakete wie z.B. <code>sed<\/code>, <code>less<\/code>, etc. sind dabei in mehreren Quellen verf\u00fcgbar.<\/p>\n<p>Nach einer gewissen Evaluierungszeit sollte das System produktiv genutzt werden. Da eine produktive Nutzung in der Developer Subscription ausgeschlossen ist, wurde eine RHEL Standard Subscription f\u00fcr das System beschafft. Diese wurde dem System \u00fcber den &#8222;Subscription Manager&#8220; hinzugef\u00fcgt. Die Developer Subscription wurde im Gegenzug entfernt.<\/p>\n<p>Um zu \u00fcberpr\u00fcfen, ob auf dem System Pakete aus anderen Repos als &#8222;rhel-7-server-rpms&#8220; installiert waren, wurde folgendes Kommando genutzt:<br \/>\n<code><br \/>\n# yum list installed | grep -v \"rhel-7-server-rpms\\|anaconda\"<br \/>\nLoaded plugins: product-id, search-disabled-repos, subscription-manager<br \/>\nInstalled Packages<br \/>\nNetworkManager-config-server.x86_64<br \/>\nRed_Hat_Enterprise_Linux-Release_Notes-7-en-US.noarch<br \/>\nlibdnet.x86_64                   1.12-13.1.el7               @rhel-7-server-eus-rpms<br \/>\nlibicu.x86_64                    50.1.2-15.el7               @rhel-7-server-eus-rpms<br \/>\nlibmspack.x86_64                 0.5-0.4.alpha.el7           @rhel-7-server-eus-rpms<br \/>\nnet-tools.x86_64                 2.0-0.17.20131004git.el7    @rhel-7-server-eus-rpms<br \/>\nsed.x86_64                       4.2.2-5.el7.sjis.1          @rhel-sjis-for-rhel-7-server-eus-rpms<\/p>\n<p># yum repolist enabled<br \/>\nLoaded plugins: product-id, search-disabled-repos, subscription-manager<br \/>\nrepo id repo name status<br \/>\nrhel-7-server-rpms\/7Server\/x86_64 Red Hat Enterprise Linux 7 Server (RPMs) 14,280<br \/>\nrepolist: 14,280<br \/>\n<\/code><\/p>\n<p>Der Ausgabe ist zu entnehmen, dass f\u00fcnf Pakete aus Quellen stammen, die auf dem System nicht mehr verf\u00fcgbar sind. Diesen Zustand galt es zu \u00e4ndern.<\/p>\n<h2>Die L\u00f6sung<\/h2>\n<p>F\u00fcr die ersten vier Pakete bestand die L\u00f6sung darin, diese einfach neuzuinstallieren:<br \/>\n<code><br \/>\nyum reinstall libdnet libicu libmspack net-tools<br \/>\n<\/code><\/p>\n<p>Bei <code>sed<\/code> stellte sich dieser Ansatz als problematisch heraus, da der Versuch das Paket neuzuinstallieren mit folgender Meldung quittiert wurde:<br \/>\n<code><br \/>\n# yum reinstall sed<br \/>\nLoaded plugins: langpacks, product-id, search-disabled-repos, subscription-manager<br \/>\nrhel-7-server-optional-rpms                                                                                                             | 3.5 kB  00:00:00<br \/>\nrhel-7-server-rpms                                                                                                                      | 3.5 kB  00:00:00<br \/>\nrhel-server-rhscl-7-rpms                                                                                                                | 3.5 kB  00:00:00<br \/>\nInstalled package sed-4.2.2-5.el7.sjis.1.x86_64 (from rhel-sjis-for-rhel-7-server-eus-rpms) not available.<br \/>\nError: Nothing to do<br \/>\n<\/code><\/p>\n<p>Der zweite Ansatz, das Paket erst zu entfernen und dann erneut zu installieren, scheiterte an der \u00dcberpr\u00fcfung der Paket-Abh\u00e4ngigkeiten (Auszug der Ausgabe):<br \/>\n<code><br \/>\n# yum remove sed<br \/>\n[...]<br \/>\n--&gt; Finished Dependency Resolution<br \/>\nError: Trying to remove \"systemd\", which is protected<br \/>\nError: Trying to remove \"yum\", which is protected<br \/>\n<\/code><\/p>\n<p>Die L\u00f6sung gelang mit dem dritten Versuch. Hierbei wurde ein Downgrade auf die Paket-Version aus dem Repo &#8222;rhel-7-server-rpms&#8220; durchgef\u00fchrt:<br \/>\n<code><br \/>\n# yum downgrade sed-4.2.2-5.el7.x86_64<br \/>\nLoaded plugins: langpacks, product-id, search-disabled-repos, subscription-manager<br \/>\nResolving Dependencies<br \/>\n--&gt; Running transaction check<br \/>\n---&gt; Package sed.x86_64 0:4.2.2-5.el7 will be a downgrade<br \/>\n---&gt; Package sed.x86_64 0:4.2.2-5.el7.sjis.1 will be erased<br \/>\n--&gt; Finished Dependency Resolution<\/p>\n<p>Dependencies Resolved<\/p>\n<p>===============================================================================================================================================================<br \/>\nPackage Arch Version Repository Size<br \/>\n===============================================================================================================================================================<br \/>\nDowngrading:<br \/>\nsed x86_64 4.2.2-5.el7 rhel-7-server-rpms 231 k<\/p>\n<p>Transaction Summary<br \/>\n===============================================================================================================================================================<br \/>\nDowngrade 1 Package<\/p>\n<p>Total download size: 231 k<br \/>\nIs this ok [y\/d\/N]: y<br \/>\nDownloading packages:<br \/>\nsed-4.2.2-5.el7.x86_64.rpm | 231 kB 00:00:00<br \/>\nRunning transaction check<br \/>\nRunning transaction test<br \/>\nTransaction test succeeded<br \/>\nRunning transaction<br \/>\nInstalling : sed-4.2.2-5.el7.x86_64 1\/2<br \/>\nCleanup : sed-4.2.2-5.el7.sjis.1.x86_64 2\/2<br \/>\nVerifying : sed-4.2.2-5.el7.x86_64 1\/2<br \/>\nVerifying : sed-4.2.2-5.el7.sjis.1.x86_64 2\/2<\/p>\n<p>Removed:<br \/>\nsed.x86_64 0:4.2.2-5.el7.sjis.1<\/p>\n<p>Installed:<br \/>\nsed.x86_64 0:4.2.2-5.el7<\/p>\n<p>Complete!<br \/>\n# yum list installed | grep sed<br \/>\nsed.x86_64 4.2.2-5.el7 @rhel-7-server-rpms<br \/>\n<\/code><\/p>\n<p>Am Ende des Listings ist zu sehen, dass <code>sed<\/code> nun aus dem Repo &#8222;rhel-7-server-rpms&#8220; installiert wurde. Damit stammen nun alle Pakete wieder aus Quellen, die von einer Subscription mit Support abgedeckt.<\/p>\n<p>Bei zuk\u00fcnftigen Installationen mit einer Developer Subscription werde ich jedoch von Anfang an darauf achten, dass nur die Repos verwendet werden, die auch in der RHEL Standard Subscription enthalten sind.<\/p>\n<h2>Verweise<\/h2>\n<ul>\n<li><a href=\"https:\/\/access.redhat.com\/discussions\/3027651\">Reinstall packages from a specific repository<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>In diesem Artikel dokumentiere ich (vor allem f\u00fcr mich selbst), wie man ein System in einen Zustand versetzen kann, in dem ausschlie\u00dflich RPM-Pakete aus Repositories (Repos) installiert sind, f\u00fcr die man kommerziellen Support erh\u00e4lt. Dazu gehe ich kurz auf den Hintergrund der Aufgabenstellung ein, bevor ich anschlie\u00dfend eine m\u00f6gliche L\u00f6sung beschreibe. Die Hintergrundgeschichte F\u00fcr meine<span class=\"continue-reading\"> <a href=\"https:\/\/www.my-it-brain.de\/wordpress\/rhel-7-wie-stelle-ich-sicher-dass-nur-pakete-aus-unterstuetzten-quellen-installiert-sind\/\">[Weiterlesen&#8230;]<\/a><\/span><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_metis_text_type":"","_metis_text_length":0,"_post_count":0,"footnotes":""},"categories":[1],"tags":[457,430,305,458,389,446,397],"class_list":["post-1794","post","type-post","status-publish","format-standard","hentry","category-allgemein","tag-downgrade","tag-osbn","tag-planet","tag-reinstall","tag-rhel","tag-rhel7","tag-yum"],"_links":{"self":[{"href":"https:\/\/www.my-it-brain.de\/wordpress\/wp-json\/wp\/v2\/posts\/1794","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.my-it-brain.de\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.my-it-brain.de\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.my-it-brain.de\/wordpress\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.my-it-brain.de\/wordpress\/wp-json\/wp\/v2\/comments?post=1794"}],"version-history":[{"count":4,"href":"https:\/\/www.my-it-brain.de\/wordpress\/wp-json\/wp\/v2\/posts\/1794\/revisions"}],"predecessor-version":[{"id":1799,"href":"https:\/\/www.my-it-brain.de\/wordpress\/wp-json\/wp\/v2\/posts\/1794\/revisions\/1799"}],"wp:attachment":[{"href":"https:\/\/www.my-it-brain.de\/wordpress\/wp-json\/wp\/v2\/media?parent=1794"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.my-it-brain.de\/wordpress\/wp-json\/wp\/v2\/categories?post=1794"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.my-it-brain.de\/wordpress\/wp-json\/wp\/v2\/tags?post=1794"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}