问题:Linux下共享Window文件夹

mount -t cifs -o username=administrator,password=xxxxx //192.168.11.17/Data/ /mnt/databak/之后想卸载挂载目录,使用umount /mnt/databak卸载挂载点时,会遇到“device is busy”提示,这时fuser就能查出谁在使用这个资源;当然umount –lf  [挂载点] 也可以强制卸载。

解决使用fuser -m -v /mnt/databak/看哪个用户,哪个进程占用此设备,再用fuser -m -v-k /mnt/databak/杀掉该进程

一、mount命令

1.功能:文件挂载

2.格式:mount [-参数] [设备名称] [挂载点]

3.常用选项:

-a :安装在/etc/fstab文件中类出的所有文件系统。
-f :伪装mount,作出检查设备和目录的样子,但并不真正挂载文件系统。
-n :不把安装记录在/etc/mtab 文件中。
-r :”将文件系统安装为只读。
-v :详细显示安装信息。
-w:将文件系统安装为可写,为命令默认情况。
-t <文件系统类型> :指定设备的文件系统类型,常见的有:
   ext2 是linux目前常用的文件系统
   msdos MS-DOS的fat,就是fat16
   vfat windows98常用的fat32
   nfs 网络文件系统
   iso9660 CD-ROM光盘标准文件系统
   ntfs windows NT/2000/XP的文件系统
   auto 自动检测文件系统
-o <选项> :指定挂载文件系统时的选项,有些也可写到在 /etc/fstab 中。常用的有:
   defaults 使用所有选项的默认值(auto、nouser、rw、suid)
   auto/noauto 允许/不允许以 –a选项进行安装
   dev/nodev 对/不对文件系统上的特殊设备进行解释
   exec/noexec 允许/不允许执行二进制代码
   suid/nosuid 确认/不确认suid和sgid位
   user/nouser 允许/不允许一般用户挂载
   codepage=XXX 代码页
   iocharset=XXX 字符集
   ro 以只读方式挂载
   rw 以读写方式挂载
   remount 重新安装已经安装了的文件系统
   loop 挂载“回旋设备”以及“ISO镜像文件”

二、umount命令

1.功能:

umount命令用于卸载已经加载的文件系统。利用设备名或挂载点都能umount文件系统,不过最好还是通过挂载点卸载,以免使用绑定挂载(一个设备,多个挂载点)时产生混乱。

来自: http://man.linuxde.net/umount
umount命令用于卸载已经加载的文件系统。利用设备名或挂载点都能umount文件系统,不过最好还是通过挂载点卸载,以免使用绑定挂载(一个设备,多个挂载点)时产生混乱

来自: http://man.linuxde.net/umount
umount命令用于卸载已经加载的文件系统。利用设备名或挂载点都能umount文件系统,不过最好还是通过挂载点卸载,以免使用绑定挂载(一个设备,多个挂载点)时产生混乱

来自: http://man.linuxde.net/umount
umount命令用于卸载已经加载的文件系统。利用设备名或挂载点都能umount文件系统,不过最好还是通过挂载点卸载,以免使用绑定挂载(一个设备,多个挂载点)时产生混乱。

来自: http://man.linuxde.net/umount
用于卸载已经加载的文件系统

2.格式:

umount(选项)(参数)

来自: http://man.linuxde.net/umount
umount (选项) (参数)

3.常用选项

-a:卸除/etc/mtab中记录的所有文件系统; -h:显示帮助; -n:卸除时不要将信息存入/etc/mtab文件中; -r:若无法成功卸除,则尝试以只读的方式重新挂入文件系统; -t<文件系统类型>:仅卸除选项中所指定的文件系统; -v:执行时显示详细的信息; -V:显示版本信息。

来自: http://man.linuxde.net/umount
-a:卸载/etc/mtab中记录的所有文件系统

-h:显示帮助

-n:卸载时不要将信息存入/etc/mtab系统中

-r:如果无法卸载,则尝试以只读的方式重新挂入文件系统

-t<文件系统类型>:仅卸除选项中所指定的文件系统

-v:执行时显示详细的信息

-V:显示版本号


三、fuser命令

1.功能:fuser 可以显示出当前哪个程序在使用磁盘上的某个文件、挂载点、甚至网络端口,并给出程序进程的详细信息。

2.常用选项:

-c :和-m一样,用于POSIX兼容。
-k :杀掉访问文件的进程。如果没有指定-signal就会发送SIGKILL信号。结合 –signal

-signal: 使用指定的信号,而不是用SIGKILL来杀掉进程。可以通过名称或者号码来表示信号(例如-HUP,-1),这个选项要和-k一起使用,否则会被忽略。

-l :列出所有已知的信号名称。
-i :杀掉进程之前询问用户,如果没有-k这个选项会被忽略。
-m  name: 指定一个挂载文件系统上的文件或者被挂载的块设备(名称name)。这样所有访问这个文件或者文件系统的进程都会被列出来。如果指定的是一个目录会自动转换成"name/",并使用所有挂载在那个目录下面的文件系统。
-n space :指定一个不同的命名空间(space).这里支持不同的空间文件(文件名,此处默认)、tcp(本地tcp端口)、udp(本地udp端口)。对于端口,可以指定端口号或者名称,如果不会引起歧义那么可以使用简单表示的形式,例如:name/space (即形如:80/tcp之类的表示)。
-s :静默模式,这时候-u,-v会被忽略。-a不能和-s一起使用。 
-u :在每个PID后面添加进程拥有者的用户名称。
-v :详细模式。输出似ps命令的输出,包含PID,USER,COMMAND等许多域,如果是内核访问的那么PID为kernel.

3.使用示例:

1)运行下面命令看一下哪个用户哪个进程占用着此设备

fuser -m -v /mnt/databak/

2)运行下面命令杀掉占用此设备的进程
fuser -m -v -k /mnt/databak/
或者fuser -m -v -k -i  /mnt/databak/(每杀掉一下进程会让你确认)
3)执行umount就可以正常卸载了









GitHub 加速计划 / li / linux-dash
10.39 K
1.2 K
下载
A beautiful web dashboard for Linux
最近提交(Master分支:2 个月前 )
186a802e added ecosystem file for PM2 4 年前
5def40a3 Add host customization support for the NodeJS version 4 年前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐