Do these 3 things before closing this tab:
1Clear out junk files and repair common Windows errors2Fix the driver behind crashes, sound loss and screen glitches3Repair Windows errors before they cause bigger problemsiTechGuides is reader-supported. When you buy through links on our site, we may earn an affiliate commission. As an Amazon Associate I earn from qualifying purchases. Learn more
Need a server to try this on? Antihost offers Linux VPS plans with NVMe storage, full root access and a 14-day free trial.
On a CentOS VPS, a YUM repository is configured as a uniquely named stanza in a .repo file, normally under /etc/yum.repos.d/. On current CentOS Stream releases, dnf is the normal command even though administrators still commonly say “YUM repository.” A working repository must expose valid RPM metadata in a reachable repodata/ directory, match the VPS release and CPU architecture, and use trusted GPG keys for package verification.
The reliable setup is: identify the client system, add a maintained upstream or vendor repository (or build private metadata with createrepo_c), enable GPG checking, inspect the repository with dnf, and refresh metadata deliberately after changes. The procedures below cover both consuming an existing repository and publishing your own.
Quick wins for a faster PC:
Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →Repair Windows errors before they cause bigger problemsFix Now →Scan for outdated or missing drivers - takes under a minuteDriver Scan →What a YUM/DNF repository is on CentOS
A repository is a package source that combines RPM files with machine-readable metadata. The metadata tells YUM or DNF which packages exist, their versions, dependencies, checksums, architectures, and locations. The client does not need to browse a directory of RPMs; it reads the repository metadata and then downloads the selected packages.
Each repository is defined by an ID in square brackets and settings such as its display name, URL, enablement state, and signature policy. Red Hat’s repository guidance recommends putting custom definitions in separate .repo files rather than editing /etc/dnf/dnf.conf, and repository IDs in [] must be unique. Keep one logical source per file so it can be audited, disabled, or replaced without disturbing the operating system’s built-in repositories.
#1 Best Overall
- Powerful Turbo Fan:CAGIWIRU Electric Air Duster have reached speed up to 130000RPM,Can efficient remove dust and debris.With LED light and Three Adjustable Speed to meet with different cleaning tasks.
- With Attached USB C Fasting Charging cable.Charing 3 hours,Enjoy up to 240 minutes of use on the lowest setting, For third speed can use for 25mins.with four charging options to meet with your needs.
- Wide Application:Upgraded attached 5 different nozzles,making it suitable for a variety of scenes, such as car,pet, pc, keyboards, and other electronic devices. It also serves for office and home clean duster.
- Handy Design & Portable:Cordless air duster electric nozzle is Light weight and small size, design and comfortable to hold and space saving, convenient to carry around. You can put it in your room or inside the car without taking up space.
- Warranty & Support: Our Electric air duster comes with 5 years warranty and 24/7 customer service. During this period, if you have any questions,pls kindly feel free to contact us.
Think of the VPS as the repository client unless you explicitly operate a second host that publishes packages. Decide which role you need before changing configuration:
- Upstream repository: a CentOS project or other publisher maintains the packages and metadata.
- Vendor repository: a software supplier provides a release package, key, and repository endpoint.
- Private repository: your team owns the RPMs, metadata, signing process, and web endpoint.
Check the CentOS VPS before adding a source
Repository paths often contain variables such as $releasever and $basearch. Confirm what those variables represent on this VPS instead of copying a path intended for a different release.
cat /etc/centos-release
rpm -E '%{rhel}'
rpm -E '%{centos}
rpm -E '%{_arch}'
uname -m
dnf repolist
The exact output depends on whether the machine runs CentOS Stream or an older CentOS release and on whether it is x86_64, aarch64, or another supported architecture. A repository built for a different major release can install incompatible libraries even when its URL is reachable. Likewise, an x86_64 RPM is not interchangeable with an aarch64 RPM.
Also verify that the VPS can resolve DNS, establish HTTPS connections, and reach the repository host through any firewall or outbound proxy. You need root privileges (normally through sudo) to install release packages, import keys, and write under /etc/yum.repos.d/.
Add an existing upstream or vendor repository
Prefer a maintained release package
When a trusted project publishes a release RPM, use it rather than hand-maintaining a URL. The release package commonly installs a repository file and the publisher’s public GPG key, so updates to mirrors or endpoints can be delivered through the package itself. CentOS documentation demonstrates the general pattern: import the project’s public RPM key, install the release RPM, and then inspect the resulting repository definitions.
sudo rpm --import https://repo.example.invalid/RPM-GPG-KEY-example
sudo dnf install -y https://repo.example.invalid/example-release-latest.noarch.rpm
sudo dnf repolist
Replace both example URLs with the current address supplied by the project. Verify the project’s current documentation and package freshness first. An archived CentOS SIG page explicitly warns that its old instructions should not be followed on CentOS Stream; instructions that install obsolete release packages or point to retired content can leave a VPS with stale or unsafe packages.
Free tools Windows power users keep installed
One-click scans. No signup required.
Create a repository file manually
If no maintained release package exists, create a dedicated file such as /etc/yum.repos.d/example.repo:
Rank #2
- Screen Cleaner is Your Screen’s New Bestfriend! - EVEO is proud to present a screen cleaner that’s perfectly suited for your TV. Meet your new screen cleaner, computer screen cleaner, laptop cleaner, iPad cleaner, Macbook,tv cleaner or any other electronic device. Our screen cleaner spray and wipe along with the included plush microfiber cloth, easily removes dust, fingerprints & other smudges on the screen’s surface. Clean effectively for a streak-free screen
- Gentle on your Screens - Our screen cleaner spray and wipes is compatible to be used even for the most sensitive LCD, LED, CRT, and OLED screens in proper use. Be at ease knowing that this product is compatible with all the major brands: LG, SONY, Samsung, Sharp, iPad, iPhone, Android screens, Kindle, PC monitors - we’ve got you covered! Can be used as LCD screen cleaner, tv cleaner, smart tv screen cleaner, and more
- Premium Super Soft Plush Microfiber Cloth - Included in this efficient screen cleaning kit. This screen cleaner spray and wipe has our signature plush microfiber cloth specially designed to comply with screens and monitors and leave them streak-free. Has been shown to effectively absorbs stubborn stains, zero streaks, and no fiber shedding. Always use this together with our screen cleaner for the best results
- Easy-to-Use Screen Cleaner Kit + microfiber cleaning cloth - The EVEO Screen Cleaning Kit will easily be your new favorite tool when it comes to taking care of the things you love most, quick and easy solution for a streak-free screen. Simply screw on the sprayer gun on the screen cleaner bottle. Spray the cleaning liquid onto the microfiber cloth, then wipe the screen until desired cleanliness & shine is achieved.
- Quality Screen Care Kit Worth Purchasing - Enjoy a convenient Screen Cleaner anytime, anywhere you need it. Your satisfaction is our top priority. We stand behind the quality of our products and that’s why, you shouldn’t be worrying at all. We manufacture the Best Screen Cleaner. and can be used for laptop cleaning kit, laptop screen cleaner, tv screen cleaner for smart tv. MacBook screen cleaner, monitor cleaner or screen cleaner spray for electronic devices with microfiber cleaning cloth
sudo tee /etc/yum.repos.d/example.repo >/dev/null <<'EOF'
[example]
name=Example RPM repository
baseurl=https://repo.example.invalid/centos/$releasever/$basearch/
enabled=1
gpgcheck=1
gpgkey=https://repo.example.invalid/RPM-GPG-KEY-example
EOF
The [example] value is the repository ID. It must not duplicate an ID in another file. name is the human-readable label shown by DNF. baseurl must identify the directory that contains the repository’s repodata/ directory, not merely the location of one RPM. enabled=1 makes the source available for normal transactions. gpgcheck=1 requires package signature verification, and gpgkey identifies the public key that DNF can import or use to verify packages.
Use an HTTPS URL whenever possible. If the publisher supplies a mirror list or metalink, use that mechanism instead of hard-coding one mirror; it can select a healthy mirror and carry repository metadata such as checksums. Keep the sample variables only when the publisher’s directory layout actually uses them. Otherwise substitute the exact release and architecture path.
Use DNF’s repository helper
DNF can create a definition from a repository URL:
sudo dnf config-manager --add-repo https://repo.example.invalid/centos/example.repo
Repositories added this way are enabled by default. Inspect the generated file under /etc/yum.repos.d/ and check that its ID, URL, GPG settings, and release path are correct. If the source should not participate in every transaction, disable it:
sudo dnf config-manager --disable example
You can leave it disabled and enable it for one transaction with --enablerepo=example, which is safer for experimental or narrowly scoped sources.
Build a private RPM repository
A directory of RPM files is not yet a usable YUM repository. DNF needs generated metadata, including the repodata/ directory. Build that metadata on a repository host or staging system, then publish the directory through HTTPS or another transport reachable by the VPS.
Install the metadata generator and stage packages
sudo dnf install -y createrepo_c
sudo mkdir -p /srv/repos/example
sudo cp /path/to/packages/*.rpm /srv/repos/example/
Some CentOS versions provide the package under the name createrepo; install whichever package your enabled repositories supply. Before generating metadata, remove incomplete downloads and confirm that every RPM is intended for the target CentOS release and architecture.
Generate initial metadata
sudo createrepo_c /srv/repos/example/
The command creates /srv/repos/example/repodata/. A web server can publish the parent directory, so the client URL would be similar to https://packages.example.invalid/repos/example/ and that URL would resolve to a directory containing repodata/ plus the RPM files. Do not set baseurl to an individual package URL.
Recommended Free Tools
Rank #3
- 【Large size】:Measuring 800 x 300 mm/ 31. 5×12 inches, which is wider and taller than others. Large mouse pad can perfectly fit your keyboard and mouse of any size, and there is also ample space for peripherals such as phones, tablets, etc.
- 【LED backlight mouse pad】:Blade Hawks RGB mouse pad provides 7 static modes and 7 dynamic modes will give you the options you are looking for. Power-off memory function remembers the last lighting mode you selected. The super glow fiber Chroma will give you a colorful gaming setup that you want.
- 【Anti-slip rubber base】:Made from Natural rubber, this gaming mousepad will firmly grip your desktop, allowing you to enjoy the ultimate precision in the games you are most passionate about. It also comes with a texture that enhances this ability even further.
- 【Smooth and waterproof surface】: Micro-textured cloth surface, for extremely precise mouse control and a smooth movement. When liquid splashes on the gaming mouse pad, it forms water droplets and slides down. Will not delay your work or gameplay.
- 【Plug and play】: This mouse and keyboard pad is powered by USB, plug and play, no driver required. One button control light modes. Press one time to change the lighting mode, press twice to change the brightness, press and hold about 3 seconds turn ON/OFF.
Configure the web server to serve the directory and permit the VPS to connect over HTTPS. If you use a private certificate authority, install the appropriate CA certificate on the VPS rather than weakening TLS verification. Authentication, IP allow-lists, or a VPN can restrict access, but the repository URL still has to return metadata and packages to the DNF client.
Update metadata after changing packages
Whenever you add, replace, or remove an RPM, regenerate metadata and refresh client caches:
sudo createrepo_c --update /srv/repos/example/
sudo dnf clean all
sudo dnf makecache
--update reuses existing metadata where possible while incorporating the changed package set. On each client, dnf clean all removes cached repository data; dnf makecache downloads fresh metadata. CentOS image-building guidance specifically recommends clearing DNF caches after updating a local repository so stale metadata is not reused.
For a larger repository, generate metadata in a staging directory, validate it, and publish atomically (for example, by switching a symlink) so clients never observe a half-written repodata/ directory. Keep older package versions when your dependency or rollback policy requires them; metadata generation does not decide which versions your organization should retain.
The Tool Desk
Outbyte PC Repair FREEClear out junk files and repair common Windows errorsFree Scan →Outbyte Driver Updater FREEFix the driver behind crashes, sound loss and screen glitchesFind Drivers →Sign RPMs and repository metadata
Package signatures answer “who signed this RPM?” and checksums in repository metadata answer “did the downloaded file change?” Enable both the repository’s package verification and, where supported, metadata verification.
Configure package signature checking
Import the publisher’s public key on the client before strict verification, or let the gpgkey= URL identify it:
sudo rpm --import https://repo.example.invalid/RPM-GPG-KEY-example
sudo dnf repolist
Keep the private signing key off the VPS whenever possible. Store it in a restricted signing environment, limit who can use it, and document key rotation. The key URL must be reachable and must match the repository publisher; a key from an unrelated project is not a valid fix for a GPG error.
Rank #4
- 【Softer and More Comfortable】Vaydeer wrist rest has unique diamond pattern, which is the combination of softness and aesthetics. The materials of wrist rest are improved into higher quality memory foam and covered with silky smooth lycra. The computer wrist rest makes you as comfortable and cushiony as like rest your wrists on clouds.
- 【Ergonomic Wrist Saver】The wrist rests for keyboard and mouse comes with a 17.32×3.15×0.83 inch keyboard wrist pad and a 5.94×3.15×0.83 inch mouse wrist support. Based on ergonomic design, the unique concave shape is the perfect fit for your wrist joints. The wrist rest pad fits most computer keyboards and laptops, improve hand and wrist posture, release your wrist and arm stress.
- 【Non-Slip Rubber Bottom】Featuring an anti-skid silicone base on the bottom, this wrist keyboard support stays firmly in place on your desk, preventing the padding from sliding around, ensuring stable and consistent wrist support during extended computer sessions.
- 【Better Experience & Pain Relief】Our keyboard arm rest is beneficial to alleviate the soreness caused by direct contact and friction between your arm and a hard desk surface, reducing the risk of wrist fatigue or carpal tunnel. The soft texture of memory foam can evenly distribute the pressure around your wrists and provide good support with just enough give.
- 【Helpful in Multiple Scenarios】Whether you're working, studying, writing, typing, gaming, this keyboard and mouse rest combo is an essential accessory to add comfort and support to your hands and wrists. It’s also a great gift for men, women, family, friend, coworker, gamer, teacher, etc.
With gpgcheck=1, DNF rejects an unsigned or incorrectly signed RPM instead of silently installing it. Do not permanently “fix” a signature failure by setting gpgcheck=0; investigate the key, package provenance, and repository configuration instead.
Sign repository metadata
For stronger integrity, sign repomd.xml after generating metadata. Red Hat documents signing that file with GPG and enabling metadata checking with check_repogpg = true; CentOS’s package-delivery process likewise describes signing both RPMs and repomd.xml before publication. Use the exact metadata-signature option supported by the CentOS/DNF version on your client, and publish the corresponding public key through a trusted channel.
Sign after the final metadata generation step. If you add a package later and run createrepo_c --update, the metadata changes and the previous signature no longer describes the repository; regenerate and sign again before clients consume it.
Inspect, enable, and use repositories
Start with a complete listing and then narrow operations to the repository you are testing:
Crashes, No Sound, or Screen Glitches?
Random freezes, missing sound and display glitches usually trace back to one bad driver. Find and replace yours safely.Free scan · under a minuteWindows Errors? Fix Them Before They Spread
Repair common Windows errors and clear accumulated junk for a smoother, more stable PC - no reinstall needed.Free scan · no reinstallsudo dnf repolist
sudo dnf repolist --all
sudo dnf --disablerepo='*' --enablerepo=example list available
sudo dnf install package-name
sudo dnf update
The first command shows enabled repositories. repolist --all also shows disabled definitions, which helps find duplicate IDs or a file that was accidentally left disabled. The --disablerepo='*' --enablerepo=example pattern prevents another repository from satisfying dependencies during a test and confirms that the target source actually exposes the package.
Keep experimental repositories disabled by default. Enable one only for a planned transaction:
sudo dnf --enablerepo=example install package-name
After editing a .repo file, clear and rebuild metadata if DNF appears to be using old settings:
Best Value
- 【No Drill Mounted】Cable management tray can be assembled in as little as 3 minutes or less-simply. Side clips easily clampe the edge of desk, pass through the holes on the sides, and secure excess cables with baskets. Desk cable management supports inward or outward installation to meet your needs in different scenarios, and provides you with great convenience when collecting and organizing wires.
- 【Rubber Pad Protects Desk】Wire organizer under desk built-in soft rubber pads on the clamp protect your desk from scratches, so you will not damage your furniture or office.
- 【Sturdy and Beautiful】Cord management under desk is made of high-quality carbon steel and holds about 15 lbs. The wire basket has 2 holes on each side of the tray to enable your cables to pass freely. Cable baskets are suitable for desk thickness use from 0.4" to 2.4".
- 【Space Saving & Keep Organized】Desk cable management tray holds all your power cords, outlet strips, USB hubs and computer transformers hidden from your feet, and the data cables will not enter the vacuum cleaner to keep your desk clean and tidy. Desk wire organizer is also suitable for use in the kitchen and outdoors.
- 【Reduce Safety Risks】Cable tray under desk keeps all plugs away from your kids, no more worry about tripping. Using 2 holes wire tray saves extra space, helps you easily cabling and wire protection. The mesh design is not easy to accumulate dust, but avoids safety accidents caused by messy wires.
sudo dnf clean all
sudo dnf makecache
Use dnf config-manager --disable example to stop normal use, or edit enabled=0 when you need a persistent disabled state that is visible in the file.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
Choose a repository source deliberately
| Decision axis | What to verify | Why it matters |
|---|---|---|
| Release and architecture | The path and RPMs match the VPS’s CentOS release and $basearch. |
Metadata cannot make an incompatible binary safe to install. |
| Provenance and signatures | There is a documented publisher, trusted GPG key, gpgcheck=1, and, where available, signed repomd.xml. |
You can detect tampered or unauthorised packages. |
| Update cadence | Review when packages and metadata were last refreshed and how security fixes are announced. | An available repository can still be operationally stale. |
| Transport | HTTPS, or a documented mirror list/metalink with working certificates and reachability from the VPS. | Reliable transport reduces outages and interception risk. |
| Default enablement | Whether the source is enabled by default and whether individual transactions can opt in. | Disabled-by-default repositories reduce accidental package replacement. |
| Release package support | Whether the project maintains a release RPM that installs its .repo file and key. |
Maintained configuration is less error-prone than hand-edited URLs. |
A project’s official status matters as much as its URL. If documentation is marked archived or tells users not to follow its instructions on CentOS Stream, treat that as a stop signal and locate the project’s current repository guidance instead.
Troubleshoot repository failures methodically
DNF reports “No matching packages”
- Run
sudo dnf repolist --alland confirm the intended ID is enabled. - Test only that source with
sudo dnf --disablerepo='*' --enablerepo=example list available. - Open the configured
baseurland verify that it containsrepodata/, not just RPM files. - Check that
$releaseverand$basearchresolve to directories that actually exist on the server. - Run
sudo dnf clean all && sudo dnf makecacheafter correcting the path or publishing new metadata.
The repository URL fails or returns HTTP errors
Check DNS resolution, outbound firewall rules, proxy settings, TLS certificate validity, and the web server’s directory permissions. A 404 commonly means the release or architecture variable produced a path that the server does not publish. A 403 can indicate access controls that exclude the VPS. The repository must allow retrieval of both metadata and the RPM payloads.
GPG verification fails
- Read the error to identify whether the failing object is an RPM or repository metadata.
- Confirm that the key imported on the VPS is the publisher’s current key and that its fingerprint matches an independently trusted project announcement.
- Check that the
gpgkeyURL is reachable and that the repository file does not point to a key from another source. - If you control the repository, confirm every RPM was signed and that
repomd.xmlwas re-signed after the latest metadata update. - Do not leave
gpgcheck=0enabled as a workaround.
A newly uploaded RPM is missing
Copying a file into the published directory does not update metadata. Run createrepo_c --update on the repository host, publish the completed repodata/, then run dnf clean all and dnf makecache on the VPS. If the package still does not appear, inspect its architecture, release dependencies, and package name with rpm -qp; an incompatible RPM may be intentionally filtered out.
Dependencies or architecture do not resolve
Ensure that all required RPMs are present in enabled repositories and that they were built for the target CentOS release and architecture. A repository can have valid metadata while still lacking a dependency or offering a binary for the wrong platform. Avoid mixing repositories designed for different major releases unless the publisher explicitly documents that combination.
The repository contains unexpected or obsolete packages
Review the project’s current documentation, release notes, and repository status. Archived SIG instructions and old release packages may reference versions that are no longer maintained. Disable the source while investigating and use a maintained replacement rather than trusting a familiar URL.
Operational checklist
- Record the VPS release, architecture, repository ID, owner, and purpose.
- Store each custom definition in its own file under
/etc/yum.repos.d/; keep IDs unique. - Point
baseurlat a directory containingrepodata/. - Use HTTPS, a maintained mirror list, or a metalink where available.
- Keep
gpgcheck=1, verify the trusted key, and protect private signing keys. - For private content, regenerate metadata whenever RPMs change and refresh client caches.
- Leave experimental sources disabled and enable them only for a controlled transaction.
- Before upgrades, confirm that the repository is current for the VPS release and architecture.
Following those controls turns a repository from “a directory that contains RPMs” into a predictable package service: DNF can discover packages, verify their origin, resolve dependencies, and receive fresh metadata after each publication.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

