Unix & Linux

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

4
システムの残りをそのままにしてLinuxカーネルを更新する
私はOpenBSDユーザーです。ではOpenBSDのよくある質問、それは言います: OpenBSDは完全なシステムであり、同期を保つことを目的としています。カーネルとユーティリティを別々にアップグレードすることはできません。 システムをアップグレードすると、一度にアップグレードできます。カーネルとベースシステムが置き換えられます。次に、サードパーティのパッケージを更新します。sourceからコンパイルする場合は、カーネルを再コンパイルして起動します。次に、ベースシステムを再構築してから、インストールしたパッケージを再構築します。すべてを最後に再構築してから数週間/月以上経過している場合、最初にスナップショットをインストールしてそこから再構築します(最新のCVSブランチをフォローしている場合)。 同期していないカーネル、ベースシステム、サードパーティのパッケージがあると、潜在的な問題の原因になり、公式メーリングリストからの真剣なヘルプを得ることができなくなります。 これで大丈夫です。実際、これがOpenBSDを使用する理由の1つです。これにより、システムが一貫したユニットになり、精神的な概要を簡単に形成できます。 Linux上ではどんな感じですか?私が知っているほとんどのLinuxには、BSDと同じ意味での「ベースシステム」はありませんが、ディストリビューションプロバイダーによってアセンブルされたパッケージのコレクションがあります。その後、ローカル管理者によって追加のソフトウェアが追加され、最初から存在していたものと後で追加されたものとの境界がせいぜいぼやけているようになります。 Linux(一般的に)は、ユーザー空間への強力なカーネル結合を持っていませんか? カーネルは、私が知る限り、他のソフトウェアパッケージと同様に更新されますが、これが可能であることを少し混乱させます。さらに、カスタムカーネル(OpenBSDでは推奨されていません)をコンパイルし、ブートメニューにさまざまなカーネルバージョンがリストされていることもあります。 Linuxシステムのさまざまなサブシステムが互いに独立して更新されている場合でも、だれが、またはどのようなサブシステムが互いに協力できることを保証しますか? 私が尋ねている理由は、このサイトの別のユーザーが、自分のLinuxシステムのカーネルを新しいバージョンに置き換えることができるかどうかを尋ねたからです。物事のOpenBSD側から来ると、はい、これがシステムを壊さないことが保証されるとは言えませんでした。 上記の「Linux」は、「Linuxディストリビューション」、カーネル+ユーティリティの省略形として使用しています。


3
Ctrl + Cのときに^ Cを削除
Red Hat Enterprise Linux 6( "Santiago")のシェルインクルードで+ を^C押したときに削除する方法はありますか?自分で編集する許可があります。CTRLC.bash_profile
25 shell 

3
「updatedb」と「locate」はどのようなデータベースを使用しますか?
の locateプログラムfindutilsスキャン1またはファイル名とディスプレイの以上のデータベースの任意のマッチ。find最後のファイル名データベースの更新中にファイルが存在した場合、これは非常に高速なコマンドとして使用できます。 現在、多くの種類のデータベースがありますが、 リレーショナルデータベース(SQLなどのクエリ言語を使用) NoSQLデータベース ドキュメント指向のデータベース(MongoDBなど) Key-Valueデータベース(Redisなど) 列指向データベース(Cassandraなど) グラフデータベース それで、どのようなデータベースがupdatedb更新され、locate使用しますか? ありがとう。

6
「showmount:コマンドが見つかりません」:インストールする内容を知るにはどうすればよいですか?
コマンドを実行すると、「コマンドが見つかりません」というエラーメッセージが表示されることがあります。 その後、そのコマンドを含むパッケージをインストールしようとします(とにかくそうなると思いますか?) 例えば showmount: command not found apt-get install showmount何もしないので、showmountコマンドはパッケージの一部であると思いますが、そのパッケージが何なのかわかりません。 必要なコマンドを取得するために、どのパッケージをインストールする必要があるかを調べるにはどうすればよいですか?Kali Linuxを使用しています。

1
bashの '<(file contents)'構文とは何ですか?
セキュリティStackExchangeに関するこの回答では、興味深いbash構文を使用してインラインでファイルを生成しています。 openssl req -new -x509 -nodes -newkey ec:&lt;(openssl ecparam -name secp384r1) -keyout cert.key -out cert.crt -days 3650 このビットは特に興味深いものです。 &lt;(openssl ecparam -name secp384r1) ちょうど実行: echo &lt;(openssl ecparam -name secp384r1) 私は戻ってきます /dev/fd/63 そのため、これはファイルの内容で一時ファイル記述子を作成するようです。 これは何と呼ばれていますか?

5
Bashでhttpリンクの最後の部分を取得する方法は?
httpリンクがあります: http://www.test.com/abc/def/efg/file.jar 最後の部分のfile.jarを変数に保存したいので、出力文字列は「file.jar」です。 条件:リンクの長さは異なる場合があります。例: http://www.test.com/abc/def/file.jar. 私はそのようにしてみました: awk -F'/' '{print $7}' 、しかし問題はURLの長さなので、どんなURLの長さでも使用できるコマンドが必要です。
25 bash  shell-script  awk  cut 

2
プロセス置換を実現するポータブル(POSIX)の方法は何ですか?
などの一部のシェルは、次のようbashにプロセス出力をファイルとして表示する方法であるプロセス置換をサポートしています。 $ diff &lt;(sort file1) &lt;(sort file2) ただし、この構造はPOSIXではないため、移植性がありません。どのように達成される置換を処理することができPOSIXにやさしい方法(で動作すなわち1 /bin/sh)? 注:質問は、ソートされた2つのファイルをどのように比較するかを尋ねているのではありません-これは、プロセス置換を示すための不自然な例です!

2
テキストエディタでコマンドプロンプトを開く-これは何と呼ばれていますか?
Bashで私のお気に入りのトリックの1つは、テキストエディターでコマンドプロンプトを開くことです。これを(viモードで)押して行いESC vます。これを行うと、コマンドプロンプトにあるものはすべて、選択した$ EDITORに表示されます。その後、コマンドをドキュメントのように編集し、その一時ファイルのすべてを保存して終了すると、実行されます。 友人の誰もこのヒントを聞いたことがないことに驚いているので、共有できるドキュメントを探していました。問題は、その上で何も見つけられなかったことです。また、このヒントに関連する検索用語は非常に一般的であるため、ドキュメントをグーグル検索するときには役に立ちません。 私が実際にそれを調べることができるように、誰もこの技術が何と呼ばれるか知っていますか?

1
パイプから読み取るときに「sed q」の動作が異なるのはなぜですか?
この質問は、UnixおよびLinux Stack Exchangeで回答できるため、Server Faultから移行されました。 3年前に移行され ました。 次を含む「test」という名前のテストファイルを作成しました。 xxx yyy zzz 私はコマンドを実行しました: (sed '/y/ q'; echo aaa; cat) &lt; test そして私は得た: xxx yyy aaa zzz それから私は走った: cat test | (sed '/y/ q'; echo aaa; cat) そして得た: xxx yyy aaa 質問 sed「y」のある行が見つかるまで読み取り、出力してから停止します。2番目のケースではなく最初のケースでは、catは残りを読み取って出力します。 誰かがこの行動の違いの背後にある現象を説明できますか? また、Ubuntu 16.04とCentos 6でもこのように動作することに気づきましたが、Centos 7ではコマンドは「zzz」を出力しません。
25 sed  pipe 

3
シェルはどのように家を知っていますか?
各シェルには、環境変数$ HOMEが設定されています(例:)/Users/lotolo。私がcshの下にいる場合、私はできますがunsetenv HOME、それでも私は家cdにいます。これもbash(unset HOME)でテストしましたが、同じ動作です。では、シェルはどのようにしてmy / other_userの家がどこにあるのかを知るのでしょうか?それらの値はどこで読み取られますか? 私の質問は私がどのように知っているのではなく、シェルがどのように知っているので、これは重複していませんHOME。また、この動作は他のユーザーにも拡張されています。
25 bash  cd-command  home  tcsh  csh 

4
プロセスのネットワーク接続を表示する
プロセスの接続を表示する方法はありますか?そんな感じ: show PID これshowはこれを行うコマンドでPIDあり、プロセスのPIDです。必要な出力は、プロセスのすべての接続(リアルタイム)で構成されます。たとえば、プロセスが173.194.112.151に接続しようとすると、出力はになり173.194.112.151ます。 Firefoxのより具体的な例: show `pidof firefox` そして、firefoxでは、まずgoogle.comに行き、次にunix.stackexchange.comに行き、最後に192.30.252.129に行きます。ブラウザを閉じたときの出力は次のとおりです。 google.com stackexchange.com 192.30.252.129 (明らかに、ブラウザではこの出力は現実的ではありません。他の多くの関連する接続があるためですが、これは単なる例です。)

3
アドホックコマンドを使用して、ホストまたはグループのすべてのAnsible変数をリストしますか?
Ansible変数はさまざまなソースから取得されます。名前のサブフォルダにYAMLファイルを作成することにより、host_varsとgroup_varsを提供するために、例えば可能であるhost_varsとgroup_vars、それぞれインベントリファイルを含むフォルダの。 Ansible が Playbook 内のグループまたはホストについて知っているすべての変数を一覧表示するにはどうすればよいですか?注:私が試したし、無駄に。ansible -m debug -e 'var=hostvars' hostansible -m debug -e '- debug: var=hostvars' ヒント:他のソースからのすべての変数が含まれているわけでansible &lt;group|host&gt; -m setupはないため、正しい答えではありません(含まれているだけ{ "ansible_facts" : { ... } }です。実際、動的インベントリスクリプト(経由_metaなど)によって提供される変数も含まれていません。 Ansibleバージョン:1.9.1。
25 ansible 


4
-Sを減らしてより小さな増分で水平スクロール
lessHTTPアクセスログの解析に使用しています。すべてを1行できれいに表示したいので、を使用してい-Sます。 私が抱えている問題は、ターミナルウィンドウの最初の3分の1が、気にしないメタデータで占められていることです。矢印キーを使用して右にスクロールすると、気になる情報の先頭を過ぎてスクロールすることがわかりました! 各行の先頭を削除することはできますが、将来そのデータが必要になるかどうかはわかりません。ログを表示するたびに個別のファイルを維持したり、スクリプトを実行したりする必要はありません。 例 この行: access.log00002:10.0.0.0-USER_X [07 / Nov / 2013:16:50:50 +0000] "GET / some / long / URL" スクロールします: ng/URL" 質問 文字ごとまたは単語ごとに、少しずつスクロールできる方法はありますか?
25 less  scrolling 

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