使用 Ubuntu + FOSS 设置家庭网络?

使用 Ubuntu + FOSS 设置家庭网络?

我希望有人可以就使用 Ubuntu 和 FOSS 满足我对家庭网络的一些要求提出一些建议。

目前我有一个包含以下内容的网络:

  • 运行 Windows XP 的笔记本电脑
  • 一台台式机、几台笔记本电脑和一台上网本,均运行 Ubuntu 10.10 桌面版
  • 一个“服务器”(一台运行 Ubuntu 10.10 桌面版的旧戴尔 Vostro),带有一个包含照片、音乐和视频的 SMB 共享
  • 一台 HP Color LaserJet CP1215,连接到服务器并通过 SMB 共享
  • iPhone(iOS 3.x)
  • HTC Desire(Android 2.2)
  • 连接到服务器线路输出的立体声音响

没有 LAN 布线;包括服务器在内的所有设备都使用 WiFi,这就是我在服务器上运行桌面的原因,因为我发现通过这种方式设置无线网络更容易。

我希望能够做的是:

  1. 同步除手机之外的所有系统上的音乐,从而将一个系统上的任何更改传播到所有其他系统。这样我就可以将音乐带出家门,在手机和其他 MP3 播放器上加载音乐,并从任何机器上管理我的音乐库。
  2. 将视频留在服务器上,并将视频从服务器流式传输到网络上的任何操作系统(iOS、Android、Ubuntu、Windows)。
  3. 视频应该可以通过 SMB 共享获取,这样我就可以根据需要手动将单个视频复制到任何系统(比如说,如果我想在火车上看电影)
  4. 将我的立体声音响连接到服务器并在其上播放音乐,通过网络上的任何其他机器控制播放。
  5. 轻松将服务器内容备份到外部(USB 2.0,唉)硬盘
  6. 从网络上的任何机器进行打印

有人可以推荐一种好的方法以及一些实现它的软件吗?

我想到的一个方法是在所有机器上设置 cron 作业(包括 Cygwin 提供的 XP 机器),以便使用 rsync 保持所有机器上的音乐库同步。备份也可以以同样的方式进行。不过,我猜想这种方法可能会产生冲突问题。

samba 可以轻松处理打印,视频文件共享也是如此。事实上,这就是我现在正在做的事情 :-)

我完全不确定要用什么来从服务器传输流媒体,同样也不知道要用什么来远程控制服务器上的音乐播放。如果只有我一个人,我会使用 ssh 和 rhythmbox-client 来实现后者,但我希望对家人和客人来说更友好的东西 :-)

如果有人可以建议一个包或一系列包,使我能够实现我的要求而不用从头开始构建一切(我可以编码,但我时间不够),我将不胜感激。

答案1

对于音乐,使用 mpd (http://mpd.wikia.com/)它非常出色,并且拥有适用于各种设备的客户端,甚至是 Android 手机。

对于流式传输视频,请使用 VLC (http://www.videolan.org/)。不过我不确定设置起来有多么容易。

您真的需要同步音乐吗?我使用 Samba 和 NFS 在机器之间共享我的中央 MP3 存储库。如果您确实想要同步,请指定一台计算机作为主计算机(可能是服务器),并执行所有同步。我个人会手动同步到服务器。在笔记本电脑上进行更新,然后从图标运行“推送更改”脚本。保留 rsync cron 作业以从服务器提取更新。

如果您更新得太频繁,则可以使用 unison (http://www.cis.upenn.edu/~bcpierce/unison/) 反而。

对于备份,请查看 rsnapshot (http://rsnapshot.org/)。通过 cron 作业运行它,但要先测试磁盘是否已安装,如果没有,则让脚本向您发送电子邮件。

所有这些都可以从 Ubuntu 存储库获得。

相关内容