Bobcares

restorecond: Will not restore a file with more than one hard link

by | Mar 25, 2021

Stuck with restorecond: Will not restore a file with more than one hard link (/etc/resolv.conf) No such file or directory? We can help you.

Restore SELinux Context (restorecon) is a command that will reset the SELinux security context for files and directories to its default values. However, it only resets the type attribute of SELinux context.

Here at Bobcres, we often handle similar errors as apart of our Server Management Services. Today let’s see how our Support Engineers fix this issue for our customers.

When do we get ‘restorecond: Will not restore a file with more than one hard link’  in our logs

The Z (uppercase Z) option in the following command will display the SELinux context for a particular file.

# ls -lZ index.html
-rw-rw-r--. centos centos unconfined_u:object_r:user_home_t:s0 index.html

While using the restorecon command, it is not necessary to know the correct original security context for the file. Since restorecond is a daemon that watches for file creation and then sets the default SELinux file context it will figure that out automatically.

The following example will restore the security context of index.html to the proper value.

Here we have reset the type portion of the SELinux context to “httpd_sys_content_t” which is the correct type. Now, apache will be able to serve this file without any error.

# restorecon index.html
# ls -lZ index.html
-rw-rw-r--. centos centos unconfined_u:object_r:httpd_sys_content_t:s0 index.html

At times when we configure restorecond in the system we may end up with the following error message in /var/log/messages in SELinux enabled CentOS or RHEL server:

Mar 21 13:58:43 server restorecond: Will not restore a file with more than one hard link (/etc/resolv.conf) No such file or directory
Mar 21 16:14:51 server restorecond: Will not restore a file with more than one hard link (/etc/resolv.conf) No such file or directory
Mar 22 13:32:23 server restorecond: Will not restore a file with more than one hard link (/etc/resolv.conf) No such file or directory

Cause for this Error

This error occurs due to additional hard link to /etc/resolv.conf file. Under CentOS/RHEL/Fedora, the file /etc/sysconfig/networking/profiles/default/resolv.conf is hard linked with /etc/resolv.conf.

How to fix ‘restorecond: Will not restore a file with more than one hard link’

We can fix this error by resetting the hard link.

To find all hard links, enter the following command:

find / -xdev -samefile /etc/resolv.conf

Sample outputs:

/etc/sysconfig/networking/profiles/default/resolv.conf

This can also be done using the following commands:

# ls -i /etc/resolv.conf

45383698 /etc/resolv.conf

# find /etc/ -inum 45383698

/etc/sysconfig/networking/profiles/default/resolv.conf
/etc/resolv.conf

# lsof | grep /etc/resolv.conf

Alternatively, we can use the following commands:

# rm /etc/sysconfig/networking/profiles/default/resolv.conf
# restorecon /etc/resolv.conf
# ln /etc/resolv.conf /etc/sysconfig/networking/profiles/default/resolv.conf

[Need Assistance? We are available 24*7]

Conclusion

In short, we saw how our Support Engineers fix this ‘restorecond: Will not restore a file with more than one hard link ‘ error for our cutomers.

PREVENT YOUR SERVER FROM CRASHING!

Never again lose customers to poor server speed! Let us help you.

Our server experts will monitor & maintain your server 24/7 so that it remains lightning fast and secure.

GET STARTED

var google_conversion_label = "owonCMyG5nEQ0aD71QM";

0 Comments

Submit a Comment

Your email address will not be published. Required fields are marked *

Never again lose customers to poor
server speed! Let us help you.

Privacy Preference Center

Necessary

Necessary cookies help make a website usable by enabling basic functions like page navigation and access to secure areas of the website. The website cannot function properly without these cookies.

PHPSESSID - Preserves user session state across page requests.

gdpr[consent_types] - Used to store user consents.

gdpr[allowed_cookies] - Used to store user allowed cookies.

PHPSESSID, gdpr[consent_types], gdpr[allowed_cookies]
PHPSESSID
WHMCSpKDlPzh2chML

Statistics

Statistic cookies help website owners to understand how visitors interact with websites by collecting and reporting information anonymously.

_ga - Preserves user session state across page requests.

_gat - Used by Google Analytics to throttle request rate

_gid - Registers a unique ID that is used to generate statistical data on how you use the website.

smartlookCookie - Used to collect user device and location information of the site visitors to improve the websites User Experience.

_ga, _gat, _gid
_ga, _gat, _gid
smartlookCookie
_clck, _clsk, CLID, ANONCHK, MR, MUID, SM

Marketing

Marketing cookies are used to track visitors across websites. The intention is to display ads that are relevant and engaging for the individual user and thereby more valuable for publishers and third party advertisers.

IDE - Used by Google DoubleClick to register and report the website user's actions after viewing or clicking one of the advertiser's ads with the purpose of measuring the efficacy of an ad and to present targeted ads to the user.

test_cookie - Used to check if the user's browser supports cookies.

1P_JAR - Google cookie. These cookies are used to collect website statistics and track conversion rates.

NID - Registers a unique ID that identifies a returning user's device. The ID is used for serving ads that are most relevant to the user.

DV - Google ad personalisation

_reb2bgeo - The visitor's geographical location

_reb2bloaded - Whether or not the script loaded for the visitor

_reb2bref - The referring URL for the visit

_reb2bsessionID - The visitor's RB2B session ID

_reb2buid - The visitor's RB2B user ID

IDE, test_cookie, 1P_JAR, NID, DV, NID
IDE, test_cookie
1P_JAR, NID, DV
NID
hblid
_reb2bgeo, _reb2bloaded, _reb2bref, _reb2bsessionID, _reb2buid

Security

These are essential site cookies, used by the google reCAPTCHA. These cookies use an unique identifier to verify if a visitor is human or a bot.

SID, APISID, HSID, NID, PREF
SID, APISID, HSID, NID, PREF