问题描述
我有两个 Ubuntu 机器,想在它们之间共享文件和打印机。我正在阅读有关 Samba 的信息,但我有一个问题:Samba 是否仅用于在 Ubuntu 和 Windows 之间共享?另一个问题:有很多信息描述了如何在 Ubuntu 和 Windows 之间共享文件和打印机,但是两个 Ubuntu 机器呢?我该怎么做?有 how-to 可以让我关注吗?
最佳答案
如果没有窗口参与,使用 NFS 在系统之间共享文件非常简单。
在要共享文件的计算机上安装 nfs-kernel-server 和 nfs-common。这些可以安装在软件中心,或者您喜欢的安装包方式。您可以使用以下命令在 命令行 上安装它们:
sudo apt-get update && sudo apt-get install nfs-kernel-server nfs-common
您需要编辑导出文件以显示要共享的内容以及与谁共享。因此运行:
gksu gedit /etc/exports
例如,要授予完全读写权限,允许从 192.168.1.1 到 192.168.1.255 的任何计算机,请将以下行添加到 /etc/exports
:
/directory_to_share 192.168.1.1/24(rw,no_root_squash,async)
我女儿的导出文件如下所示(我是 .201
——我们不使用范围,只使用一个 IP):
/home 192.168.0.201(rw,sync,no_root_squash,no_subtree_check)
/srv/nfs 192.168.0.201(rw,sync,no_subtree_check)
运行以下命令重新启动 NFS 服务器:
sudo /etc/init.d/nfs-kernel-server restart
(或者重新启动计算机。)
从现在开始,编辑 /etc/exports
文件后,您只需运行 sudo exportfs -a
即可应用更改。
showmount
命令会告诉您一切顺利 – 例如,在我女儿的电脑上,它显示如果请求,她将与我的电脑 @ .201(我)共享这两件事
$ showmount -e
Export list for jamie-desktop:
/srv/nfs 192.168.0.201
/home 192.168.0.201
然后在想要将导出共享作为其文件系统的一部分安装的计算机上安装 nfs-common。
必须添加 fstab
条目,以使您的计算机 nfs-client 在启动时安装另一台计算机的导出文件。gksu gedit /etc/fstab
将编辑所需的文件。
192.168.0.200:/srv/nfs /media nfs rsize=8192 and wsize=8192,noexec,nosuid
重新启动并且共享安装在 /media
中。
为 two-way 共享在客户端上设置服务器,并在服务器上设置客户端。
您可以使用 CUPS 打印到共享打印机(如 this answer 中所述)。
次佳答案
对于通过可信网络在 Linux/Unix 主机之间共享文件,NFS 通常是最佳选择。
第三种答案
您可以以相同的方式使用 Samba 在两台 Ubuntu 机器之间共享。
或者,您也可以直接使用 CUPS 来共享打印机,并使用其他受支持的网络文件系统之一来共享文件(或者如果您已经设置了 SSH 服务器,则只需在 Nautilus 中使用 sftp://)。
使用 Samba 的一个可能的优势是,如果您需要与 Windows 或 Mac OS X 用户(例如,使用笔记本电脑的访客)共享某些内容,它也可以发挥作用。