depmod
modprobe loop
lsmod | grep loop
loop 19017 0
有时需要在linux下需要访问windows的共享文件夹,可以使用mount挂载或者使用samba连接。
1、mount挂载
首先创建被挂载的目录:
$ mkdir windows
将共享文件夹挂载到windows文件夹:
$ sudo mount -t cifs -o username=share,password=share //192.168.66.198/share ./windows
其中几个参数表示含义:
cifs:Common Internet File System,可以理解为网络文件系统。
usrname:访问共享文件夹的用户名
password:访问密码
//192.168.66.198/share:表示网络文件夹的地址,注意这里最后不能加/,如果是//192.168.66.198/share/则会报如下错误:mount: //192.168.66.198/share/ is not a valid block device
Tips:使用mount挂载的方法在系统重新启动后就会失效,如果希望开机时自动挂载,将下面设置加入/etc/fstab文件最后面就可以了。
//192.168.66.198/share /home/windows cifs defaults,username=share,password=share 0 2
其中/home/windows表示挂载点,就是上面windows目录的完整路径。
2、使用samba连接
samba就是让windows和unix系列os之间的文件可以互相访问的软件。使用samba访问windows的共享文件夹,需要安装smbclient。
$ sudo apt-get install smbclient
安装好后,就可以访问共享的文件了。
$ smbclient --user=share //192.168.66.198/share
Enter share’s password: (输入密码回车)
smb: >
此时进入了smb的命令操作空间,可以使用help来查看命令的使用。
smb: > help
…省略若干命令…
exit get getfacl geteas hardlink
help history iosize lcd link
…省略若干命令…
也可以使用help查看单个命令的使用方式
smb: > help get
HELP get:
[local name] get a file
linux中如何挂载光盘,如何挂载ISO文件呢?
首先呢,我们应该给ISO文件建立一个挂载点,
#mkdir /dac
然后我们将ISO文件挂载
#mount -o loop -t iso9660 /Centos.iso /dac
表示挂载的类型,挂载的数据ISO,和挂载点
自动加载#vim /etc/rc.d/rc.local增加mount -o loop -t iso9660 /XXXX.iso /XXX
表示开机的时候自己加载上。
挂载WINDOWS共享目录中的ISO:
\10.10.18.65\SoftWare\linux_IOS
mkdir /mnt/win32
mount -t cifs -o username=administrator,password=ehang@2004 //10.10.18.5/test_video /mnt/win32
mkdir /mnt/rhel-dvd
mount -o loop -t iso9660 /mnt/win32/rhel-server-6.5-i386-dvd.iso /mnt/rhel-dvd
umount /mnt/rhel-dvd
umount
-a 卸除 /etc/mtab 中记录的所有文件系统。
-h 显示帮助。
-n 卸除时不要将信息存入 /etc/mtab 文件中。
-r 若无法成功卸除,则尝试以只读的方式重新挂入文件系统。
-t< 文件系统类型 > 仅卸除选项中所指定的文件系统。
-v 执行时显示详细的信息。
-V 显示版本信息。
[ 文件系统 ] 除了直接指定文件系统外,也可以用设备名称或挂入点来表示文件系统。
直接运行mount命令挂载分区一定要root权限。
如果想普通用户能直接挂载分区,只有这个做了。
1 使用root用户权限,将 /bin/mount命令创建一个副本,比如:all_mnt
cp /bin/mount /bin/all_mnt
2 root用户为 all_mnt命令设置执行时自动赋予root权限
chmod u+s g /bin/all_mnt
chmod g+s g /bin/all_mnt
3 ls -l /bin/all_mnt
你会看到,文件权限变为了 rwsrwsrwx ,表示权限赋予成功。
4 普通用户执行 all_mnt 命令,按照 mount 命令的参数试试看,可以挂载、卸载分区了。
上述介绍的方法,是黑客在Unix/Linux系统中留后门的常见方法。
===============================================================================================================================
Linux三大共享文件的方法
- Samba
Samba 用于Linux 和windows之间的共享,ubuntu里面默认没有安装samba
在安装好samba之后,就用开始配置samba服务:
Samba服务器主要配置文件为/etc/samba/smb.conf,并且可以将NetBIOS名与主机的对应关系写在/etc/samba /lmhosts文件中。
在Windows系统中不用输入密码访问Linux共享目录
在Linux共享一个目录,将建立好的目录的设置信息写入/etc/smb.conf文件即可。如:若共享/home/myth/share目录,要在 Windows系统中访问这个共享的目录,假设Windows主机的IP为192.168.0.11,Linux主机的IP为192.168.0.10,进行 如下操作:
#mkdir /home/myth/share
#sudo vim /etc/samba/smb.conf
或者使用 sudo gedit /etc/samba/smb.conf 打开配置文件
将文件中的内容做如下相应修改:
#security=user 后面添加:
security=share
在文件结尾添加如下行:
[share]
comment=this is Linux share directory
path=/home/myth/share
public=yes
writable=yes
保存退出,启动Samba服务:
#/etc/init.d/samba start
设置完成!
在Windows 下访问共享目录,可点击运行,输入
\192.168.0.10\share
这样就能以匿名用户访问共享目录share了。
关于windows下无写权限:chmod -R go+rwx share/
(图形化设置为:系统 -> 管理 -> samba 进行设置)
- NFS (Network File Service)
NFS用于Linux系统之间的文件共享
(1) 实验环境,主机Ubuntu 9.04,VMware 6.5,虚拟机Ubuntu 9.04
(2) 在主机上安装nfs服务软件,因为Ubuntu默认是没有安装的
$sudo aptitude install nfs-kernel-server
或使用新立德包管理器安装
(3) 在虚拟机上安装nfs客户端
$sudo apt-get install nfs-common
(4) 假设虚拟机使用的是桥接,IP地址为10.1.60.34即和主机在一个网段内。
(5) 修改nfs配置文件/etc/exports,添加如下一行
/home/yourname/sharedir 10.1.60.34(rw,sync,no_root_squash)
第一个参数是你要让客户机访问的目录,第二个是你允许的主机IP,最后的()内是访问控制方式。
(6) 注意,上面的主机IP不能使用*来通配,否则在客户机上会出现访问拒绝,但是如果我们要设置局域网访问呢?怎么办,使用子网掩码例如:10.1.60.0/255.255.254.0即可让10.1.60.*和10.1.61.*都可以访问,还可以使用10.1.60/23这种方式类确定子网。
(7) 在主机上启动NFS服务
测试配置文件
$ sudo exportfs -r
$sudo /etc/init.d/portmap start
$sudo /etc/init.d/nfs-kernel-server start
(8) 在客户端连接主机
$sudo mount 主机IP:/home/yourname/sharedir ~/nfsshare
注意,nfsshare必须先存在。
(9) 我们还可以设置允许的主机
修改/etc/hosts.allow即可,其实不用修改,只要在/etc/exports中指明了主机就可以了
启动nfs出现以下错误,前提防火墙已经关闭,其他机器有mount要先umount掉
#service nfs start
Starting NFS services: [ OK ]
Starting NFS quotas: [ OK ]
Starting NFS daemon: [FAILED]
出现后需要重启nfs
/etc/init.d/portmap stop
/etc/init.d/nfs stop
查看进程依然存在
#ps -ef | grep nfs
root 13282 177 0 17:10 ? 00:00:00 [nfsd4]
root 13290 1 0 17:10 ? 00:00:00 [nfsd]
root 13291 1 0 17:10 ? 00:00:00 [nfsd]
root 13392 177 0 17:10 ? 00:00:00 [nfsiod]…
手动kill掉所有进程,一定要确认kill掉全部
kill -9 13282 && kill -9 13290 && kill -9 13291 && …
再次确认没有了进程
#ps -ef | grep nfs
开启nfs服务ok
/etc/init.d/portmap start
/etc/init.d/nfs start (也可以用: service nfs start 命令)
3.tftp形式进行共享
首先查看是否已经安装好了tftp服务器:rmp -qa | grep tftp-server
配置文件:vim /etc/xinetd.d/ftfp
修改 server_args -s 为 -s /tftpboot
disable 为 no
启动tftp服务:
service xinetd restart 或者/etc/init.d/xinetd restart 重启服务
netstat -a | grep tftp 查看tftp是否启动,启动的结果为:udp 0 0 *:tftp :
//
Linux显示所有的目录都在一个目录树下,而于他们位于哪一个驱动器/硬件无关。
在Linux下的磁盘内容作为子目录形式出现的。可移动介质的内容不会自动出现在这些自目录的,
我们必须通过挂载驱动器来实现。
用mount命令来挂载cdrom.
命令:
mount -t auto /dev/cdrom /mnt/cdrom
这命令就是把cdrom挂载在/mnt/cdrom目录中,这里我就可以访问里面的内容了。
学习操作过程:
[OK_008@CentOS4 ~]$ mount -t auto /dev/cdrom /mnt/cdrom
mount: only root can do that --一般用户无法挂载cdrom,只有root用户才可以操作。
[OK_008@CentOS4 ~]$–切换用户操作:
[root@CentOS4 /]# mount -t auto /dev/cdrom /mnt/cdrom
mount: mount point /mnt/cdrom does not exist --/mnt/cdrom目录不存在,需要先创建。
[root@CentOS4 /]# cd /mnt
-bash: cd: /mnt: No such file or directory
[root@CentOS4 /]#
[root@CentOS4 /]# mkdir -p /mnt/cdrom --创建/mnt/cdrom目录
[root@CentOS4 /]# ls
bin dev home lib media mnt proc sbin srv tmp var
boot etc initrd lost+found misc opt root selinux sys usr
[root@CentOS4 /]# mount -t auto /dev/cdrom /mnt/cdrom --挂载cdrom
mount: block device /dev/cdrom is write-protected, mounting read-only --挂载成功
[root@CentOS4 /]# ls -l /mnt/cdrom --查看cdrom里面内容
total 859
dr-xr-xr-x 4 root root 2048 Sep 4 2005 CentOS
-r–r--r-- 2 root root 8859 Mar 19 2005 centosdocs-man.css
-r–r--r-- 9 root root 18009 Mar 1 2005 GPL
dr-xr-xr-x 2 root root 241664 May 7 02:32 headers
dr-xr-xr-x 4 root root 2048 May 7 02:23 images
dr-xr-xr-x 2 root root 4096 May 7 02:23 isolinux
dr-xr-xr-x 2 root root 18432 May 2 18:50 NOTES
-r–r--r-- 2 root root 5443 May 7 01:49 RELEASE-NOTES-en.html
dr-xr-xr-x 2 root root 2048 May 7 02:34 repodata
-r–r--r-- 9 root root 1795 Mar 1 2005 RPM-GPG-KEY
-r–r--r-- 2 root root 1795 Mar 1 2005 RPM-GPG-KEY-centos4
-r–r--r-- 1 root root 571730 May 7 01:39 yumgroups.xml
[root@CentOS4 /]#
[root@CentOS4 /]# umount /mnt/cdrom --卸载cdrom,很容易,直接使用umount /mnt/cdrom 即可。
另mount命令其他参数说明可以参考如下:
名称 : mount
使用权限 : 系统管理者或/etc/fstab中允许的使用者
使用方式 :
mount [-hV]
mount -a [-fFnrsvw] [-t vfstype]
mount [-fnrsvw] [-o options [,…]] device | dir
mount [-fnrsvw] [-t vfstype] [-o options] device dir
说明 :
将某个档案的内容解读成档案系统,然后将其挂在目录的某个位置之上。当这个命令执行成功后,直到我们使用 umnount 将这个档案系统移除为止,这个命令之下的所有档案将暂时无法被调用。
这个命令可以被用来挂上任何的档案系统,你甚至可以用 -o loop 选项将某个一般的档案当成硬盘机分割挂上系统。这个功能对于 ramdisk,romdisk 或是 ISO 9660 的影像档之解读非常实用。
参数
-V
显示程序版本
-h
显示辅助讯息
-v
显示较讯息,通常和 -f 用来除错。
-a
将 /etc/fstab 中定义的所有档案系统挂上。
-F
这个命令通常和 -a 一起使用,它会为每一个 mount 的动作产生一个行程负责执行。在系统需要挂上大量 NFS 档案系统时可以加快挂上的动作。
-f
通常用在除错的用途。它会使 mount 并不执行实际挂上的动作,而是模拟整个挂上的过程。通常会和 -v 一起使用。
-n
一般而言,mount 在挂上后会在 /etc/mtab 中写入一笔资料。但在系统中没有可写入档案系统存在的情况下可以用这个选项取消这个动作。
-s-r
等于 -o ro
-w
等于 -o rw
-L
将含有特定标签的硬盘分割挂上。
-U
将档案分割序号为 的档案系统挂下。-L 和 -U 必须在/proc/partition 这种档案存在时才有意义。
-t
指定档案系统的型态,通常不必指定。mount 会自动选择正确的型态。
-o async
打开非同步模式,所有的档案读写动作都会用非同步模式执行。
-o sync
在同步模式下执行。
-o atime
-o noatime
当 atime 打开时,系统会在每次读取档案时更新档案的『上一次调用时间』。当我们使用 flash 档案系统时可能会选项把这个选项关闭以减少写入的次数。
-o auto
-o noauto
打开/关闭自动挂上模式。
-o defaults
使用预设的选项 rw, suid, dev, exec, auto, nouser, and async.
-o dev
-o nodev-o exec
-o noexec
允许执行档被执行。
-o suid
-o nosuid
允许执行档在 root 权限下执行。
-o user
-o nouser
使用者可以执行 mount/umount 的动作。
-o remount
将一个已经挂下的档案系统重新用不同的方式挂上。例如原先是唯读的系统,现在用可读写的模式重新挂上。
-o ro
用唯读模式挂上。
-o rw
用可读写模式挂上。
-o loop=
使用 loop 模式用来将一个档案当成硬盘分割挂上系统。
范例
将 /dev/hda1 挂在 /mnt 之下。
#mount /dev/hda1 /mnt
将 /dev/hda1 用唯读模式挂在 /mnt 之下。
#mount -o ro /dev/hda1 /mnt
将 /tmp/image.iso 这个光碟的 image 档使用 loop 模式挂在 /mnt/cdrom之下。用这种方法可以将一般网络上可以找到的 Linux 光 碟 ISO 档在不烧录成光碟的情况下检视其内容。
#mount -o loop /tmp/image.iso /mnt/cdrom
相关命令umount