Fedora 29 安装Neo4j失败求助:repo加载失败且找不到安装包
Hey there, let's get your Neo4j up and running on Fedora 29 smoothly. The errors you're facing—failed loading '/etc/yum.repos.d/neo4j.repo' and No match for argument: neo4j—are caused by either a misconfigured repository file or incorrect permissions on it. Here's a step-by-step solution:
Step 1: Remove the Problematic Repo File
First, let's get rid of the faulty repo file you created earlier to avoid conflicts:
sudo rm /etc/yum.repos.d/neo4j.repo
Step 2: Create a Correct Neo4j Repository Configuration
Fedora 29 is compatible with RHEL 7-based package sources, so we'll use the official Neo4j repo tailored for this ecosystem. Open a new repo file with your preferred editor (we'll use nano here):
sudo nano /etc/yum.repos.d/neo4j.repo
Paste the following configuration into the file:
[neo4j] name=Neo4j Yum Repository baseurl=https://yum.neo4j.com/stable enabled=1 gpgcheck=1 gpgkey=https://debian.neo4j.com/neotechnology.gpg.key
Save and exit the editor (for nano, press Ctrl+O, then Enter, then Ctrl+X).
Step 3: Set Proper Permissions for the Repo File
Yum/Dnf skips repo files with overly permissive settings, which is likely why your original file failed to load. Set the standard, secure permissions:
sudo chmod 644 /etc/yum.repos.d/neo4j.repo sudo chown root:root /etc/yum.repos.d/neo4j.repo
This sets read/write access for the root user and read-only access for all other users—exactly what Yum expects.
Step 4: Refresh Package Cache and Install Neo4j
First, update the package metadata to recognize the new repo:
sudo dnf makecache
Then install Neo4j (you can use yum instead of dnf if you prefer, as they're compatible on Fedora 29):
sudo dnf install neo4j
Step 5: Verify Installation and Start the Service
Once installation completes, start the Neo4j service and set it to run on boot:
sudo systemctl start neo4j sudo systemctl enable neo4j
Check if the service is running properly:
sudo systemctl status neo4j
You should see an "active (running)" status if everything went well.
Note on Neo4j Versions
Fedora 29 uses an older version of Java (OpenJDK 11 is the default), which is compatible with Neo4j 4.x series. If you need a specific version (e.g., 4.4 LTS), modify the baseurl in the repo file to https://yum.neo4j.com/4.4 instead of stable. Neo4j 5.x requires Java 17+, which isn't readily available on Fedora 29, so stick to 4.x for best compatibility.
内容的提问来源于stack exchange,提问作者harshvardhan

