Force unmount??

387 views
Skip to first unread message

timo

unread,
Oct 8, 2012, 8:38:23 AM10/8/12
to puppet...@googlegroups.com
Is there any method of forcibly umounting an NFS mounted directory?

We have a test environment managed under puppet that is also our DR environment. In a DR scenario we'll be umounting all NFS shares from out test array and remounting to our DR array. 

However, as this is a test environment we have users logged on, so when Puppet attempts to unmount the test directories, it fails with "umount: /test/dir: device is busy" if I fuser against the /test/dir directory and kill the PID all is OK. 

I need a method of either forcibly umounting the array, or killing all PID's using the mounted directores so Puppet can unmount them. I'd like all this done from Puppet.

Any ideas? 


Jo Rhett

unread,
Oct 8, 2012, 3:18:33 PM10/8/12
to puppet...@googlegroups.com

On Oct 8, 2012, at 5:38 AM, timo wrote:
I need a method of either forcibly umounting the array, or killing all PID's using the mounted directores so Puppet can unmount them. I'd like all this done from Puppet.

Any ideas? 


-- 
Jo Rhett
Net Consonance : net philanthropy to improve open source and internet projects.



jcbollinger

unread,
Oct 8, 2012, 4:00:41 PM10/8/12
to puppet...@googlegroups.com

Jo's is probably the best available approach.

The main alternative I see would be to write and use a custom provider for the Mount resource type, but I'm not at all convinced that the cost/benefit on that would even come close to justifying it.


John

timo

unread,
Oct 11, 2012, 6:10:11 AM10/11/12
to puppet...@googlegroups.com
Thanks for the replies. 

I created a module and made it a 'requires' of mount.pp, The exec subscribes to a text file that holds the current environment (test/production) then kills any PID's 'onlyif' lsof -N returns a 0. So in the event of DR, puppet can unmount and remount without a problem. Dirty but it works.

Cheers,
Reply all
Reply to author
Forward
0 new messages