タグ付けされた質問 「executable」

ファイルをプログラムとして実行できるようにするファイルモードの許可ビット。また、プログラムファイルの形式、およびプログラムファイルの検索と実行に関する質問もありました。

5
Linuxでの有害な可能性のあるプログラムの実行
学生が書いたプログラムをテストするプログラムを書いています。私はそれらを信頼できないことを恐れており、それを実行しているコンピューターにとってそれがひどく終わらないことを確認する必要があります。 システムリソースへのアクセスが制限されたクラッシュテストユーザーを作成し、そのユーザーとしてプログラムを実行することを考えていましたが、これまでのところネットで発見したことから、仮想システムを作成することが最も安全なオプションになるでしょう... 誰かが正しいアプローチを選ぶのを手伝ってくれますか?セキュリティは私にとって大きな関心事です。その一方で、私はやり過ぎで、本当に必要のないものを学ぼうとする多くの時間を浪費する解決策を望んでいません。

2
「command not found」と「no such file or directory」の違いは?
例えば: $ node -bash: /usr/local/bin/node: No such file or directory $ foo -bash: foo: command not found 違いは何ですか?どちらの場合でも、nodeまたfoo無効なコマンドですが、Unixがnodeバイナリを見つけられないようです。プログラムをアンインストールするとき、たとえばnode、これをクリーンアップする方法はありますか? $ node -bash: node: command not found 編集: typeコマンドの結果: $ type node node is hashed (/usr/local/bin/node) $ type foo -bash: type: foo: not found


1
Windowsがファイルが現在使用されていると文句を言う場所で、ファイルを削除/置換できるLinuxの異なる動作は何ですか?
私が持っている例はMinecraftです。LinuxでBukkitを実行する場合、/ pluginsフォルダー内の.jarファイルを削除または更新し、単に「reload」コマンドを実行できます。 Windowsでは、削除または置換しようとすると.jarファイルが現在使用されていると文句を言うので、サーバープロセス全体を停止する必要があります。 これは私にとって素晴らしいですが、なぜそれが起こるのですか?ここでLinuxはどう違うのですか?

2
sudo:./script.shを実行できません:そのようなファイルまたはディレクトリはありません
私は困惑しています。/homeディレクトリに実行可能なスクリプトがあります: [user@server ~]$ ll total 4 -rwx------ 1 user user 2608 Jul 15 18:23 qa.sh しかし、それを実行しようとすると、sudo見つかりませんと言われます: [user@server ~]$ sudo ./qa.sh [sudo] password for user: sudo: unable to execute ./qa.sh: No such file or directory これは新規ビルドです。問題を引き起こすような変更は行われていません。実際、スクリプトのポイントは、ポリシーに従って実際に構築されるようにすることです。多分それはそうではなくsudo、ビルド中に実際に壊れていますか? またsudo、他のディレクトリで他のコマンドを使用して実行できることにも注意してください。 編集:スクリプト(私はそれを書いていないので/bin/bash、私にそれを書かないでください;)) #! /bin/bash . /root/.bash_profile customer=$1 if [ -z "$customer" ]; then echo "Customer …

5
Mac OS XとLinuxのバイナリ互換性
私自身、システムのようなUNIXの内部動作やプログラミング全般については比較的新しいので、この質問は素朴で愚かに見えるでしょう。 準備はいい?OK!私は約3レベルの滑らかさを経験します。 同様のハードウェアを備えた2つのシステムがあります(主要なポイントはプロセッサです。標準のIntel Core 2 Duoとしましょう)。 1つは実行中です(ここにLinuxディストリビューションを挿入します:以降はUbuntuを使用します)。もう1つは実行中です。たとえば、Mac OS Xです。 同等のプログラムをコンパイルします。次のように言いましょう。 int main() { int cat = 33; int dog = 5*cat; return dog; } 共有ライブラリの影響をまだ考慮したくないため、コードは非常に単純です。 それぞれのシステムでコンパイルされた場合。出力の主な違いはELFとMach-Oの問題ではありませんか?フォーマットの各バイナリを削除し、フラットなバイナリを残した場合、逆アセンブルされたマシン命令は同じになりませんか?(おそらく、コンパイラの習慣/傾向に応じていくつかの違いがあります)。 1.) Ubuntuシステムから生成されたフラットバイナリをMach-Oフォーマットで再パッケージ化するプログラムを開発する場合、Mac OS Xシステムで実行されますか?次に、上記の想定プログラムのコンパイル済みバイナリのみがあり、フラットバイナリを再パッケージ化するためのこの神秘的なツールがある場合、単純なプログラムはMac OS Xシステムで実行できますか? それでは、もう少し詳しく見てみましょう。 現在、次のようなソースを備えたプログラムがあります。 #include <stdio.h> int main() { printf("I like tortoises, but not porpoises"); return 0; } 2.)このプログラムがコンパイルされ、静的にリンクされていると仮定すると、魔法のプログラムは未加工のバイナリをMach-O形式で再パッケージし、mac os …

11
./testではなく.testとして実行
私が実行可能ファイルと同じフォルダにいると仮定すると、実行するにはこれを入力する必要があります。 ./file 入力するのは難しい/ので、入力する必要/はありません。 ファイルを実行する簡単な方法はありますか?次のような単純な構文が理想的です。 .file または何か他のものが、/そこに文字を挿入するよりも簡単です。 おそらく、/binディレクトリに何かを入れたり、インタープリターのエイリアスを作成したりする方法があります。 p file

2
実行可能ビットが設定されていないのにrootが実行できないのはなぜですか?
rootユーザーは、writeアクセス許可が設定されていなくてもファイルに書き込むことができます。 rootユーザーは、readアクセス許可が設定されていなくてもファイルを読み取ることができます。 root権限が設定されていなくても、ユーザーは cdディレクトリに移動できexecuteます。 rootパーミッションが設定されていない場合、ユーザーはファイルを実行できませんexecute。 どうして? user$ echo '#!'$(which bash) > file user$ chmod 000 file user$ ls -l file ---------- 1 user user 12 Jul 17 11:11 file user$ cat file # Normal user cannot read cat: file: Permission denied user$ su root$ echo 'echo hello' >> file # …

4
実行中のLinuxシステムの更新に問題がないのはなぜですか?
私は毎日Linuxシステムを使用している年であり、実行中にシステムを更新することで大きな問題は一度もありませんでしたが、なぜこれが可能か疑問に思います。 例を挙げましょう。 特定のパッケージのプログラム「A」がシステムで実行されているとします。このプログラムは、ある時点で、同じパッケージから別のファイル(「B」)を開く必要があります。その後、プログラム「A」は「B」を必要としないため、閉じます。今、「A」と「B」が属するパッケージを更新するとします。「A」は、RAMで実行されており、ハードディスク上の「A」を置き換えただけなので、少なくとも現時点では、この操作の直接の影響を受けません。ファイルシステムの「B」も置き換えられたとします。現在、「A」は何らかの理由で「B」を再度読み取る必要があります。問題は、「A」が「B」の互換性のないバージョンを見つけて、他の方法でクラッシュまたは誤動作する可能性はありますか? ライブCDまたは同様の手順で再起動してシステムを更新する人がいないのはなぜですか?


1
/ bin / fileの出力で実行可能ファイルを参照する場合、「LSB」とはどういう意味ですか?
Linux でのコマンドの出力に「LSB実行可能ファイル」または「LSB共有オブジェクト」という用語が見つかりましたfile。例えば: $ file /bin/ls /bin/ls: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.32, BuildID[sha1]=4637713da6cd9aa30d1528471c930f88a39045ff, stripped この文脈で「LSB」とはどういう意味ですか?

1
Linuxは(非テキスト)バイナリの実行に使用する機能をどのように決定しますか?
Linuxはシェバン行を使用してスクリプト言語に使用するインタープリターを決定することを理解していますが、バイナリに対してはどのように機能しますか? つまり、Linuxバイナリを実行でき、wineとmono、Windowsネイティブと.NETバイナリの両方をインストールしたということです。そして、それらのすべてについて、それ./binary-nameを実行するのは(PATHにない場合)ただです。 Linuxは、特定のバイナリをLinuxネイティブバイナリ、Windowsネイティブバイナリ(ワイン機能を使用)、またはWindows .NETバイナリ(モノ機能を使用)として実行する必要があるとどのように判断しますか?
23 linux  executable 

1
特定のコマンドをだまして別の日付であると考える方法
システムの日付とは異なる日付であると信じ込ませてコマンドを実行するにはどうすればよいですか? たとえば、このスクリプトがある場合: #!/usr/bin/env bash date +"%B %d, %Y" 実際の日付を出力します: march 13, 2014 しかし、システムの日付を変更せずに、未来または過去の別の日付を印刷したいと思います。 十分に明確でない場合は、このWindows GUIツールのようなコマンドラインツールが必要です。 別のスクリプトを使用したくありません(単なる例です)。cronjob を設定したくありません。 一般的なシステム日付を変更したくありません。 実行するコマンドに適用される日付のみを変更します。
23 date  executable 


1
〜/ .local / binはどうやって始まったのですか?それはどのくらい広がっていますか?
〜/ .local / binに実行可能ファイルを置くツールが増えています。私は古く、私にとっては〜/ binが$ HOMEの実行可能ファイルの場所です。 このクレイジーな新しいファッションはどこから生まれたのですか?なぜ人々はこれをしているのですか?それはどのくらい広がっていますか?それはどこでも形式化されていますか?XDGディレクトリ仕様にはありません。 関連する質問があります: どのディストリビューションが$ PATHに$ HOME / .local / binを持っていますか? 別の質問へのコメントは、すでに2008年に戻っていたhttps://www.python.org/dev/peps/pep-0370を参照しています:なぜこのプログラムは〜/ .local / binにインストールされたのです か?私はそれが起こるのを見ましたか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.