今天,我来比较一下linux和windows共享。
windows共享的设置比较简单,我就不多说了,其本质是出于对帐户的验证,比如你要使用另一台机器上的文件,你就必须有那台机器相应的用户权限,在域中也是一样,需要帐户和密码,我说的密码包括空密码,很多人把这个理解为没有密码是不对的。
而linux下要做个共享就稍微比windows复杂一点,下面我先叙述一下linux下做共享的步骤:
1.首先要装好两个软件包,以便支持我们的nfs(网络文件服务)也就是共享,这两个软件包分别是portmap和nfs-utils,一般情况下,系统会预装了这两个包。
2.配置好linux的ip地址,子网掩码等,配置方法很多种,可以修改/etc/sysconfig/network-scripts/ifcfg-eth0文件,也可以直接用命令netconfig,也可以用命令ifconfig eth0 192.168.1.1 netmask 255.255.255.0来修改,前两种方式效果一样,每次重新启动都生效,第三种方式只是临时修改,下次重启还原为原来配置。
3.配置nfs服务的配置文件,打开/etc/exports 在里面添加一行例如:
/home/tom 192.168.1.0/24(sync,rw,anonuid=501)
保存并且退出。添加的代码含义是 将/home/tom共享出来,后面的网段的客户端都可以访问,sync表示同步写入硬盘而不是先记录在内嬷校?w表示可读可写,后面的表示不管是谁访问了共享文件,其都会被映射为uid为501的帐户,当然权限也由那个帐户的权限决定了。有时候可以把那个段写为no_root_squash,代表如果客户时root帐户的话,访问共享文件夹也以root帐户身份访问,这样,大家应该看出来这么做不太安全了,所以我并不推荐那么做。
4.配置文件改好了,就该让它生效了,需要重新启动服务,原则上说要先启动portmap服务后启动nfs服务,而系统如果运行在init 5级别的话,默认是启动了portmap服务的,此时只需要启动nfs服务就可以了。启动方法如下:
service nfs restart
5.此时文件服务器就做好了,我们可以用客户端访问一下了,linux客户端使用mount命令,格式如下:
mount 192.168.1.1:/home/tom /mnt
这样的话就把服务器上共享的那个文件夹挂载到了本地的/mnt目录下。另一种情况是,客户端是windows系统,不能直接访问linux的nfs服务器,想要访问的话呢,需要安装一个第三方软件nmnilite,这个软件很好用,使用方法也不难,有兴趣的朋友从网上下一个玩玩。
说到这里windows系统和linux系统的共享就都讲完了,大家看出不同了吗?除了配置方法不同之外,另一个显著的不同是可以利用anonuid=uid来映射客户权限。
linux非常灵活,除了上述内容,还可以设置客户必须从高于1024的端口访问。我也非常欣赏开放源代码的精神,可以说如果没有开源软件,我们今天的internet就不会这么丰富多彩。

