Error launching sqlplus

oracleoracle-12csqlplus

I try to run sqlplus on my server with the command sqlplus /as sysdba

and I got this error

sqlplus: error while loading shared libraries: /u01/app/oracle/product/12.1.0/dbhome_1/lib/libclntsh.so.12.1: file too short

Update

[user@server]$echo $PATH    
/u01/app/oracle/product/12.1.0/dbhome_1/bin:/usr/local/bin:/usr/bin:/bin:/usr/l‌​ocal/games:/usr/games

the output of which sqlplus is /u01/app/oracle/product/12.1.0/dbhome_1/bin/sqlplus

I set up all the necessary Oracle shell variables.

I took a look at the libclntsh.so.12.1 file and it is empty.

Can you help me ?
Thanks

Best Answer

It is very recommendable to do a dump in another media of all your database before trying anything else, because your filesystem is probably not going well.

You will need to restart the server and run fsck not only because of that file is corrupted, but because the risk of more data corruption, then try to run sqlplus again, if it does not help, you will need the file libclntsh.so.12.1 for an another installation.

But dont try to simple replace the file, it is not a good idea, first you will need to run fsck to ensure the file system is ok or something worse can happen.