Ad Widget

Collapse

[unixODBC] Can't open lib '/usr/lib64/libtdsodbc.so.0' : file not found

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • schieber
    Junior Member
    • Jan 2021
    • 1

    #1

    [unixODBC] Can't open lib '/usr/lib64/libtdsodbc.so.0' : file not found

    Hello guys,

    My company is implementing Zabbix on a test/PoC environment and currently we are stuck at this error:

    Code:
    bash-5.0# isql MSSQL sa <password> -v
    [01000][unixODBC][Driver Manager]Can't open lib '/usr/lib64/libtdsodbc.so.0' : file not found
    [ISQL]ERROR: Could not SQLConnect
    bash-5.0# export ODBCSYSINI=/etc
    bash-5.0# export ODBCINI=/etc/odbc.ini
    bash-5.0# export LD_LIBRARY_PATH=/usr/lib64
    
    bash-5.0# isql MSSQL sa <password> -v
    Error relocating /usr/lib64/libodbc.so.2: __strcat_chk: symbol not found
    Error relocating /usr/lib64/libodbc.so.2: __strdup: symbol not found
    Error relocating /usr/lib64/libodbc.so.2: __memcpy_chk: symbol not found
    Error relocating /usr/lib64/libodbc.so.2: __stpcpy_chk: symbol not found
    Error relocating /usr/lib64/libodbc.so.2: __vsnprintf_chk: symbol not found
    Error relocating /usr/lib64/libodbc.so.2: __strcpy_chk: symbol not found
    Error relocating /usr/lib64/libodbc.so.2: __printf_chk: symbol not found
    Error relocating /usr/lib64/libodbc.so.2: __fprintf_chk: symbol not found
    Error relocating /usr/lib64/libodbc.so.2: __sprintf_chk: symbol not found
    Error relocating /usr/lib64/libltdl.so.7: argz_create_sep: symbol not found
    Error relocating /usr/lib64/libltdl.so.7: __rawmemchr: symbol not found
    Error relocating /usr/lib64/libltdl.so.7: argz_append: symbol not found
    Error relocating /usr/lib64/libltdl.so.7: argz_stringify: symbol not found
    Error relocating /usr/lib64/libltdl.so.7: argz_insert: symbol not found
    Error relocating /usr/lib64/libltdl.so.7: __sprintf_chk: symbol not found
    
    bash-5.0# ls -ltr /usr/lib64/libodbc.so.2
    lrwxrwxrwx 1 root root 16 Nov 7 2019 /usr/lib64/libodbc.so.2 -> libodbc.so.2.0.0
    Very important: It is a Docker container running over an RHEL7 system - isql works fine outside the container.


    Code:
    docker run -d --net=host --name zabbix-proxy-sqlite3-v2 \
    -e ZBX_HOSTNAME=brhodsh01srsprj \
    -e ZBX_SERVER_HOST=158.98.61.143 \
    -v /etc/zabbix:/etc/zabbix \
    -v /etc/odbc.ini:/etc/odbc.ini \
    -v /etc/odbcinst.ini:/etc/odbcinst.ini \
    -v /etc/freetds.conf:/etc/freetds.conf \
    -v /usr/lib64:/usr/lib64 \
    -v /opt/mssql-tools:/opt/mssql-tools \
    zabbix/zabbix-proxy-sqlite3:alpine-5.0-latest
    We have already tried to unlink/re-link the libs but w/no luck.

    Any recommendation is highly appreciated.
  • BlueBull
    Junior Member
    • Sep 2020
    • 25

    #2
    I'm sorry if I'm completely wrong here, I am absolutely not well-versed in linux. I have however set up our zabbix environment (ubuntu) with full working unixODBC support (MSSQL, mySQL & Oracle) after some struggling. I had that "file not found" error as well and in my case it was because I was trying to do isql under root. I see your shell has a # at the end which if I'm not mistaken means you are in a root shell? Perhaps you could try dropping back down to normal user shell and try again?
    Last edited by BlueBull; 29-01-2021, 17:54.

    Comment

    Working...