Понимание того, что делает бинарный файл Linux
Недавно у меня была задача понять бинарную программу для Linux. Однако программа была в двоичном виде.
Я использовал команды file , strings и objdump иметь некоторое представление о том , что она делает, и какие функции он звонит.
Кажется, двоичный файл скомпилирован с отладочной информацией. Что еще я могу узнать об этом?
Включая команды, которые вы уже использовали, я постараюсь подробно описать, что можно сделать для выполнения некоторых криминалистических операций в исполняемом файле.
Скромная strings команда может быть полезна для визуализации текстовых сообщений об ошибках, которые дают подсказки о двоичных функциях. Это также простой способ обнаружения упакованных двоичных файлов, как в примере (часто с двоичными файлами вредоносного ПО):
strings — печатать строки печатаемых символов в файлах.
Для каждого заданного файла в строках GNU печатаются последовательности печатаемых символов длиной не менее 4 символов (или число, указанное в приведенных ниже параметрах), за которыми следует непечатаемый символ.
file позволяет увидеть исполняемые свойства, а именно:
- архитектура, на которую он нацелен;
- ОС;
- если динамически или статически связаны;
- если скомпилировано с отладочной информацией или нет.
В этом примере «not stripped» означает, что он был скомпилирован с включенной информацией отладки.
file проверяет каждый аргумент в попытке его классифицировать. В этом порядке выполняются три набора тестов: тесты файловой системы, магические тесты и языковые тесты. Первый успешный тест приводит к печати типа файла.
objdump создает список разборки исполняемого файла:
objdump также позволяет узнать компилятор, используемый для компиляции двоичного исполняемого файла:
objdump также перечисляет внешние функции, динамически связанные во время выполнения:
$ objdump -T exe_file
objdump отображает информацию об одном или нескольких объектных файлах Опции управляют отображением конкретной информации. Эта информация в основном полезна для программистов, которые работают над инструментами компиляции, в отличие от программистов, которые просто хотят, чтобы их программа компилировалась и работала.
Вы можете запускать бинарный файл только на виртуальной машине, созданной, а затем отброшенной только для запуска бинарного файла. Используйте strace , ltrace , gdb и , sysdig чтобы узнать больше о том , что делает двоичная на уровне системных вызовов во время выполнения.
strace запускает указанную команду до ее выхода. Он перехватывает и записывает системные вызовы, вызываемые процессом, и сигналы, принимаемые процессом. Имя каждого системного вызова, его аргументы и возвращаемое значение выводятся при стандартной ошибке или в файл, указанный с помощью опции -o.
ltrace это программа, которая просто запускает указанную команду до ее выхода. Он перехватывает и записывает динамические библиотечные вызовы, которые вызываются исполняемым процессом, и сигналы, которые получает этот процесс. Он также может перехватывать и распечатывать системные вызовы, выполняемые программой.
Он также может быть отлажен шаг за шагом gdb .
Назначение отладчика, такого как GDB, состоит в том, чтобы вы могли видеть, что происходит «внутри» другой программы во время ее выполнения.
Чтобы отслеживать / создавать дампы большей части своей системной активности, выполняющей его, используйте sysdig как в:
sysdig это инструмент для устранения неполадок, анализа и исследования системы. Он может использоваться для захвата, фильтрации и декодирования системных вызовов и других событий ОС. sysdig может использоваться как для проверки работающих систем, так и для генерации файлов трассировки, которые можно проанализировать на более позднем этапе.
sysdig включает в себя мощный язык фильтрации, имеет настраиваемый вывод и может быть расширен с помощью сценариев Lua, называемых долотами.
Мы еще раз разберемся со статическим анализом самого двоичного файла в оставшейся части этого ответа.
ldd exe_file перечисляет библиотеки, которые он использует;
ldd печатает общие объекты (общие библиотеки), необходимые для каждой программы или общего объекта, указанного в командной строке.
size -A exe_file
size Утилита GNU перечисляет размеры разделов — и общий размер — для каждого из объектных или архивных файлов objfile в своем списке аргументов. По умолчанию генерируется одна строка вывода для каждого объектного файла или каждого модуля в архиве.
readelf -x .rodata exe_file перечисляет статические строки
readelf -h exe_file получает информацию заголовка ELF
readelf -s exe_file отображает символы
readelf отображает информацию об одном или нескольких объектных файлах формата ELF. Опции управляют отображением конкретной информации.
elffile . объектные файлы, которые нужно исследовать. Поддерживаются 32-битные и 64-битные файлы ELF, а также архивы, содержащие файлы ELF.
nm exe_file перечисляет символы из таблицы объектов:
nm перечисляет символы из объектных файлов objfile . Если никакие объектные файлы не указаны в качестве аргументов, nm принимает файл a.out.
Помимо разборки двоичного файла с objdump помощью декомпилятора также можно использовать.
Для декомпиляции я недавно выполнил техническую задачу, в которой мне нужно было декомпилировать два небольших 64-битных бинарных файла Linux.
Я пытался использовать Бумеранг и Снеговик. Проект Бумеранг кажется заброшенным, и меня не впечатлили ограничения обоих из них. Несколько других альтернатив, либо open source / freeware / old, включая недавно выпущенный Avast, декомпилировали только 32-битные двоичные файлы.
В итоге я попробовал демо-версию Hopper в MacOS (она также имеет версию для Linux).
Hopper Disassembler, инструмент для обратного проектирования, который позволяет вам разбирать, декомпилировать и отлаживать ваши приложения.
Hopper разбирает и декомпилирует 32- или 64-битные двоичные файлы для OS / X, Linux и Windows. Он способен работать с большими двоичными файлами при получении лицензии.
Он также создает потоковые графики функций / структуры программы и переменных.
Он также активно поддерживается и обновляется. Однако это коммерческий.
Мне так нравилось пользоваться им и полученным результатом, который купил лицензию. Лицензия гораздо более доступная, чем шестнадцатеричное излучение.
В комментариях к этому ответу @ d33tah и @Josh также упоминают в качестве альтернативы с открытым исходным кодом radare2, и соответствующий графический интерфейс Cutter , похожий на Hopper в Linux, не может поручиться лично за него, поскольку я их не использую.
Кроме того, поскольку целевой двоичный файл был скомпилирован с отладочной информацией, вы можете получить исходное имя функций и переменных.
Более того, вы никогда не получите обратно комментарии в исходном коде, поскольку они никак не скомпилированы в двоичные исполняемые файлы.
Улучшение качества выходного источника и понимание двоичного кода всегда будет означать некоторое время и детективную работу. Декомпиляторы только делают большую часть работы.
Пример вывода Hopper без отладочной информации:
Графический интерфейс Hopper также очень удобен (несколько функций, одновременно расширенных на этом рисунке):
см. также связанный с этим вопрос. Почему истина и ложь так велики?
Источник
Command To Run (execute) Bin Files In Linux
I have downloaded a file from internet that ends with .bin extension. The documentation (INSTALL.TXT) file says just run bin file. What command I need to type in order to run bin files in Linux or Unix-like operating systems?
Tutorial details | |
---|---|
Difficulty level | Easy |
Root privileges | No |
Requirements | None |
Est. reading time | 1m |
A .bin file is a self extracting binary file for Linux and Unix-like operating systems. For example Java or Flash are two examples of these types of file. Just type following two commands to run .bin files. In this example, I am going to run a binary file called file.bin .
Run .bin file in Linux / UNIX
Change the permission of the file you downloaded to be executable. Type the following command:
$ chmod +x file.bin
Start the installation process or run .bin file. Type the following command:
./file.bin
- No ads and tracking
- In-depth guides for developers and sysadmins at Opensourceflare✨
- Join my Patreon to support independent content creators and start reading latest guides:
- How to set up Redis sentinel cluster on Ubuntu or Debian Linux
- How To Set Up SSH Keys With YubiKey as two-factor authentication (U2F/FIDO2)
- How to set up Mariadb Galera cluster on Ubuntu or Debian Linux
- A podman tutorial for beginners – part I (run Linux containers without Docker and in daemonless mode)
- How to protect Linux against rogue USB devices using USBGuard
Join Patreon ➔
For example if .bin file name is application.bin. Type the following commands:
$ chmod +x application.bin
$ ./application.bin
Another example for Java Linux self extracting binary file:
$ chmod +x jre-1_5_0-linux-i586.bin
$ ./jre-1_5_0-linux-i586.bin
OR
$ sh jre-1_5_0-linux-i586.bin
🐧 Get the latest tutorials on Linux, Open Source & DevOps via
Category | List of Unix and Linux commands |
---|---|
Documentation | help • mandb • man • pinfo |
Disk space analyzers | df • duf • ncdu • pydf |
File Management | cat • cp • less • mkdir • more • tree |
Firewall | Alpine Awall • CentOS 8 • OpenSUSE • RHEL 8 • Ubuntu 16.04 • Ubuntu 18.04 • Ubuntu 20.04 |
Linux Desktop Apps | Skype • Spotify • VLC 3 |
Modern utilities | bat • exa |
Network Utilities | NetHogs • dig • host • ip • nmap |
OpenVPN | CentOS 7 • CentOS 8 • Debian 10 • Debian 8/9 • Ubuntu 18.04 • Ubuntu 20.04 |
Package Manager | apk • apt |
Processes Management | bg • chroot • cron • disown • fg • glances • gtop • jobs • killall • kill • pidof • pstree • pwdx • time • vtop |
Searching | ag • grep • whereis • which |
Shell builtins | compgen • echo • printf |
Text processing | cut • rev |
User Information | groups • id • lastcomm • last • lid/libuser-lid • logname • members • users • whoami • who • w |
WireGuard VPN | Alpine • CentOS 8 • Debian 10 • Firewall • Ubuntu 20.04 |
Comments on this entry are closed.
if that doesn’t work try sudo ./file.bin on debian
or su ./file.bin on other distros
“chmod: cannot access `jre-6u26-linux-x64.bin’: No such file or directory”
What do I do, I am freaking out over it (Because ADHD) I tried it so many times it still won’t work, I’m also trying to play minecraft on Ubuntu
resubmitting to be notified of a reply by email.
Hello ,
I was trying to extract from the java bin file. I could change the mode, but when I say ./filename.bin ( according to your last example), it says file not found although I am just cutting and pasting the file name and it is in the same directory.
]$ chmod +x ./java_ee_sdk-5_05-linux.bin
[saras@node032
]$ ./java_ee_sdk-5_05-linux.bin
./java_ee_sdk-5_05-linux.bin: error while loading shared libraries: libstdc++.so.5: cannot open shared object file: No such file or directory
[saras@node032
]$
can you help please ? thanks
yu need to install libstdc++ package to solve this problem. Use yum under centos/fedora/redhat or apt-get under debian/ubuntu Linux.
Thanks Vivek.
I managed to unzip it. I have a unrelated question on running java on a cluster. Where can I ask the question. I was not sure if I should ask about it here.
while executing a bin file i am getting the message : End-of-central-directory signature not found.
i get the following erroe while running the ./Googleearthlinux.bin command that is the fllowing
Verifying archive integrity…Error in MD5 checksums: 97ca3ea1d8c49adb873a8a13114463b4 is different from 33fdc468b730cef74ac8f5cc4dc83259
Your file is corrupted. Delete current file and download fresh file again.
Hi,
I have a Synology 207+ at home running on Linux and the ARM architecture.
Now I want to install JRE so I can make Jetty run in order to be able to use Java servlets and jsp files in my webpage.
Now when trying to install j2re-1_4_2_19-linux-i586.bin I get an error:
380: /usr/bin/sum: Permission Denied
expr: syntax error
expr: syntax error
Extracting…
./install.sfx.15986: ./install.sfx.15986: 1: Syntax error: “(” unexpected
Done.
What does this mean? I’m not sure if I downloaded the proper JRE. Does someone know how to fix this? thanks
I have to run a UNIX shell script . What command I need to type in order to run UNIX shell files in Linux?
To run the UNIX shell script,type
./filename.sh.
Before running the above command,check the file permission because the file should have execute permission
When I normally klik the .bin file it opens with kate (text editor). I have tried to run the command, but it only opens mozilla and types it in the url section. What is wrong? I have installed libstdc++6
Hey guys,
I was trying to install SiteMinder Policy Server on CentOS 5.2. I already chmod+x’d it. As I executed the .bin file I received this error. I have googled it and this error is not mentioned in the install manual. I would appreciate some advise.
[root@localhost SiteMinder Policy Server]# ./ca-ps-12.0-sp1-linux.bin
Preparing to install…
Extracting the JRE from the installer archive…
Unpacking the JRE…
Extracting the installation resources from the installer archive…
Configuring the installer for this system’s environment…
‘SWING’ UI not supported by VM. Reverting to AWT.
Invocation of this Java Application has caused an InvocationTargetException. This application will now exit. (LAX)
Stack Trace:
java.lang.NoClassDefFoundError
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:140)
at java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment(GraphicsEnvironment.java:62)
at java.awt.Window.init(Window.java:224)
at java.awt.Window.(Window.java:268)
at java.awt.Frame.(Frame.java:398)
at java.awt.Frame.(Frame.java:363)
at com.zerog.ia.installer.LifeCycleManager.g(DashoA8113)
at com.zerog.ia.installer.LifeCycleManager.h(DashoA8113)
at com.zerog.ia.installer.LifeCycleManager.a(DashoA8113)
at com.zerog.ia.installer.Main.main(DashoA8113)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at com.zerog.lax.LAX.launch(DashoA8113)
at com.zerog.lax.LAX.main(DashoA8113)
This Application has Unexpectedly Quit: Invocation of this Java Application has caused an InvocationTargetException. This application will now exit. (LAX)
Hi,
Sometimes you need to change the file name and then install.
Hi!
I am new to linux.My situation:
ziga@ziga-laptop:
$ chomd +x./math.bin
ziga@ziga-laptop:
$ /home/ziga/math/…/emlin701/math.bin
bash: /home/ziga/math/…/emlin701/math.bin: cannot execute binary file
What can i do? Is there an option to transform an .bin into an .iso file?
Thanks for your help.
Easier way… Just right click, goto permissions tab, and mark as executable. Then open the terminal and drag & drop the .bin or w/e file into it, and press enter.
Thanks Tesu, heck of a lot easier
Im trying to install java 6.15 so I gave it 100% read write permission to everyone, and it still wont work. when I put $> jre-6u15-linux-i586-rpm.bin it says there is an error, order not found
For ubuntu you can just draw the file into terminal so it has the file location and type command run
Having trouble with trying to set up Java Runtime Environment, in the terminal it says..
Unpacking…
./jre-6u16-linux-i586.bin: 336: cannot create install.sfx.3679: Permission denied
Checksumming…
/usr/bin/sum: install.sfx.3679: No such file or directory
[: 363: -ne: unexpected operator
[: 363: -ne: unexpected operator
chmod: cannot access ‘install.sfx.3679’: No such file or directory
Extracting…
./jre-6u16-linux-i586.bin: 366: ./install.sfx.3679: not found
Failed to extract files.
Any idea on how to fix this??
Make sure downloaded file is not corrupted and you must install it as the root user.
I am trying to install an UnetBootin bin on a converted RHEL 6.4 (updated to CentOS 6.5) distro. nothing I do seems to change whether this see the file…
————————-
lrwxrwxrwx. 1 root root 16 Jul 28 13:32 libpng.so.3 -> libpng.so.3.49.0
lrwxrwxrwx. 1 root root 18 Jul 28 13:32 libpng12.so.0 -> libpng12.so.0.49.0
[burwellp@rexstation lib64]$ yum install /home/burwellp/Downloads/unetbootin-linux-608.bin
Loaded plugins: fastestmirror, refresh-packagekit, security
You need to be root to perform this command.
[burwellp@rexstation lib64]$ sudo yum install /home/burwellp/Downloads/unetbootin-linux-608.bin
[sudo] password for burwellp:
Loaded plugins: fastestmirror, refresh-packagekit, security
Loading mirror speeds from cached hostfile
* base: mirrors.einstein.yu.edu
* extras: centos.netnitco.net
* updates: mirror.team-cymru.org
Setting up Install Process
No package /home/burwellp/Downloads/unetbootin-linux-608.bin available.
Error: Nothing to do
[burwellp@rexstation lib64]$ sudo /home/burwellp/Downloads/unetbootin-linux-608.bin
/home/burwellp/Downloads/unetbootin-linux-608.bin: error while loading shared libraries: libpng12.so.0: cannot open shared object file: No such file or directory
————————-
[burwellp@rexstation lib64]$ sudo yum install libpng
Loaded plugins: fastestmirror, refresh-packagekit, security
Loading mirror speeds from cached hostfile
* base: mirror.solarvps.com
* extras: mirror.solarvps.com
* updates: mirror.cs.pitt.edu
Setting up Install Process
Package 2:libpng-1.2.49-1.el6_2.x86_64 already installed and latest version
Nothing to do
I am trying to install jdk-6u13-linux-i586.bin in fedora 11.
and i am getting this error.
i have performed the steps as mentioned in answer.
please help me..
please enter “yes” or “no”.
Do you agree to the above license terms? [yes or no]
yes
Unpacking…
Checksumming…
Extracting…
./jdk-6u13-linux-i586.bin: ./install.sfx.2551: /lib/ld-linux.so.2: bad ELF interpreter: No such file or directory
Failed to extract the files. Please refer to the Troubleshooting section of
the Installation Instructions on the download page for more information.
Hi Kunal, did you succeed to install JDK? I have the same problem.
Thanks.
Thanks, now adobe reader is running on my machine.
Thank You
easy to follow instructions. I have been left confused with other explanations
./AdobeAIRInstaller.bin
Error loading the runtime (/tmp/air.ZxdZsy/build/opt/Adobe AIR/Versions/1.0/libCore.so: cannot enable executable stack as shared object requires: Permission denied)
HELP……I am begging if someone could tell me how to execute a file, it has been doing my head in for the last 3days and i have tried everything. So please, please, please lert me know A.S.A.P tanks one love
I am trying to install jre on a HP thin client with about 256 Free space on the built in flash memory but when I run the comman ./jre blah blah blah and accept the agreement
i get the following output
unpacking…..
Checksumming…
Extracting….
Failed to extract the file. Please refer to the Troubleshooting section of the installation instructions on the download page for more information.
please help someone – I am trying to use a thin client to connect the a server via a web browser – wanting the run the business database from the browser – but on Windows, when you connect for the first time – you have to install Jinitiator but I dont know how to achieve this in linux so I was trying this – anyone knwo what I need to do
forgot to add a line to the error above
after the Extracting…..
it says
./jre *********.bin; line 366 ./install.sfx.22300; cannot execute binary file
apt-get install ia32-libs
Thanks a lot! I have search for 2 hours to the solution, and here it is!
if you got this error on an ubuntu 64bit system, try to install the ia32 libs
./jre *********.bin; line 366 ./install.sfx.22300; cannot execute binary file
sudo apt-get install ia32-libs
Thanks, exactly what was needed to get the legacy Adobe Air up and running on Mint 10 (64 bit)
Hi, Thanks it works for me.
R. Luntu
Thanks all, lots of good advice on linux binaries for the novices out here.
hey while installin java for a cloud cluster d agreement thing came up but its not exitin back to the terminal.. how do i get back to d terminal do tat it installs java??
Hi everyone,
Does speicial installation required on RedHat5 (i686) for installing JDK? I downloaded the java twice and i am still having this issue. Can someone please advice me if it me trying to install the wrong 64bit java version or the installation document is different?
chmod +x jdk-6u20-linux-x64.bin
./jdk-6u20-linux-x64.bin
…….Do you agree to the above license terms? [yes or no]
yes
Unpacking…
Checksumming…
Extracting…
./jdk-6u20-linux-x64.bin: line 477: ./install.sfx.3205: cannot execute binary file
Failed to extract the files. Please refer to the Troubleshooting section of
the Installation Instructions on the download page for more information.
Very useful instructions …
hi all…
im tryng to run jdk-6u23-linux-i586.bin in my ubuntu 8.10…. bt unable to..
$ sudo apt-get install ‘/home/hareen/Documents/jdk-6u23-linux-i586.bin’
Reading package lists… Done
Building dependency tree
Reading state information… Done
E: Couldn’t find package
this is the error im getting…..
please help…..
Thnx in advance. 🙂
hi.
i am new to shell, i want to acceess a web page on linux server from a remote machine .
can any one guide me what to do or which forum to follow….
plz….. its urgent
I have a list of commands to be executed in UNIX on dialy basis….
Is there anyway that i could save those commands in a document and execute those commands by using .sh….or anything else command?
I tried using .sh but it executes only the first line, what i need to do to make it run all the commands…?
You can use the “Cron” or “at” command to execute the jobs on a daily basis
Thanks very useful
how i can install exe modem file to linux suses please answer me cuz i need it
Wine is the only windows emulator that I know of that would work. Have you checked your /etc/pppd and /etc/ppp.conf files to see if there isn’t already a driver for your modem? If it’s a Ethernet NIC (network interface card) and not a “modem”, then it will probably work straight out of the box.
i want to install modem zain connect it’s setup.exe to linux how i can do that please tell me
Hi ,
I bit confused with LVM and RAID.Can someone explain me with a realtime example
Thank you. Very helpful!
thank u for the simple yet very helpful comment.
Thanks very much, it was a 64Bit sudo apt-get install ia32-libs did the job
What about is there any file’s name can be used to save a file to execute in terminal without command it from terminal? What i mean is i want it to be operated when i click on the file’s icon, it will directly run its function in terminal of linux fedora. (e.g. file.txt or file.sh or file.trx) but to run it in terminal is “file.?” ?
Thanks in advance.
hello,
I m installing java on AIX machine It shows error on
./install.sfx.409050 : 0403-006 execute permission denied .
thanks
You need to set execute permission using the chmod +x command:
thanks Vivek, But I alredy gave the permission to that file
Dear All. M having the following error while executing the commend
root@root:# ll | grep i86bi_linux-adventerprisek9-ms
-rwxrwxrwx 1 nayatel nayatel 93580556 2011-11-02 16:29 i86bi_linux-adventerprisek9-ms*
root@root:# ./i86bi_linux-adventerprisek9-ms
bash: ./i86bi_linux-adventerprisek9-ms: No such file or directory
Kindly suggest any solution
Looks like it’s been made executable (* at end) and you are the owner, the file has an inode and at least one file linked to it…. I take it that ll is an alias for ls -l or something akin to that, so unless it searches across multiple directories, and you aren’t in the correct directory to run the script (of course the file has to be in the PWD for it to run) then more than likely the file is corrupted and you have to download it again.
Thanks.
i success to run it.
On Ubuntu/Kubuntu variants…
$ ./AdobeAIRInstaller.bin
bash: ./AdobeAIRInstaller.bin: No such file or directory
Fixed by running:
$ sudo apt-get install ia32-libs
$ ./AdobeAIRInstaller.bin
Thank you all above who suggested this!
I am using CentOs 6 and this “compat-libstdc++-33” package along with its dependencies are responsible to run ./filename.bin file. After installing the above package, I have successfully executed .bin file in CentOs 6.
Simply run “yum install compat-libstdc++-33” to install this package.
Trying that now…
[burwellp@rexstation lib64]$ sudo yum install compat-libstdc++-33
[sudo] password for burwellp:
Loaded plugins: fastestmirror, refresh-packagekit, security
Loading mirror speeds from cached hostfile
* base: mirror.solarvps.com
* extras: mirror.solarvps.com
* updates: mirror.team-cymru.org
Setting up Install Process
Package compat-libstdc++-33-3.2.3-69.el6.x86_64 already installed and latest version
Nothing to do
trying to reinstall now
[root@rexstation Downloads]# ./unetbootin-linux-608.bin
./unetbootin-linux-608.bin: error while loading shared libraries: libpng12.so.0: cannot open shared object file: No such file or directory
[root@rexstation Downloads]# ls -ltr –color=never unet*
-rwxrwxrwx. 1 burwellp burwellp 4467972 Jul 28 11:49 unetbootin-linux-608.bin
I wonder if it’s a broken link somewhre…
[root@rexstation Downloads]# locate libpng12.so.0
/usr/lib64/libpng12.so.0
/usr/lib64/libpng12.so.0.49.0
[root@rexstation Downloads]# ls -ltr /usr/lib64/libpng12.so.0
lrwxrwxrwx. 1 root root 18 Jul 28 13:32 /usr/lib64/libpng12.so.0 -> libpng12.so.0.49.0
[root@rexstation Downloads]# ls -ltr libpng12.so.0.49.0
ls: cannot access libpng12.so.0.49.0: No such file or directory
[root@rexstation Downloads]# aha!
What the heck am I doing wrong here?
[root@rexstation Downloads]# ln -d /usr/lib64/libpng12.so.0.49.0 /usr/lib64/libpng12.so.0
ln: creating hard link `/usr/lib64/libpng12.so.0′: File exists
[root@rexstation Downloads]# ./unetbootin-linux-608.bin
./unetbootin-linux-608.bin: error while loading shared libraries: libpng12.so.0: cannot open shared object file: No such file or directory
[root@rexstation Downloads]# ls -ltr /usr/lib64/libpng12.so.0
lrwxrwxrwx. 2 root root 18 Jul 28 13:32 /usr/lib64/libpng12.so.0 -> libpng12.so.0.49.0
I wanted to make a .bin file which will copy all the files with name having “am” in common… usually in the terminal we use “cp *am* “… I wrote the same command inside the .bin file, a shown below… but it acts like “echo”… please help.
Источник