タグ

Linuxに関するtomo_thumbのブックマーク (32)

  • マルチスレッドのコンテキスト切り替えに伴うコスト - naoyaのはてなダイアリー

    また Linux カーネルの話です。 Linux では fork によるマルチプロセスと、pthread によるマルチスレッドでの並行処理を比較した場合、後者の方がコストが低く高速と言われます。「スレッドはメモリ空間を共有するので、マルチプロセスとは異なりコンテキストスイッチ時にメモリ空間の切り替えを省略できる。切り替えに伴うオーバーヘッドが少ない。」というのが FAQ の答えかと思います。 が「オーバーヘッドが少ない」と一言にいわれても具体的にどういうことなのかがイメージできません。そこで Linux のスレッド周りの実装を見て見ようじゃないか、というのが今回のテーマです。 3分でわかる(?) マルチプロセスとマルチスレッド まずはうんちく。マルチプロセスとマルチスレッドの違いの図。以前に社内で勉強会をしたときに作った資料にちょうど良いのがあったので掲載します。Pthreadsプログラミ

    マルチスレッドのコンテキスト切り替えに伴うコスト - naoyaのはてなダイアリー
  • VirtualBoxにCentOS7をインストールしてみる - yk5656 diary (旧)

    MacのVirtualBoxにCentOS7をインストールしてみる。 ※VirtualBoxはインストール済みの状態。 CentOSのダウンロード CentOSのサイト(http://www.centos.org/download/)からMinimal ISOのダウンロードページに行って、 適当なサイトからCentOSのMinimalのISO「CentOS-7.X-X-x86_64-Minimal.iso」をダウンロードする。 VirtualBoxで仮想マシンを作成 VirtualBoxを起動し、[新規]ボタンを押す。 そして、[説明を隠す]を押して、説明を隠した状態で進める。 下記のような感じで設定する。 ハードドライブはデフォルトのままにしておく。 名前 適当に入力 タイプ Linux バージョン Red Hat (64 bit) メモリーサイズ 適当に必要な分だけ指定する ファイルサ

    VirtualBoxにCentOS7をインストールしてみる - yk5656 diary (旧)
  • MacでVirtualBoxにCentOS7をインストールしてSSH接続をするまでの方法 - TASK NOTES

    VirtualBoxを使用してCentOS7の仮想マシンを作成しましたのでやり方をまとめます。 VirtualBoxのインストール Downloads – Oracle VM VirtualBox からMac用のPackageをダウンロードしてインストールします。 または、 Homebrew-caskでMacGUIアプリケーション管理 からもインストール可能です。こちらの方が簡単ですね。 $ brew cask search /^virtualbox$/ ==> Regexp matches virtualbox $ brew cask install virtualbox VirtualBoxに仮想マシンを作成 インストールした VirtualBox を起動して「新規」ボタンをクリックします。「名前」を適当に入力して「タイプ」を Linux、「バージョン」を Red Hat (64bi

    MacでVirtualBoxにCentOS7をインストールしてSSH接続をするまでの方法 - TASK NOTES
  • VirtualBoxに入れたCentOS7のネットワークを設定する - 好きなときに好きなことをしたいブログ

    どういう目的でネットワーク設定をしなくてはならないのかが不明なままですが、 言われるがままにネットワーク設定をしますよ。 日の教科書は次の2ブログです。 MacでVirtualBoxにCentOS7をインストールしてSSH接続をするまでの方法 - TASK NOTES VirtualBoxにCentOS7をインストールしてみる - yk5656 diary NetworkManagerを起動 ルートユーザーであることを確認して、nmtuiコマンドを打ちます。 すると「NetworkManager TUI」という青い画面に切り替わります。 ちなみに、"nmtui"は、 1.5. テキスト形式のユーザーインターフェイス (nmtui) を使ったネットワーク設定 によると"NetworkManager Text User Interface"の略のようです。 enp0s3(eth0)の設定を編

    VirtualBoxに入れたCentOS7のネットワークを設定する - 好きなときに好きなことをしたいブログ
  • RHELのDVD-ROMをyumのリポジトリとして登録 | setup | OSS Fan

    概要 インターネットに接続されていない環境の場合、RHELのyumリポジトリにアクセスできないため、 yumコマンドでのパッケージのインストールを行うことができません。 このような場合、rpmコマンドでRHELのDVD-ROMから個別にパッケージをインストールしますが、 依存する前提パッケージが多い場合、かなり手間がかかってしまいます。 そこで、DVD-ROMをyumリポジトリとしてyumコマンドを利用できるように設定すると便利です。 以下ではその設定方法を紹介します。 構成 サーバ構成 OSバージョン Red Hat Enterprise Linux 6.4 x86_64 環境構築 DVD-ROMを使って一時的にリポジトリを利用する場合 RHELのDVD-ROMのマウント DVDドライブにRHELのDVD-ROMを挿入して、マウントします。 マウントポイントはどこでも良いですが、マウント

  • CentOS7 ファイアウォール停止方法 | server-memo.net

    CentOS7のファイアウォールについて CentOS7から初期状態で有効になっているファイアウォールが、今までの「iptables」から「firewalld」に変更になっています。自動起動設定を見て見ると「firewalld」がenable(有効)で、「iptables」がdisabled(無効)となっていることがわかります。 firewalld自動起動設定確認 # systemctl is-enabled firewalld enabled iptables自動起動設定確認 # systemctl is-enabled iptables disabled CentOS7でのファイアウォール停止方法 ファイアウォールの停止方法ですが、CentOS7から一部のサービスを除いて「systemd」管理されているので、「systemctl stop firewalld」コマンドを使用して「fir

    CentOS7 ファイアウォール停止方法 | server-memo.net
    tomo_thumb
    tomo_thumb 2018/06/13
    firewalld iptables
  • なるべく書かないawkの使い方 - ザリガニが見ていた...。

    awkという、古くからのスクリプト言語がある。(1977年生まれ。読み方は「オーク」である。エイ・ダブリュ・ケイではない)man awkをPDFに変換してみると、たったの3ページ強しかない。 $ man -t awk|pstopdf -i -o ~/Downloads/awk.pdf とてもシンプルな言語仕様ではあるが、awkには必要十分な表現力がある。特にテキストを処理する場面においては、最小限のシンプルな記述で、気の利いた処理を素早くこなす。無駄のないawkワンライナーを見ると、ある種の感動を覚える。awk以降に生まれたスクリプト言語は、少なからずawkの影響を受けていると思われる。 awkを知ることで、間違いなく幸福度は上がると思う。いつかきっと「知ってて良かった」と思える時が来るはず。もっともっと、awkを知りたくなってきた。 基動作 awkの基動作は、とってもシンプルである。

    なるべく書かないawkの使い方 - ザリガニが見ていた...。
  • LinuxのI/OやCPUの負荷とロードアベレージの関係を詳しく見てみる - Qiita

    大人気TBSドラマ、「逃げるは恥だが役に立つ」でも話題になったインフラエンジニアという言葉ですが、今ではインターネットインフラを知らないまま開発をするのも難しい状況になっています。クラウドが一般化されたからといって単にリソースの調達が簡単になっただけで、つまりハードウェアの知識が無くても何とかやっていけるようになっただけであり、インフラの知識が要らなくなったなどということは全くなく、むしろdevopsの掛け声とともに、ソフトウェア開発者にインフラを見なければならない新たな責務が課せられたという、なかなか痺れる状況なのだろうと思います。 そういった中で、先日のさくらインターネットのAdvent Calendar最終日に「いまさら聞けないLinuxとメモリの基礎&vmstatの詳しい使い方」という記事を書かせて頂きましたが、今回はLinuxサーバの「負荷」と、ロードアベレージに関して、掘り下げ

    LinuxのI/OやCPUの負荷とロードアベレージの関係を詳しく見てみる - Qiita
  • いまさら聞けないLinuxとメモリの基礎&vmstatの詳しい使い方 - Qiita

    さくらインターネット Advent Calendar最終日は、硬派にLinuxのメモリに関する基礎知識についてみてみたいと思います。 最近はサーバーを意識せずプログラミングできるようになり、メモリの空き容量について意識することも少なくなりましたが、いざ低レイヤーに触れなければいけないシチュエーションになった際に、OSを目の前に呆然とする人が多いようです。 基的にLinux のパフォーマンスについて、メモリをたくさんつめばいいとか、スワップさせないほうが良い とか、このあたりは良く知られたことだと思います。 ただ、なんとなく ps コマンドや free コマンド などの結果を見るだけでなく、もう少しメモリのことについて掘り下げてみてみたいと思います。 メモリとキャッシュ Linux におけるメモリの状態を大きく分けると「使用中のメモリ」「キャッシュ」「空きメモリ」「スワップ」の 4 つに分

    いまさら聞けないLinuxとメモリの基礎&vmstatの詳しい使い方 - Qiita
  • bash 超プログラム術

    bash の解説なんて、ネット上には結構あったりするのだが、これをわざわざ公開しようというのは、次の理由による。 某ソフトハウスでのUNIX講座用に書いてしまったから。 ネット上にある bash 解説だと、表面的な構文解説程度であり、きっちりスクリプト言語として使い倒すレベルの解説はあまりない。まあ、プログラミング言語として凝ったサンプルもやってみようじゃないの、というノリで割とディープに解説する。 アクセスを増やすための人気取り(苦笑)。 まあ、そんな不純な目的による bash 解説である。とはいえ、日常的に使い慣れている bash であっても、「え、こんな使い方があったの!?」という発見もあることであろう。苦笑しながらでも読んでくれたまえ。だから、初歩的なリダイレクションなんかは解説しないからそのつもりで。 ちなみに参考書としたのはオライリー・ジャパン刊「入門 bash 第2版」である

  • python & Django 環境構築手順 - AWS / PHP / Python ちょいメモ

    Ubuntu, CentOS 上に連続で環境構築をした時のメモ。Linux系は、ディストリビューションによって、結構ポリシーが違いますね(対象OSの新しさにもよりますが)。 ディストリビューション別の環境 今回、構築したのはこんな環境です。Djangoの管理を、何に任せるかは検討事項ですね。 Ubuntu 14.04 Pythonは、最初から2.7.x系をサポートしているので簡単。ポイントは、Djangoをどこで管理するかだけでしょうか?今回はDjango1.6.x系で大丈夫と考えて、apt-getで管理されているものを利用する事にしました。 OS: Ubuntu 14.04 LTS Python: 2.7.x (apt-getにて) Django: 1.6.x (apt-getにて) OSパッケージ管理: apt-get (導入済み) Pythonパッケージ管理: pip (手動導入)

    python & Django 環境構築手順 - AWS / PHP / Python ちょいメモ
  • SCLをログイン時に有効にする方法(和訳) - Qiita

    ※ 2017/04/13 追記 記事で和訳した手法より、scl-utilsパッケージに含まれるscl_sourceコマンドを利用した方がよさそうです。 $ cat /etc/profile.d/enablepython33.sh #!/bin/bash source scl_source enable python33 注意: この方法で設定した場合、コレクションを後から無効化できません。 参考URL: http://qiita.com/yunano/items/eb1a052d1663a0078e57 https://access.redhat.com/ja/solutions/2112231 ※ 2017/04/13 追記終了 SCLはRHEL/CentOSで最新のプログラミング言語やデータベースを利用するための仕組みです。 SCLでインストールされたパッケージを利用するには以下のよ

    SCLをログイン時に有効にする方法(和訳) - Qiita
  • ユーザーガイド - Let's Encrypt 総合ポータル

    「Let's Encrypt ユーザーガイド」は、User Guide — Certbot 0.10.0.dev0 documentation の全文を和訳(意訳)した上で、補足説明などを加えたものです。 詳しくは 翻訳記事の出典と留意事項 をご覧ください。 クライアントソフトウェアの名称変更について 「Let's Encrypt クライアント」の名称は、「Certbot クライアント」に変更されました。 それに伴って、letsencrypt-auto が certbot-auto になるなど、ファイル名・ディレクトリ名・コマンド名・URLなども変更されました。 このページの更新履歴 2016年05月07日 letsencrypt-auto を更新して訳注を追加しました(現在は certbot-auto)。 Webroot プラグイン と Standalone プラグイン に詳しい解説を追

  • Update: Using Free Let’s Encrypt SSL/TLS Certificates with NGINX

    Editor – The blog post detailing the original procedure for using Let’s Encrypt with NGINX (from February 2016) redirects here. The instructions in that post are deprecated. This post has been updated to eliminate reliance on certbot‑auto, which the Electronic Frontier Federation (EFF) deprecated in Certbot 1.10.0 for Debian and Ubuntu and in Certbot 1.11.0 for all other operating systems. For add

    Update: Using Free Let’s Encrypt SSL/TLS Certificates with NGINX
  • CentOS6とCentOS7の比較表 - Qiita

    ①anacondaの画面フロー変更。 ②GUIでのパッケージ選択を廃止 ③6.5➡7へのupgradeをサポート CentOS6.5➡7にupdateするには下記 CentOS6.5 ➡ Centos7にアップグレード eth0などはそのまま引き継がれる。 サービスは停止するもの(例えばntpなど)があったり、 6.5で動いてたものが正常に動作しなくなる可能性があるので、upgradeは推奨はしません。

    CentOS6とCentOS7の比較表 - Qiita
  • プログラマーが「ネットワーク怪しくない?」と思った時に覚えておくと便利なことまとめ - LIVESENSE ENGINEER BLOG

    インフラエンジニアの中西です。 最近プログラマーからこのような話を耳にします。 「ネットワークって難しい/よくわからない」 最近ではAWS,GCPをはじめとするクラウドサービスが充実しているのでWeb界隈のエンジニアはなおさら気にするシーンが少なくなったように思います。 今日は最低限これだけ覚えていたら有事の際にちょっとは役に立ちますよという話が出来たらなと思います。 書式統一のため sudo を省略しています。ご容赦下さい。 コマンド編 ping ping です。疎通確認を行う時のコマンドです。 さすがに分かると聞こえてきそうですね。 例えば、192.168.1.1 というサーバに通信を確認したい場合はこうです。 $ ping 192.168.1.1 繋がる場合はこうなります。 $ ping 192.168.1.1 PING 192.168.1.1 (192.168.1.1): 56 d

    プログラマーが「ネットワーク怪しくない?」と思った時に覚えておくと便利なことまとめ - LIVESENSE ENGINEER BLOG
  • 2015年Webサーバアーキテクチャ序論 - ゆううきブログ

    2023年03月31日追記:この記事を基に、@sadnessOjisanさんより、コードレベルにより踏み込んだ、かつ、グリーンスレッドベースの新しいWebサーバアーキテクチャも含めて整理された記事 Webサーバーアーキテクチャ進化論2023 | blog.ojisan.io が公開されました。 主に新卒のWebエンジニア向けに、古典的なWebサーバアーキテクチャを学ぶ道のりと代表的な実装モデルの概要を紹介します。 この辺りの話題がWeb界隈で流行っていたのは数年以上前というイメージですが、Webサービスは相変わらずWebサーバの上で動いているので、流行り廃り関係なく学ぶべき内容だと思っています。 また、HTTP/2がいよいよRFC化し、既にh2oやtrusterdなどのHTTP/2のサーバ実装があり、今後Webサーバアーキテクチャを再訪することが増えるような気がしています。 ところが、We

    2015年Webサーバアーキテクチャ序論 - ゆううきブログ
  • Linux Performance Analysis in 60,000 Milliseconds

    You log in to a Linux server with a performance issue: what do you check in the first minute? At Netflix we have a massive EC2 Linux cloud, and numerous performance analysis tools to monitor and investigate its performance. These include Atlas for cloud-wide monitoring, and Vector for on-demand instance analysis. While those tools help us solve most issues, we sometimes need to login to an instanc

  • Linuxサーバにログインしたらいつもやっているオペレーション - ゆううきブログ

    主にアプリケーション開発者向けに、Linuxサーバ上の問題を調査するために、ウェブオペレーションエンジニアとして日常的にやっていることを紹介します。 とりあえず調べたことを羅列しているのではなく、当に自分が現場で使っているものだけに情報を絞っています。 普段使っているけれども、アプリケーション開発者向きではないものはあえて省いています。 MySQLNginxなど、個別のミドルウェアに限定したノウハウについては書いていません。 ログインしたらまず確認すること 他にログインしている人がいるか確認(w) サーバの稼働時間の確認 (uptime) プロセスツリーをみる (ps) NICやIPアドレスの確認 (ip) ファイルシステムの確認(df) 負荷状況確認 top iostat netstat / ss ログ調査 /var/log/messages or /var/log/syslog /

    Linuxサーバにログインしたらいつもやっているオペレーション - ゆううきブログ
  • lessのおすすめオプション - Qiita

    概要 lessのman見てたら便利っぽいの見つけたからまとめる 内容 自分がドキュメントのどこらへんを見てるのか表示する(-m) less -m で↑のスクショの左下のようにドキュメントのどこらへんにいるかをパーセンテージで表示する 自分が見てる行数やそのパーセンテージや開いてるファイル名を表示する(-M) less -M で↑のスクショの左下のように行数と -m 同様なパーセンテージと開いているファイル名を表示する ドキュメント内検索する時に検索ワードに大文字が入ってない限り大文字小文字を区別しない(-i) less -i でドキュメントを開くと、ドキュメント内検索する時に検索ワードに大文字が入ってない限り大文字小文字を区別しない。 つまり、 ↓のようなドキュメントを開いている時に /test で検索したら全部ヒットするが /Test で検索するとTest しかヒットしない ANSI C

    lessのおすすめオプション - Qiita