Problem in Change Password for user

Dears,
I have a problem When I tried to change password for user in HP unix it gives me this error any one can help to solve this ?

bmcaddm@nmssrv05: /home/bmcaddm # passwd
Changing password for bmcaddm
Old password:
New password:
Re-enter new password:
vxfs: msgcnt 810034 mesg 001: V-2-1: vx_nospace - /dev/root file system full (1 block extent)Unexpected failure. Password file unchanged. Recommend running pwck command.

--
bmcaddm@nmssrv05: /home/bmcaddm # pwck
[/etc/passwd] emc:nxUcwGOmO7156:110:20::/home/emc:/sbin/sh
Login directory not found
[/etc/passwd] mds:J/u9Jvu5RCZTc:111:20::/home/mds:/sbin/sh
Login directory not found
[/etc/passwd] ovwebusr:*:112:107:HP OpenView TomcatB Servlet Container:/home/ovwebusr:/usr/bin/false
Login directory not found
[/etc/passwd] tftp:*:114:108:Trivial FTP user:/home/tftp:/usr/bin/false
Login directory not found
bmcaddm@nmssrv05: /home/bmcaddm #

Your / file system seems to be full. Check with bdf / command and if yes, you MUST make some free space ASAP. Then try again. check if /home is part of / so you could move users files/directories somewhere else and make some quick free space.

If /tmp is on the / filesystem, it is also a good place to look for files that can be removed.

After you get some space on / , you can clear the pwck complaints with the following commands (run with root privileges:

mkdir /home/emc /home/mds /home/ovwebusr /home/tftp
chmod 755 /home/emc /home/mds /home/ovwebusr /home/tftp
chown emc:20 /home/emc
chown mds:20 /home/mds
chown ovwebusr:107 /home/ovwebusr
chown tftp:108 /home/tftp

You may also be able to search out big stuff with this:-

du -kx / | sort -n

It will list all directories on that filesystem (there may be lots of them) and sort them in ascending size order, so the last lines of output are the targets to examine first. You will see the subdirectories higher up and they all get counted into the parent's total. When you find a suspect area, change directory to it, then:-

du -kx . | sort -n

to check for large sub-directories and then find the largest files in this directory with:-

ls -la|sort -nk 5

Of course, this is assuming that there are large files to deal with. You could have many thousands of small files in /tmp or personal home directories if these are part of the root filesystem.

I hope that these pointers help, but BEWARE - don't just delete 'some large stuff' if you are not sure it can be removed. You may break your server, perhaps not now, but on next boot.

Good luck,
Robin

Note that if the directory sort uses for temp files in on your full filesystem, the pipelines rbatte1 suggested may fail due to lack of space. If that is a problem for you, you could change:

sort

in any of those pipelines to:

TMPDIR=/fs/directory sort

where fs is the mount point of a filesystem that has some available space and directory is a directory on that filesystem where you would like sort to place its temporary files while sorting your data.

1 Like

Another method is to list recently modified files

find / -xdev -type f -size +100

Before you rm a file, check it with fuser. No output means not in use and safe to delete.

I'm not sure that the code from MadeInGermany does actually do this. To me, it looks like it finds files over 100 blocks (i.e. 100 x 512 bytes = 51,200 bytes) Searching by modification time uses the -mtime flag, more like this:-

find / -xdev -type f ! -mtime +5

.... to find files that are "not more than five days since last update"

When using fuser, I would caution you that a file not being in use does not necessarily mean that it is safe to delete. If you remove /usr/bin/rm because it's not in use, then you start getting into real trouble. There are many others that you should not delete too. I would add that your should know that you don't need a file before you remove it. Of course, OS critical files should not have been recently updated, so that gives you some protection there.

If there are some large ones that you don't recognise, post a (full path) list of them in CODE tags and we'll see if there is anything standard that you need to keep. Also be aware that database files will always be showing as newly updated. Hopefully, they will show as in-use, but it depends how your applications work.

Robin

1 Like

Oh dear, yes, I was so happy about the -size that I forgot the -mtime:

find / -xdev -type f -size +100 -mtime -7

...... and I forgot the -size definition. :o

Robin