Unix & Linux

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

2
環境設定された実行可能パスを使用してsystemdユニットファイルを作成する
Javaアプリケーション用のsystemdユニットファイルを作成していますが、起動に使用するJavaのバージョンを制御したいと思います。私の(簡略化された)サービスファイルは [Service] Type=simple EnvironmentFile=%h/Documents/apps/app/app-%i/app.cfg ExecStart=${JAVA_HOME}/bin/java ${JAVA_OPTS} -jar %h/Documents/apps/app/app-%i/myapp.jar SuccessExitStatus=143 起動しようとするとエラーが返されます Apr 28 12:43:37 rombert systemd[1613]: [/home/robert/.config/systemd/user/app@.service:7] Executable path is not absolute, ignoring: ${JAVA_HOME}/bin/java ${JAVA_OPT Apr 28 12:43:37 rombert systemd[1613]: app@1.0.0.service lacks both ExecStart= and ExecStop= setting. Refusing. 私はそれJAVA_HOMEが正しく設定されていることを知っています。ExecStart最初に行を変更してから/usr/bin/java、それを-DsomeOption=${JAVA_HOME}うまく追加できるように追加すると、 明らかな回避策はラッパースクリプトを作成することですが、サービスファイルを使用するポイントを無効にすると感じています。 ユニットファイルを使用してJavaアプリケーションのJAVA_HOMEを設定するにはどうすればよいですか?
17 systemd  java 


4
可能なSSH攻撃者のIPアドレスを取得する方法は?
記録しcat /var/log/auth.logて、| grep "Failed password for"記録がたくさんあることを確認しました。 ただし、有効/無効なユーザー用の2つのレコードタイプがあります。それは| cut彼らへの私の試みを複雑にします。 考えられる攻撃者のIPアドレスと各IPアドレスの試行回数を含むリスト(テキストファイル)を作成したいと思います。簡単に作成する方法はありますか? また、のみに関してssh:/var/log/auth.log可能な攻撃者のリストを作成する際に考慮すべきすべての記録は何ですか? 隠し番号を使用した「auth.log」の例: cat /var/log/auth.log | grep "Failed password for" | sed 's/[0-9]/1/g' | sort -u | tail 結果: Mar 11 11:11:11 vm11111 sshd[111]: Failed password for invalid user ucpss from 111.11.111.111 port 11111 ssh1 Mar 11 11:11:11 vm11111 sshd[111]: Failed password …

3
どの「ファイル記述子」が同じ「オープンファイル記述」を共有しているかを調べる
私が(Bourneのようなシェルで)する場合: exec 3> file 4>&3 5> file 6>> file ファイル記述子3と4は、4がdup()3から編集されたため、同じ開いているファイルの説明を共有します(同じプロパティ、ファイル内の同じオフセット...)。そのプロセスのファイル記述子5と6は、異なるオープンファイル記述上にあります(たとえば、それぞれファイル内に独自のポインターがあります)。 これで、lsof出力で表示されるのは次のとおりです。 zsh 21519 stephane 3w REG 254,2 0 10505865 /home/stephane/file zsh 21519 stephane 4w REG 254,2 0 10505865 /home/stephane/file zsh 21519 stephane 5w REG 254,2 0 10505865 /home/stephane/file zsh 21519 stephane 6w REG 254,2 0 10505865 /home/stephane/file それは少し良いですlsof +fg: zsh …


3
LVMはその構成をどこに保存しますか?
LVMが構成データを保存する方法/場所を理解しようとしています。 んpvcreate /dev/sdbに任意のメタデータを書きますか/dev/sdb?もしそうなら、何が書かれていますか? vgcreate data /dev/sdb /dev/sdcボリュームグループの構成はどこに保存されますか? LVMは論理エクステントと物理エクステント間のマッピングをどこに保存しますか? LVM構成にマシン固有の構成はありますか? 論理ボリュームに構成された2つのディスクを持つマシンがあり、それらのディスクをマシンから取り出して別のマシンに配置し、論理ボリュームが新しいマシンで動作することを期待できますか?
17 lvm 

3
NixOS / nixpkgsのローカルリポジトリを作成するにはどうすればよいですか?
Nixパッケージのローカルリポジトリを作成するために見つけたすべての手順には、メインnixpkgsリポジトリのローカルクローンを作成して追加することが含まれます。 ローカルアドオンパッケージのみを含む小さなリポジトリを作成する方法はありますか?

4
パイプの隣のスペース
私が見たhistory | grep blahとhistory |grep blah; そしてhistory|grep blah誰もそれを使用するようだけれどもまた、動作します。 スペースに意味はありますか(例:異なるコマンドへの/からのパイプにはスペースの異なる使用が必要です)、またはそれは常に任意ですか?
17 bash  shell  pipe 

4
forkとexecはどのように機能しますか?
私はあまり経験がなく、ユーザーレベルからハードウェアにどのように解釈するのかプロセスに関与しようとしています。 そのため、コマンドがシェルから起動されると、そのコマンドのfork()子プロセスを継承し、子プロセスをexec()メモリにロードして実行します。 子プロセスに親プロセス(元のプロセス)のすべての属性が含まれている場合、この子プロセスの必要性は何ですか?元のプロセスもメモリにロードされている可能性があります。 これforkとexec概念は、UNIXのすべての実行可能プログラムに適用されますか?シェルスクリプトも、コマンドだけが好きですか?シェルの組み込みコマンドにも適用されますか? コマンド/スクリプトを実行する場合、コピーオンライトの概念はいつ使用されますか? 一度に多くの質問をしてすみませんが、コマンドの実行について考えると、これらすべての質問が一度に思い浮かびます。
17 fork  exec 

1
特定の深さのサブフォルダーで再帰的にrsync
私がしたいrsync再帰的にフォルダだけが特定の深さに含まれるサブフォルダをしたいです。 たとえば、次のように1、2、3、または4つのサブフォルダーの深さが必要です。 source/ ├── subfolder 1 │ ├── subsubfolder │ │ ├── subsubsubfolder │ │ │ └── wanted with depth 4.txt │ │ └── wanted with depth 3.txt │ └── wanted with depth 2.txt ├── subfolder 2 │ └── wanted with depth 2.txt └── wanted with depth 1.txt

6
viコマンドライン、行と列に移動
emacsとvi(vim)の使用を長い間混合しています。それぞれに利点があります。プロセスなどのコンパイルからのエラー出力を解析し、行番号と列番号を取得しますが、行と列emacsに直接移動するためにのみ使用できます: emacs +15:25 myfile.xml vi私は(manページによる)行番号を持っています vi +15 myfile.xml vi +/pattern myfile.xml一度も動かなかったパターン()にカーソルを移動するオプションがあります。しかし、パターンが常にファイル内で最初に出現するわけではないため、それは私を助けません。 viファイルの15行目の25桁目に移動するにはどうすればよいですか?-cオプションで何かできますか?
17 vim  cursor 

1
シェル算術評価で非サニタイズデータを使用することのセキュリティへの影響
最近の質問へのコメントで、StéphaneChazelasは、二重カッコ算術には次のようなセキュリティの影響があると述べています。 x=$((1-$x)) ほとんどのシェルで。 私のGoogleスキルは錆びているようで、何も見つかりません。二重括弧演算のセキュリティ上の意味は何ですか?

1
i3-lockの画像の設定:「画像xを読み込めませんでした:メモリ不足です」
画面をロックするためにこのコマンドを使用します: i3lock -i /home/freyja/pics/owl.jpg 画面はロックされていますが、画像はありません(白い背景のみ)。コンソールから呼び出されると、コマンドは次のように言います。 Could not load image /home/freyja/pics/owl.jpg: out of memory. これについて何ができますか?システム全体でメモリが不足していますか(そうではないように思われますか)、またはi3ロックだけに内部制限がありますか?画像は大きい(HD)が、解像度は私の画面に正確に一致するので、小さいものは使いたくない。

1
BOOTPROTO = none | 静的| dhcpおよび/etc/resolv.conf
それは言うとき、それはどういう意味BOOTPROTO=noneで/etc/sysconfig/network-scripts/ifcfg-eth0のファイル。 以前は存在していたことを覚えていますがBOOTPROTO=static、a IPADDR=<x.x.x.x>が与えられた場合、サーバーは指定されたIPアドレスを取得することを伝えることは非常に明確で簡単でした。同様に、BOOTPROTO=dhcpDHCPサーバーを探して動的IPアドレスを取得します。Redhatのコメント: BOOTPROTO=protocol where protocol is one of the following: none — No boot-time protocol should be used. bootp — The BOOTP protocol should be used. dhcp — The DHCP protocol should be used. ifcfg-eth0ファイルでIPを指定しない場合、DHCPサーバーを検索し、IPが指定されている場合、その静的IPを取得しますか? IPADDR=BOOTPROTOがnoneに設定されているときにIPアドレスが指定されている場合でも、DHCPサーバーを探して/etc/resolv.confを変更する可能性はありますか? コンテキスト:-データセンターを移動し、多くのサーバーのIPアドレスを変更する必要がありました。/etc/resolv.conf新しいDNSサーバーのIPアドレスを変更しましたが、何らかの理由で、一部のサーバーで/etc/resolv.conf空白になったり、古いDNS IPアドレスを見つけたりしました。では/etc/init.d/networkスクリプト私はそれが呼び出し元であることがわかり/etc/sysconfig/network-scripts/network-functions、この機能を持っています。これが犯人ですか? # Invoke this when /etc/resolv.conf has changed: change_resolv_conf () { s=$(/bin/grep …

1
find -maxdepth 0出力を返さない
find -maxdepth 0オプションの使用方法を理解しようとしています。 以下のディレクトリ構造があります。 --> file1 --> parent --> child1 --> file1 --> file2 --> child2 --> file1 --> file2 --> file1 ここで、次のようにfindコマンドを実行します。 find ./parent -maxdepth 0 -name "file1" find ./ -maxdepth 0 -name "file1" find . -maxdepth 0 -name "file1" 上記のfindコマンドのいずれも使用しない場合、file1が返されます。 のmanページからfind、以下の情報が表示されます。 -maxdepth 0は、コマンドライン引数にテストとアクションのみを適用することを意味します。 -maxdepth 0オプション付きのいくつかの例を検索しましたが、適切な例が見つかりませんでした。 私のfindバージョンは、 find --version …
17 find 

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