mirror of
https://github.com/MacRimi/ProxMenux.git
synced 2025-06-28 12:16:53 +00:00
Update
This commit is contained in:
parent
0aa60c3218
commit
22c4b7421c
@ -52,110 +52,6 @@ export default function PerformanceSettingsPage() {
|
|||||||
</p>
|
</p>
|
||||||
<h2 className="text-2xl font-semibold mt-8 mb-4">Available Optimizations</h2>
|
<h2 className="text-2xl font-semibold mt-8 mb-4">Available Optimizations</h2>
|
||||||
|
|
||||||
<h3 className="text-xl font-semibold mt-16 mb-4 flex items-center">
|
|
||||||
<StepNumber number={1} />
|
|
||||||
Configure pigz for Faster gzip Compression
|
|
||||||
</h3>
|
|
||||||
|
|
||||||
<p className="mb-4">
|
|
||||||
This optimization configures <strong>pigz</strong> as a faster replacement for gzip compression.
|
|
||||||
Pigz is a parallel implementation of gzip that utilizes multiple CPU cores,
|
|
||||||
significantly improving compression speed on modern systems.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p className="mb-4"><strong>Why use pigz instead of gzip?</strong></p>
|
|
||||||
<ul className="list-disc pl-5 mb-4">
|
|
||||||
<li><strong>Parallel processing:</strong> Uses all available CPU cores for faster compression.</li>
|
|
||||||
<li><strong>Faster vzdump backups:</strong> When used with Proxmox's vzdump, it reduces backup times.</li>
|
|
||||||
<li><strong>Drop-in replacement for gzip:</strong> It works exactly like gzip but is much more efficient.</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<p className="mb-4">The following steps are performed:</p>
|
|
||||||
<ul className="list-disc pl-5 mb-4">
|
|
||||||
<li>Enables pigz in the vzdump configuration for faster backups.</li>
|
|
||||||
<li>Installs the pigz package if not already installed.</li>
|
|
||||||
<li>Creates a pigz wrapper script to replace the standard gzip command.</li>
|
|
||||||
<li>Replaces the system gzip command with the pigz wrapper.</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<p className="mb-4">
|
|
||||||
<strong>Note:</strong> This optimization can significantly speed up compression tasks, especially on systems
|
|
||||||
with multiple CPU cores.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p className="text-lg mb-2">This adjustment automates the following commands:</p>
|
|
||||||
|
|
||||||
<CopyableCode
|
|
||||||
code={`
|
|
||||||
# Enable pigz in vzdump configuration
|
|
||||||
sed -i "s/#pigz:.*/pigz: 1/" /etc/vzdump.conf
|
|
||||||
|
|
||||||
# Install pigz
|
|
||||||
apt-get -y install pigz
|
|
||||||
|
|
||||||
# Create pigz wrapper script
|
|
||||||
cat <<EOF > /bin/pigzwrapper
|
|
||||||
#!/bin/sh
|
|
||||||
PATH=/bin:\$PATH
|
|
||||||
GZIP="-1"
|
|
||||||
exec /usr/bin/pigz "\$@"
|
|
||||||
EOF
|
|
||||||
chmod +x /bin/pigzwrapper
|
|
||||||
|
|
||||||
# Replace gzip with pigz wrapper
|
|
||||||
mv -f /bin/gzip /bin/gzip.original
|
|
||||||
cp -f /bin/pigzwrapper /bin/gzip
|
|
||||||
chmod +x /bin/gzip
|
|
||||||
`}
|
|
||||||
/>
|
|
||||||
|
|
||||||
<h4 className="text-lg font-semibold mt-6">How to Use pigz</h4>
|
|
||||||
<p className="mb-4">
|
|
||||||
Pigz works the same way as gzip but compresses files much faster by using multiple CPU cores.
|
|
||||||
Here’s how you can test its performance:
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<CopyableCode
|
|
||||||
code={`
|
|
||||||
# Compress a file with gzip
|
|
||||||
time gzip largefile.img
|
|
||||||
|
|
||||||
# Compress a file with pigz (parallel gzip)
|
|
||||||
time pigz largefile.img
|
|
||||||
`}
|
|
||||||
/>
|
|
||||||
|
|
||||||
<p className="mb-4">
|
|
||||||
The output will show that pigz completes the compression significantly faster than gzip.
|
|
||||||
To check the number of CPU cores pigz is using, run:
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<CopyableCode
|
|
||||||
code={`
|
|
||||||
pigz -p $(nproc) largefile.img
|
|
||||||
`}
|
|
||||||
/>
|
|
||||||
|
|
||||||
<h4 className="text-lg font-semibold mt-6">Verifying pigz Replacement</h4>
|
|
||||||
<p className="mb-4">
|
|
||||||
After replacing gzip with pigz, you can confirm that the system is using pigz instead of gzip:
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<CopyableCode
|
|
||||||
code={`
|
|
||||||
which gzip
|
|
||||||
ls -l /bin/gzip
|
|
||||||
`}
|
|
||||||
/>
|
|
||||||
|
|
||||||
<p className="mb-4">
|
|
||||||
The output should show that <code>/bin/gzip</code> is now linked to the pigz wrapper.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p className="mt-4">
|
|
||||||
By enabling pigz, compression-heavy tasks like vzdump backups and log archiving
|
|
||||||
will run much faster, leveraging multi-core processing.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
|
|
||||||
<h3 className="text-xl font-semibold mt-16 mb-4 flex items-center">
|
<h3 className="text-xl font-semibold mt-16 mb-4 flex items-center">
|
||||||
@ -164,42 +60,32 @@ export default function PerformanceSettingsPage() {
|
|||||||
</h3>
|
</h3>
|
||||||
|
|
||||||
<p className="mb-4">
|
<p className="mb-4">
|
||||||
This optimization configures <strong>pigz</strong> as a faster replacement for gzip compression.
|
This optimization replaces the default <strong>gzip</strong> compression with
|
||||||
Pigz is a parallel implementation of gzip that utilizes multiple CPU cores,
|
<strong>pigz</strong>, a parallelized version that speeds up compression by
|
||||||
significantly improving compression speed on modern systems.
|
utilizing multiple CPU cores.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<p className="mb-4"><strong>Why use pigz instead of gzip?</strong></p>
|
<h4 className="text-lg font-semibold mt-4">What does this configuration do?</h4>
|
||||||
<ul className="list-disc pl-5 mb-4">
|
<ul className="list-disc pl-5 mb-4">
|
||||||
<li><strong>Parallel processing:</strong> Uses all available CPU cores for faster compression.</li>
|
<li><strong>Forces pigz usage</strong> in vzdump backups to accelerate Proxmox VE backup compression.</li>
|
||||||
<li><strong>Faster vzdump backups:</strong> When used with Proxmox's vzdump, it reduces backup times.</li>
|
<li><strong>Ensures pigz is installed</strong> before applying optimizations.</li>
|
||||||
<li><strong>Drop-in replacement for gzip:</strong> It works exactly like gzip but is much more efficient.</li>
|
<li><strong>Creates a pigz wrapper script</strong> to enforce compression behavior.</li>
|
||||||
|
<li><strong>Replaces gzip with the pigz wrapper</strong>, making pigz the system-wide default compressor.</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
<p className="mb-4">The following steps are performed:</p>
|
<h4 className="text-lg font-semibold mt-4">How is pigz configured?</h4>
|
||||||
<ul className="list-disc pl-5 mb-4">
|
|
||||||
<li>Enables pigz in the vzdump configuration for faster backups.</li>
|
|
||||||
<li>Installs the pigz package if not already installed.</li>
|
|
||||||
<li>Creates a pigz wrapper script to replace the standard gzip command.</li>
|
|
||||||
<li>Replaces the system gzip command with the pigz wrapper.</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<p className="mb-4">
|
<p className="text-lg mb-2">This automation executes the following commands:</p>
|
||||||
<strong>Note:</strong> This optimization can significantly speed up compression tasks, especially on systems
|
|
||||||
with multiple CPU cores.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p className="text-lg mb-2">This adjustment automates the following commands:</p>
|
|
||||||
|
|
||||||
<CopyableCode
|
<CopyableCode
|
||||||
code={`
|
code={`
|
||||||
# Enable pigz in vzdump configuration
|
# Force pigz usage in vzdump configuration (for Proxmox backups)
|
||||||
sed -i "s/#pigz:.*/pigz: 1/" /etc/vzdump.conf
|
sed -i "s/#pigz:.*/pigz: 1/" /etc/vzdump.conf
|
||||||
|
|
||||||
# Install pigz
|
# Install pigz package
|
||||||
apt-get -y install pigz
|
apt-get -y install pigz
|
||||||
|
|
||||||
# Create pigz wrapper script
|
# Create a pigz wrapper script
|
||||||
cat <<EOF > /bin/pigzwrapper
|
cat <<EOF > /bin/pigzwrapper
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
PATH=/bin:\$PATH
|
PATH=/bin:\$PATH
|
||||||
@ -208,62 +94,59 @@ export default function PerformanceSettingsPage() {
|
|||||||
EOF
|
EOF
|
||||||
chmod +x /bin/pigzwrapper
|
chmod +x /bin/pigzwrapper
|
||||||
|
|
||||||
# Replace gzip with pigz wrapper
|
# Replace gzip with pigz wrapper (backup original gzip binary)
|
||||||
mv -f /bin/gzip /bin/gzip.original
|
if [ ! -f /bin/gzip.original ]; then
|
||||||
cp -f /bin/pigzwrapper /bin/gzip
|
mv -f /bin/gzip /bin/gzip.original
|
||||||
chmod +x /bin/gzip
|
cp -f /bin/pigzwrapper /bin/gzip
|
||||||
|
chmod +x /bin/gzip
|
||||||
|
fi
|
||||||
`}
|
`}
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<h4 className="text-lg font-semibold mt-6">How to Use pigz</h4>
|
<h4 className="text-lg font-semibold mt-6">How to Verify pigz is Active</h4>
|
||||||
|
|
||||||
<p className="mb-4">
|
<p className="mb-4">
|
||||||
Pigz works the same way as gzip but compresses files much faster by using multiple CPU cores.
|
You can confirm that <strong>pigz</strong> is being used by running the following command:
|
||||||
Here’s how you can test its performance:
|
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<CopyableCode
|
<CopyableCode
|
||||||
code={`
|
code={`
|
||||||
# Compress a file with gzip
|
# Check if gzip now points to pigz
|
||||||
|
gzip --version
|
||||||
|
`}
|
||||||
|
/>
|
||||||
|
|
||||||
|
<p className="mb-4">
|
||||||
|
If the output mentions <code>pigz</code>, the replacement was successful.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<h4 className="text-lg font-semibold mt-6">Performance Test: gzip vs. pigz</h4>
|
||||||
|
|
||||||
|
<p className="mb-4">
|
||||||
|
To measure the speed difference between gzip and pigz, try compressing a large file:
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<CopyableCode
|
||||||
|
code={`
|
||||||
|
# Compress a file using gzip (single-threaded)
|
||||||
time gzip largefile.img
|
time gzip largefile.img
|
||||||
|
|
||||||
# Compress a file with pigz (parallel gzip)
|
# Compress a file using pigz (multi-threaded)
|
||||||
time pigz largefile.img
|
time pigz largefile.img
|
||||||
`}
|
`}
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<p className="mb-4">
|
<p className="mb-4">
|
||||||
The output will show that pigz completes the compression significantly faster than gzip.
|
Since pigz utilizes multiple CPU cores, the compression process should be significantly faster.
|
||||||
To check the number of CPU cores pigz is using, run:
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<CopyableCode
|
|
||||||
code={`
|
|
||||||
pigz -p $(nproc) largefile.img
|
|
||||||
`}
|
|
||||||
/>
|
|
||||||
|
|
||||||
<h4 className="text-lg font-semibold mt-6">Verifying pigz Replacement</h4>
|
|
||||||
<p className="mb-4">
|
|
||||||
After replacing gzip with pigz, you can confirm that the system is using pigz instead of gzip:
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<CopyableCode
|
|
||||||
code={`
|
|
||||||
which gzip
|
|
||||||
ls -l /bin/gzip
|
|
||||||
`}
|
|
||||||
/>
|
|
||||||
|
|
||||||
<p className="mb-4">
|
|
||||||
The output should show that <code>/bin/gzip</code> is now linked to the pigz wrapper.
|
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<p className="mt-4">
|
<p className="mt-4">
|
||||||
By enabling pigz, compression-heavy tasks like vzdump backups and log archiving
|
With this optimization, vzdump backups and all gzip compression tasks benefit from parallel processing,
|
||||||
will run much faster, leveraging multi-core processing.
|
reducing execution time considerably.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<section className="mt-12 p-4 bg-blue-100 rounded-md">
|
<section className="mt-12 p-4 bg-blue-100 rounded-md">
|
||||||
<h2 className="text-xl font-semibold mb-2">Automatic Application</h2>
|
<h2 className="text-xl font-semibold mb-2">Automatic Application</h2>
|
||||||
<p>
|
<p>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user