关于微软的azcopy升级
1.本身并没有安装过azcopy,要不是也无需求也不会搞这个。
首先解决:dotnet: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.18’ not found (required by dotnet);
1.查看gcc版本中包含哪些库。
strings /usr/lib64/libstdc++.so.6 | grep GLIBC
GLIBCXX_3.4
GLIBCXX_3.4.1
GLIBCXX_3.4.2
GLIBCXX_3.4.3
GLIBCXX_3.4.4
GLIBCXX_3.4.5
GLIBCXX_3.4.6
GLIBCXX_3.4.7
GLIBCXX_3.4.8
GLIBCXX_3.4.9
GLIBCXX_3.4.10
GLIBCXX_3.4.11
GLIBCXX_3.4.12
GLIBCXX_3.4.13
GLIBC_2.2.5
GLIBC_2.3
GLIBC_2.4
GLIBC_2.3.2
GLIBCXX_FORCE_NEW
GLIBCXX_DEBUG_MESSAGE_LENGTH
2.yum安装的gcc版本过低,需要4.8.5的版本。
yum -y install gcc gcc-c++ kernel-devel
wget ftp://gcc.gnu.org/pub/gcc/releases/gcc-4.8.5/gcc-4.8.5.tar.bz2
yum install -y glibc-static libstdc++-static
yum install gcc gcc-c++
tar jxvf gcc-4.8.5.tar.bz2 -C /usr/local/src
cd /usr/local/src/gcc-4.8.5
./contrib/download_prerequisites
/usr/local/src/gcc-4.8.5/configure --enable-checking=release --enable-languages=c,c++ --disable-multilib
make
make install
GCC安装完毕,需要修改libstdc++.so.6.0.19,要不然会提示你libstdc++.so.6版本过低
find / -name libstdc++.so.6*
strings /usr/lib64/libstdc++.so.6 | grep GLIBC
cp /usr/local/lib64/libstdc++.so.6.0.19 /usr/lib64
rm -rf /usr/lib64/libstdc++.so.6
ln -s /usr/lib64/libstdc++.so.6.0.19 /usr/lib64/libstdc++.so.6
做完软连接在查看libstdc++.so.6的版本
strings /usr/lib64/libstdc++.so.6 | grep GLIBC
-
安装完GCC,在启动azcopy发现
Linux/Centos下/lib64/libc.so.6: version `GLIBC_2.14’ not foundwget http://ftp.gnu.org/gnu/glibc/glibc-2.15.tar.gz wget http://ftp.gnu.org/gnu/glibc/glibc-ports-2.15.tar.gz tar -xvf glibc-2.15.tar.gz tar -xvf glibc-ports-2.15.tar.gz mv glibc-ports-2.15 glibc-2.15/ports mkdir glibc-build-2.15 cd glibc-build-2.15 ../glibc-2.15/configure --prefix=/usr --disable-profile --enable-add-ons --with-headers=/usr/include --with-binutils=/usr/bin make make install
-
以上安装完毕再次检查azcopy,发现 Microsoft.NETCore.App需要2.0.0的版本:
wget https://download.microsoft.com/download/1/B/4/1B4DE605-8378-47A5-B01B-2C79D6C55519/dotnet-sdk-2.0.0-linux-x64.tar.gz tar -zxvf dotnet-sdk-2.0.0-linux-x64.tar.gz mv shared/Microsoft.NETCore.App/2.0.0/ /opt/dotnet/shared/Microsoft.NETCore.App/. rm -rf additionalDeps dotnet dotnet-sdk-2.0.0-linux-x64.tar.gz host LICENSE.txt sdk shared store ThirdPartyNotices.txt azcopy list
最后验证之后发现,还是不能用,说没有ICU。。。。
wget -O azcopy.tar.gz https://aka.ms/downloadazcopylinuxrhel6
tar -xf azcopy.tar.gz
./install.sh
看了官网的介绍,按他的指示安装,居然可以用了,哭死!!!