Unix & Linux

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

7
[AZ]がbashの小文字と一致するのはなぜですか?
私が知っているすべてのシェルrm [A-Z]*で、大文字で始まるすべてのファイルを削除しますが、bashでは、これは文字で始まるすべてのファイルを削除します。 この問題は、bash-3およびbash-4を使用するLinuxおよびSolarisに存在するため、libcのバグのあるパターンマッチャーや、誤って設定されたロケール定義が原因のバグではありません。 これは奇妙で危険な動作を意図したものですか、それとも長年にわたって修正されていない単なるバグですか?
42 bash  shell  wildcards  locale 

2
`cat <> file`はどのように機能しますか?
cat &lt; fileファイルの内容を標準出力に出力します。 cat &gt; fileCtrl+ Dが検出され、入力テキストがfileに書き込まれるまでstdinを読み取ります。 cat &lt;&gt; file、少なくとも私のバージョンのBashでは、ファイルの内容を(エラーなしで)うまく印刷しますが、ファイルを変更したり、変更タイムスタンプを更新したりしません。 Bash規格&gt;は、3番目のステートメントで無視されているように見えることをどのように正当化しますか?さらに重要なことは、それは何かをしているのですか?

2
'sync'と 'async'マウントオプションの違い
エンドユーザーの観点から見るsyncと、asyncマウントオプションの違いは何ですか?これらのオプションのいずれかでマウントされたファイルシステムは、別のオプションでマウントされた場合よりも高速に動作しますか?どれも設定されていない場合、デフォルトのオプションはどれですか? man mountsyncオプションはフラッシュメモリの寿命を短くするかもしれないが、時代遅れの従来の知恵によってそれがかもしれないと言います。とにかく、これは少し心配です。パーティション/とパーティション/homeが配置されるプライマリハードドライブはSSDドライブであるためです。 Ubuntuインストーラー(14.04)では、パーティションのオプションsyncも指定もされていませんが、オプションで設定されています。これが私の、私はいくつかの追加行を追加しました(コメントを参照)が、インストーラーによって作成された行の何も変更していません:async/async/homedefaults/etc/fstab # / was on /dev/sda2 during installation UUID=7e4f7654-3143-4fe7-8ced-445b0dc5b742 / ext4 errors=remount-ro 0 1 # /home was on /dev/sda3 during installation UUID=d29541fc-adfa-4637-936e-b5b9dbb0ba67 /home ext4 defaults 0 2 # swap was on /dev/sda4 during installation UUID=f9b53b49-94bc-4d8c-918d-809c9cefe79f none swap sw 0 0 # here goes part written by me: …
42 filesystems  mount  fstab  ssd 

6
テキストファイルの各行をコマンドの引数として渡す方法は?
.txt引数としてファイル名を受け取り、ファイルを1行ずつ読み取り、各行をコマンドに渡すスクリプトを作成しようとしています。例えば、それが実行されますcommand --option "LINE 1"、その後、command --option "LINE 2"コマンドの出力を別のファイルに書き込まれるなど、。それをどうやってやるの?どこから始めればいいのかわかりません。

1
変更されたファイルをコピーするrsync
特定のディレクトリからいくつかのファイルを毎日別の場所にコピーする必要があります。変更のみをコピーしたいので、の使用を計画していますrsync。これらのファイルは、次の命名規則に従いますmysql-bin.* 私のコマンドは次のようになります # rsync --update -raz --progress /var/lib/mysql/mysql-bin.* /dbdata/binarylog/ 私の混乱は、完全なディレクトリの内容ではなく、ディレクトリから少数のファイルのみをコピーすることを計画しているため* 、必要なファイルのみをコピーするために使用していました。私のコマンドが同じことを達成するために正しいかどうかを知りたいだけです。
42 rsync  file-copy 


2
/ var / log / messagesを使用してメモリ不足をデバッグする
次のレポートがメッセージログにスローされます。 kernel: Out of memory: Kill process 9163 (mysqld) score 511 or sacrifice child kernel: Killed process 9163, UID 27, (mysqld) total-vm:2457368kB, anon-rss:816780kB, file-rss:4kB この問題がのためのものhttpdであるmysqldかどうかは関係ありませんが、どうすれば問題のpostfixデバッグを続行できますか。 PID 9163がなぜ殺されたのか、そしてLinuxがどこかで終了したPIDの履歴を保持しているかどうかについての詳細情報を得るにはどうすればよいですか。 これがメッセージログファイルで発生した場合、この問題を段階的にトラブルシューティングする方法を教えてください。 # free -m total used free shared buffers cached Mem: 1655 934 721 0 10 52 -/+ buffers/cache: 871 784 Swap: 109 …

3
SSHポートが特定のIPアドレスに対してのみ開かれていることを確認する方法は?
これは私の/etc/sysconfig/iptablesです: 80個のApacheと22個のsshを開く2つのポートがあります。 # Firewall configuration written by system-config-firewall # Manual customization of this file is not recommended. *filter :INPUT ACCEPT [0:0] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [0:0] -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT -A INPUT -p icmp -j ACCEPT -A INPUT -i lo -j ACCEPT -A INPUT -m …
42 ssh  security  iptables 

2
sshに.ssh / configを無視させるにはどうすればよいですか?
〜/ .ssh / configに次のものがあります。 HOST 10.2.192.* USER foo PreferredAuthentications publickey IdentityFile ~/.ssh/foo/id_rsa 上記の構成では、半分の単語を入力しながらマシンに接続できます。 ssh 10.2.192.x sshの設定の前に、次のすべてを入力する必要がありました。 ssh foo@10.2.192.x -i ~/.ss/foo/id_rsa ただし、10.2.192.xサブネットには、キーベース認証ではなくパスワードベース認証で接続したいマシンが1つあります。 sshは私の設定ファイルを見て、一致するものPreferredAuthentications publickeyを見つけるので、パスワードだけではログインできません。 私は、この特別なスノーフレークvmにsshを使用して、ssh構成に新しいルールを追加するのに十分な頻度でsshするつもりはありません。 sshに設定ファイルを一度だけ無視させ、パスワードで認証できるようにするにはどうすればよいですか?
42 ssh 

8
ssh経由でサーバーにアクセスしたIPアドレスの履歴
私のサーバーがハッキングされ、既知の中国のボットネットに感染していることに気付きました。 これは、独自の静的IP(米国アドレス)を備えたプロトタイプ/テスト用の仮想マシンであったため、害は発生しませんでした(理解するのに少し時間がかかりました)。 ここで、攻撃に中国から発信されたものかどうかを知るために、どのIP / sが侵入に使用されたかを知りたいと思います。 サーバー上のsshで受信した接続の履歴を表示する方法はありますか? 編集:システムはLinux Debian 7です
42 networking  ssh  logs  ip  forensics 

4
grep:メモリを使い果たしました
私は非常に簡単な検索を行っていました: grep -R Milledgeville ~/Documents そして、しばらくしてからこのエラーが現れました: grep: memory exhausted どうすればこれを回避できますか? 私のシステムには10GBのRAMがあり、いくつかのアプリケーションが実行されているので、単純なgrepでメモリが不足していることに本当に驚いています。~/Documents約100GBで、あらゆる種類のファイルが含まれています。 grep -RI この問題はないかもしれませんが、バイナリファイルも検索したいです。

4
bashでショートカットを再マップするターミナルキーコードのリストはどこにありますか?
例えば: "\e[1;5C" "\e[Z" "\e-1\C-i" 私\eはエスケープとC-forの略のように、ほんの少ししか知りませんCtrlが、これらの数字(1)と文字(Z)は何ですか?;、[および-サインとは何ですか? 試行錯誤だけですか、それともbashキーコードの完全なリストとその構文の説明がありますか?

5
環境変数とは正確には何ですか?
これVARIABLE=valueにより環境変数がexport VARIABLE=value作成され、現在のシェルで作成されたプロセスで使用できるようになります。envは現在の環境変数を示していますが、どこにありますか?環境変数(またはそのことについては環境)を構成するものは何ですか?

1
常に失敗して終了する標準コマンドはありますか?
失敗するコマンドでスクリプトをテストしたい。悪い引数を持つ既存のコマンドを使用できます。また、すぐに失敗して終了する簡単なスクリプトを書くこともできます。これらはどちらも簡単に実行でき、動作しますが、この目的のための標準コマンドがあれば、代わりにそれを使用したいと思います。

6
ユニバーサルNode.jsシバン?
Node.jsは最近非常に人気があり、いくつかのスクリプトを書いています。残念ながら、互換性は問題です。公式には、Node.jsインタープリターはと呼ばれることになっていますnodeが、DebianとUbuntuはnodejs代わりに呼び出される実行可能ファイルを出荷しています。 Node.jsが可能な限り多くの状況で使用できるポータブルスクリプトが必要です。ファイル名がfoo.jsであると仮定すると、2つの方法でスクリプトを実行したいです。 ./foo.jsnodeまたはのいずれかでnodejsある場合、スクリプトを実行します$PATH。 node foo.jsまた、スクリプトを実行します(インタープリターが呼び出されると仮定node) 注: xavierm02と私による回答は、ポリグロットスクリプトの2つのバリエーションです。純粋なシバンソリューションが存在する場合、それにも興味があります。

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