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

これらの質問はLinux全般に関するもので、特定のディストリビューションに固有のものではありません。質問がたまたまLinux環境にある場合は、質問の本文にLinuxディストリビューションを指定してください。/linuxタグは使用しないでください。

1
一般的なTCPを使用するサービスには、/ etc / servicesにTCPエントリだけでなくUDPもあるのはなぜですか?
Goでネットワークプログラミングに関する本を読んでいます。章の1つでは、/ etc / servicesファイルを扱います。このファイルの調査中に気づいたのは、両方ともトランスポート層でTCPを使用するHTTPやSSHなどの特定の一般的なエントリに、UDPの2番目のエントリがあることです。たとえば、Ubuntu 14.04の場合: ubuntu@vm1:~$ grep ssh /etc/services ssh 22/tcp # SSH Remote Login Protocol ssh 22/udp ubuntu@vm1:~$ grep http /etc/services http 80/tcp www # WorldWideWeb HTTP http 80/udp # HyperText Transfer Protocol なぜこれらに2つのエントリがあるのか​​誰でも知っていますか?SSHやHTTPがUDPを使用するとは思わない(SSHのこの質問で確認された)。

3
このスクリプトは、それ自体の1つのインスタンスのみが実行されていることをどのように確認しますか?
2013年8月19日に、Randal L. Schwartzはこのシェルスクリプトを投稿しました。これは、Linux上で、「[スクリプト]の1つのインスタンスのみが実行され、競合状態やロックファイルのクリーンアップなし」を保証することを目的としています: #!/bin/sh # randal_l_schwartz_001.sh ( if ! flock -n -x 0 then echo "$$ cannot get flock" exit 0 fi echo "$$ start" sleep 10 # for testing. put the real task here echo "$$ end" ) < $0 宣伝どおりに動作するようです: $ ./randal_l_schwartz_001.sh & ./randal_l_schwartz_001.sh [1] 11863 11863 start …


2
OOMキラーが適切に機能せず、OSがフリーズする
何年もの間、私のオペレーティングシステムのOOMキラーは適切に動作せず、システムのフリーズにつながります。 メモリ使用量が非常に高い場合、プロセスを強制終了してメモリを解放するのではなく、システム全体が数時間または数日間「フリーズ」(実際には非常に遅くなる)する傾向があります。 記録した最大時間は、リセットを実行するために自分自身を辞任する7日前です。 OOMに到達しようとすると、iowaitは測定不能になる前に非常に高くなります(〜70%)。 ツール:すべてのプログラムがハードドライブから非常に高いスループット(数十MB /秒あたり)で読み取りを行っていることを示しています。 それらのプログラムは何を読んでいますか?iotop -ディレクトリ階層? -実行可能コード自体? 私は正確に今はしません。 [編集]このメッセージを書いた時点(2017年)で、最新のArchLinux(4.9.27-1-lts)を使用していましたが、この問題は数年前から既に経験していました。 さまざまなLinuxディストリビューションと異なるハードウェア構成で同じ問題が発生しました。 現在(2019年)、私は私が持っているuptodateのDebian 9.6(4.9.0)を使用しています16ギガバイトの物理RAM、私のOSがインストールされているSSDのではなく、任意のスワップパーティションを。 持っているRAMの量のため、スワップパーティションを有効にしたくありません。問題の出現を遅らせるだけです。 また、SSDを頻繁にスワップすると、ディスクの寿命が短くなる可能性があります。 ちなみに、スワップパーティションを使用して、または使用せずに試してみましたが、問題の出現を遅らせるだけで、解決策ではないことがわかっています。 私にとってこの問題は、Linuxがキャッシュから重要なデータをドロップするという事実によって引き起こされます。 Linuxが実行中のプログラムの実行可能コードページをドロップしないのではないかと考えています。 この問題を解決するために、いくつかのことを試しました。 1つは(1 GB)に設定/proc/sys/vm/min_free_kbytesすることでした1000000。 この1 GBは空いているはずなので、このメモリは重要なデータをキャッシュするためにLinuxによって予約されると思いました。 しかし、うまくいきませんでした。 また、私はそれを定義することによって、物理メモリのサイズに仮想メモリのサイズを制限し、理論的に大きな音ができても、それを追加するのに便利だと思う/proc/sys/vm/overcommit_memoryに2まともな技術的に可能な私の状況ではないが、アプリケーションの種類理由私が使用するものは、何らかの理由で実際に使用するよりも多くの仮想メモリを必要とします。 ファイル/proc/meminfoによると、Commited_AS値は多くの場合、システムの物理RAMの2倍よりも大きくなっています(16 GB、Commited_ASは多くの場合32 GBを超えています)。 私はこの問題を経験している/proc/sys/vm/overcommit_memoryデフォルト値にする:0、とのために私はそれを定義しているが:1、私はプログラムがで殺されるのが好ましいので、OOMキラー彼らはの戻り値をチェックしていないためではなく、誤って振る舞いますmalloc割り当ては拒否されます。 IRCでこの問題について話していたとき、このまったく同じ問題を経験した他のLinuxユーザーに会ったことがあるので、多くのユーザーがこれに懸念を持っていると思います。 私にとっては、Windowsでさえ高いメモリ使用量を処理できるため、これは受け入れられません。 さらに情報が必要な場合は、提案をしてください、教えてください。 ドキュメント: https : //en.wikipedia.org/wiki/Thrashing_%28computer_science%29 https://en.wikipedia.org/wiki/Memory_overcommitment https://www.kernel.org/doc/Documentation/sysctl/vm txt https://www.kernel.org/doc/Documentation/vm/overcommit-accounting https://lwn.net/Articles/317814/ 彼らはそれについて話します: なぜLinuxのメモリ不足(OOM)キラーは自動的に実行されず、sysrq-keyで動作するのですか? OOM-killerがリソース豚を殺さないことがあるのはなぜですか? OOM Killerのプリロード 強制スワップでOOM-killerをトリガーすることは可能ですか? OOM状況に近い高遅延を回避する方法 https://lwn.net/Articles/104179/ …

5
ファイルは順次ディスクに保存されますか?
私が理解したように、「スパースファイル」とは、ファイルに「ギャップ」があり、実際に使用されるデータが論理ファイルサイズよりも小さいことを意味します。 Linuxファイルシステムはディスク上のファイルをどのように保存しますか?私は主にext4に興味があります。しかし: ファイルをディスク上に順番に保存することはできませんか?つまり、ファイルの一部は物理アドレスXにあり、次の部分は物理アドレスYにありますが、これはX +オフセットに近くありません)。 ファイルの連続性を何らかの方法で制御できますか? 10GBのファイルを割り当てたいです。ディスク上で連続し、異なるオフセット間で分割されないようにします。 異なるタイプ間で異なる動作をしますか?

5
Linux上の1つのプロセスのすべてのスレッド(および子)を放棄する方法は?
Linuxは(まだ)POSIX.1標準に従っていないと言うことreniceに従っているため、プロセス上は、「プロセス内のすべてのシステム・スコープ・スレッド」に影響をpthreadsの(7)DOC「のスレッドが共通の素敵な値を共有しません」。 ただし、renice特定のプロセスに関連する「すべて」が便利な場合もあります(1つの例は、Apacheの子プロセスとそのすべてのスレッドです)。そう、 特定のプロセスに属するreniceすべてのスレッドをどのようにすればよいですか? 特定のプロセスに属するreniceすべての子プロセスはどうすればよいですか? 私はかなり簡単な解決策を探しています。 私はことを知っているプロセスグループは、時には役に立つことができ、しかし、彼らはいつも私が何をしたいのか一致しません:彼らはプロセスのより広範または異なるセットを含めることができます。 cgroupマネージドを使用することsystemdも役立つかもしれませんが、それについて聞いてみたいと思っても、ほとんどの場合「標準」ソリューションを探しています。 編集:また、man (7) pthreads「プロセス内のすべてのスレッドは同じスレッドグループに配置されます。スレッドグループのすべてのメンバーは同じPIDを共有します」。それで、それreniceがそれ自身のPIDを持っていない何かにさえ可能ですか?
22 linux  process  nice  thread 


3
/ dev / randomに書き込むと、/ dev / randomからの並列読み取りが速くならないのはなぜですか?
通常、読み取り/dev/randomは100〜500バイトとブロックを生成し、エントロピーが収集されるのを待ちます。 /dev/random他のプロセスによる情報の書き込みが読み取りを高速化しないのはなぜですか?必要なエントロピーを提供すべきではありませんか? gpg再起動せずにすべてを再入力せずにブロック解除または同様のソフトウェアを使用する場合、非スーパートップシークレットキーを生成する場合などに役立ちます。
22 linux  random 


4
Linuxはシェルスクリプトをどのように処理しますか?
この質問では、bashシェルスクリプトを考えてみましょう。ただし、この質問はすべてのタイプのシェルスクリプトに適用できる必要があります。 誰かがシェルスクリプトを実行すると、Linuxはすべてのスクリプトを一度に(おそらくメモリに)ロードしますか、それともスクリプトコマンドを1つずつ読み込みますか(行ごと)? 言い換えると、シェルスクリプトを実行し、実行が完了する前に削除すると、実行は終了しますか、それともそのまま続行しますか?

2
Bashは手動で開始しない限り.bashrcを読み取りません
bash.bashrc手動でbash端末から実行しない限り、対話型端末からソースを取得しません。 $ bash または手動でそれを入手します: $ source ./.bashrc または実行中: $ st -e bash 私が望むいくつかの有用な出力を以下に示します。 $ echo $TERM st-256color $ echo $SHELL /bin/sh $ readlink /bin/sh bash $ shopt login_shell login_shell off 私はCRUX Linux 3.0を使用していますがdwm、とを使用していstます。使用.bash_profileしてみました.profileが、成功しませんでした。 何か案は?
22 linux  bash  shell  bashrc 

4
ddがキャッシュしない、またはキャッシュから読み取らない
私は、ddのbusyboxバージョンを使用した組み込みシステムで作業しています。外部ユーティリティからドライブへの消去をテストしようとしていますが、ddは消去後にディスクから再度読み取りを行いませんが、キャッシュされたデータを表示します。 最初のddを実行し、データを確認し、システムを再起動してキャッシュをフラッシュし、消去を実行し、ddを再度実行してすべてゼロになったため、ddに絞り込みました。 ただし、工場出荷時の設定でddを実行し、ドライブを消去し、再起動せずに再度ddを実行すると、再起動するまですべてのゼロが表示されません。 GNUのマンページで、ddはnocacheフラグを使用してiflag optをサポートしているが、busyboxはそのオプションをサポートしていないので、それは論外です。 私の質問は、ddにキャッシュからではなく、ディスクからの読み取りを強制するにはどうすればよいですか?
22 linux  dd 

6
Fedora 19でデフォルトの「ens33」ネットワークデバイスを古い「eth0」に変更するにはどうすればよいですか?
VMwareワークステーション9にFedora 19をインストールしました。デフォルトのネットワークデバイスは、RHELの「eth0」ではなく「ens33」です。 「eth0」を使用する必要があるのは、当社製品のライセンスコンポーネントを「eth0」にリンクする必要があるためです。 同様の問題について議論する投稿がいくつかありますが、そのほとんどは古いOS向けです。私の状況に完全に一致するものは見つかりませんでした。

2
権限のないファイルを削除するにはどうすればよいですか?
ハッカーが問題を引き起こしている私のtmpディレクトリにファイルをドロップしました。スクリプトが失敗しているため、GBのerror_logエントリを作成する以外、悪意はありません。ただし、実行に使用しているファイルには権限がなく、ROOTであってもこのファイルを削除または名前変更することはできません。 ---------- 1 wwwusr wwwusr 1561 Jan 19 02:31 zzzzx.php root@servername [/home/wwwusr/public_html/tmp]# rm zzzzx.php rm: remove write-protected regular file './zzzzx.php'? y rm: cannot remove './zzzzx.php': Operation not permitted 私もiノードで削除しようとしました root@servername [/home/wwwusr/public_html/tmp]# ls -il ... 1969900 ---------- 1 wwwusr wwwusr 1561 Jan 19 02:31 zzzzx.php root@servername [/home/wwwusr/public_html/tmp]# find . -inum 1969900 …

2
grsecurityパッチがVanilla Kernelに含まれていないのはなぜですか?
grsecurityパッチ(またはパッチがもたらすセキュリティ機能)がデフォルトでカーネルに含まれていない理由は何ですか。セキュリティの利点を見ると、バニラカーネルはそのままでは非常に安全ではないようです。 これがトレードオフの場合(セキュリティ対策を回避したいアプリケーション)、grsecurityバニラカーネルで有効にするオプションである可能性があります。 主流のバニラカーネルには非常に多くのものがあるため、コミュニティがを含めたくない理由を理解するのに苦労していますgrsecurity。

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