Unix & Linux

Linux、FreeBSDおよび他のUn * xのようなオペレーティングシステムのユーザーのためのQ&A

2
受け取っているアプリケーションを殺さずにLinux teeコマンドを終了する方法
Linuxマシンの電源が入っている限り実行するbashスクリプトがあります。以下に示すように開始します。 ( /mnt/apps/start.sh 2>&1 | tee /tmp/nginx/debug_log.log ) & 起動後、ps出力にteeコマンドが次のように表示されます。 $ ps | grep tee 418 root 0:02 tee /tmp/nginx/debug_log.log 3557 root 0:00 grep tee ログが特定のサイズに達すると、teeが生成するログのサイズを監視し、teeコマンドを強制終了する機能があります。 monitor_debug_log_size() { ## Monitor the file size of the debug log to make sure it does not get too big while true; do cecho …
19 linux  scripting  pipe  kill  tee 

3
パイプされたlsはls -1と同じですか?
lsいくつかの列に出力を返しますが、私が試したディレクトリでls|catは、バイトが同じ出力を返しますls -1。それでも、私はls -1答えの中でパイプされたように見えls -1|wc -lます。好む理由はありls -1ますか?...|catの出力が変わるのはなぜlsですか?
19 shell  ls 

1
LinuxシステムをBlueBorneリモート攻撃から保護するにはどうすればよいですか?
Armis Labは、LinuxおよびIoTシステムを含むBluetooth対応のすべてのデバイスに影響を及ぼす新しいベクトル攻撃を発見しました。 LinuxでのBlueBorne攻撃 Armisは、Linuxオペレーティングシステムに、攻撃者が感染したデバイスを完全に制御できる2つの脆弱性を開示しています。1つは情報漏えいの脆弱性です。これは、攻撃者が標的のデバイスで使用されている正確なバージョンを判断し、それに応じて攻撃を調整するのに役立ちます。2つ目はスタックオーバーフローで、デバイスを完全に制御できます。 たとえば、Bluetoothが有効になっているすべてのデバイスを悪意のあるものとしてマークする必要があります。感染したデバイスは悪意のあるネットワークを作成し、攻撃者がBluetooth範囲外のすべてのデバイスを制御できるようにします。LinuxシステムでBluetoothを使用して周辺機器(キーボード、マウス、ヘッドフォンなど)を接続すると、Linuxがさまざまなリスクにさらされます。 この攻撃は、ユーザーの操作、認証、またはペアリングを必要としないため、実質的に見えなくなります。 BlueZを実行しているすべてのLinuxデバイスは、情報漏洩の脆弱性(CVE-2017-1000250)の影響を受けます。 Bluetoothが有効になっているLinux OSはすべて、BlueBorne脆弱性スキャナー(脆弱なデバイスを検出するためのArmisのAndroidアプリケーションがデバイス検出を有効にする必要がありますが、攻撃を有効にするにはBluetoothのみが必要です)でチェックした後、脆弱であるとマークされます。 LinuxシステムでBluetoothを使用する場合、BlueBorne攻撃を軽減する方法はありますか?

6
圧縮された巨大なプレーンテキストファイルを部分的に抽出する方法は?
1.5 GBのサイズのzipファイルがあります。 その内容は1つのばかげた大きなプレーンテキストファイル(60 GB)であり、現在、すべてを抽出するのに十分なディスク領域がディスクに残っていません。 私のユースケースに関しては、コンテンツの一部を検査できれば十分です。 したがって、ファイルをストリームとして解凍し、ファイルの範囲にアクセスします(通常のテキストファイルの先頭と末尾を経由してアクセスできるように)。 メモリ(例:32GBマークから始まる最大100kbを抽出)または行(プレーンテキスト行3700-3900を指定)のいずれかを使用します。 それを達成する方法はありますか?

2
CPUを実行していないとき、grepは何をしますか?
で一致するものを探すgrepと、その後の検索にかかる時間が最初の検索よりもはるかに短いことに気づくことがよくあります(例:25秒対2秒)。明らかに、それは最後の実行からのデータ構造を再利用することによるものではありません-それらは割り当て解除されるべきでした。でtimeコマンドを実行するとgrep、興味深い現象に気付きました。 real 24m36.561s user 1m20.080s sys 0m7.230s 残りの時間はどこに行くのですか?毎回高速に実行するためにできることはありますか?(たとえば、ファイルをgrep検索する前に、別のプロセスにファイルを読み取らせます。)
19 grep  performance 

3
Bashの入れ子ブレース拡張ミステリー
この: $ echo {{a..c},{1..3}} これを生成します: a b c 1 2 3 これはいいですが、それを説明するのは難しいです $ echo {a..c},{1..3} 与える a,1 a,2 a,3 b,1 b,2 b,3 c,1 c,2 c,3 これはどこかに文書化されていますか?バッシュリファレンス(それはそれを使用した例であっても)それを言及しません。

3
ImageMagickでPDFを作成する際に2 GBの制限を超えます
convert約2,000個の画像からPDFファイルを作成するために使用しています。 convert 0001.miff 0002.miff ... 2000.miff -compress jpeg -quality 80 out.pdf 出力ファイルがメッセージで2 ^ 31-1バイト(2 GB -1)に達すると、プロセスは再現可能に終了します convert: unknown `out.pdf'. PDFファイルの仕様では、約10 GBが許可されています。からより多くの情報を取得しようとし-debug allましたが、ログ出力に有用なものが見つかりませんでした。ファイルシステムはext3で、少なくとも16 GiB(それ以上)のファイルを許可します。に関してはulimit、file sizeですunlimited。/etc/security/limits.confコメントアウトされた行のみが含まれます。他に何がこれを引き起こす可能性があり、どのように制限を増やすことができますか? ImageMagickバージョン:6.4.3 2016-08-05 Q16 OpenMP ディストリビューション:SLES 11.4(i586)

1
echo [9876543210]は1 4 5 6を表示します…なぜですか?
最後の4つのエコーステートメントに対して1 4 5 6が表示される理由を説明してください。私は偶然これにぶつかったのですが、今ではこの動作がなぜ起こるのか興味があります。 これらのステートメントは期待どおりに機能します(私にとって)。 $ echo [ 9876543210 ] [ 9876543210 ] $ echo [237890] [237890] これらのechoステートメントは常に1 4 5 6を表示します。これらの数値について何か特別なことはありますか? $ echo [9876543210] 1 4 5 6 $ echo [abcd9876543210ghi] 1 4 5 6 $ echo [-123456-] 1 4 5 6 $ echo [-7654321-] 1 4 5 6 ありがとう! …

2
Grep:manページから見出しの単語を検索すると予期しない結果
macOSでmanページをgrepしようとすると、奇妙な動作になります。たとえば、Bashのマニュアルページには次の文字列が明確に記載されていますNAME。 $ man bash | head -5 | tail -1 NAME そして、私がgrepしnameた場合、結果が得られますが、私がgrepした場合、結果は得られNAMEません: $ man bash | grep 'NAME' $ man bash | grep NAME 私はそこにあることがわかっている他の大文字の単語を試しましたが、SHELLyields を検索すると何も得られませんが、BASHyieldsを検索すると結果が得られます。 何が起きてる? 更新:すべての回答をありがとう!これに遭遇したコンテキストを追加する価値があると思いました。ラップするbash関数を作成したかったのでman、シェルビルトインのマニュアルページを検索しようとした場合は、Bashのマニュアルページの関連セクションにジャンプしてください。より良い方法があるかもしれませんが、ここに私が現在持っているものがあります: man () { case "$(type -t "$1")" in builtin) local pattern="^ *$1" if bashdoc_match "$pattern \+[-[]"; then command man bash | less …

1
psは、プロセスのコマンドラインの最大4096文字のみを出力します
Javaプロセスのgrepを実行すると、出力は以下になりますが、grep出力に表示されない実際のプロセス名(kafka.Kafka)につながる4096文字に制限されています。 これはgrepの制限ですか?4096の制限を超える文字を印刷する方法はありますか? ps -ef | grep java java -Xmx6G -Xms6G -server -XX:+ UseG1GC -XX:MaxGCPauseMillis = 20 -XX:InitiatingHeapOccupancyPercent = 35 -XX:+ DisableExplicitGC -Djava.awt.headless = true -Xloggc:/ x / kafka / data01 / kafka-app -logs / kafkaServer-gc.log -verbose:gc -XX:+ PrintGCDetails -XX:+ PrintGCDateStamps -XX:+ PrintGCTimeStamps -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate = false -Dcom。 sun.management.jmxremote.ssl = false …

3
/ dev / nvramへの書き込みは危険ですか?
nvramはBIOSのフラッシュ/バックアップに使用され、BIOS関連のデータが含まれているという情報を見つけました。うcat /dev/random > /dev/nvram永久レンガのコンピュータ?私はこのコマンドを入力したいのですが、どういうわけか自分のマシンにとってうまくいかないと思うので、このデバイスで遊んでいるのがどれほど危険か知りたいと思います。


3
Iceweasel nuke GNOMEを削除するのはなぜですか?
テスト用に古いDebian 7 VMを使用しています。スペースが不足しているため、VMのフットプリントサイズを削減しようとしています。Iceweaselは実際には使用しないので、削除したかったのですが、通常はで対処できwgetます。私が走っAptたとき、それはGNOMEも削除していると言った: $ sudo apt-get remove iceweasel* ... The following packages were automatically installed and are no longer required: hyphen-en-us libfs6 task-desktop x11-apps x11-session-utils x11-xfs-utils xinit xorg Use 'apt-get autoremove' to remove them. The following extra packages will be installed: icedove iceowl-extension Suggested packages: apparmor calendar-google-provider The following packages …
19 debian  apt  gnome  iceweasel 

7
シェル/ターミナルのランダムな色とジョーク
端末を使用しているときに冗談を言ったり、色を変えたり、ユーザーを笑ったりする人を見ました。それは、(年)以来、コンソールに漏れる色の線に沿って何かを言った。私はそれが何であったか覚えていませんが、Kubuntu Konsoleは長時間使用すると非常に退屈になるので、それを使用したいと思います。それが何であるか/どこで入手できるかについてのアイデアはありますか? 私が探しているのは、スクリプトまたはコマンド(または起動時に実行されるコマンド)を実行するためのユーザーからの特定の入力なしで、自動的にそれを行うものです。私が探しているものは、シェルの色のテーマをランダムな間隔で変更し、色の変更について冗談を言いました。おそらく、Kubuntuに組み込まれているKonsoleとは異なる端末プログラム(それが正しい用語かどうかはわかりません)でした。

2
2つのルートアカウント、何をすべきか?
私はUbuntu 15.04を使用していますが、今日はこのリンクからLinuxセキュリティに関する記事を読んでいます。 UID 0アカウントの部分まですべてがうまくいった ルートのみがUID 0を持つ必要があります。そのUIDを持つ別のアカウントは、多くの場合、バックドアと同義です。 彼らが私に与えたコマンドを実行すると、別のルートアカウントがあることがわかりました。その直後に記事のようにアカウントを無効にしましたが、このアカウントを恐れているので、彼を見つけることができます/etc/passwd rootk:x:0:500::/:/bin/false そして /etc/shadow rootk:!$6$loVamV9N$TorjQ2i4UATqZs0WUneMGRCDFGgrRA8OoJqoO3CCLzbeQm5eLx.VaJHeVXUgAV7E5hgvDTM4BAe7XonW6xmup1:16795:0:99999:7::1: を使用してこのアカウントを削除しようとしましuserdel rootkたが、このエラーが発生しました。 userdel: user rootk is currently used by process 1 プロセス1はsystemdです。誰かアドバイスをください。私はuserdel -f?このアカウントは通常のルートアカウントですか?
19 ubuntu  security  root 

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