サーバー管理者

システムおよびネットワーク管理者向けのQ&A

1
Linuxカーネルでperfサブシステムを無効にする方法は?
いくつかのベンチマークを実行しています。私のベンチマークランナーは、実験間のdmesgバッファーを監視し、パフォーマンスに影響を与える可能性のあるものを探します。今日それはこれを投げた: [2015-08-17 10:20:14警告] dmesgは変更されたようです!差分は次のとおりです。 --- 2015-08-17 09:55:00 +++ 2015-08-17 10:20:14 @@ -825,3 +825,4 @@ [3.802206] [drm] RC6状態の有効化:RC6オン、RC6pオフ、RC6ppオフ [7.900533] r8169 0000:06:00.0 eth0:リンクアップ [7.900541] IPv6:ADDRCONF(NETDEV_CHANGE):eth0:リンクの準備ができた + [236832.221937] perf割り込みに時間がかかりすぎ(2504> 2500)、kernel.perf_event_max_sample_rateを50000に下げました いくつかの検索の後、これは「perf」と呼ばれるLinuxカーネルのプロファイリングサブシステムに関連していることがわかりました。これが必要だとは思わないので、完全に無効にしたいと思います。 もう一度検索すると、sysctl perf_cpu_time_max_percentが役立つことがわかりました。ここで、誰かが0に設定して無効にすることを提案します。 perf_cpu_time_max_percent: パフォーマンスサンプリングイベントを処理するために使用できるCPU時間をカーネルに通知します。サンプルがこの制限を超えていることがperfサブシステムに通知されると、CPU使用率の削減を試みるためにサンプリング周波数が低下します。 一部のパフォーマンスサンプリングはNMIで発生します。これらのサンプルの実行に予想外の時間がかかりすぎると、NMIが隣同士に積み重なってしまい、他に何も実行できなくなります。 0:メカニズムを無効にします。CPU時間に関係なく、perfのサンプリングレートを監視または修正しないでください。 1-100:perfのサンプルレートをこのCPUの割合に調整しようとします。注:カーネルは、各サンプルイベントの「予想される」長さを計算します。ここで100は、その予想される長さの100%を意味します。これが100に設定されている場合でも、この長さを超えると、サンプルの調整が見られる場合があります。CPUの消費量を本当に気にしない場合は、0に設定します。 これは、0がプロファイリングサンプルレートがチェックされなくなったことを意味しているように聞こえますが、freqサブシステムは実行されたままです(?)。 誰でもfreqでカーネルプロファイリングを完全に無効にする方法に光を当てることができますか? 編集:誰かがperfなしでカーネルを構築しようと提案したが、これは可能だとさえ思わない。オプションは切り替え可能ではないようです: EDIT2:さらに読んだ後、kernel.perf_event_max_sample_rateゼロに設定できる可能性があると判断しました。つまり、1秒あたりのサンプルはありません。ただし、これもできません(source): コミット02f98e3e36da106338b7c732fed516420fb20e2a 著者:クヌート・ピーターセン 日付:2013年9月25日水曜日14:29:37 2013 +0200 perf:perf_event_max_sample_rateの下限として1を強制します 編集3:FWIW perf_cpu_time_max_percentは25に設定されています。つまり、カーネルはハードウェアレジスタのサンプリングに時間の25%以上を費やしていました。これは、ベンチマークマシンでは受け入れられません。 perf_cpu_time_max_percentカーネルはハードウェアレジスタの読み取り時間の25%以上を使用し続けるため、ゼロに設定しても状況が悪化するだけであると確信しています。エラーが発生してサンプルレートが調整されるため、カーネルがperfでの時間の<25%を使用するクォータを確実に満たそうとします。私見ではまだ25%が高すぎます。 本当にperfを無効にできない場合、おそらく最良の妥協点はperf_event_max_sample_rate1 に設定することです。 …

5
Windows 7ラップトップの「フリート」をリモートで管理するにはどうすればよいですか?
私は子供たちにプログラムを教えるスタートアップと仕事をしています。ラップトップの最初の「フリート」を入手したところです-Windows 7を実行している半ダースの改装されたシンクパッド-私はそれらを管理し、維持するための最良の方法を探しています。 ボリュームライセンスキーを購入するのは理にかなっていると既に判断しているので、再イメージングの権利を使用して、すべてのイメージに書き込むことができる単一の既知の良好なイメージを生成し、必要なときにいつでもコンピューターを消去することができます。私が今疑問に思っているのは、継続的にそれらを管理する最善の方法です。 ラップトップはさまざまなネットワーク上で動作します-それらのどれも私たちによって制御されません-そして私たちは中央オフィスやサーバーを持っていません。取得したくない。 更新プログラムと新しいソフトウェアをすべてのラップトップに簡単にプッシュできるようにしたいだけでなく、管理者アカウントをリモートで構成したり、ラップトップが最新の状態に保たれるようにパッチを管理したりすることもできます。 小さなスタートアップであるため、資金は限られており、ソフトウェアライセンスに費やされるお金は、より多くのハードウェアに費やすことができるお金なので、高価なソリューションは少し手間がかかります。 私たちがこれを最も簡単に行うことができる方法について、誰にも推奨事項がありますか?

1
Elastic Beanstalkの環境変数は、秘密の値を保存する適切な場所ですか?
DjangoアプリケーションをElastic Beanstalkにデプロイしました。環境変数設定インターフェイスを使用して、APIキーをソースに保存する代わりに保存します(こちら/programming//a/17878600を参照)。 これを行った後、Beanstalkが環境変数と呼ぶものは実際にはシェル環境変数ではなく(ここで/programming//a/24564832/378638で言及されているように)、設定ファイルのインスタンスに(こちら/programming//a/24566283/378638で説明されています)。 これは私にとってセキュリティの問題のようです。これは、ソースから秘密鍵を保護する目的に反しませんか?それらはレポに含まれていないことは理解していますが、インスタンスでは引き続きアクセス可能です。 リスクを誤解していますか?私は継承によってシステム管理者ですので、ここで私の無知を許してください。設定ファイルを介してBeanstalk変数をシェル環境変数としてロードし、ファイルはルートからのみアクセスできるため、先に進む必要がありますか、それとも私の懸念は有効ですか?ありがとうございました。

3
ntp.confプールとサーバーディレクティブ
プールディレクティブを指定するntp.confファイルに出会いました。 # Use servers from the NTP Pool Project. Approved by Ubuntu Technical Board # on 2011-02-08 (LP: #104525). See http://www.pool.ntp.org/join.html for # more information. pool 0.ubuntu.pool.ntp.org pool 1.ubuntu.pool.ntp.org pool 2.ubuntu.pool.ntp.org pool 3.ubuntu.pool.ntp.org ただし、同じファイルにサーバーディレクティブも含まれています。 プールについて読むと、サーバーの代わりに使用することを意図していることがわかります。どちらかを使用する必要があります。 ただし、ntp.confに両方がある場合はどうなりますか?1つのセットが他のセットよりも優先されますか、それともすべてが使用されますか? これはUbuntu 14.04にあり、ntpdはバージョン4.2.6p5です。
15 ntp  ntpd 

2
3.6以降のカーネルでのマルチパスルーティング
おそらくご存知のように、ipv4ルートキャッシュは3.6 Linuxカーネルシリーズで削除され、マルチパスルーティングに深刻な影響を及ぼしました。IPv4ルーティングコード(IPv6のものとは異なります)はラウンドロビン方式でネクストホップを選択するため、特定の送信元IPから特定の宛先IPへのパケットは常に同じネクストホップを経由するわけではありません。3.6より前では、ルーティングキャッシュはその状況を修正し、一度選択されたネクストホップはキャッシュ内に留まり、同じ送信元から同じ宛先へのすべてのパケットはそのネクストホップを通過していました。今、次のホップが各パケットに対して再選択され、奇妙なことにつながります:ルーティングテーブルに2つの等コストのデフォルトルートがあり、それぞれが1つのインターネットプロバイダーを指しているため、TCP接続を確立することもできません。初期SYNと最終ACK異なるルートを経由して、 マルチホップルーティングの通常の動作を復元する比較的簡単な方法はありますか。そのため、ネクストホップはパケットごとではなくフローごとに選択されますか?IPv6のように、IPv4ネクストホップ選択をハッシュベースにするパッチはありますか?それとも、どうやってそれを処理しますか?
15 linux  routing 

1
Usermod -aGとgpasswd -aのベストプラクティス
usermod -gはこのような多くの投稿のベストプラクティスではないことを認識していますが、ユーザーのプライマリグループを変更するため、通常はusermodを使用すべきではないと説明しています。これらの投稿は、グループを追加するだけの-aGスイッチを考慮に入れていないようです。 これはまだ不十分なプラクティスですか、gpasswd -aを使用するのと同じですか?

4
/ grafanaをnginxでプロキシする方法は?
デフォルトのgrafanaをセットアップして起動しましたが、http:// localhost:3000で期待どおりに動作します。私はsslをインストールしているnginxでプロキシしようとしています。私はそれがhttps:// localhost / grafanaに応答するようにしようとしていますが、それは単に次のものを提供しています: {{alert.title}} 私はnginxサーバーブロックにこれを持っています: location /grafana { proxy_pass http://localhost:3000; proxy_set_header Host $host; }
15 nginx 

2
apt-getインストール後にApacheが起動しないようにします
とき私は、apt-get install apache2インストールの完了時にサーバーが自動的に起動し、デフォルトのApacheの設定は、のすべてを行い/var/www/、クライアント側からアクセス可能。したがって、Apacheをインストールする前に、そのディレクトリにソースサーバー側のクローズドスクリプトまたはその他の秘密情報がある場合、Apache構成を変更してApacheを再起動するか、Apacheを停止するまで公開されます。 私がすることができます sudo apt-get install -y apache2 sudo service apache2 stop # Finish setting up... そして、秘密のものにアクセスできる短いウィンドウしかありませんが、Apacheが自動的に起動しないようにし/var/www/て、一瞬でも公開しないようにすることが望ましいでしょう。 apt-get installApacheのインストール後に自動的に起動しないようにするためのオプションや、他の方法はありますか?

2
既存のSSL証明書が期限切れになる前に新しいSSL証明書を購入する
現在、新しいホストを古いホストから仮想プライベートサーバーに移行しています。彼らは既存のSSL証明書を持っていますが、来月に期限切れになるので、古いホストから詳細を取得する手間をかける価値はないと思います。 既存の有効期限のないSSLを使用している場合、新しいSSLの購入に問題はありますか(同じ当局からのものであっても)。

2
Docker-外部からアクセス可能な公開ポート-iptablesルールは無視されます
私は次のように実行されているドッカーコンテナを持っています: docker run --name some_container_1 -p 8080:80 -d some_image それはうまくいきます。コンテナはポート80から8080を公開し、localhostからアクセスできます。 しかし、何らかの理由でINPUT iptablesルールを完全に無視しており、外部からアクセスすることもできます。 Dockerコンテナへのアクセスを制限して、IP 123.456.789.0が外部からのみアクセスできるようにするにはどうすればよいですか? ありがとう。 sudo iptables -L -n -v --line-numbers Chain INPUT (policy ACCEPT 0 packets, 0 bytes) num pkts bytes target prot opt in out source destination 1 0 0 ACCEPT all -- lo * 0.0.0.0/0 0.0.0.0/0 2 …
15 docker  iptables 

3
TLS 1.2が有効になっているときにInternet Explorer 11がHTTPSサイトに接続できないのはなぜですか?
通常、Internet Explorerはまったく使用しません。インターフェイステスト(開発マシンおよび暗号化されていないHTTP)の設計時にのみ使用します。毎週、IE11がサイトにアクセスできるというSSL Labsサーバーテストを実行しています。 今日、サードパーティのサービスの1つで問題を発見しました。一部の特別な機能がChromeまたはFirefoxで動作しないため、Windows 7マシンでIE11を起動しました。IE11には、基本的に「ページを表示できませんでした」とだけ表示される組み込みのエラーページが表示されます。そして、DNSなどをチェックするような典型的なダミーのbla bla。エラーページ全体に暗号化関連の問題の兆候はまったくありませんでした(通常のブラウザーが行うように)。 数か月前にこのschannel問題が発生し、TLS1.2対応IEがHTTPSサイトにアクセスできなくなりました。その時点から、「IEのWTFチェックリスト」にはチェックポイントとして「TLS1.2を無効にする」が含まれています。そして、私は何を言うべきですか... IE内でTLS1.2を無効にすると機能し、私のサイトが再び利用可能になります。しかし、私は訪問者のブラウザでこれを行うことはできません。 さて、本当の質問:なぜIE 1.2でTLS 1.2が有効になっているのにInternet Explorer 11がHTTPSサイトに接続できないのですか?そして、サーバー側でそれを修正する方法は?SSL Labsは、私のサイトですべてがうまくいっていると言っています。 重要な編集: IE11は、TLS1.2が有効になっている場合、プレフィックスなしのドメインではなく、プレフィックスなしのドメインのみを処理できるようです。プレフィックスなしのドメイン(www)は機能しますが、プレフィックスを含むドメイン(www)は機能しません。 サーバー側では、debian / 7 nginx / 1.7.8 openssl / 1.0.1eを使用しています 利用可能な暗号は次のとおりです。 ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:-DES:!RC4:!MD5:!PSK:!aECDH:EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA

2
仮想マシン内でコンテナを実行していますか?
コンテナは、ハードウェアを仮想化せずに、VM上で実行されているソフトウェアをシステム上の他のコンテナで実行されているソフトウェアから隔離するだけなので、VMはVMよりもはるかに軽量であることを理解しています。 私の状況では、追加のサーバーを購入する余裕はなく、所有しているサーバーはすべてハイパーバイザーを実行しています。比較的小さなWebアプリケーションのインスタンスをホストするために、少なくとも6つの「サーバー」をプロビジョニングする必要があります(各インスタンスは異なる顧客用です)。これらの各サーバーに新しいVMをプロビジョニングするのは無駄なので、2つのVMをセットアップし、次のいずれかを実行する予定です。 仮想ホスト(apache)を使用して、各VMでアプリケーションの複数のインスタンスを実行します。または 環境を分離できるように、VMにコンテナーをセットアップします。 これを考慮して、VM内で使用するのは悪い考えになるコンテナシステムに関連する無視できないオーバーヘッドがありますか、またはコンテナを使用したくない他の技術的な理由がありますか?

2
OS Xリソースフォークを、ドットバーファイルよりも* else *どこでもSamba共有に保存できますか?
OS Xリソースフォークは、通常のファイルに添付されるデータの代替ストリームです。ファイルのカスタムアイコン、色付きラベル、キーワード、またはユーザーまたはアプリケーションによって設定されたその他のメタデータを含めることができます。 OS XのHFS +ファイルシステムでネイティブにサポートされていますが、ローカル(FAT32)またはリモート(NFS、SMB)にかかわらず、OS Xが別のファイルシステムをマウントすると、いわゆる「ドットバー」ファイルに保存されます:通常のファイルのリソースフォークname.extは別の通常の隠しファイルに保存されます._name.ext。(.DS_Storeアイコンビューと列ビューなどのディレクトリのビュー設定、またはウィンドウの位置を保存するファイルと混同しないでください。) ドットバー._ファイルの問題は、元のファイルと同じ拡張子を持つターゲットファイルシステム内の実際の通常のファイルであるため、さまざまな方法で大混乱を招くことです。たとえば、AntとMavenは._MyClass.java、さらに別のJavaファイルをコンパイルする必要があります。 OS XはSMBの名前付きストリームにリソースフォークを格納するように構成でき、SambaはPOSIX拡張属性または別の場所のデポディレクトリに名前付きストリームを格納するように構成できることがわかります。 どちらのソリューションでも、ターゲットファイルシステムを汚染するドットバーファイルの問題は解決しますが、どちらも機能しません。 Xattr 最初にxattrで試しました: vfs objects = streams_xattr kernel oplocks = no 後者のオプションはこのバグによるものです。マウントする前に、共有のルートでこれを行うことで、OS Xに使用するように指示しました。 touch .com.apple.smb.streams.on しかし、Finderでファイルをコピーしようとすると、次のエラーが発生しました。 「hello.java」内の一部のデータの読み取りまたは書き込みができないため、Finderは操作を完了できません。 (エラーコード-36) デポ 次に、デポで試しました: vfs objects = streams_depot .com.apple.smb.streams.on共有のルートに残します。Finderで同じファイルをコピーしようとすると、別のエラーが発生しました。 予期しないエラーが発生したため、操作を完了できません (エラーコード-50) これら2つのオプションのいずれかでOS Xを機能させるにはどうすればよいですか?私の目的は、これらの厄介なものを._共有ディレクトリから取り除くことです。 私は単純にドットバーファイルを拒否しようとしました: veto files = /._*/ delete veto files = yes ただし、これにより、一部のアプリケーションが失敗します。たとえば、マウントされたSMB共有を介してOS Xから実行されるMercurialなどです。 …
15 mac-osx  samba 

2
RAMはどこに行きましたか?
注:あまりにも速くジャンプする前に、はい、linuxatemyram.comを読みます! 64GB RAMのサーバーがあります。 free -m 私のRAMがいっぱいだと言いますが、それはディスクキャッシュのためではありません: total used free shared buffers cached Mem: 64458 64117 340 201 67 331 -/+ buffers/cache: 63719 739 Swap: 1532 383 1149 ただし、topメモリ使用量順に並べても、最大64GBは追加されません。 KiB Mem: 66005116 total, 65652464 used, 352652 free, 67512 buffers KiB Swap: 1569780 total, 392656 used, 1177124 free. 337464 cached Mem PID …

4
サーバーから送信されたメールが受信者サーバーで受信されたかどうかを確認する方法はありますか?
受信者が受信していないと主張する重要なメールを送信しました。 彼らは、ITチームにメールがサーバーで受信されたかどうかを尋ねたと言います。彼らによると、電子メールはサーバーに届きませんでした。また、電子メールが受信され、スパムとしてマークされた可能性を受け入れません。 電子メールが配信されなかった場合、エラーメッセージは表示されませんか? 彼らが真実を言っているかどうかを確認する方法はありますか(私には非常に怪しいようです)。 ありがとうございました。

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