背景
最近在看LLAMA2的模型,想直接从Huggingface下载模型到本地,但是却发现服务器上没有安装git lfs命令。查询了一些资料完成了非root用户安装git lfs命令的操作,特此记录。
Git LFS下载与解压
下载 Git LFS 二进制文件
-
访问 Git LFS 发布页面 :首先,访问 Git LFS 的官方 GitHub 仓库的 Releases 页面,找到适合你操作系统的版本。
-
下载二进制文件 :选择对应的版本,下载
.tar.gz
文件。例如,我使用的是 Linux,所下载的为git-lfs-linux-amd64-v2.x.y.tar.gz
的文件。
解压 Git LFS
下载文件后,可以使用命令行工具 tar
来解压:
bash
tar -xzf git-lfs-linux-amd64-v2.x.y.tar.gz
安装
完成下载和解压后就可以进行安装了。
root权限用户安装
有root权限则可以直接运行安装脚本,即在当前目录中运行该脚本来安装 Git LFS。
bash
./install.sh
非root权限用户安装
如果没有权限运行 install.sh
,则需要手动将install.sh文件中的prefix目录进行修改,更改为本用户的目录。例如,原来的install.sh文件内容如下:
bash
#!/usr/bin/env bash
set -eu
prefix="/usr/local"
if [ "${PREFIX:-}" != "" ] ; then
prefix=${PREFIX:-}
elif [ "${BOXEN_HOME:-}" != "" ] ; then
prefix=${BOXEN_HOME:-}
fi
mkdir -p $prefix/bin
rm -rf $prefix/bin/git-lfs*
pushd "$( dirname "${BASH_SOURCE[0]}" )" > /dev/null
for g in git*; do
install $g "$prefix/bin/$g"
done
popd > /dev/null
PATH+=:$prefix/bin
git lfs install
这里,我将prefix进行修改:
bash
#!/usr/bin/env bash
set -eu
prefix="/home/jxqi"
if [ "${PREFIX:-}" != "" ] ; then
prefix=${PREFIX:-}
elif [ "${BOXEN_HOME:-}" != "" ] ; then
prefix=${BOXEN_HOME:-}
fi
mkdir -p $prefix/bin
rm -rf $prefix/bin/git-lfs*
pushd "$( dirname "${BASH_SOURCE[0]}" )" > /dev/null
for g in git*; do
install $g "$prefix/bin/$g"
done
popd > /dev/null
PATH+=:$prefix/bin
git lfs install
这个脚本会自动在prefix目录下创建一个bin目录,然后将git lfs安装到这个目录中。
配置 Git LFS
完成安装后,我们还需要手动配置这个命令的Path,需要我们在 ~/.bashrc
文件中添加如下行:
bash
export PATH="$HOME/bin:$PATH"
最后,可以运行 Git LFS 初始化,验证是否安装成功
bash
git lfs install
如得到"Git LFS initialized."输出即完成安装。