Pacman transaction error - raspberry-pi

Today I installed Arch Linux onto my Raspberry Pi and as one of my first steps I tried to install some new packages. However, I always get the same error if I try to install a package:
error: failed to commit transaction (wrong or NULL argument passed)
Errors occurred, no packages were upgraded.
I checked some other repository servers, but it still does not work. Here is my current mirrorlist:
#
# Arch Linux ARM repository mirrorlist
# Generated on 2013-06-13
#
## Geo-IP based mirror selection and load balancing
# Server = http://mirror.archlinuxarm.org/armv6h/$repo
## Berlin
Server = http://de.mirror.archlinuxarm.org/armv6h/$repo
Then I tried to clear my cache:
pacman -Sc
rm /var/cache/pacman/pkg/*.part
pacman -Syyu
It did not work! Any ideas?

First, make sure your system is up-to-date with "sudo pacman -Syu" Then you can try selecting new mirrors and "sudo pacman -Syy" to refresh your mirrorlist. It's good to have a main mirror, and a few backups.
Try checking the wiki:
Mirrors - ArchWiki
Also check Mirrors status page:
Mirror Status
Just as a side note, I couldn't find your mirror in the list of current mirrors, so there could be your problem.
If all else fails, I'd take it to the arch forums, but just a warning, you're going to have to provide a lot more information, packages you're trying to install, and possible the pacman jorunal error messages, etc...

Try this in your terminal
sudo pacman-mirrors --country all --api --protocols all --set-branch stable && sudo pacman -Syyu

Related

The db2prereqcheck utility could not find the library file libnuma.so.1. on ubi7/ubi:latest docker image

i have a problem to install numactl-libs (or libnuma.so.1) on a ubi7/ubi:latest Docker image to run the db2 installation.
I have built a Docker image for db2 and wanted to test whether the DB2 installation runs successfully.
However, I get the following error message:
Requirement not matched for DB2 database "Server" . Version: "11.1.4.6".
Summary of prerequisites that are not met on the current system:
DBT3609E The db2prereqcheck utility could not find the library file libnuma.so.1.
The image has ubi7/ubi:latest as base image and the following libraries are also installed as follows:
RUN yum install -y libaio numactl-libs libpam.so.0 binutils gcc gcc-c++ ksh numactl && yum clean all
All libraries are successfully installed except numactl-libs (or libnuma.so.1?).
Note: a manual installation of numactl-libs worked without problems and thus the DB2 installation was successful:
ADD http://mirror.centos.org/centos/7/os/x86_64/Packages/numactl-libs-2.0.12-5.el7.x86_64.rpm numactl.rpm
RUN rpm -i numactl.rpm
However, I would like the installation of numactl-libs to be done automatically with e.g. the command yum install -y numactl-libs or another equivalent command.
Unfortunately, an attempt with the command yum install -y libnuma.so.1 or yum install -y libnuma.so.* did not change anything and the same error message was displayed.
Can you please help me? I would be very grateful
Note: in my case a 64-bit version is used.
Update:
Unfortunately even trying to install libnuma-dev and libnuma1 has not changed anything and the error message is still the same .
The output of yum provides libnuma.so.1 is:
Loaded plugins: ovl, product-id, search-disabled-repos,
subscription-manager This system is not registered with an
entitlement server. You can use subscription-manager to register.
No matches found
It seems that the problem is that numactl-libs cannot be installed:
The output of yum install numactl-libs is:
Loaded plugins: ovl, product-id, search-disabled-repos, subscription-manager.
This system is not registered with an entitlement server. You can use subscription-manager to register.
No package numactl-libs available.
Solution:
The problem was fixed and numactl-libs could finally be installed:
After I created a Red Hat user account and registered and subscribed to a system for the Red Hat Customer Portal with Red Hat Subscription Manager, numactl-libs installed without any problems.
To register and subscribe to a system for the Red Hat Customer Portal with Red Hat Subscription Manager.
See the following link: (https://access.redhat.com/solutions/253273)
I added the following line in my Dockerfile before the command yum install numactl-libs:
subscription-manager register --username=[USER_NAME] --password=[PASSWORD] --auto-attach
After these steps the DB2 installation ran without problems.
Thank you very much for your tips and help!

Couldn't open file /packages/repodata/repomd.xml

I am using Redhat Linux server and trying to install the MongoDB on it.
I am following steps given in the link: https://docs.mongodb.com/manual/tutorial/install-mongodb-on-red-hat/
Step 1: Create a /etc/yum.repos.d/mongodb-org-4.0.repo file so that you can install MongoDB directly, using yum.
sudo nano /etc/yum.repos.d/mongodb-org-4.0.repo
Step 2: Copy and paste below code in the newly created file.
[mongodb-org-4.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.0.asc
Step 3: To install a specific release of MongoDB, specify each component package individually and append the version number to the package name, as in the following example:
sudo yum install -y mongodb-org
After all this I am getting an error given below:
Loaded plugins: langpacks, product-id, search-disabled-repos, subscription-manager
file:///packages/repodata/repomd.xml: [Errno 14] curl#37 - "Couldn't open file /packages/repodata/repomd.xml"
Trying other mirror.`
One of the configured repositories failed (local),
and yum doesn't have enough cached data to continue. At this point the only
safe thing yum can do is fail. There are a few ways to work "fix" this:`
1. Contact the upstream for the repository and get them to fix the problem.
2. Reconfigure the baseurl/etc. for the repository, to point to a working
upstream. This is most often useful if you are using a newer
distribution release than is supported by the repository (and the
packages for the previous distribution release still work).
3. Run the command with the repository temporarily disabled
yum --disablerepo=localrepo ...
4. Disable the repository permanently, so yum won't use it by default. Yum
will then just ignore the repository until you permanently enable it
again or use --enablerepo for temporary usage:
yum-config-manager --disable localrepo
or
subscription-manager repos --disable=localrepo
5. Configure the failing repository to be skipped, if it is unavailable.
Note that yum will try to contact the repo. when it runs most commands,
so will have to try and fail each time (and thus. yum will be be much
slower). If it is a very temporary problem though, this is often a nice
compromise:
yum-config-manager --save --setopt=localrepo.skip_if_unavailable=true
failure: repodata/repomd.xml from localrepo: [Errno 256] No more mirrors to try.
file:///packages/repodata/repomd.xml: [Errno 14] curl#37 - "Couldn't open file /packages/repodata/repomd.xml"
Server OS
NAME="Red Hat Enterprise Linux Server"
VERSION="7.3 (Maipo)"
ID="rhel"
ID_LIKE="fedora"
VERSION_ID="7.3"
PRETTY_NAME="Red Hat Enterprise Linux"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:redhat:enterprise_linux:7.3:GA:server"
HOME_URL="https://www.redhat.com/"
BUG_REPORT_URL="https://bugzilla.redhat.com/"
REDHAT_BUGZILLA_PRODUCT="Red Hat Enterprise Linux 7"
REDHAT_BUGZILLA_PRODUCT_VERSION=7.3
REDHAT_SUPPORT_PRODUCT="Red Hat Enterprise Linux"
REDHAT_SUPPORT_PRODUCT_VERSION="7.3"
I already followed steps below but these are not working in my case:
sudo rm -rf /etc/yum.repos.d/mongodb-org-4.0.repo
sudo yum clean all
How could i resolve this error?
Based on your error message it looks like you had a nameserver problem, which can involve a variety of solutions as this answer from redhat.com describes. My mongodb-org-4.0.repo file looks just like yours except with version 4.4 and everything worked fine. Well not at first that's how I found this post, but my problem was a blank space I accidentally inserted at the end of the mongodb-org-4.4.repo file.
I found this Unix & Linux Stack Exchange post with some possible fixes, one of which is updating to the latest CentOS. This ServerFault post also had an Errno 14 error message like you're seeing, but this solution was to disable SELinux.
you should check with baseurl in /etc/yum.repos.d/mongodb-org-4.0.repo file. we can also change the releaseserver version in baseurl.
Here is my /etc/yum.repos.d/mongodb-org-4.0.repo file
[mongodb-org-4.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/7/mongodb-org/4.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.0.asc
It works for me.

MongoDB php7 driver installation

I'm working on an Ubuntu 16 server and I can't seem to get the mongodb driver for php 7 to work. I installed it successfully on my xampp on my windows machine but Ubuntu and php7 seemingly have vast differences.
I did try to install it via pecl install mongodb and used composer to put in the dependencies but it still does not work. I'm using the same php file from my windows Xampp and when I access the page it throws a 500 status code.
Could someone provide a definitive walkthrough on how to install this driver and maybe also how to revert any changes I made using composer and pecl?
Cool even I tried with pecl but didn't work as expected. It work with pecl7 Also, I received this warning along with error, WARNING: "pecl/mongo" is deprecated in favor of "channel:///mongodb" pecl/mongo requires PHP (version >= 5.3.0, version <= 5.99.99), installed version is 7.1.8. Also, got 500 Internal server error.
Before that MongoDB php7 driver, I needed the memcache and getting phphize error that I solved using this repo. Then finally I use this low level PHP driver for MongoDB.
$ git clone https://github.com/mongodb/mongo-php-driver.git
$ cd mongo-php-driver
$ git submodule sync && git submodule update --init
$ /usr/bin/phpize
$ ./configure
$ make all -j 5
$ sudo make install
You can confirm from the output that mongodb.so driver is installed.
;;;;;;;;;;;;;;;;;;;
; Module Settings ;
;;;;;;;;;;;;;;;;;;;
extension=mongodb.so
Then only step remaining is make it available in your respective path. You can check your extensions_dir in php.ini with the following command,
$ php -i | grep extension_dir
extension_dir => /usr/lib64/php/7.0/modules => /usr/lib64/php/7.0/modules
And, I can verify that mongodb.so is present into the above directory. Then reload the composer and you are good to go ! Hope this helps as it work for me.

centos yum fails installing anything or updating system

I am trying to install a package on CentOS, but it throws error when I run the "yum" command. The internet connection is working fine.
I try to yum clean all but problem persist.
Error:
[root#dcos-master3 ~]# yum install ntp
Loaded plugins: fastestmirror
One of the configured repositories failed (Unknown),
and yum doesn't have enough cached data to continue. At this point the only
safe thing yum can do is fail. There are a few ways to work "fix" this:
1. Contact the upstream for the repository and get them to fix the problem.
2. Reconfigure the baseurl/etc. for the repository, to point to a working
upstream. This is most often useful if you are using a newer
distribution release than is supported by the repository (and the
packages for the previous distribution release still work).
3. Run the command with the repository temporarily disabled
yum --disablerepo=<repoid> ...
4. Disable the repository permanently, so yum won't use it by default. Yum
will then just ignore the repository until you permanently enable it
again or use --enablerepo for temporary usage:
yum-config-manager --disable <repoid>
or
subscription-manager repos --disable=<repoid>
5. Configure the failing repository to be skipped, if it is unavailable.
Note that yum will try to contact the repo. when it runs most commands,
so will have to try and fail each time (and thus. yum will be be much
slower). If it is a very temporary problem though, this is often a nice
compromise:
yum-config-manager --save --setopt=<repoid>.skip_if_unavailable=true
Cannot find a valid baseurl for repo: base/$releasever/x86_64
My yum repolist is the next:
[root#dcos-master3 ~]# yum repolist list
Loaded plugins: fastestmirror
https://yum.dockerproject.org/repo/main/centos/%24releasever/repodata/repomd.xml: [Errno 14] HTTPS Error 403 - Forbidden
Trying other mirror.
To address this issue please refer to the below knowledge base article
https://access.redhat.com/solutions/69319
If above article doesn't help to resolve this issue please create a bug on https://bugs.centos.org/
repolist: 0
If I list the repolist:
[root#dcos-master3 ~]# yum repolist
Loaded plugins: fastestmirror
https://yum.dockerproject.org/repo/main/centos/%24releasever/repodata/repomd.xml: [Errno 14] HTTPS Error 403 - Forbidden
Trying other mirror.
To address this issue please refer to the below knowledge base article
https://access.redhat.com/solutions/69319
If above article doesn't help to resolve this issue please create a bug on https://bugs.centos.org/
repo id repo name status
base/$releasever/x86_64 CentOS-$releasever - Base 0
dockerrepo/$releasever Docker Repository 0
extras/$releasever/x86_64 CentOS-$releasever - Extras 0
updates/$releasever/x86_64 CentOS-$releasever - Updates 0
repolist: 0
BEFORE TRYING ANY OF THIS, HAVE A BACKUP OF YOUR MACHINE, YOU COULD DAMAGE YOUR OS MORE/COMPLETELY
It seems that your yum variable $releasever is somehow corrupt,
it usually is caused by missing centos-release package on the machine for some obscure reasons.
You can check if you have the package by:
rpm -qi centos-release
You will probably see:
"package centos-release is not installed"
First find out the exact centos version that you have by executing as root:
cat /etc/redhat-release
You will see something like this:
CentOS Linux release 7.3.1611 (Core)
You can fetch the centos-release package from repo by:
wget http://vault.centos.org/centos/7.3.1611/updates/x86_64/Packages/centos-release-7-3.1611.el7.centos.2.5.x86_64.rpm
Now run reinstall centos-release package via rpm:
sudo rpm -Uvh --replacepkgs centos-release-7-3.1611.el7.centos.2.5.x86_64.rpm
As next you can try to install something with yum and you might get:
[root#dcos-master3 ikerlan]# sudo yum install wget
error: db5 error(-30969) from dbenv->open: BDB0091 DB_VERSION_MISMATCH: Database environment version mismatch
error: cannot open Packages index using db5 - (-30969)
error: cannot open Packages database in /var/lib/rpm
CRITICAL:yum.main:
Error: rpmdb open failed
Now you can try to reboot the machine or try to use the following command to rebuild the rpm db:
rpm --rebuilddb
I came across the same issue while downloading some packages in centos 7. After days of search, I found the solution:
Go to the yum repo directory.
cd /etc/yum.repos.d.
Make a copy of the CentOS-Base.repo file.
cp CentOS-Base.repo CentOS-Base.repo.old
Edit the CentOS-Base.repo file. Comment mirrorlist and uncomment baseurl.
vi CentOS-Base.repo
[base]
name=CentOS-$releasever - Base
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os&infra=$infra
baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
Now when you use yum, do the following.
sudo yum --disablerepo=* --enablerepo=base install httpd
Likewise for yum update.
sudo yum --disablerepo=* --enablerepo=base install httpd
It should work now.
I ran into this problem when attempting to install MariaDB on CentOS 7. I was super frustrated and after much searching found the answer at this link.
Here is what fixed this problem for me. Run as root.
# yum --disablerepo "*" --enablerepo epel install [package]
# yum clean all
"epel" can be whatever repo you like, but this one worked for me. Place [package] in the command just as written, not what package you are trying to install.
After you run the above, exit root and run whatever install you were attempting before encountering the error.
I noticed that in the failing url, your $releasever is %24releasever, but it should be 7 or 7.14.xx. Please check your yum config file at /etc/yum/var, or search in every .repo file, to see what is its value. It may be corrupted.
See Red Hat documentation for more information about how to set these variables.
https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/6/html/deployment_guide/sec-using_yum_variables
yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm -y
yum -y install yum-utils
yum-config-manager --enable remi-php74
Then proceed to your installation/updates/etc
Always make sure NAT is active on your centos7. Specially when there is a VMnet2 for host. Because sometimes VMNet2 can be active instead of NAT and because of that you will not be able to connect to the internet through centos7. This is just a one reason for getting that error.

Cannot install uv4l raspicam

I am having a problem installing the uv4l raspicam on my Raspberry Pi 2. I have done everything multiple times according to the instructions in http://www.linux-projects.org/modules/sections/index.php?op=viewarticle&artid=14 and search the web over and over but no solutions.
For me it seems that the first instruction for saving the key goes ok, although I don't know how to verify it. If I check apt-key list, I don't know what there should be..?
After I have added the line to the sources.list and I try to perform apt-get update, it says:
Failed to fetch http://www.linux-projects.org/listing/uv4l_repo/raspbian/dists/jessie/main/binary-armhf/Packages 404 Not Found
I tried to put both wheezy and jessie ending to the sources.list, and even updated my raspbian version in between, because I couldn't get it working but it didn't help.
Failed to fetch http://www.linux-projects.org/listing/uv4l_repo/raspbian/dists/wheezy/main/binary-armhf/Packages 404 Not Found
And after trying to update it was vain to even try further because the install command fails as well:
E: Unable to locate package uv4l
E: Unable to locate package uv4l-raspicam
Any ideas what I am missing??
Thanks!
The OP seems that simply has a typo problem, but IMO the people that arrives here is trying to solve the Unable to locate package uv4l when they run:
sudo apt-get install uv4l
So I'll try to give a more detailed steps on how to solve this problem.
First install the key for the repository where uv4l is located, to do so run:
wget http://www.linux-projects.org/listing/uv4l_repo/lrkey.asc && sudo apt-key add ./lrkey.asc
Then edit the /etc/apt/sources.list and add this repository at the end of the file:
deb http://www.linux-projects.org/listing/uv4l_repo/raspbian/ wheezy main
Finally update the packages list:
sudo apt-get update
And now you can correctly download the uv4l.
sudo apt-get install uv4l
And how stupid can one be...
Remember to write everything correctly raspbian NOT raspian...