当社はIT技術のオンライン教育を得意としたセミナー専門会社です。 | 一戸英男

ITエンジニアの技術力UPをお約束します。

Linuxで壊れたディスクの修復(壊れたセクタをスキップして使う)

Linuxで壊れたディスクの修復(壊れたセクタをスキップして使う)


たまに一部セクタが壊れたディスクを再利用することがあるので、忘れないようにメモをしておく。 壊れたセクタをスキップして使う方法がfsckにあるので試してみる。/dev/sdc1が今回の故障を修復する対象。

タグ: , ,

LinuxにおいてAMD Radeon Graphicsで動画等を視聴した際に横線が入る場合の対策


YoutubeやNetflix等の動画サイトを見た際に横線が動画に入りずれてるような表示ケースが時々発生すると思います。 今回はAMD Radeon Graphicsインターフェイスを使っているパソコンの場合の対策を紹介したいと思います。

AMD Radeon Grahpic Board(GPU)

下記のフォルダーへ移動し10-radeon.confを編集します。「チラつき対応」の箇所の記述を入れたら保存し一旦ログアウトして入り直すと修正完了です。簡単でしょ!

タグ: , , ,

UUIDを調べる方法 ディスク、ネットワーク、USB機器に役立つ


Linuxの世界では、コンピュータ機器をUUIDで管理する仕組みなっている。昔のUNIXにはこんなものはなかったが。 UUIDは名前に「ID」が入っている通り、他の機器と区別するための識別名である。

使うシーンとしてはディスク、ネットワーク、USB機器を定常的に装着して使う場合など役に立つ。 なぜUUIDが必要かというと、デバイスが差し込みスロットが違ったり、複数機器を装着したりするとデバイス名が変わってしまうからだ。 特にディスクなんかは多いと思う。最初使っていたデバイスが/dev/sda1だったのにディスクを追加したら/dev/sdb1になってしまった等 よくあることです。そんな時に便利なのがUUIDなのです。これでデバイス設定を行うと装着状態にかかわらず設定のし直しが不要となります。

では、このような時にどうやって設定したらよいかですが、USB機器なら装着後にdmesgで確認するとデバイス名が表示されます。 それをメモにとります。

あるいはSATAなどのディスクデバイスならfdisk やpartedでマザーボードに装着されているデバイスの一覧を確認することができます。

デバイスの確認方法について

ディスクのUUIDを調べる方法

3パターン紹介します。使いやすいものをどうぞ!

LABELでデバイスを指定する方法

UUID以外にLABEL名をつけて呼び出すことも可能。

これでディスクにラベルがついたので、fstabの中でUUID=xxxxxxの箇所をLABEL=xxxxに変更するだけでOKです。

タグ: , , ,

第1回Windowsで手軽にLinuxを覚えよう! (Windows Subsystem For Linux)(導入編)


WindowsでLinuxするのは通常、VirtualBoxで仮想OSを行う人が圧倒的に多いのではないかと思う。でも、今はもっと早くて手軽な仕組みがWindowsにはあるのです。一部の人は何年も前からBeta版で使って知っている人も多いと思います。今日はその導入方法について説明して行こうと思います。

最初にインストール前の準備「Windowsの機能」でWSL機能を追加します。

Linuxの環境をインストールするには「Microsoft Store」からLinuxディストリビューションダウンロードしてインストールするのですが、その前に事前に機能追加のソフトを導入する必要があります。名前はWSL(Windows Subsystem for Linux)という名称の機能なので、最初にその環境ソフトをインストールします。一覧から「Windows Subsystem for Linux」を見つけチェックボックスを押下したら、OKボタンでインストールが始まります。

次にMicrosoft Storeを起動しLinuxで検索

Microsoft Storeを起動したら右上にある虫眼鏡の横の検索から「Linux」と入力して検索すると下記のようにLinuxのディストリビューションが現れます。「Ubuntu 18.04 LTS」をクリックしてインストールしてください。細かい画面は省略しますがインストールが終わると初回の起動が行われます。Ubuntuマークのコマンドプロンプトが現れ次いでLinuxのコンソールが現れます。新規ユーザの入力とパスワードを尋ねられ入力するとユーザ登録が完了します。尚、次回からは普通にDOSのコマンドプロンプトを起動し”bash”でLinuxに切り替わります。

「bash」と入力した途端にLinuxに切り替わりました。最初の切替時はWindowsのホームフォルダーであることがわかります。再度「cd」と入力するとLinuxのホームディレクトリーに切り替わりました。これでわかることはWindowsのフォルダーは外部ディスクのようにマウントされてLinuxから参照できるということです。便利ですね。WinsowsからLinuxには切り替えがほんの一瞬で変わります。/p>

どうでしたか、あまりに起動が早すぎて驚いた方もいたのではないでしょうか。私も使用していて、もうVirtualBox使わないな!なんて思いました。次は様々なサーバ環境構築の記事を載せて行きたいと思います。

タグ: , , , ,

ホームページの高速化手法 GZIP圧縮、コンパイルキャッシュ。画像圧縮、その他コンテンツ圧縮


WEB高速化まとめ

ホームページの高速化の意義

現在のグーグル検索順位を決定する基準の一つにホームページの高速表示は不可欠だ。表示が遅くて待たせることはユーザビリティとして適切ではないとグーグルは考えている。その他にも見た目のデザインやコンテンツの確かさ、有益な情報が入っているかが重要な順位を決める要因になりうる。

ホームページ高速化の優先順位

とりわけSEOとして考えていくなら第一にホームページの表示速度が重要で尚且つ、スマホの表示速度を優先度上げて考えるべきだ。理由として今の一般ユーザのアクセスの大半はスマホから来ているからなのです。 高速化の作業優先度を挙げるとしたら以下のような感じになるでしょう。

  1. スマートフォンの高速化
  2. 画像の圧縮
  3. javascriptの圧縮
  4. CSSの圧縮
  5. コンテンツがphp言語ならOPcacheを使ってコンパイル済みを共有メモリへロード
  6. DNSの応答高速化
  7. サーバのキャッシュと転送の圧縮処理
  8. ホスティング高速化
  9. HTTP/2を使ったWEBサーバへ切り替え。もしくはフロントをHTTP/2で置き換え。バッックエンドはHTTP/1.xでもOK。

スマートフォンの高速化

スマートフォンの高速化は第一に画像の調整につきます。PCでは画像のサイズを気にせずとも、スマホでは様々な場所へ移動してしまうため、回線状態の悪いことも想定して遅い速度でも閲覧できるよう画像の最適化は重要です。
画像はサイズも大切ですが画像形式、圧縮の技術を考慮するべきです。さらに画像のサイズをPC、スマホ、タブレットで変えて準備すると高速に表示できるはずです。レスポンシブならmetaタグでviewportを指定してサイズに合わせたCSSを読み出すか、あるいはcssファイル側で@media only screen and (max-device-width : 480px)のようにデバイスのスクリーン幅に合わせて変形を決めることができます。
WORDPRESS等のCMSではこのような画像を自動で間引いたり、最適にCSSを調整してくれるpluginがあります。このようなプラグインを使ってPC用画像とスマホ用画像を別々に分けて作るのは大変良いことです。

画像の圧縮

WORDPRESSで利用できる主な画像最適化プラグインを下記に案内します。導入して使ってみてください。無料で使えるものもかなりありますが、概ね数に制限があります。ページ数だったり、画像の数などです。
また重要なのは、設定の際に他のプラグインでやっている機能を重複しないようにしてください。同じ処理を2回、3回やっても無駄なので。むしろ遅くなります。またキャッシュも設定を変更したら 一度キャッシュクリアしてから速度を測定しましょう。そうしないと古いキャッシュで速度測定することになります。

  1. Compress JPEG & PNG images
  2. WP Smush
  3. EWWW Image Optimizer
※尚、WORDPRESSを使っていないサイトの場合は、専用ホスティングもしくは自前の専用サーバでLinuxやMacOSを使い圧縮することができます。
  1. JPEG圧縮(jpegoptim)
  2. PNG圧縮(optipng)

【JPEGの圧縮ツールの導入】

【PNG圧縮ツールの導入】

【圧縮ツールの使い方】

主なWORDPRESSキャッシュプラグイン

キャッシュだけではなくHTML,CSS,Javascriptを圧縮したり、統合化をしてくれるものもあります。
  • Autoptimize
  • Powered Cache
  • W3 Total Cache
  • WP Fastest Cache

コンテンツがphp言語ならOPcacheを使ってコンパイル済みを共有メモリへロード

PHPはスクリプトであるためリクエストごとにコンパイルをします。しかしこれだと時間がかかってしまいます。スクリプトを読むことなくパフォーマンスの向上を図るため、OPcacheを使うことで一度コンパイルしたコードをメモリー上に共有し再利用します。この作業RedHat系ディストリは非標準で作業が必要ですがubuntu/debian系のディストリはphpをインストールしたら大抵は標準で入ります。

phpinfo() Or php -v によるZendクレジットで導入が確認できる

Opcache導入が成功すると下記のクレジットが表示されます。 WEBサーバは再起動してください。コマンドラインではphp -vで確認できます。 ☆CentOSのバージョンによっては/etc/php.d/配下にxx-opcache.iniでopcache.soを指定するかもしれません。
☆Opcacheはphpの低いバージョンはダメ。おそらくphp5.6前後以上と思われる。

サーバの転送の圧縮処理とキャッシュ制御技術

Apache WEBサーバの転送はgzipで圧縮して転送を行うことが可能です。Apache2.4以前のバージョンではmod_deflateモジュールとを使ってAddOutputFilterByTypeでmimeフィルターする方法が途中まで主流でしたが既に廃れたやり方と言われています。
つまりdeflateモジュールをmod_filterを使ってmimeフィルターかけて圧縮することがApacheからも推奨されています。尚コンテンツ圧縮は転送量が減る反面、CPUの処理は増えるため、ボトルネックがCPUの処理能力の場合は逆にレスポンスが低下します。また、Apache2.4バージョン以降ではmod_filterを使うことが大前提でアナウンスされています。
結論を言ってしまうとどちらのバージョンでもmod_filterでFilterProviderでコンテンツタイプをフィルターして使うのですが若干記述に違いがありますので注意が必要です。
双方の処理ではDeflateCompressionLevel による圧縮レベルが指定できますが現実には、一番低いレベルの”1”で十分であります。レベルを上げても圧縮率が大して変わらないためCPUに余計な負荷を与えてしまい全体でみるとマイナスになってしまうからです。

Apache2.4以下の場合(つまりApache2.2)

Apache2.4以上の場合

上記を短くまとめると以下のようになります。

<<注意点モジュールの確認>>

下記のモジュールが予めコメントが外れていることを確認しましょう。 以上の記述とチェックが終わったらWEBサーバを再起動して圧縮の確認を行ってください。 WEBサイトの圧縮レベルを確認するサイト

キャッシュの処理

ブラウザ側にキャッシュをさせるタイマーをサーバー側で設定できるのがmod_expireになります。あくまでもキャッシュなので 必ず1回目のページアクセスは遅いということを理解しておきましょう。タイマーが切れたタイミングでWEBサーバにコンテンツを取りに行きます。
尚、予めmod_expireモジュールのコメント外れていることを必ず確認してください。

DNSの高速化とサーバホスティングの高速化

最近のクラウド、VPSなどの専用サーバホスティングは高速DNSサーバを備えているケースが多く、自前でDNSを用意するよりもいいかもしれません。インターネット上のジオメトリック的にDNSが有利にキャッシュされ盥回しされるため応答が早くなる可能性が高いと思います。
また、VPSもクラウドも専用サーバホスティングの世界ではHDDタイプとSSDタイプに選択肢が別れているものも当たり前になってきています。ネットワークの太い回線帯域を持っている方が圧倒的にサイトの表示は早いのでサーバスペック(コアの数)よりは回線の太さが重要かもしれません。また処理によって書き込みが中程度に多いのならばSSDも良いと思います。
以前はSSDの信頼性も?がついてましたがかなり安全であることがわかってきました。流石に大容量はHDDにかなわないのですが、容量がそれほどいかないサイトならSSDで十分とも言えます。
過去に使って見てよかったホスティングをとりあえず案内します。

  • Amazon EC2 | Amazon Lightsail (ネットワーク帯域、CPU、機能の装備がバランス取れている。Linux系に強い)
  • Azure(CPUが高速でWindowsサーバに特に適している。)
  • Google Cloud Platform (コンパネが使いやすい。ネットワーク帯域に優れる)
  • Conoha (ネットワーク帯域に優れ、装備の充実、操作の簡単さが良い)  
  • Kagoya VPS KVM(コストパフォーマンス抜群)
  • Web Arena Suite Pro V4(費用は高いが全体的に高速で安定性がある。)

速度及びGoogle Page Insightの評価について

測定方法は幾つかありますがどれもLightHouseが使われています。一番正確なのは、アナリティクスの速度が概ね正確だと思います。順番でいうと下記の数字が大きいほど正確と思って良いです。当然ながら同じlighthouseのツールでもどこで測定するかにより速度が違ってきます。プロバイダー同士の距離やホスティングの距離。クライアント毎のプロバイダー距離があるため結局の所アナリティクスのデータはそのような部分も考えても平等な測定地点と言えると思います。

  1. Google Page InsightでURL入力
  2. Google chrome browser拡張機能ツールからLightHouseで検索して追加。右上TOPのアイコンから起動し測定
  3. 2の拡張機能を追加した上でchromeブラウザで右クリックし「検証」を起動し、Auditsタブを選択して測定
  4. Google Analytics(左メニュー行動>サイトの速度>ページ速度の提案)

タグ: , , , , ,

1 2 3 4