Re: Detecting ro Filesystem
Le Dimanche 04 Mai 2003 14:57, John Hasler a écrit :
> > ...the following excerpt (which requires linking against liblkid and
> > libext2fs libraries) should do the trick.
>
> Thank you. Unfortunately, I need to do this from a sh script.
You may try this :
IsOnROFS ()
#
# IsOnROFS( $file )
# Returns 0 if the filesystem onto which specified file
# is located is read-only
#
{
# First argument is a file you know to live on the checked filesystem
file_on_fs=$1
# The df command will give us the related filesystem (or label)
filesystem=$(df "$file_on_fs" | awk 'NR==2 {print $1}')
# The mount command will tell us how the FS is mounted over the system
result=$(mount -l | awk -v fs="$fs" '$1==fs { if($NF~/^\(rw,/) {print 1} else
{print 0} }')
return $result
}
I guess it should work in most cases (but not tried with labeled FSs).
Hope this help ...
Sébastien
--
BOFH excuse #238:
You did wha... oh _dear_....
Reply to: