How to check if a partition is mounted or not with bash?


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting How to check if a partition is mounted or not with bash?
# 8  
Old 10-26-2010
using /proc/mounts would be the most accurate on a Linux system, since it gives the most up-to-date information even in a ro remount situation. There is a catch though, since modern Linux distributions mount by uuid for example and then that would no longer fly.

Code:
$ cat /proc/mounts
rootfs / rootfs rw 0 0
none /sys sysfs rw,nosuid,nodev,noexec,relatime 0 0
none /proc proc rw,nosuid,nodev,noexec,relatime 0 0
none /dev devtmpfs rw,relatime,size=504128k,nr_inodes=126032,mode=755 0 0
none /dev/pts devpts rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000 0 0
/dev/disk/by-uuid/e0ec44a0-e7a4-4ddb-9e3c-a0c7f0f2b5bd / ext4 rw,relatime,errors=remount-ro,barrier=1,data=ordered 0 0
[..]

# 9  
Old 10-26-2010
Quote:
Originally Posted by cola
Code:
df -h | grep <partition>
cat /proc/mounts | grep <partition>
cat /etc/mtab | grep <partition>

$? would be 0 if grep finds otherwise 1 if it doesn't find.
This is only because in all your cited examples "grep" is the last part of the pipeline and on most systems you get the exit status of the last executed program as the exit status of the pipeline. If your list would be very long and you would execute:

Code:
df -h | grep <partition> | more

you would get the exit status of "more" instead of the exit status of "grep". This is exactly what i told you: for every program you will have to look up the meaning of its various exit statuses in its man page. This is true for "grep" as well as "more" as for any other program.

Quote:
Originally Posted by Chubler_XL
Not true, a shell has it's on internal commands, and these can be used to process information.
ahh, yes: wake me up when you find an internal shell command for listing mounts.

Quote:
Originally Posted by Chubler_XL
For example the following bash script will check if a filesystem is mounted, by reading the /proc/mounts list:

Code:
#!/bin/bash
FS="$1"
while read line
do
    [[ "$line" =~ "$FS " ]] && echo "$FS is Mounted"
done < /proc/mounts

I am so sorry, I want to apologize: i want to apologize for not recognizing that the thread opener has a Linux system despite he never said so, so that your argument gains any value.

I want to apologize for saying something which is only true "in general" and maybe not for some obscure derivate of Unix. The script you provided as example is based on the existence of a "/proc" file system, which is simply not there in many Unix variants. It is also based on the existence of "/proc/mounts", which doesn't exist in almost any Unix derivate.

I foremost want to apologize for having confused the vast world of some specific Linux distribution (for which your code will probably work) and kernel version with the narrow, almost non-existent and certainly negligeable niche of all the other Unix products (in which your code won't work at all).

It was all my fault.

bakunin

Last edited by bakunin; 10-26-2010 at 08:25 AM..
# 10  
Old 10-26-2010
It does sound like linux -
anyway, consider
Code:
#linux
mount -l | grep -q [mountpoint] 
# some other flavors of unix
mount -P | grep -q [mountpoint]

This will return a status ($?) to check. The -l is the character ell.
# 11  
Old 10-26-2010
Quote:
Originally Posted by bakunin
I want to apologize for saying something which is only true "in general" and maybe not for some obscure derivate of Unix.
I've found that sarcasm is less effective than I expected it to be when I've used it, and certainly less appreciated.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Script to check if file systems are mounted

Hi I have the following piece of code, running on a solaris 10 O.S., that is not working for NFS file systems: for vol in `grep -E 'vxfs|ufs|nfs' /etc/vfstab | egrep -v '^#' | awk '{ print $3 }'` do if df -k $vol | grep $vol > /dev/null then outputOK "Filesystem: $vol mounted" else... (1 Reply)
Discussion started by: fretagi
1 Replies

2. Shell Programming and Scripting

Help with code to check if file systems are mounted

Hi I need to have a piece of code that check if all file systems are mounted or not. I have to pieces of information like the output of the bdfcommand, and the file /etc/fstab. The first is: bdf Filesystem kbytes used avail %used Mounted on /dev/vg00/lvol3 2097152 266656... (3 Replies)
Discussion started by: fretagi
3 Replies

3. Windows & DOS: Issues & Discussions

How to check if the folders in mounted on which partition?

Hi there, I am able to check which parition from Storage > Disk Management How is it possible to check if the folder is mounted on which partition. (1 Reply)
Discussion started by: alvinoo
1 Replies

4. Solaris

Check mounted filesystems

Hi, Please help me to tell How to check mounted filesystems for any inconsistency. Can I run fsck -m /dev/rdsk/cntndnsn for this? Thanks, (3 Replies)
Discussion started by: Manmohan Mishra
3 Replies

5. Shell Programming and Scripting

Check if NAS filesystem is mounted

Anyone know the best way to check and see if a NAS filesystem is mounted on a linux box. I have no idea where to start :wall:. (2 Replies)
Discussion started by: d3mon_spawn
2 Replies

6. Shell Programming and Scripting

bash script to check if mounted, and mount if not

I'd like to make a wrapper bash script that will make sure that an nfs mount is mounted before launching a program that depends on the mount being active. Basically: 1) Check to see if the mount is active 2) If it's not active, try to mount it 3) If it won't mount because the nfs server is... (3 Replies)
Discussion started by: graysky
3 Replies

7. Shell Programming and Scripting

How to display partition name on mounted on using this script

Hi All Guys.... root> df -k|grep /u0 /dev/vx/dsk/oradg/u02vol 12582912 8717924 3744252 70% /u02 /dev/vx/dsk/oradg/u01vol 8796160 5563610 3131556 64% /u01 /dev/vx/dsk/oradg/u04vol 10035200 1247888 8519534 13% /u04 /dev/vx/dsk/oradg/u03vol 12582912 2524060 9744542 21% ... (3 Replies)
Discussion started by: adzuanamir
3 Replies

8. Solaris

swap partition showing mounted in df -h

Dear All Anyone can help me what is the problem of swap partition? swap partition is showing mounted in df -h command output. Regards prakash (1 Reply)
Discussion started by: pshelke
1 Replies

9. UNIX for Dummies Questions & Answers

Solaris10:How to check where /usr are really mounted

How can I check which partition /usr are mounted on ? Usually this is mounted on root (/). If I want to move /usr to another partition, how do I do this ? BR Ludwig (1 Reply)
Discussion started by: ludwig
1 Replies

10. SCO

/ partition is mounted but not present in mount

Hello , I 've got a problem with the root partition on my SCO 5.0.5 . When I check the disk with df or mount , I can 't see the root filesystem . # mount /stand on /dev/boot read only on Tue Sep 05 16:13:51 2006 /home on /dev/home read/write on Tue Sep 05 16:14:41 2006 But , if I try... (3 Replies)
Discussion started by: npn35
3 Replies
Login or Register to Ask a Question