<!DOCTYPE html>
<html lang="cs">
<head>
    <meta charset="UTF-8"/>
    <meta
            content="EndeavourOS svobodný operační systém...."
            name="description"
    />
    <meta content="EndeavourOS, Co je to Aur?" name="keywords"/>
    <meta content="Kankys" name="author"/>

    <meta content="width=device-width, initial-scale=1.0" name="viewport"/>
    <link href="assets/style.css" rel="stylesheet"/>
    <link href="/img/icons.png" rel="shortcut icon"/>
    <script
            crossorigin="anonymous"
            src="https://kit.fontawesome.com/0a43c6cd1f.js"
    ></script>
    <!--icons dark, go to up-->
    <link
            href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/all.min.css"
            rel="stylesheet"
    />

    <!--ubuntu fonts-->
    <style>
        @import url("https://fonts.googleapis.com/css2?family=Ubuntu:ital,wght@0,300;0,400;0,500;0,700;1,300;1,400;1,500;1,700&display=swap");
    </style>

    <title>Co je to Aur?</title>
</head>
<body>
<?php require "assets/header.php" ?>
<main>
    <section class="welcome">
        <h1>Kořenový oddíl je plný? Nepropadejte panice, nejprve vymažte Pacmanovu mezipaměť! </h1>
        <img alt="" src="../img/project-analysis.webp" style="width: 50%;height: auto;"/>
        <p>Po nějaké době Vás systém může upozornit, že Váš kořenový oddíl je téměř plný.</p>
        <p>Můžete z toho panikařit a budete buď v pokušení provést přeinstalaci a zvětšit svůj kořenový oddíl, nebo
            ještě hůř, zkusit použít Gparted ke zmenšení oddílu, přesunutí a zvětšení kořenového oddílu.</p>
        <p><strong>POZOR!!!</strong> Nedělejte to, zejména druhou možnost, protože to může narušit Váš systém. Moje rada
            je, jen zůstat v klidu, existuje mnohem méně radikální řešení tohoto problému.</p>

        <code>/var/cache/pacman/pkg/</code>

        <p>Když nainstalujete balíček pomocí Pacmana, uloží všechny stažené balíčky do
            <strong>/var/cache/pacman/pkg/</strong> složky. Správce balíčků ve výchozím nastavení automaticky
            neodstraňuje staré a odinstalované balíčky a po chvíli může velikost mezipaměti spotřebovat značné množství
            místa na vašem HDD nebo SDD.</p>
        <p>Naštěstí má Pacman vestavěnou funkci pro vymazání mezipaměti, zadáním <strong>sudo pacman -Sc</strong> bude
            mezipaměť zcela vymazána. Problém vyřešen, ne?!?</p>
        <p>No… ano i ne. Ano, vaše mezipaměť je vymazána a budete mít znovu volné místo na oddílu, yay…</p>
        <p>Takže, v čem je problém, můžete se mě zeptat? Problém nyní je, že pomocí výše popsaného příkazu jste vymazali
            celou mezipaměť, včetně mezipaměti nainstalovaných balíčků. Tato mezipaměť je potřeba, když aktualizace
            balíčku nefunguje a musíte přejít na nižší verzi, dokud nebude problém vyřešen upstreamem. Nejedná se o
            žádnou velkou katastrofu, protože balíček můžete také downgradovat pomocí repozitáře Arch, ale vrátit se k
            místní mezipaměti je mnohem jednodušší.</p>
        <h2>Řešení</h2>
        <p>Nebojte se, existuje řešení a jmenuje se <strong>paccache</strong>. Nyní, než otevřete svůj terminál a
            použijete yay k vyhledání tohoto šikovného balíčku, neobtěžujte se, protože to není balíček, je již přítomen
            ve vašem systému.</p>
        <p>Skript <strong>Paccache</strong> poskytuje samotný balíček Pacman. Nemusíte se tedy obtěžovat instalačními
            kroky. Paccache ve výchozím nastavení zachová tři nejnovější verze balíčků. Kromě tří nejnovějších verzí
            balíčků odstraní všechny verze každého balíčku uložené v mezipaměti bez ohledu na to, zda jsou nainstalovány
            nebo ne.</p>
        <h2>Jak to používat</h2>
        <p>Chcete-li zkontrolovat, kolik balíčků je v paccache, zadejte:</p>
        <div class="code-box">
          <pre id="code-content">
              $ sudo ls /var/cache/pacman/pkg/ | wc -l
          </pre>
        </div>
        <p>Tím získáte počet balíčků, které jsou ve vaší mezipaměti, pokud chcete vědět, kolik místa mezipaměť zabírá,
            zadejte: </p>
        <div class="code-box">
          <pre id="code-content">
              $ du -sh /var/cache/pacman/pkg/
          </pre>
        </div>
        <p>Nyní vám systém říká, jak velká je velikost vaší mezipaměti.</p>
        <p>Nyní můžete vymazat mezipaměť, kromě posledních tří verzí každého balíčku zadáním:</p>
        <div class="code-box">
          <pre id="code-content">
              $ sudo paccache -r
          </pre>
        </div>
        <p>V závislosti na Vaší historii mezipaměti může poskytnout spoustu místa v kořenovém oddílu, ale teď jste u
            toho, proč nevymazat mezipaměť z vašich odinstalovaných balíčků?</p>
        <p>Chcete-li to provést, zadejte následující:</p>
        <div class="code-box">
          <pre id="code-content">
            $ sudo paccache -ruk0         
          </pre>
        </div>
        <p><strong>U</strong> v tomto příkazu znamená všechny odinstalované balíčky a v závislosti na Vaší historii
            odinstalovaných balíčků to také může Vašemu systému vrátit spoustu místa. Další metodou, jak vymazat
            odinstalované balíčky, je použití:</p>
        <div class="code-box">
          <pre id="code-content">
            $ sudo pacman -Sc
          </pre>
        </div>
        <p>Nebo pro úplné odstranění použijte:</p>
        <div class="code-box">
          <pre id="code-content">
            $ sudo pacman -Scc
          </pre>
        </div>
        <p><strong>Jen buďte opatrní s čištěním mezipaměti a balíčků pomocí tohoto příkazu, zdá se lákavé jej použít,
            ale jakmile je smazán, není cesty zpět.</strong></p>
        <h2>Automatické odstranění mezipaměti</h2>
        <p>Tento úkol můžete automatizovat pomocí pacman hooks. Pacman hook automaticky vyčistí mezipaměť balíčku po
            každé transakci pacmana.
        <p>
        <p>Chcete-li tak učinit, vytvořte soubor <strong>/etc/pacman.d/hooks/clean_package_cache.hook</strong> takto:
        </p>
        <div class="code-box">
          <pre id="code-content">
              $ sudo mkdir -p /etc/pacman.d/hooks
          </pre>
        </div>
        <p></p>
        <div class="code-box">
          <pre id="code-content">
                $ sudo nano /etc/pacman.d/hooks/clean_package_cache.hook    
          </pre>
        </div>
        <p>Poté přidejte následující řádky:</p>
        <div class="code-box">
          <pre id="code-content">
                    [Trigger]
                    Operation = Upgrade
                    Operation = Install
                    Operation = Remove
                    Type = Package
                    Target = *
                    [Action]
                    Description = Cleaning pacman cache...
                    When = PostTransaction
                    Exec = /usr/bin/paccache -r
          </pre>
        </div>

        <p>Zavřete a uložte stisknutím CTRL + x a od této chvíle Váš systém automaticky vymaže mezipaměť po každé
            aktualizaci, odstranění nebo aktualizaci pacmana.</p>
        <p>EDIT: Od roku 2020 EndeavourOS se dodává s automatickým skriptem, který je součástí aplikace Welcome, která
            tyto operace provádí několika kliknutími myši.</p>


        <p>Návod je převzat z
            <a
                    href="https://discovery.endeavouros.com/articles/root-partition-full-dont-panic-clear-pacmans-cache-first/2020/03/"
                    target="_blank"
            >Discovery</a
            >
            na EndeavourOS vydán 30. března 2020.
        </p>
        <code>
            <p><a href="https://lukaskanka.cz/" target="_blank">Kankys</a>
                26.8.2024</code></p>
    </section>
</main>
<?php require "assets/returnbutton.php" ?>
<?php require "assets/footer.php" ?>
<script src="assets/script.js"></script>
</body>
</html>
