如果实在搞不定SU的安装,可以直接使用它的Docker版本。
- 直接本机安装Docker
Docker安装教程很多,这里简单说一下
MAC和windows下直接安装Docker Desktop即可
windows下安装完需要打开WSL2,可能与已有的vmware虚拟机冲突,建议弃用vmware
- 在远程linux中安装docker
sudo apt-get install docker-ce docker-ce-cli containerd.io
docker的安装不是重点,可参照其他教程。
下面,如果已经有了一台安装好docker的远程linux服务器,我们可以用如下脚本安装和运行SU:
# please ensure there's only one "seismic_unix" container in docker
# check if SU container existed
echo "Notice: Detecting SU Docker container:"
SU_ID=`sudo docker ps -a |awk '/seismic_unix/{print $1}'`
# create shared directory
if [ ! -d "$HOME/SUdata" ]
then
mkdir $HOME/SUdata
fi
# create or enter SU container
if [ -z $SU_ID ]
then
echo "Notice: No SU container found, creating..."
sudo docker run -d \
-v /etc/localtime:/etc/localtime:ro \
--volume="/etc/apt/sources.list:/etc/apt/sources.list:ro" \
--volume="$HOME/.Xauthority:/root/.Xauthority" \
--net=host \
-e DISPLAY=${DISPLAY##localhost} \
-v $HOME/SUdata:/data \
--name seismic_unix \
mstormo/seismic_unix
echo "Notice: SU container created."
SU_ID=`sudo docker ps -a |awk '/seismic_unix/{print $1}'`
else
echo "Notice: Loading existed SU container..."
sudo docker start $SU_ID
fi
echo "Notice: \$HOME/SUdata has been imaged to /data in container"
echo "Notice: put your data there!"
sudo docker exec -it $SU_ID /bin/bash
echo "Notice: Shutting down SU container..."
sudo docker stop $SU_ID
echo "Notice: Bye!"
这个脚本每次运行都会启动一个装好SU的容器并进入其中操作,结束后会关闭这个容器。
数据共享是通过用户目录下的SUdata和容器中的/data映射