Description of problem:
We are getting this log warning:
quota_nld: Failed to find tty of user 0 to report warning to.
over and over again in our logs on rhel 6.1 + updates
Version-Release number of selected component (if applicable):
this has a small fix provided by you for our use of nss_db
We don't know how to reproduce it, we'd like it to stop or at least be explained.
This request was evaluated by Red Hat Product Management for
inclusion in the current release of Red Hat Enterprise Linux.
Because the affected component is not scheduled to be updated
in the current release, Red Hat is unfortunately unable to
address this request at this time. Red Hat invites you to
ask your support representative to propose this request, if
appropriate and relevant, in the next release of Red Hat
Enterprise Linux. If you would like it considered as an
exception in the current release, please ask your support
If your build applies patch from bug #704216 (the one-liner), then the patch could not have impact on quota_nld executable as it modifies edquota.c only that is not linked to quota_nld. Can you reproduce this bug with vanilla RHEL-6.1 quota package?
I'm not able to reproduce this bug in RHEL-6.2. I will check RHEL-6.1. Note both distributions contain the same quota version.
Do you have some file system where quota limits are exceeded for root user? quota_nld daemon prints warning at time of excessing limit to terminal the user in question is logged on.
The daemon obviously cannot find terminal root is logged in (utmp database is searched for this purpose). You can stop the daemon (service quota_nld stop), if do not need quota excess warnings at all. Or if you want to get warnings through D-bus yet, you can disable the warnings to console by editing /etc/sysconf/quota_nld.
I achieve to reproduce it. It's not caused by the patch.
This happens if limits exceeds for user having no interactive session. More precisely if utmp database is missing records for given user.
1. Enable quotas on a file system and set limit for a user.
2. Start quota_nld service.
3. Log in as the user and start a screen session (make sure no other sessions
for that user exist).
4. Run a delayed command that exceeds the limit. E.g:
# sleep 3; dd if=/dev/zero of=file bs=1k count=200
5. Detach from session and log out before the command takes effect (3 seconds
in this example).
You will get the error message in system log because quota_nld daemon could not find a record for the user in /var/log/wtmp.
Created attachment 518705 [details]
This patch suppress writing this one error message into syslog.
Patch submitted to upstream for review (https://sourceforge.net/tracker/?func=detail&aid=3393151&group_id=18136&atid=318136).
Created attachment 518805 [details]
The patch has been accepted by upstream in slightly more commented form.
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.
For information on the advisory, and where to find the updated
files, follow the link below.
If the solution does not work for you, open a new bug report.