使用虚拟目录进行文件共享

使用虚拟目录进行文件共享

抱歉,如果这里不适合问这个问题...我正在尝试创建某种服务器,以便存储我学校使用的所有软件,这些软件按不同的教室组织,这样当我准备一台新电脑时,我就可以找到要复制的正确软件组。问题是不同的班级有多个应用程序,所以我必须在每个班级文件夹中创建同一软件的多个副本,占用越来越多的空间。

首先,我想到使用 PHP、Javascript 创建一个网站,因为这样可以轻松地将所有文件存储在一个地方,并为每个类别创建不同的页面,我可以在其中下载软件,但我在 Web 开发方面经验很少,所以我还需要在这方面努力。

另一个解决方案是使用 FTP 服务器,但我不知道是否可以创建某种虚拟文件夹,在其中我只能看到每个类别的文件,但当我下载文件时,真正的存储位置是一个文件夹。

这个想法是可以轻松不断更新软件,而不必更改每个类文件夹。

答案1

由于您只需安装一次软件,即使您在不同的课程中使用它们,我也会将所有文件放在.deb一个文件夹中,因此当您在新安装中从 ftp /服务器下载它们时,您只需执行以下操作:

dpkg -i /path-to-the-downloaded-files/*.deb

为了将它们按类别分开,您可以创建一个文件夹结构,其中包含.desktop桌面上每个应用程序的文件。

然后,您可以使用压缩工具 ( tar, 7z, etc.) 打包此文件夹结构,并将其放在服务器上,这样恢复起来就很容易了。有关.desktop文件的更多信息,请参见这里

答案2

您也可以使用符号链接。首先将所有应用程序放入一个目录中;然后,在每个类文件夹中,创建指向相关应用程序文件的链接,而不是放置实际应用程序。现在您只存储一次文件,但可以从许多地方访问它。

如果你经常升级应用程序,你可以更进一步:不要链接到应用程序,而是链接到“指针”或“存根”,然后链接到应用程序。这意味着你将得到类似以下内容的内容:

A 类

---AppA(链接至 A)

---AppB(链接至 B)

---AppC(链接到 C)

B 类

---AppA(链接至 A)

---AppD(链接至 D)

C 类

---AppA(链接至 A)

---AppC(链接到 C)

---AppD(链接至 D)

应用程序目录

---A(链接至 A.版本)

---B(链接至B版本)

---C(链接至 C 版本)

---D(链接至 D 版本)

现在,当你升级包时,你不需要为每个类重新创建链接,因为它们不会改变。相反,你可以更改应用程序目录指向新版本,就这样。

相关内容