Unix & Linux

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

3
信頼できないtarファイルを安全に抽出するにはどうすればよいですか?
tarファイルを抽出して、抽出されたすべてのファイルが特定のプレフィックスディレクトリの下に配置されるようにします。tarファイルが外部ディレクトリに書き込もうとすると、抽出が失敗します。 ご想像のとおり、これは信頼できないtarファイルを安全に抽出できるようにするためです。 GNUでこれを行うにはどうすればよいtarですか? 私は思いついた: tar --exclude='/*' --exclude='*/../*' --exclude='../*' -xvf untrusted_file.tar しかし、これが十分に妄想的であるかどうかはわかりません。
30 security  tar 

1
IPv4 TCP接続がtcp6として表示されるのはなぜですか?
netsat -tupnDebian Jessieサーバーでの出力は次のとおりです。 Active Internet connections (w/o servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 10.0.0.12:445 10.0.0.20:49729 ESTABLISHED 26277/smbd tcp 0 0 10.0.0.12:443 10.0.0.21:44162 ESTABLISHED 1400/nginx: worker tcp 0 0 10.0.0.12:445 10.0.0.21:46650 ESTABLISHED 23039/smbd tcp 0 0 10.0.0.12:443 10.0.0.20:54584 ESTABLISHED 1400/nginx: worker tcp 0 …
30 networking  tcp 

3
yumを使用して、オフラインで使用するために必要なすべてのRPMを取得する方法は?
私は「yum install $ PACKAGE」を使用できるネット接続のサーバーを1つ持っています。すべての必要なRPMファイルが$ DIRECTORYにダウンロードされ、ネット接続のない他の多くのサーバーでこれらのRPMをインストールする順序を示すファイル()もある ようなyumコマンドがyum cache-rpms $PACKAGE $DIRECTORY必要ですInstall.sh。 Install.shはyum install $PACKAGE、ネットワークを使用せず、のみを使用することを除いて、と同じ動作をするシェルスクリプトである場合もあります$DIRECTORY。 可能? yumとRPMを使用できる一般的なソリューションを探していますが、具体的にはCENTOS 6.7サーバーのセットにあります。
30 yum  rpm 


2
ソートせずに1つの列内の重複に基づいて行を削除します
大きな3列のファイル(〜10,000行)があり、その行の3列目の内容が別の行の3列目に表示されたときに行を削除したいと思います。ファイルのサイズによってソートが少し面倒になり、行全体が同一ではないため、以下のコードのようなものは使用できません。列3の内容のみ。 awk '!seen[$0]++' filename

1
パスワードを知らなくてもLUKSファイルシステムのパスワードを変更する
暗号化されたドライブでしばらく動作しているDebian Wheezyサーバーがあります。/dev/sda5暗号化されたパスワードファイルが破損すると、暗号化されたドライブ()のパスワードが失われました。 このサーバーを再起動できるようにしたいのですが、もちろんそのパスワードが必要になります。ドライブは明らかに復号化された状態にあるため、古いパスワードを知らなくてもパスワードを変更する方法はありますか? cryptsetup luksChangeKey /dev/sda5 ボリュームのパスワードが必要です。 もちろんrsyncすべてをオフにして再構築することもできますが、それは避けたいと思います。メモリー(#cat /dev/mem | less)を調べましたが、見つかりませんでした(これは非常に良いことです!)。
30 linux  luks 

3
fork()はLinuxのプロセスヒープ全体をすぐにコピーしますか?
fork()システムコールは、実行中のプロセスから子プロセスのクローン。2つのプロセスは、PIDを除いて同一です。 当然、プロセスがヒープに書き込むのではなく、ヒープから読み取るだけの場合、ヒープのコピーはメモリの大きな浪費になります。 プロセスヒープ全体がコピーされますか?書き込みのみがヒープコピーをトリガーするように最適化されていますか?
30 linux  fork 

5
Linuxコマンドを使用して使用済みメモリ(使用済みRAM)を取得する方法は?
Linuxコマンドを使用して、使用メモリ(RAM)をパーセンテージで取得しようとしています。cpanelには、特定のWebページに表示する必要がある使用済みメモリが表示されます。 フォーラムから、次のことから正しいメモリが見つかることがわかりました。 free -m 結果: -/+ buffers/cache: 492 1555 -/ + buffers / cache:正しいメモリ使用量が含まれています。この情報を解析する方法や、使用されているメモリをパーセンテージで取得する別のコマンドがあるかどうかはわかりません。
30 centos  memory  cpanel 

5
-bash:/ dev / null:許可が拒否されました
Centos 6システムで新しいユーザーを作成しようとしています。 はじめに useradd kevin 次に、そのユーザーとしてコマンドを実行しようとしました su - kevin ただし、次のエラーメッセージが表示されます -bash: /dev/null: Permission denied -bash: /dev/null: Permission denied -bash: /dev/null: Permission denied -bash: /dev/null: Permission denied -bash: /dev/null: Permission denied -bash: /dev/null: Permission denied [kevin@gazelle ~]$ そして、私はそのユーザーとしてはあまりできません。 許可/dev/nullは次のとおりです。 -rwxr-xr-x 1 root root 9 Jul 25 17:07 null 私のMacにあるものとほぼ同じですが、 crw-rw-rw- 1 …


3
Bashスクリプトファイルをsudo実行すると、Bashスクリプト内のすべてのコマンドもsudoとして実行されますか?
Bashで自動化されたインストール後スクリプト(post-install.shたとえばと呼ばれる)を作成したい。このスクリプトは、リポジトリを自動的に追加および更新し、パッケージをインストールおよび更新し、構成ファイルを編集します。 ここで、たとえばを使用してこのスクリプトを実行するsudo post-install.shと、sudoパスワードの入力が1回だけ求められますか、それともsudoスクリプト内でsudo許可が必要なコマンドを呼び出すたびにパスワードを入力する必要がありますか?言い換えれば、bashスクリプト内のコマンドは、いわば実行権限を「継承」していますか? そして、実際にそうする場合、sudoアクセス許可がタイムアウトする可能性はまだありますか(たとえば、特定のコマンドがsudoタイムアウトを超えるのに十分な時間がかかる場合)?または、最初のsudoパスワード入力は、スクリプト全体が完了するまで続きますか?

6
シェルコマンドを使用して、テキストファイルの最初の列と最後の列のみを表示する方法は?
テキストファイルの最初の列と最後の列のみを表示するためにsedコマンドを使用する方法を理解するには、助けが必要です。これが私がこれまでコラム1に持っていたものです。 cat logfile | sed 's/\|/ /'|awk '{print $1}' 最後の列を表示するための私の弱い試みは次のとおりでした: cat logfile | sed 's/\|/ /'|awk '{print $1}{print $8}' ただし、これは最初の列と最後の列を取り、それらを1つのリストにマージします。sedおよびawkコマンドで最初の列と最後の列を明確に印刷する方法はありますか? サンプル入力: foo|dog|cat|mouse|lion|ox|tiger|bar
30 shell  sed  awk 

3
壊れたパイプでUnixプロセスが死ぬ原因は何ですか?
ここに私が考えたいくつかのオプションがありますが、どちらが正しいかはわかりません。 パイプからの読み取り中にI / Oエラーが発生しました。 パイプのもう一方の端に書き込むプロセスが失敗して終了しました。 パイプに書き込むことができるすべてのプロセスがパイプを閉じました。 パイプの書き込みバッファがいっぱいです。 ピアは、二重パイプのもう一方の方向を閉じました。 パイプから読み取ることができるプロセスがないため、書き込みに失敗しました。 システムコールがEPIPEエラーを返しましたが、エラーハンドラがインストールされていませんでした。
30 pipe 

3
/ etcのrc0.d、rc1.d、…ディレクトリ
私は、ディレクトリを持っているのUbuntuを実行しています/etc/rc0.d、/etc/rc1.d、/etc/rc2.d、...、 /etc/rc6.d。 私のマシンのサンプルファイル: directory example symlinks in the dir ------------------------------------------ /etc/rc1.d: K76dovecot, K77ntp /etc/rc2.d: S23ntp, S24dovecot /etc/rc3.d: S23ntp, S24dovecot /etc/rc4.d: S23ntp, S24dovecot /etc/rc5.d: S23ntp, S24dovecot 質問: 複数の「rc」ディレクトリの目的は何ですか? なぜUbuntuはの重複インストールしなかったdovecotとntp以外のすべてのディレクトリにをrc0.dしてrc6.d? 上記のように複数回指定された場合、実際に複数回実行されますか? 上記から、起動時にどの順序dovecotでntp実行されますか? Ubuntuを起動ntp前に常に実行するように指示する適切な方法は何dovecotですか?

6
SSH経由で転送されたXクライアント「ディスプレイを開くことができません:localhost:11.0」
SSHサーバーが実行されているリモートマシンでX転送を有効にしました。 # grep -i forward /etc/ssh/sshd_config X11Forwarding yes # ローカルマシンで、-Xリモートマシンで実行されているSSHサーバーにXサーバープロキシをセットアップするよう指示するフラグを使用してSSHクライアントを起動しました。さらに、$DISPLAYこのプロキシを指す変数を作成し、を呼び出して、リモートマシン上のこのXサーバープロキシに対して認証xauthするプロキシキーをインストールします。 # echo "$DISPLAY" localhost:11.0 # xauth list | grep 11 A58/unix:11 MIT-MAGIC-COOKIE-1 39324086672d1ae35e373476c3891a77 # ただし、リモートマシン上のXクライアントは正しく起動しません。 # wireshark (wireshark:10083): Gtk-WARNING **: cannot open display: localhost:11.0 # xterm Warning: This program is an suid-root program or is being run by the root …
30 ssh  x11  sshd 

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