如何搭建FAH服务器?

理解核心概念

“Folding@home 服务器”这个说法通常有两种含义:

1、参与计算的客户端:这是最常见的含义,你下载一个客户端软件,它利用你的CPU和GPU来模拟蛋白质折叠,并将结果上传到FAH官方服务器,你搭建的是一个“计算节点”。

2、团队统计服务器:这是指为FAH团队搭建一个内部的数据统计网站,用于展示团队成员的计算贡献,这需要一定的Web开发知识。

本指南将重点介绍第一种,即如何搭建一个FAH计算节点。

方法一:使用官方客户端(最简单,推荐新手)

这是最通用、最简单的方法,适用于个人用户。

步骤 1:下载客户端

1、 访问 Folding@home 官方网站:[https://foldingathome.org/](https://foldingathome.org/)

2、 点击 “Start Folding” 或 “Download” 按钮。

3、 选择与你操作系统对应的版本(Windows, macOS, Linux)。

步骤 2:安装与配置

Windows/macOS:

1、 运行下载的安装程序,按照提示完成安装。

2、 安装完成后,通常会自动打开一个Web控制界面(通常是http://localhost:7396)。

3、首次配置:

身份标识

用户名 可以是你自己的昵称,或者你想加入的团队名称(如果你为某个团队计算)。

团队号 如果你要加入特定团队,在此输入团队编号,知名团队“EVGA”的团队号是11108,如果你不为任何团队计算,可以留空或填0

密码 如果你设置了通行密钥,可以在此输入,通行密钥不是必须的,但设置后可以让你在匿名计算时也能获得奖励积分,你可以在此申请: [https://apps.foldingathome.org/bonus](https://apps.foldingathome.org/bonus)

计算能力

Light(轻) 对日常使用影响最小。

Medium(中) 平衡计算性能和系统响应。

Full(全) 全力计算,可能会让电脑变慢、风扇噪音变大,适合在电脑空闲时使用。

Linux:

对于 Debian/Ubuntu 等系统,官方提供了.deb 包,安装非常方便。

下载最新的 .deb 包,请从官网获取最新链接
wget https://download.foldingathome.org/releases/public/release/fahclient/debian-stable-64bit/v7.6/latest.deb
安装软件包
sudo dpkg -i latest.deb
安装过程中会弹出配置界面,填写用户名、团队号等信息。
如果安装时跳过了配置,可以编辑配置文件:
sudo nano /etc/fahclient/config.xml

config.xml 中,确保有以下核心配置(其他配置可以保持默认):

<config>
  <user value="YourUserName"/> <!-- 你的用户名 -->
  <team value="12345"/>       <!-- 你的团队号 -->
  <passkey value="your_passkey"/> <!-- 你的通行密钥(可选) -->
  <power value="medium"/>     <!-- 功率设置:light, medium, full -->
  <gpu value="true"/>         <!-- 是否启用GPU计算 -->
  <smp value="true"/>         <!-- 是否启用CPU计算 -->
</config>

编辑后保存,并重启FAH服务:

sudo systemctl restart fahclient

方法二:使用 Docker 容器(灵活,适合高级用户和服务器环境)

在Linux服务器上,使用Docker是更干净、更易于管理的方式。

步骤 1:安装 Docker

确保你的系统已经安装了 Docker Engine。

步骤 2:运行 FAHClient 容器

这里使用LinuxServer.io维护的镜像,它非常流行且维护良好。

docker run -d \
  --name folding-at-home \
  --restart unless-stopped \
  -p 7396:7396 \  # 可选:映射Web控制界面端口
  -e USER="YourUserName" \
  -e TEAM="12345" \
  -e PASSKEY="your_passkey" \
  -e POWER="medium" \
  -e GPU=false \  # 在Docker中使用GPU需要额外配置,见下文
  linuxserver/foldingathome

参数解释:

-d 后台运行。

--restart unless-stopped 容器自动重启,除非你手动停止它。

-p 7396:7396 将容器的7396端口映射到主机,这样你就可以通过http://你的服务器IP:7396 来访问Web控制界面。

-e 设置环境变量,对应客户端的配置项。

重要:在Docker中使用GPU进行计算

FAH的强大之处在于GPU计算,要在Docker中使用GPU,你需要:

1、安装 NVIDIA Container Toolkit

    # 设置仓库和GPG密钥
    distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
    curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add -
    curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list
    sudo apt-get update && sudo apt-get install -y nvidia-docker2
    sudo systemctl restart docker

2、在运行容器时添加--gpus all 参数

    docker run -d \
      --name folding-at-home \
      --restart unless-stopped \
      --gpus all \  # 这是关键!启用所有GPU
      -e USER="YourUserName" \
      -e TEAM="12345" \
      -e PASSKEY="your_passkey" \
      -e POWER="full" \  # GPU计算建议用full
      linuxserver/foldingathome

监控与管理

1、Web控制界面: 无论哪种方法,最方便的监控方式都是通过Web界面,访问http://localhost:7396http://你的服务器IP:7396

2、高级控制界面: 官方还提供了一个更强大的本地控制界面FAHControl,在Linux上,你可以单独安装它:sudo apt install fahcontrol

3、日志文件: 日志文件是排查问题的关键。

Linux (原生安装)/var/lib/fahclient/log.txt

Dockerdocker logs folding-at-home

故障排除与优化

任务下载/上传失败 检查网络连接,有时FAH的服务器会比较繁忙,可以等待重试。

GPU未被识别

* 确保已安装最新的显卡驱动。

* 在Docker中,确保已正确安装NVIDIA Container Toolkit并使用了--gpus all 参数。

* 检查Web控制界面的“Advanced Control” -> “Configure” -> “Slots” 选项卡,确保有一个gpu 类型的槽位。

提高积分

申请并使用通行密钥

* 确保你的计算设备(特别是GPU)被正确识别和使用。

* 将功率设置调整为full,但请确保设备散热良好。

方法 优点 缺点 适用场景
官方客户端 安装简单,图形化界面,上手快 与系统耦合较紧,不易迁移 个人电脑、新手用户
Docker 环境隔离,易于管理和迁移,灵活性高 配置稍复杂,GPU需要额外步骤 Linux服务器、喜欢容器化部署的用户

希望这份详细的指南能帮助你成功搭建属于自己的 Folding@home 计算节点,为科学研究贡献一份力量!祝你折叠愉快!

文章摘自:https://idc.huochengrm.cn/fwq/17541.html

评论