Linuxにおけるファイル操作コマンド

Linuxシステムでは、ファイルやディレクトリの管理に不可欠な多くのコマンドが用意されています。ここでは、ファイルの作成、削除、表示、リンク作成、コピー、移動(リネーム)など、基本的なファイル操作コマンドについて解説します。 ファイルの作成と更新 touchコマンドは、新しいファイルの作成や、既存ファイルの最終アクセス時刻および更新時刻の変更に使用されま ...

10月7日 03:23 投稿

Docker入門ガイド

Dockerの基本概念とその利用方法について解説します。Dockerは、アプリケーションをパッケージ化し、異なる環境で一貫した動作を保証するためのプラットフォームです。 Dockerとは? Dockerは、ソフトウェアコンテナの作成と管理を簡素化するプラットフォームです。開発者は、コードが他のマシンでも同じように動作することを確認できます。運用者は、複数のアプリケーシ ...

10月5日 14:38 投稿

ソースコードからLNMP環境を構築する方法

必要なソフトウェアパッケージとダウンロードリンク Nginx - ウェブサーバーコンポーネント MySQL - データベースコンポーネント PHP - サーバーサイドスクリプト言語 PCRE - Nginxの正規表現サポート用ライブラリ Boost - MySQL 5.7以降に必要なライブラリ 本記事では以下のバージョンを使用します: Boost 1.59.0 MySQL 5.7.19 Nginx 1.14.1 PCRE 8.41 PHP 7.1.24 ...

10月2日 09:00 投稿

Linuxプロセスの状態と優先度のしくみ

プロセスの状態:カーネルが管理する実行フェーズ Linuxにおけるプロセスは、単に「動いている」わけではなく、カーネルによって厳密に定義された複数の状態(state)を持っています。これらの状態は、task_struct構造体を通じて管理され、タスクスケジューラが次にどのプロセスを実行すべきかを判断する根拠となります。 static const char * const task_states[] = { ...

9月29日 08:58 投稿

Linux historyコマンドの詳細解説と実践的活用法

はじめに Linuxのターミナル作業において、historyコマンドは実行済みコマンドの記録を管理する重要なツールです。デフォルトでは、実行したコマンドはメモリ上に保持され、シェル終了時にユーザーホームディレクトリの.bash_historyファイルに保存されます。この機能はシステム監査やトラブルシューティングで不可欠です。 基本的な機能と仕組み historyコマンドはメモリ ...

9月28日 15:58 投稿

Linuxにおけるシグナルの仕組みと実装

1. シグナルの基本概念 シグナルは、カーネルがユーザー空間のプロセスに送信する非同期通知機構であり、特定のイベント発生を知らせるために利用される。 1.1 シグナルの処理フロー 生成:カーネル、他のプロセス、またはハードウェア(例:MMUによる`SIGSEGV`)がシグナルを発生させる。 配信:カーネルが対象プロセスにシグナルを伝達し、処理を促す。 処理: ...

9月26日 19:07 投稿

Linux システム監視のプロフェッショナル手法:watch コマンドと5大パフォーマンスツールを連携させた即時障害診断

Linux サーバーの運用において、リアルタイムな状態変化を正確に捉えることは、障害対応の成否を分ける鍵となります。単発のコマンド実行では見逃されがちな瞬間的な負荷 spikes やリソース枯渇の兆候を、watch コマンドの差分ハイライト機能(-d)を活用して可視化することで、人間の目による検出精度を飛躍的に向上させられます。 watch -d の本質的価値:静的ビューで ...

9月25日 22:59 投稿

Linux 環境下での sudo 設定不備に起因する特権昇格シナリオ詳解

通常の利用者権限において sudo 設定を確認した際、特定のコマンドに対して実行権が付与されている状況は、セキュリティリスクとなり得ます。ここでは、許可されたコマンドの仕様や挙動を利用し、管理者権限へアクセスを試みる主要な手法について解説します。 1. バージョン固有の脆弱性(CVE-2019-14287) 対象となる sudo バージョンが 1.8.28 よりも古い場合、UID の ...

9月23日 17:02 投稿

Shellスクリプトの基礎から応用まで:実践ガイド

シェルスクリプトの作成と実行方法 シェルスクリプトは、LinuxやUnix系OSでコマンドを自動化するために使用されるテキストファイルです。まず、script.shという名前のファイルを作成し、エディタ(例: vim)で編集します。スクリプトの先頭にはインタプリタのパスを指定します。 #!/bin/bash # または #!/bin/sh # /bin/shは多くのシステムでdashを指している スクリプト ...

9月19日 23:10 投稿

Dockerによるシステムデプロイの基礎

DockerとJenkinsを活用した自動デプロイ フロントエンド開発者として、デプロイの仕組みは学習が不足しているものの、実務では自社システムの構築・公開に必要な手順を経験しています。以下は個人的な運用ノウハウのまとめであり、参考程度にご活用ください。 本環境では Jenkins + Docker を用いた自動ビルド・リポジトリへのプッシュを実施しています。特にJenkinsの役 ...

9月18日 08:28 投稿