<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>OI-systems</title>
	<atom:link href="https://oi-systems.net/feed" rel="self" type="application/rss+xml" />
	<link>https://oi-systems.net</link>
	<description>手軽に始められる『ブログ・自作アプリetc...』の情報を発信します。</description>
	<lastBuildDate>Tue, 14 Apr 2026 12:32:49 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>

<image>
	<url>https://oi-systems.net/wp-content/uploads/2024/11/cropped-212808e1a8384082b9b8a240ba1f4e63-32x32.png</url>
	<title>OI-systems</title>
	<link>https://oi-systems.net</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>202512_写真</title>
		<link>https://oi-systems.net/archives/1818</link>
					<comments>https://oi-systems.net/archives/1818#respond</comments>
		
		<dc:creator><![CDATA[フカシボウ弁慶]]></dc:creator>
		<pubDate>Sun, 08 Feb 2026 10:35:53 +0000</pubDate>
				<category><![CDATA[FamilyDiary]]></category>
		<guid isPermaLink="false">https://oi-systems.net/?p=1818</guid>

					<description><![CDATA[博多 20260208＿きよさわ里の駅＿清沢レモンまつり＿お茶栽培が高齢化により運営が大変となり、レモン栽培に一部転業してるとのことでした。まつり当日は風花が舞少し寒かったですが「レモンラーメン」「レモン大福」おいしかっ [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>博多</p>



<div class="wp-block-group is-nowrap is-layout-flex wp-container-core-group-is-layout-6c531013 wp-block-group-is-layout-flex">
<figure class="wp-block-image size-full is-resized"><img decoding="async" width="150" height="100" src="https://oi-systems.net/wp-content/uploads/2026/01/s-IMG_6652.jpg" alt="" class="wp-image-1825" style="aspect-ratio:1.500186776242062;width:273px;height:auto" /></figure>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="100" height="144" src="https://oi-systems.net/wp-content/uploads/2026/01/s-IMG_6691.jpg" alt="" class="wp-image-1826" style="width:128px;height:auto" /></figure>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="150" height="100" src="https://oi-systems.net/wp-content/uploads/2026/01/s-IMG_6711.jpg" alt="" class="wp-image-1827" style="aspect-ratio:1.5002454590083456;width:279px;height:auto" /></figure>
</div>



<p>20260208＿きよさわ里の駅＿清沢レモンまつり＿お茶栽培が高齢化により運営が大変となり、レモン栽培に一部転業してるとのことでした。まつり当日は風花が舞少し寒かったですが「レモンラーメン」「レモン大福」おいしかったです。「ぶっかけレモン（ドレッシング風）」「シロップ」など購入しました。」</p>



<div class="wp-block-group is-nowrap is-layout-flex wp-container-core-group-is-layout-6c531013 wp-block-group-is-layout-flex">
<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="112" height="150" src="https://oi-systems.net/wp-content/uploads/2026/02/s-IMG_1470.jpg" alt="" class="wp-image-1837" /></figure>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="112" height="150" src="https://oi-systems.net/wp-content/uploads/2026/02/s-IMG_1469.jpg" alt="" class="wp-image-1836" /></figure>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="112" height="150" src="https://oi-systems.net/wp-content/uploads/2026/02/s-IMG_1465.jpg" alt="" class="wp-image-1835" /></figure>



<figure class="wp-block-image size-large is-resized"><img loading="lazy" decoding="async" width="1024" height="768" src="https://oi-systems.net/wp-content/uploads/2026/02/IMG_1462-1024x768.jpg" alt="" class="wp-image-1841" style="width:209px;height:auto" srcset="https://oi-systems.net/wp-content/uploads/2026/02/IMG_1462-1024x768.jpg 1024w, https://oi-systems.net/wp-content/uploads/2026/02/IMG_1462-300x225.jpg 300w, https://oi-systems.net/wp-content/uploads/2026/02/IMG_1462-768x576.jpg 768w, https://oi-systems.net/wp-content/uploads/2026/02/IMG_1462.jpg 1200w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>
</div>



<p></p>
]]></content:encoded>
					
					<wfw:commentRss>https://oi-systems.net/archives/1818/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>【完全手順】LinuxへのZIPファイル適用｜Tera Termでの転送・バックアップ・解凍・配置をマスター</title>
		<link>https://oi-systems.net/archives/1777</link>
					<comments>https://oi-systems.net/archives/1777#respond</comments>
		
		<dc:creator><![CDATA[クラノスケ]]></dc:creator>
		<pubDate>Sun, 21 Dec 2025 14:48:02 +0000</pubDate>
				<category><![CDATA[サーバーを運用しよう]]></category>
		<category><![CDATA[LINUX]]></category>
		<category><![CDATA[scp]]></category>
		<category><![CDATA[TeraTerm]]></category>
		<guid isPermaLink="false">https://oi-systems.net/?p=1777</guid>

					<description><![CDATA[WinSCPのようなGUIツールが使えず、Tera TermだけでLinuxサーバーの設定ファイルデプロイを強いられたとき、「どうやって大量のファイルを安全かつ迅速に送るんだ…」と途方に暮れた経験はありませんか？ 特に、 [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>WinSCPのようなGUIツールが使えず、<strong>Tera Term</strong>だけでLinuxサーバーの設定ファイルデプロイを強いられたとき、「どうやって大量のファイルを安全かつ迅速に送るんだ…」と途方に暮れた経験はありませんか？</p>



<p>特に、今回のミッションが以下のような具体的なディレクトリの更新である場合、手順を一つ間違えるとシステムに影響を与えるリスクがあります。</p>



<p><strong>【今回のゴール（シナリオ）】</strong></p>



<ul class="wp-block-list">
<li><strong>手元にあるファイル:</strong> ローカルPCにある config.zip（新しい設定ファイル群）</li>



<li><strong>やりたいこと:</strong> サーバー上の <strong>/etc/settings/config</strong> ディレクトリ配下を、ZIPの中身で完全に置き換え（更新）たい。</li>



<li><strong>制約:</strong> GUIツール禁止。Tera Termとコマンド操作のみ。</li>
</ul>



<p>この記事では、このシナリオを確実に成功させるための、<strong>転送・バックアップ・解凍・配置の完全手順</strong>を解説します。</p>



<p><strong>この記事を読めば、以下の悩みが解決します。</strong></p>



<ul class="wp-block-list">
<li>既存の/etc/settings/config環境を、/tmpへ安全に<strong>バックアップ</strong>してから作業する方法がわかります。</li>



<li>unzipコマンドで解凍先フォルダを指定し、ファイルが散らばるのを防ぎながらスマートに準備するテクニックが身につきます。</li>



<li>最終的にcpコマンドを活用し、対話プロンプトを出さずに<strong>一括で強制上書き</strong>する効率的な手順をマスターできます。</li>
</ul>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading"><strong>WinSCPが使えない環境でのファイル転送の基礎知識</strong></h2>



<h3 class="wp-block-heading"><strong>転送の選択肢：GUI（WinSCP）とCUI（SCP/SFTP）</strong></h3>



<p>ファイル転送で最も手軽なのは<strong>WinSCP</strong>のような<strong>GUI（グラフィカルユーザーインターフェース）ツール</strong>を使う方法です。</p>



<p>しかし、多くのセキュリティが厳しい<strong>oisystem</strong>などの本番環境では、WinSCPのようなクライアントツールの利用自体が禁止されていることが少なくありません。</p>



<p><strong>なぜGUIツールが使えないのか？</strong></p>



<ul class="wp-block-list">
<li><strong>セキュリティポリシー:</strong> 踏み台サーバーを経由する多段SSH接続が必須で、GUIツールが対応できない。</li>



<li><strong>ツールの制限:</strong> 社内規定で認可されたTera Term以外のソフトがインストールできない。</li>
</ul>



<p>このような環境では、<strong>Tera Termに標準搭載されているSCP機能</strong>を使うのが最も安全で確実です。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading"><strong>【実践手順1】ZIP転送とバックアップの取得</strong></h2>



<p>このセクションでは、ローカルPCのconfig.zipをサーバーへ送り、更新対象となる/etc/settings/configディレクトリのバックアップを取得するまでを解説します。</p>



<h3 class="wp-block-heading"><strong>ステップ1：PCからLinuxサーバーの/tmpへZIPを転送</strong></h3>



<p>まず、更新用ファイルをサーバーの一時領域に送ります。</p>



<div class="wp-block-cocoon-blocks-caption-box-1 caption-box block-box not-nested-style cocoon-block-caption-box"><div class="caption-box-label block-box-label box-label"><span class="caption-box-label-text block-box-label-text box-label-text">1.<strong>Tera TermのメニューからSCPを起動</strong></span></div><div class="caption-box-content block-box-content box-content">
<p>SSH接続した状態で、メニューの「ファイル(F)」＞「SSH SCP(S)&#8230;」を選択します。</p>
</div></div>



<div class="wp-block-cocoon-blocks-caption-box-1 caption-box block-box not-nested-style cocoon-block-caption-box"><div class="caption-box-label block-box-label box-label"><span class="caption-box-label-text block-box-label-text box-label-text">2.<strong><strong>ファイルの指定</strong></strong></span></div><div class="caption-box-content block-box-content box-content">
<ul class="wp-block-list">
<li>「From:」にローカルPC上のファイル（例: C:\Users\User\Desktop\config.zip）を指定します。</li>



<li>「To:」にサーバー側の転送先（例: /tmp）を指定します。</li>
</ul>
</div></div>



<div class="wp-block-cocoon-blocks-caption-box-1 caption-box block-box not-nested-style cocoon-block-caption-box"><div class="caption-box-label block-box-label box-label"><span class="caption-box-label-text block-box-label-text box-label-text">3.<strong><strong>実行</strong></strong></span></div><div class="caption-box-content block-box-content box-content">
<p>「Send」ボタンをクリックして転送します。</p>
</div></div>



<p>これで、config.zipがサーバーの/tmpディレクトリに配置されました。</p>



<h3 class="wp-block-heading"><strong>ステップ2：対象ディレクトリを/tmpへバックアップ</strong></h3>



<p>更新作業に入る前に、現在の稼働環境（/etc/settings/config）をバックアップします。今回は/tmpディレクトリに日時付きで退避させます。</p>



<div class="wp-block-cocoon-blocks-caption-box-1 caption-box block-box not-nested-style cocoon-block-caption-box"><div class="caption-box-label block-box-label box-label"><span class="caption-box-label-text block-box-label-text box-label-text">1./tmpディレクトリへ移動</span></div><div class="caption-box-content block-box-content box-content">
<div class="hcb_wrap"><pre class="prism off-numbers lang-bash" data-lang="Bash"><code>cd /tmp</code></pre></div>
</div></div>



<div class="wp-block-cocoon-blocks-caption-box-1 caption-box block-box not-nested-style cocoon-block-caption-box"><div class="caption-box-label block-box-label box-label"><span class="caption-box-label-text block-box-label-text box-label-text">2.既存のconfigディレクトリを/tmpへコピーしてバックアップ</span></div><div class="caption-box-content block-box-content box-content">
<p># -r: ディレクトリの中身もすべてコピー<br># -p: パーミッション（権限）やタイムスタンプを保持</p>



<div class="hcb_wrap"><pre class="prism off-numbers lang-bash" data-lang="Bash"><code>sudo cp -rp /etc/settings/config /tmp/config_backup_$(date +%Y%m%d)</code></pre></div>
</div></div>



<p><br></p>



<p>ポイント</p>



<p>mv（移動）ではなくcp（コピー）を使うことで、本番環境（/etc/settings/config）には古いファイルが残った状態になります。これにより、万が一この後の作業中にエラーが起きても、システム自体は以前の状態で稼働し続けられます。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading"><strong>【実践手順2】フォルダ指定解凍と強制上書き</strong></h2>



<p>ここからが本題です。転送したZIPファイルを解凍し、ターゲットディレクトリ（/etc/settings/config）へ一括で適用（上書き）します。</p>



<h3 class="wp-block-heading"><strong>ステップ3：ディレクトリを指定してZIPを解凍</strong></h3>



<p>ZIPファイルをそのままunzipすると、カレントディレクトリ（/tmp）にファイルが散らばってしまうリスクがあります。これを防ぐため、<strong>解凍先のフォルダ名を指定して</strong>解凍します。</p>



<div class="wp-block-cocoon-blocks-caption-box-1 caption-box block-box not-nested-style cocoon-block-caption-box"><div class="caption-box-label block-box-label box-label"><span class="caption-box-label-text block-box-label-text box-label-text">1.解凍</span></div><div class="caption-box-content block-box-content box-content">
<p># /tmpにいる状態で実行します<br># -d オプション：指定したディレクトリを作成してそこに解凍する<br># config.zipを「new_config」という一時フォルダの中に解凍</p>



<div class="hcb_wrap"><pre class="prism off-numbers lang-bash" data-lang="Bash"><code>unzip config.zip -d new_config</code></pre></div>
</div></div>



<p>これにより、config.zipの中身がどうであれ、/tmp/new_config/というフォルダの中にきれいに格納されます。</p>



<h3 class="wp-block-heading"><strong>ステップ4：cp -Rfで本番環境へ強制上書き</strong></h3>



<p>最後に、解凍した新しいファイル群を、本番環境（/etc/settings/config/）へ上書きコピーします。</p>



<div class="wp-block-cocoon-blocks-caption-box-1 caption-box block-box not-nested-style cocoon-block-caption-box"><div class="caption-box-label block-box-label box-label"><span class="caption-box-label-text block-box-label-text box-label-text">1.<strong>本番環境へ上書き</strong></span></div><div class="caption-box-content block-box-content box-content">
<p># 解凍した一時フォルダの中身を、配置先へ強制コピー<br># -R: 再帰的コピー（フォルダ内の全データを対象）<br># -f: 強制コピー（上書き確認プロンプトを回避）</p>



<div class="hcb_wrap"><pre class="prism off-numbers lang-bash" data-lang="Bash"><code>sudo cp -Rf new_config/* /etc/settings/config/</code></pre></div>
</div></div>



<p></p>



<p><strong>このコマンドの挙動:</strong></p>



<ul class="wp-block-list">
<li>new_config/ の中にあるすべてのファイルとフォルダが、/etc/settings/config/ の中にコピーされます。</li>



<li>同名のファイルがある場合は、<strong>確認なしで上書き</strong>されます。</li>



<li>これにより、今回のゴールである「ZIPの内容での置き換え」が完了します。</li>
</ul>



<p>補足</p>



<p>作業が完了し、問題なく動作していることが確認できたら、/tmp配下のバックアップや一時ファイル（config.zip, new_config, config_backup_&#8230;）は削除しても構いません。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading"><strong>まとめ</strong></h2>



<p>環境に制約がある<strong>oisystem</strong>などのLinuxサーバーであっても、正しい手順を踏めば、GUIツール並みに安全かつ整理されたデプロイが可能です。</p>



<p><strong>今回の重要コマンドまとめ</strong></p>



<figure class="wp-block-table"><div class="scrollable-table"><table class="has-fixed-layout"><tbody><tr><td><strong>目的</strong></td><td><strong>コマンド / 操作</strong></td><td><strong>メリット</strong></td></tr><tr><td><strong>転送</strong></td><td>Tera Term SCP</td><td>GUI禁止環境でもZIPファイルを確実に転送可能。</td></tr><tr><td><strong>バックアップ</strong></td><td>cp -rp [元] [先]</td><td>権限を保持したまま/tmpへ複製を残せる。</td></tr><tr><td><strong>解凍</strong></td><td>unzip [file] -d [dir]</td><td><strong>指定フォルダを作って解凍</strong>できるため、ファイルが散らばらない。</td></tr><tr><td><strong>配置</strong></td><td>cp -Rf [元]/* [先]/</td><td><strong>対話プロンプトを回避</strong>し、一括で強制上書き完了。</td></tr></tbody></table></div></figure>



<h3 class="wp-block-heading"><strong>読者が次に取るべき具体的なアクション</strong></h3>



<p>今回の手順で一番のポイントは、unzipの-dオプションと、cpの-fオプションの組み合わせです。</p>



<p>次回の手順書作成や作業時には、ぜひ「解凍用の一時フォルダを作る（-d）」という手順を標準化してみてください。これだけで、ZIPの中身がどうなっているかを気にせず、常に同じ手順でミスなくデプロイ作業が行えるようになります。</p>



<p></p>
]]></content:encoded>
					
					<wfw:commentRss>https://oi-systems.net/archives/1777/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>脱・初心者｜なぜプロはレンタルサーバーではなく「VPS」を選ぶのか？</title>
		<link>https://oi-systems.net/archives/1803</link>
					<comments>https://oi-systems.net/archives/1803#respond</comments>
		
		<dc:creator><![CDATA[クラノスケ]]></dc:creator>
		<pubDate>Sun, 21 Dec 2025 14:37:12 +0000</pubDate>
				<category><![CDATA[サーバーを作ろう]]></category>
		<category><![CDATA[LINUX]]></category>
		<category><![CDATA[VPS]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[自己投資]]></category>
		<guid isPermaLink="false">https://oi-systems.net/?p=1803</guid>

					<description><![CDATA[「ブログを始めるなら、無料サービスやレンタルサーバーで十分じゃない？」 「わざわざ黒い画面（ターミナル）でコマンドを打ってサーバーを作るなんて、時間の無駄では？」 正直、そう思う気持ちもわかります。記事を書くだけなら、既 [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>「ブログを始めるなら、無料サービスやレンタルサーバーで十分じゃない？」</p>



<p>「わざわざ黒い画面（ターミナル）でコマンドを打ってサーバーを作るなんて、時間の無駄では？」</p>



<p>正直、そう思う気持ちもわかります。記事を書くだけなら、既存のサービスを使えば3分で始められますから。</p>



<p>でも、あえて断言します。</p>



<p>もしあなたが少しでもITやWebに興味があるなら、絶対にVPS（仮想専用サーバー）で、自分の手で環境を作るべきです。なぜなら、それは単に「ブログを作る作業」ではなく、「エンジニアとしてのキャリアを作る作業」そのものだからです。</p>



<p>今回は、私が実際に運用している GMO VPS + AlmaLinux + Nginx × Apache というガチ構成の全体像と、この作業がいかにして本業の年収アップにつながったか、その実体験をお話しします。</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-12 sbs-line sbp-l sbis-cb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oi-systems.net/wp-content/uploads/2021/04/avatar20210421011549.jpg" alt="クラノスケ" class="speech-icon-image"/></figure><div class="speech-name">クラノスケ</div></div><div class="speech-balloon">
<p>私自身も最初は黒い画面に抵抗がありましたが、この「苦労」が今の技術力の土台になっています。この記事で、その第一歩を踏み出しましょう！</p>
</div></div>



<h2 class="wp-block-heading"><strong>VPS選定理由</strong></h2>



<p>私が便利さを捨ててまで、GMO VPSを選んで運用している理由は大きく3つあります。</p>



<h3 class="wp-block-heading"><strong>自由度</strong></h3>



<p>レンタルサーバーやブログサービスは、いわば「賃貸マンション」です。</p>



<p>「ここの表示をあと1ミリずらしたい」「特殊なプログラムを動かしたい」と思っても、管理会社の制限があり、壁に穴を開けることはできません。</p>



<p>一方、VPSは「土地を買って、自分で家を建てる」のと同じです。</p>



<ul class="wp-block-list">
<li>デザイン: WordPressのデザインを根底からいじり倒せます。</li>



<li>共存: 独自のWebアプリを同居させるのも自由です。</li>
</ul>



<p>「できないこと」が存在しない、自分だけの城を持てる快感は、一度味わうと戻れません。</p>



<h3 class="wp-block-heading"><strong>構成技術</strong></h3>



<p>ここが少しマニアックですが、エンジニアとして譲れないポイントです。</p>



<p>私のサーバーは、以下の通りWebサーバーソフトを2つ組み合わせています。</p>



<ul class="wp-block-list">
<li>Nginx（フロント）: 受付係として、大量のアクセスを高速にさばきます。</li>



<li>Apache（バック）: 料理人として、WordPress（PHP）の処理を確実にこなします。</li>
</ul>



<p>これを「リバースプロキシ構成」と呼び、大規模なWebサービスでは当たり前に使われている技術です。</p>



<p>レンタルサーバーでは構成が決まっていますが、VPSならこの「プロの構成」を自分で設計・構築できます。</p>



<h3 class="wp-block-heading"><strong>スキル習得</strong></h3>



<p>一番伝えたいのはこれです。</p>



<p>私はこのサーバー構築を通じて、Linux（AlmaLinux）の操作を覚えました。</p>



<p>すると、本業の仕事でサーバー管理やメンテナンスを任されるようになったのです。</p>



<p>趣味や副業ブログのために始めたVPS構築が、気づけば本業のキャリアの幅を広げ、結果として年収アップに繋がります。これ以上の自己投資はありません。</p>



<h2 class="wp-block-heading"><strong>AI時代の価値</strong></h2>



<p>「今はChatGPTがあるから、コマンドなんて覚えなくていいでしょ？」</p>



<p>そう思うかもしれませんが、現実は逆です。</p>



<ul class="wp-block-list">
<li>AIの役割: コードを書く。</li>



<li>人間の役割: そのコードを動かすサーバーに入り、環境を整え、エラーログを見て対処する。</li>
</ul>



<p>AI全盛の今だからこそ、「サーバーにログインしてコマンドを叩ける」エンジニアは希少価値が高く、どの現場でも重宝されます。</p>



<h2 class="wp-block-heading"><strong>構成と費用</strong></h2>



<p>では、私のキャリアを支えているサーバー構成（私の「城」）のスペックを公開します。</p>



<p>「勉強用だから高いんでしょ？」と思われるかもしれませんが、実は月々のランチ1回分程度で維持しています。</p>



<h3 class="wp-block-heading"><strong>契約・ハードウェア</strong></h3>



<figure class="wp-block-table"><div class="scrollable-table"><table class="has-fixed-layout"><tbody><tr><td><strong>項目</strong></td><td><strong>内容</strong></td><td><strong>私の選択理由</strong></td></tr><tr><td>サーバー</td><td>GMOクラウド VPS (V2プラン)</td><td>信頼性の高い国内VPS。コスパ最強。</td></tr><tr><td>OS</td><td>AlmaLinux 8.8</td><td>企業の現場で最も使われているRHEL系のOS。</td></tr><tr><td>契約期間</td><td>12ヶ月契約</td><td>1ヶ月ごとの更新より圧倒的に安くなります。</td></tr><tr><td>スペック</td><td>2 Core / 2 GB</td><td>Nginx+Apache+DBを動かすのに丁度いい性能。</td></tr><tr><td>ディスク</td><td>100 GB (SSD)</td><td>OS領域とデータ領域を分けても十分な容量。</td></tr></tbody></table></div></figure>



<p>※12ヶ月一括払いにすることで、月々のランニングコストを大幅に抑えています。</p>



<h3 class="wp-block-heading"><strong>ソフトウェア構成</strong></h3>



<p>単にインストールするだけでなく、仕事と同じように詳細設計書（ディレクトリ構成や権限ルール）を作って管理しています。</p>



<figure class="wp-block-table"><div class="scrollable-table"><table class="has-fixed-layout"><tbody><tr><td><strong>カテゴリ</strong></td><td><strong>ソフトウェア</strong></td><td><strong>バージョン</strong></td><td><strong>役割・こだわりポイント</strong></td></tr><tr><td>Web (Front)</td><td>Nginx</td><td>&#8211;</td><td>リバースプロキシとして稼働。静的コンテンツを高速処理。</td></tr><tr><td>Web (Back)</td><td>Apache</td><td>2.4.37</td><td>バックエンドでPHPを処理。安定性抜群。</td></tr><tr><td>DB</td><td>MariaDB</td><td>10.3.39</td><td>MySQL互換で高性能なデータベース。</td></tr><tr><td>言語</td><td>PHP</td><td>7.2.24</td><td>WordPressを動かすプログラミング言語。</td></tr><tr><td>CMS</td><td>WordPress</td><td>&#8211;</td><td>世界シェアNo.1のブログシステム。</td></tr></tbody></table></div></figure>



<p>この構成を自分の手で作れるようになれば、あなたはもう初心者ではなく、立派な「インフラエンジニア」の入り口に立っています。</p>



<h2 class="wp-block-heading"><strong>まとめ</strong></h2>



<p>正直に言います。VPSでのブログ構築は、面倒くさいです。</p>



<p>設定ファイルの1文字のミスで動かなくなり、必死にエラーログを調べる夜もあるでしょう。</p>



<p>しかし、その「苦労」こそが、エンジニアとしての筋肉になります。</p>



<ul class="wp-block-list">
<li>レイアウトを自由自在に変えられる楽しさ。</li>



<li>「Nginx × Apache」というプロの技術を操る優越感。</li>



<li>身についた技術が仕事に繋がり、キャリアを押し上げる未来。</li>
</ul>



<p>GMO VPSの12ヶ月契約なら、「ランチ1回分程度のお金」で将来の自分の食い扶持（スキル）を稼ぐ練習ができます。</p>



<p>これほどコスパの良い投資案件は他にないはずです。</p>



<p>あなたも「既存サービスの借り物」ではなく、VPSで「自分だけの城」を建ててみませんか？</p>



<p></p>
]]></content:encoded>
					
					<wfw:commentRss>https://oi-systems.net/archives/1803/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>【Windows】サインインでPINが優先される？顔認証に固定する方法</title>
		<link>https://oi-systems.net/archives/1800</link>
					<comments>https://oi-systems.net/archives/1800#respond</comments>
		
		<dc:creator><![CDATA[クラノスケ]]></dc:creator>
		<pubDate>Sun, 21 Dec 2025 14:33:40 +0000</pubDate>
				<category><![CDATA[PCを使いこなそう]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[Windows Hello]]></category>
		<category><![CDATA[顔認証]]></category>
		<guid isPermaLink="false">https://oi-systems.net/?p=1800</guid>

					<description><![CDATA[PCの電源を入れて、さあ仕事を始めようとした瞬間。画面に表示されるのは「顔認証」ではなく「PIN」の入力欄だったことはありませんか？ 「せっかく顔認証（Windows Hello）があるのに、なぜ毎回PINを求められるの [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>PCの電源を入れて、さあ仕事を始めようとした瞬間。画面に表示されるのは「顔認証」ではなく「PIN」の入力欄だったことはありませんか？</p>



<p>「せっかく顔認証（Windows Hello）があるのに、なぜ毎回PINを求められるの？」</p>



<p>そう思いながら、わざわざ「サインイン オプション」をクリックして顔認証を選び直す。たった数秒のことですが、毎日のこの「小さな一手間」は意外とストレスになるものです。</p>



<p>この記事では、PCを開いた瞬間に顔認証がスタンバイ状態になるよう、システム設定（レジストリ）を修正する手順を解説します。</p>



<p>難しい操作は必要ありません。場所と値を書き換えるだけで、毎朝のイライラから解放されます。</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-12 sbs-line sbp-l sbis-cb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oi-systems.net/wp-content/uploads/2021/04/avatar20210421011549.jpg" alt="クラノスケ" class="speech-icon-image"/></figure><div class="speech-name">クラノスケ</div></div><div class="speech-balloon">
<p>私自身も「なんで毎回PINなんだ！」と毎朝思っていました。この設定をしてからは、PCの前に座るだけでロック解除されるので、本当に快適ですよ！</p>
</div></div>



<h2 class="wp-block-heading"><strong>原因</strong></h2>



<p>Windows Helloの顔認証を設定していても、スリープ復帰時などにPIN入力が優先されてしまうことがあります。</p>



<p>これは、Windowsが記憶している「既定の資格情報プロバイダー（どの認証方法を最初に使うか）」の設定が、ユーザーの意図とズレてしまっているために起こります。</p>



<p>これを解決するには、レジストリというWindowsの設定台帳を直接編集し、「このユーザーは顔認証を最優先にする」と明示的に教える必要があります。</p>



<h2 class="wp-block-heading"><strong>設定手順</strong></h2>



<p>ここからは具体的な操作手順です。レジストリはシステムの重要な部分ですので、手順通り慎重に操作してください。</p>



<h3 class="wp-block-heading"><strong>SID確認</strong></h3>



<p>まずは、設定を行うユーザー（あなた）を特定するためのID、「SID」を調べます。</p>



<ol class="wp-block-list">
<li><strong>ターミナル起動:</strong> スタートボタンを右クリックし、「Windows ターミナル」または「コマンドプロンプト」を開きます。</li>



<li>コマンド入力: 黒い画面が表示されたら、以下のコマンドを入力してEnterキーを押します。<br>whoami /user</li>



<li><strong>SIDコピー:</strong> 表示された結果のうち、S-1-5- で始まる長い文字列があなたのSIDです。これをマウスで選択し、Ctrl + C キーでコピーしておきます（後で使います）。</li>
</ol>



<h3 class="wp-block-heading"><strong>エディタ起動</strong></h3>



<p>次に、設定を変更する画面（レジストリエディタ）を開きます。</p>



<ol class="wp-block-list">
<li><strong>実行画面:</strong> キーボードの Windowsキー + R を押して「ファイル名を指定して実行」を開きます。</li>



<li><strong>コマンド:</strong> 名前の欄に regedit と入力してEnterキーを押します。</li>



<li>場所移動: エディタが開いたら、画面上部のアドレスバーに以下のパスを貼り付けてEnterキーを押します。<br>HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\LogonUI\UserTile</li>
</ol>



<h3 class="wp-block-heading"><strong>値変更</strong></h3>



<p>ここが最重要ステップです。コピーしておいたSIDを使って設定を書き換えます。</p>



<ol class="wp-block-list">
<li><strong>SID特定:</strong> 画面右側の一覧から、「名前」が<strong>先ほど調べた自分のSID</strong>（S-1-5-&#8230;）と一致する項目を探します。</li>



<li><strong>編集画面:</strong> 見つけた項目（自分のSID）をダブルクリックして開きます。</li>



<li>値書換: 「値のデータ」に入っている文字列を削除し、以下の「顔認証用コード（GUID）」を貼り付けます。<br>{8AF662BF-65A0-4D0A-A540-A338A999D36F}</li>



<li><strong>完了:</strong> [OK]をクリックして画面を閉じ、PCを再起動（またはサインアウト）して完了です。</li>
</ol>



<p>【重要】新しい項目を作らないでください</p>



<p>この手順のポイントは、「既に一覧にある自分のSID」の中身を書き換えることです。</p>



<p>新しくキーを作成したりしないでください。あくまで既存の設定値を変更する操作です。</p>



<h2 class="wp-block-heading"><strong>応用</strong></h2>



<p>もし、あえて「指紋認証」や「PIN」をデフォルトに戻したい場合は、手順のステップ3で入力するコード（GUID）を以下のように変更してください。</p>



<ul class="wp-block-list">
<li><strong>顔認証:</strong> {8AF662BF-65A0-4D0A-A540-A338A999D36F}</li>



<li><strong>指紋認証:</strong> {BEC09223-B018-416D-A0AC-523971B639F5}</li>



<li><strong>PIN:</strong> {D6886603-9D2F-4EB2-A6C6-29799BC3A894}</li>



<li><strong>パスワード:</strong> {60B78E88-EAD8-445C-9CFD-0B87F74EA6CD}</li>
</ul>



<h2 class="wp-block-heading"><strong>まとめ</strong></h2>



<p>Windowsのサインイン時に顔認証をデフォルトにする方法は以下の通りです。</p>



<ol class="wp-block-list">
<li>whoami /user で自分のSIDを調べる。</li>



<li>レジストリの &#8230;LogonUI\UserTile を開く。</li>



<li><strong>自分のSID名の項目</strong>にある「値のデータ」を顔認証用の {8AF662BF&#8230;} に変更する。</li>
</ol>



<p>これで、PC起動時やスリープ復帰時に、毎回クリックし直すあの小さなストレスから解放されます。</p>



<p>毎日の仕事のスタートダッシュをスムーズにするために、ぜひ設定を見直してみてください。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://oi-systems.net/archives/1800/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>【OpenSSL】コピペで完結！Windowsでの失敗しないCSR作成手順</title>
		<link>https://oi-systems.net/archives/1797</link>
					<comments>https://oi-systems.net/archives/1797#respond</comments>
		
		<dc:creator><![CDATA[クラノスケ]]></dc:creator>
		<pubDate>Sun, 21 Dec 2025 14:30:03 +0000</pubDate>
				<category><![CDATA[サーバーを守ろう]]></category>
		<category><![CDATA[CSR]]></category>
		<category><![CDATA[OpenSSL]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[Winget]]></category>
		<guid isPermaLink="false">https://oi-systems.net/?p=1797</guid>

					<description><![CDATA[「組織単位（OU）を2つ設定しなければならない」「SAN（別名）の設定も必須」。 SAPなどの基幹システム用証明書を発行する際、このような複雑な要件に頭を抱えたことはありませんか？ 通常のOpenSSL対話モードではこれ [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>「組織単位（OU）を2つ設定しなければならない」「SAN（別名）の設定も必須」。</p>



<p>SAPなどの基幹システム用証明書を発行する際、このような複雑な要件に頭を抱えたことはありませんか？</p>



<p>通常のOpenSSL対話モードではこれらの設定に対応しきれず、かといって全て手入力すると、長い部署コードでタイプミスをしてしまうリスクがあります。</p>



<p>インフラ担当者にとって、その手戻りのリスクは大きなストレスです。</p>



<p>この記事では、Windows環境で標準機能を活用し、設定ファイルを使って面倒な入力作業を「自動化」する手順をご紹介します。</p>



<p>この方法を使えば、複雑な要件もコピペだけで確実にクリアできるようになります。</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-12 sbs-line sbp-l sbis-cb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oi-systems.net/wp-content/uploads/2021/04/avatar20210421011549.jpg" alt="クラノスケ" class="speech-icon-image"/></figure><div class="speech-name">クラノスケ</div></div><div class="speech-balloon">
<p>私自身も、過去に長い部署コードを一文字間違えてCSRを作り直し、冷や汗をかいた経験があります。この記事で確実な方法をマスターしましょう！</p>
</div></div>



<h2 class="wp-block-heading"><strong>基礎知識</strong></h2>



<p>作業に入る前に、CSRの役割と全体の流れを整理します。</p>



<h3 class="wp-block-heading"><strong>CSRの役割</strong></h3>



<p>CSR（Certificate Signing Request）とは、「証明書への署名要求（申請書）」のことです。</p>



<p>サーバーの公開鍵情報や、組織名（O）、組織単位（OU）、国コードなどの情報が含まれています。</p>



<h3 class="wp-block-heading"><strong>全体フロー</strong></h3>



<p>CSR作成は、HTTPS通信を実現するための最初のステップです。全体像は以下のようになります。</p>



<ol class="wp-block-list">
<li><strong>CSRの作成（今回の作業）：</strong> サーバー上で秘密鍵とCSRを生成します。</li>



<li><strong>認証局（CA）への提出：</strong> 作成したCSRをVeriSignなどのパブリックCAや、社内CAに提出します。</li>



<li><strong>証明書の発行：</strong> CAが審査し、サーバー証明書（.crtなど）を発行します。</li>



<li><strong>インストール：</strong> 証明書と秘密鍵をサーバーにインストールします。</li>
</ol>



<p>このCSR作成段階で「OU」や「SAN」の設定が漏れていると、証明書は作り直しになってしまいます。</p>



<h2 class="wp-block-heading"><strong>設定ファイルの重要性</strong></h2>



<p>なぜ、WindowsでのCSR作成に設定ファイルが必要なのでしょうか？</p>



<h3 class="wp-block-heading"><strong>対話モードの限界</strong></h3>



<p>OpenSSLの標準的な対話モードには、以下の壁があります。</p>



<ul class="wp-block-list">
<li><strong>複数OUの壁：</strong> 基本的にOUは1つしか入力できませんが、ポリシーによっては「部署コード」と「部署名」の2つが求められることがあります。</li>



<li><strong>SANの壁：</strong> 最近の必須要件である「SAN（Subject Alternative Name）」を、対話モードだけでは含めることができません。</li>
</ul>



<p>これらを解決し、人為的ミスを防ぐ唯一の方法が、これから紹介する<strong>設定ファイル（cnf）の活用</strong>です。</p>



<h2 class="wp-block-heading"><strong>導入手順</strong></h2>



<p>まずは環境構築です。インストーラーを探す必要はありません。</p>



<h3 class="wp-block-heading"><strong>インストール</strong></h3>



<p>Windows 10/11以降であれば、標準搭載の管理ツールWingetを使用します。</p>



<div class="wp-block-cocoon-blocks-caption-box-1 caption-box block-box not-nested-style cocoon-block-caption-box"><div class="caption-box-label block-box-label box-label"><span class="caption-box-label-text block-box-label-text box-label-text">1.<strong>インストール</strong></span></div><div class="caption-box-content block-box-content box-content">
<p>管理者権限でコマンドプロンプトを開き、以下のコマンドを実行してください。</p>



<div class="hcb_wrap"><pre class="prism off-numbers lang-bash" data-lang="Bash" data-show-lang="0"><code>winget search openssl
winget install -e --id ShiningLight.OpenSSL.Light</code></pre></div>
</div></div>



<p><br></p>



<h3 class="wp-block-heading"><strong>ディレクトリ移動</strong></h3>



<p>インストール完了後、作業用ディレクトリへ移動します。</p>



<p></p>



<div class="wp-block-cocoon-blocks-caption-box-1 caption-box block-box not-nested-style cocoon-block-caption-box"><div class="caption-box-label block-box-label box-label"><span class="caption-box-label-text block-box-label-text box-label-text">作業用ディレクトリへ移動します。</span></div><div class="caption-box-content block-box-content box-content">
<div class="hcb_wrap"><pre class="prism off-numbers lang-bash" data-lang="Bash" data-show-lang="0"><code>cd C:\Program Files\OpenSSL-Win64\bin</code></pre></div>
</div></div>



<p><br></p>



<h2 class="wp-block-heading"><strong>設定ファイル作成</strong></h2>



<p>ここが最重要ポイントです。「変えたくない部分は固定」し、「サーバーごとに変わる部分は手入力」にする設定ファイルを作成します。</p>



<h3 class="wp-block-heading"><strong>記述例</strong></h3>



<p>メモ帳などのテキストエディタで san_config.cnf というファイルを作成し、以下の内容を保存してください。</p>



<p>ポイントは、番号を振って複数OUに対応させている点と、_default で固定値を埋め込んでいる点です。</p>



<p>※以下のコード内の部署コード（00000000）は、実際のコードに書き換えてください。</p>



<div class="wp-block-cocoon-blocks-caption-box-1 caption-box block-box not-nested-style cocoon-block-caption-box"><div class="caption-box-label block-box-label box-label"><span class="caption-box-label-text block-box-label-text box-label-text"><strong>設定ファイル作成</strong></span></div><div class="caption-box-content block-box-content box-content">
<div class="hcb_wrap"><pre class="prism off-numbers lang-plain" data-file="san_config.cnf" data-show-lang="0"><code># OpenSSL SAN configuration file

[ req ]
distinguished_name = req_distinguished_name
req_extensions = v3_req
prompt = yes

[ req_distinguished_name ]
countryName = Country Name (2 letter code)
stateOrProvinceName = State or Province Name (full name)
localityName = Locality Name (eg, city)
organizationName = Organization Name (eg, company)

# --- 2つのOU設定（固定値・自動入力） ---
# ここに部署コードや部署名を固定値として入れておきます
# &quot;oisystem&quot; 関連のコードもここで定義します

0.organizationalUnitName = Organizational Unit Name 1 (OU)
0.organizationalUnitName_default = 00000000

1.organizationalUnitName = Organizational Unit Name 2 (OU)
1.organizationalUnitName_default = oisystem Web AS
# -------------------------------------

commonName = Common Name (e.g. server FQDN)
emailAddress = Email Address

[ v3_req ]
basicConstraints = CA:FALSE
keyUsage = nonRepudiation, digitalSignature, keyEncipherment
subjectAltName = @alt_names

[ alt_names ]
# 必要なSAN（DNS名）を記述
DNS.1 = oisystem-ap-v.aws.local</code></pre></div>
</div></div>



<p></p>



<h3 class="wp-block-heading"><strong>動作イメージ</strong></h3>



<p>このファイルを使うと、入力プロセスは以下のようになります。</p>



<ul class="wp-block-list">
<li><strong>OU（部署コード等）：</strong> Enterキーを押すだけで、正確な値が自動入力されます。タイプミスを100%防げます。</li>



<li><strong>CN（サーバー名）：</strong> その都度手入力が可能です。これにより、複数のサーバーで設定ファイルを使い回せます。</li>
</ul>



<h2 class="wp-block-heading"><strong>CSR生成</strong></h2>



<p>設定ファイルさえできれば、あとはコマンドを流すだけの単純作業です。</p>



<h3 class="wp-block-heading"><strong>コマンド実行</strong></h3>



<div class="wp-block-cocoon-blocks-caption-box-1 caption-box block-box not-nested-style cocoon-block-caption-box"><div class="caption-box-label block-box-label box-label"><span class="caption-box-label-text block-box-label-text box-label-text">CSR生成</span></div><div class="caption-box-content block-box-content box-content">
<p>作成した san_config.cnf を読み込ませてCSRを生成します。</p>



<div class="hcb_wrap"><pre class="prism off-numbers lang-bash" data-lang="Bash" data-show-lang="0"><code>openssl req -new -newkey rsa:2048 -nodes -keyout private.key -out server.csr -config san_config.cnf</code></pre></div>
</div></div>



<p>実行中、設定ファイルで _default を指定した箇所（OUなど）は値が表示された状態で止まりますので、そのまま <strong>Enterキー</strong> を押してください。</p>



<h3 class="wp-block-heading"><strong>リネーム</strong></h3>



<p>生成されるファイルは private.key と server.csr です。</p>



<p>取り違えを防ぐため、生成直後に必ずリネームしましょう。ここでは自社基準の oisystem- プレフィックスを付与します。</p>



<div class="wp-block-cocoon-blocks-caption-box-1 caption-box block-box not-nested-style cocoon-block-caption-box"><div class="caption-box-label block-box-label box-label"><span class="caption-box-label-text block-box-label-text box-label-text">リネーム</span></div><div class="caption-box-content block-box-content box-content">
<p></p>



<div class="hcb_wrap"><pre class="prism off-numbers lang-bash" data-lang="Bash" data-show-lang="0"><code>ren private.key oisystem-ap-v_private.key
ren server.csr oisystem-ap-v_server.csr</code></pre></div>
</div></div>



<p><br></p>



<h2 class="wp-block-heading"><strong>注意点</strong></h2>



<p>作業を確実にするため、以下の2点にご注意ください。</p>



<ul class="wp-block-list">
<li><strong>改行コードの崩れ：</strong> Web上のコードをコピペする際、セクション（[ req ]など）の改行が崩れるとエラーになります。保存後に再確認してください。</li>



<li><strong>作業パスの権限：</strong> Program Files 配下などは、書き込み権限がなくエラーになることがあります。その場合は管理者権限で実行するか、C:\Work などのフォルダで作業してください。</li>
</ul>



<h2 class="wp-block-heading"><strong>まとめ</strong></h2>



<p>複雑な要件を「手作業」や「気合」で乗り切ろうとすると、いつか必ずミスが起きます。</p>



<p>特に oisystem 関連のような重要システムでは、小さなミスが大きな遅延につながりかねません。</p>



<p>Wingetで環境を整え、設定ファイル（cnf）を活用することで、誰がやっても同じ品質でCSRを作成できるようになります。</p>



<p>まずはコマンドプロンプトを開き、 winget search openssl から始めてみてください。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://oi-systems.net/archives/1797/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>【JP1/AJS3】まだ「登録解除」してるの？JP1の特定日スキップは「実行中止」が正解な理由</title>
		<link>https://oi-systems.net/archives/1794</link>
					<comments>https://oi-systems.net/archives/1794#respond</comments>
		
		<dc:creator><![CDATA[クラノスケ]]></dc:creator>
		<pubDate>Sun, 21 Dec 2025 14:17:19 +0000</pubDate>
				<category><![CDATA[PCを使いこなそう]]></category>
		<category><![CDATA[JP1]]></category>
		<category><![CDATA[JP1/AJS3]]></category>
		<category><![CDATA[ジョブ]]></category>
		<guid isPermaLink="false">https://oi-systems.net/?p=1794</guid>

					<description><![CDATA[「明日のメンテナンスに合わせて、この日次ジョブを今日だけ止めておいて」 現場ではよくある指示ですが、JP1/AJS3を触り始めたばかりの方にとって、この「今日だけ」という条件は意外とプレッシャーですよね。 画面上で「実行 [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>「明日のメンテナンスに合わせて、この日次ジョブを今日だけ止めておいて」</p>



<p>現場ではよくある指示ですが、JP1/AJS3を触り始めたばかりの方にとって、この「今日だけ」という条件は意外とプレッシャーですよね。</p>



<p>画面上で「実行中止」というボタンを見つけても、「&#8221;中止&#8221;なんて強い言葉を選んだら、明日以降も止まったままになるのでは？」と不安になる気持ち、痛いほどよく分かります。</p>



<p>しかし、安心感からつい選びがちな「実行登録解除」こそが、実は一番やってはいけない悪手なのです。再登録を忘れてインシデントになったり、過去の実行ログが見えなくなったりと、リスクしかありません。</p>



<p>今回は、ベテランのオペレーターなら呼吸をするように行っている、特定日だけを安全にスキップする正解ルートを紹介します。仕組みさえ分かれば、もう怖いものはありません。</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-12 sbs-line sbp-l sbis-cb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oi-systems.net/wp-content/uploads/2021/04/avatar20210421011549.jpg" alt="クラノスケ" class="speech-icon-image"/></figure><div class="speech-name">クラノスケ</div></div><div class="speech-balloon">
<p>私自身も新人の頃、「実行中止」ボタンを押す手が震えた経験があります。「明日動かなかったらどうしよう…」というあの不安を、この記事で完全に解消しましょう！</p>
</div></div>



<h2 class="wp-block-heading"><strong>注意点</strong></h2>



<p>まず、なぜ多くの人がやりがちな「実行登録解除」がNGなのか、その理由を解説します。</p>



<p>単に「再登録が面倒だから」という理由だけではありません。システム運用上、非常に不便な状態になってしまうからです。</p>



<h3 class="wp-block-heading"><strong>ログ消失</strong></h3>



<p>これが意外と知られていない、最大のデメリットです。</p>



<p>「実行登録解除」を行うと、現在登録されているスケジュール情報がすべてクリアされます。</p>



<p>これに伴い、監視画面（JP1/AJS3 &#8211; View）上から、過去の実行結果やログも一緒に消えてしまいます。</p>



<p>「昨日のジョブでエラーが出ていたから確認したい」と思っても、登録解除してしまった後では画面から追うことができません。</p>



<p>今日止めたいだけなのに、過去の履歴まで見えなくなる。これは運用管理として正しい状態とは言えません。</p>



<h3 class="wp-block-heading"><strong>再登録忘れ</strong></h3>



<p>もちろん、「再登録忘れ」による人的ミスのリスクも無視できません。</p>



<ul class="wp-block-list">
<li>メンテナンス作業が長引いてバタバタした</li>



<li>「解除したこと」自体を忘れて帰宅した</li>
</ul>



<p>こうして再登録が漏れると、当然ながら翌日の日次バッチは動きません。業務開始時間にシステムが止まっているという、典型的なインシデントを引き起こしてしまいます。</p>



<h2 class="wp-block-heading"><strong>解決策</strong></h2>



<p>では、どうすれば「過去のログを残したまま」「再登録の手間なく」「今日だけ」をスキップできるのでしょうか。</p>



<p>正解は、「計画一時変更」機能を使って、特定の日付だけを「実行中止」にする方法です。</p>



<p>この方法なら、カレンダー登録そのものは生きているため、過去ログも消えません。また、翌日以降のスケジュールにも悪影響を与えず、安全に運用できます。</p>



<h2 class="wp-block-heading"><strong>操作手順</strong></h2>



<p>ここからは、迷わず操作するための具体的なステップを解説します。</p>



<p>JP1/AJS3 &#8211; View 画面での操作となります。</p>



<h3 class="wp-block-heading"><strong>画面展開</strong></h3>



<p>まず、スキップしたい日付をピンポイントで狙うため、月単位のスケジュール画面を開きます。</p>



<ol class="wp-block-list">
<li>リストエリア（ジョブネット一覧）で、対象のジョブネットを右クリックします。</li>



<li>メニューから [マンスリースケジュール] を選択します。</li>
</ol>



<p>Point: [デイリースケジュール] ではなく [マンスリースケジュール] を使うのがコツです。「今日の日付」を視覚的に特定しやすくなります。</p>



<h3 class="wp-block-heading"><strong>設定変更</strong></h3>



<p>次に、特定の日付に対して「実行中止」の指示を出します。</p>



<ol class="wp-block-list">
<li>マンスリースケジュール画面で、止めたい日付（例: 11/17）にある実行予定のマーク（■や□）を探します。</li>



<li>そのマークを右クリックします。</li>



<li>メニューから [計画一時変更] にカーソルを合わせます。</li>



<li>さらに表示されるメニューから [実行中止] をクリックします。</li>
</ol>



<p>これで操作は完了です。</p>



<p>画面上のマークが「実行中止」を示す色（灰色など）に変わったことを確認してください。</p>



<h2 class="wp-block-heading"><strong>翌日の動作検証</strong></h2>



<p>ここが、多くの人が不安に感じるポイントです。</p>



<p>「『実行中止』にしたら、翌日の予定まで消えてしまわないか？」</p>



<p>結論から言えば、絶対に大丈夫です。翌日は勝手に動きます。</p>



<p>「実行中止」はあくまで「その日の実行分」をキャンセルするだけの操作です。スケジュールの定義自体は生きているため、JP1は何事もなかったかのように、カレンダー通り翌日の予定を認識し続けます。</p>



<p>両者の違いを整理すると、以下のようになります。</p>



<p>【実行登録解除】（NG操作）</p>



<ul class="wp-block-list">
<li>イメージ: カレンダーを壁から剥がして捨てる</li>



<li>翌日の動作: 動かない (手動再登録が必須)</li>



<li>安全性: × 危険</li>
</ul>



<p>【計画一時変更（実行中止）】（正解操作）</p>



<ul class="wp-block-list">
<li>イメージ: カレンダーの今日の日付に「×印」をつける</li>



<li>翌日の動作: 動く (自動的に実行される)</li>



<li>安全性: ◎ 安全</li>
</ul>



<h2 class="wp-block-heading"><strong>まとめ</strong></h2>



<p>JP1/AJS3で「今日だけジョブを止めたい」と言われたら、以下のポイントを思い出してください。</p>



<ul class="wp-block-list">
<li>「実行登録解除」はNG: 再登録忘れのリスクがある上、過去の実行ログまで消えてしまいます。</li>



<li>「計画一時変更」→「実行中止」が正解: マンスリースケジュールから、該当日だけをピンポイントで中止します。</li>



<li>翌日は自動復帰する: スケジュール定義は残るため、翌日のジョブは自動的に実行されます。</li>
</ul>



<p>「中止」という言葉の響きは少し怖いかもしれませんが、これこそがメーカーが用意している正しい運用手順です。</p>



<p>今後は「翌日動かなかったらどうしよう」と不安にならず、自信を持って「計画一時変更」を使ってください。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://oi-systems.net/archives/1794/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>脱・素人感！WordPressブログのコード表示をプロ仕様にする方法</title>
		<link>https://oi-systems.net/archives/1790</link>
					<comments>https://oi-systems.net/archives/1790#respond</comments>
		
		<dc:creator><![CDATA[クラノスケ]]></dc:creator>
		<pubDate>Sun, 21 Dec 2025 13:07:48 +0000</pubDate>
				<category><![CDATA[ブログを改善しよう]]></category>
		<category><![CDATA[Cocoon]]></category>
		<category><![CDATA[Highlighting Code Block]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[カスタマイズ]]></category>
		<guid isPermaLink="false">https://oi-systems.net/?p=1790</guid>

					<description><![CDATA[Cocoonで技術ブログを書き始めた当初、私は「いかに標準機能だけで頑張るか」に固執していました。しかし、どんなにCSSをいじっても「左上にファイル名、右上にコピーボタン」という理想のデザインには辿り着けませんでした。  [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>Cocoonで技術ブログを書き始めた当初、私は「いかに標準機能だけで頑張るか」に固執していました。しかし、どんなにCSSをいじっても「左上にファイル名、右上にコピーボタン」という理想のデザインには辿り着けませんでした。</p>



<p>結論から言うと、技術ブログを書くなら「Highlighting Code Block」一択です。</p>



<p>なぜCocoon標準のハイライト機能ではダメなのか、その具体的な理由と、競合を避けて正しくプラグインを導入する完全な手順を、私の失敗談を交えてご紹介します。</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-12 sbs-line sbp-l sbis-cb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oi-systems.net/wp-content/uploads/2021/04/avatar20210421011549.jpg" alt="クラノスケ" class="speech-icon-image"/></figure><div class="speech-name">クラノスケ</div></div><div class="speech-balloon">
<p>意地を張って標準機能で頑張っていた過去の自分に、「早くこのプラグインを入れろ！」と教えてあげたいです。</p>
</div></div>



<h2 class="wp-block-heading"><strong>前提</strong></h2>



<p>この記事では、WordPressの無料テーマ「Cocoon（コクーン）」を使っていることを前提に進めていきます。</p>



<p>Cocoonは本当に素晴らしいテーマですが、餅は餅屋と言うように、コード表示に関しては「専用のプラグイン」に任せたほうが幸せになれます。もし他のテーマを使っている場合は、設定画面の場所が少し違うかもしれないので、そこだけご注意くださいね。</p>



<h2 class="wp-block-heading"><strong>推奨理由</strong></h2>



<p>「Cocoonにもコード機能があるのに、なんでわざわざプラグインを入れるの？」と思いますよね。理由は大きく分けて2つあります。</p>



<p>1つ目は、標準機能の限界です。</p>



<p>Cocoon標準の機能だと、コードの左上に「ファイル名」を表示できません。また、背景色を変えることはできても、読者がワンクリックでコードをコピーできる「コピーボタン」が付かないんです。これだと、記事を読んでくれた人が手動で選択してコピーしなければならず、ちょっと不親切ですよね。</p>



<p>2つ目は、圧倒的な見た目の良さです。</p>



<p>今回使う「Highlighting Code Block（以下HCB）」というプラグインを入れると、Macの黒い画面（ターミナル）のようなカッコいいデザインが、インストールするだけで手に入ります。もちろんコピーボタン付きです。</p>



<p>「ただの文字の羅列」から「プロっぽいコード画面」へ。これだけでブログの信頼感がグッと上がりますよ。</p>



<h2 class="wp-block-heading"><strong>導入手順</strong></h2>



<p>それでは、実際にプラグインを入れて、Cocoonと喧嘩しないように設定していきましょう。5分もあれば終わります。</p>



<h3 class="wp-block-heading"><strong>インストール</strong></h3>



<p>まずはプラグインをWordPressに追加するところからです。</p>



<ol class="wp-block-list">
<li>WordPressの管理画面から「プラグイン」を開き、「新規追加」をクリックします。</li>



<li>検索窓に「Highlighting Code Block」と入力してください。</li>



<li>作者名が「LOOS WEB STUDIO」になっているのを確認して、「今すぐインストール」、そして「有効化」をクリックします。</li>
</ol>



<h3 class="wp-block-heading"><strong>競合回避</strong></h3>



<p>ここが今回の一番のポイントです。</p>



<p>CocoonもHCBも「コードをきれいに見せよう」とする機能を持っているので、そのままだと両方が動いて表示が崩れてしまいます。なので、Cocoon側の機能をオフにしてあげましょう。</p>



<ol class="wp-block-list">
<li>管理画面の「Cocoon設定」を開きます。</li>



<li>たくさんタブが並んでいますが、「コード」というタブを選んでください。</li>



<li>「ソースコードをハイライト表示する」という項目のチェックを外します。</li>



<li>最後に「変更をまとめて保存」をクリックするのを忘れずに。</li>
</ol>



<p>これで、コード表示の担当がCocoonからプラグインに切り替わりました。</p>



<h3 class="wp-block-heading"><strong>配色設定</strong></h3>



<p>最後に、デザインを整えます。執筆中の画面と、公開される画面の色を統一して「ダークモード」にしておくと作業がしやすいです。</p>



<ol class="wp-block-list">
<li>管理画面の「設定」の中に「Highlighting Code Block」というメニューができているのでクリックします。</li>



<li>設定画面で、以下の2箇所を変更します。</li>
</ol>



<ul class="wp-block-list">
<li>コードカラーリング（フロント側）：Dark</li>



<li>コードカラーリング（エディター側）：Dark</li>
</ul>



<ol start="3" class="wp-block-list">
<li>「変更を保存」をクリックします。</li>
</ol>



<p>これで準備完了です！記事を書いている最中も、黒背景でコードが確認できるようになりました。</p>



<h2 class="wp-block-heading"><strong>執筆手順</strong></h2>



<p>設定お疲れ様でした。ここからは、実際に記事を書くときの手順を見ていきましょう。</p>



<h3 class="wp-block-heading"><strong>ブロック配置</strong></h3>



<p>記事を書く画面（ブロックエディタ）での操作です。</p>



<ol class="wp-block-list">
<li>「＋」ボタンを押して、ブロック検索で「high」と入力してみてください。</li>



<li>「Highlighting Code Block」というブロックが出てくるので選択します。</li>
</ol>



<p>ここで注意なのが、Cocoon標準の「コード」というブロックも検索に出てくること。アイコンが似ているので間違えないように、「Highlighting&#8230;」の方を選んでくださいね。</p>



<h3 class="wp-block-heading"><strong>詳細設定</strong></h3>



<p>ブロックを置くと、コードを入力する黒い箱が表示されます。このままでも使えますが、右側の設定パネル（もしくはブロック上のメニュー）を使うともっと便利になります。</p>



<ul class="wp-block-list">
<li>Lang（言語）：<br>ここ重要です。コマンドなら「Bash」、設定ファイルなら「Text」などを選ぶと、文字色がカラフルになって見やすくなります。</li>



<li>File Name（ファイル名）：<br>ここに入力した文字が、ブロックの左上に表示されます。「oisystem-batch.sh」とか「/etc/nginx/nginx.conf」のように書いてあると、読者が「あ、このファイルをいじればいいんだな」と直感的にわかります。</li>
</ul>



<h2 class="wp-block-heading"><strong>運用注意点</strong></h2>



<p>最後に、読者に「親切だな」と思ってもらうためのちょっとしたコツをお伝えします。</p>



<h3 class="wp-block-heading"><strong>記号の扱い</strong></h3>



<p>コマンドを紹介するとき、行の先頭に $ や # を付けたくなりますが、これらは書かないのがベストです。</p>



<p>理由はシンプルで、読者がコピーボタンを押したとき、この記号まで一緒にコピーされてしまうからです。そのまま貼り付けて実行するとエラーになってしまい、「このブログの通りにやったのに動かない！」となってしまいます。</p>



<p>コマンドだけをポンと置いてあげるのが、一番の優しさです。</p>



<h3 class="wp-block-heading"><strong>更新頻度</strong></h3>



<p>プラグインのページを見ると、最終更新日が数年前になっていることがあって「大丈夫かな？」と不安になるかもしれません。</p>



<p>でも安心してください。このプラグインは機能としてすでに完成されていて、今のWordPressでも問題なく動きます。有名な技術ブロガーさんたちもこぞって愛用している鉄板プラグインなので、自信を持って使い続けて大丈夫です。</p>



<h2 class="wp-block-heading"><strong>まとめ</strong></h2>



<p>Cocoonで技術ブログを書くなら、コード表示を見やすくするのは必須のマナーと言ってもいいかもしれません。</p>



<ol class="wp-block-list">
<li>Highlighting Code Blockをインストールする。</li>



<li>Cocoon設定の「コードハイライト」を必ずオフにする。</li>



<li>設定で「Dark」モードを選ぶ。</li>
</ol>



<p>たったこれだけで、あなたのブログは「個人のメモ書き」から「プロの技術情報」へと生まれ変わります。ぜひ、過去の記事のコードブロックも、時間があるときにこの新しいブロックに書き換えてみてください。きっと、自分のブログを読み返すのが楽しくなるはずです！</p>
]]></content:encoded>
					
					<wfw:commentRss>https://oi-systems.net/archives/1790/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>【cron停止】事故を防ぐ！コメントアウトとバックアップによる作業手順</title>
		<link>https://oi-systems.net/archives/1778</link>
					<comments>https://oi-systems.net/archives/1778#respond</comments>
		
		<dc:creator><![CDATA[クラノスケ]]></dc:creator>
		<pubDate>Sun, 21 Dec 2025 08:34:51 +0000</pubDate>
				<category><![CDATA[サーバーを運用しよう]]></category>
		<category><![CDATA[AlmaLinux]]></category>
		<category><![CDATA[cron]]></category>
		<category><![CDATA[LINUX]]></category>
		<category><![CDATA[メンテナンス]]></category>
		<guid isPermaLink="false">https://oi-systems.net/?p=1778</guid>

					<description><![CDATA[システムのメンテナンス中、/etc/cron.d/ のジョブを一時的に止めたい場面はよくあります 。 手順書には「リネームする（.disabled化）」と書いてあるけれど、ファイル名を変更するだけで本当に確実に止まるのか [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>システムのメンテナンス中、/etc/cron.d/ のジョブを一時的に止めたい場面はよくあります 。</p>



<p>手順書には「リネームする（.disabled化）」と書いてあるけれど、ファイル名を変更するだけで本当に確実に止まるのか、不安になることはありませんか？ </p>



<p>この記事では、そうした不安を解消するため、ファイル内容を直接編集する「コメントアウト（#追記）」による、より確実で安全な停止・再開手順と、ミスを防ぐためのバックアップ方法を解説します 。</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-12 sbs-line sbp-l sbis-cb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oi-systems.net/wp-content/uploads/2021/04/avatar20210421011549.jpg" alt="クラノスケ" class="speech-icon-image"/></figure><div class="speech-name">クラノスケ</div></div><div class="speech-balloon">
<p>私自身、過去にリネーム方式で停止したつもりでいたジョブが裏で動いてしまい、冷や汗をかいた経験があります。この記事で「確実な停止方法」をマスターしましょう！ </p>
</div></div>



<h2 class="wp-block-heading"><strong>基礎知識</strong></h2>



<p>作業に入る前に、今回対象となる /etc/cron.d/ について簡単に整理します 。</p>



<p>Linuxのcron設定には、大きく分けて2つの種類があり、目的によって明確な使い分けがあります 。</p>



<h3 class="wp-block-heading"><strong>設定場所の違い</strong></h3>



<p>メンテナンス手順書でよく見る crontab -e と、今回の /etc/cron.d/ は以下のように使い分けられています 。</p>



<figure class="wp-block-table"><div class="scrollable-table"><table class="has-fixed-layout"><tbody><tr><td><strong>設定場所</strong></td><td><strong>主な用途</strong></td><td><strong>編集方法</strong></td><td><strong>特徴</strong></td></tr><tr><td>/etc/cron.d/ (今回)</td><td>システム・アプリ用</td><td>ファイルを直接編集</td><td>ユーザー指定可、コピー管理が楽</td></tr><tr><td>crontab -e</td><td>個人ユーザー用</td><td>コマンドで編集</td><td>実行ユーザーは固定</td></tr></tbody></table></div></figure>



<p>今回扱う /etc/cron.d/ は、実行ユーザー（oisystem や www-data など）を明示的に指定でき、ファイルとして管理しやすいのが最大のメリットです 。</p>



<p>また、役割ごとにファイルを分割でき、ls コマンドで一覧を把握しやすい利点もあります 。</p>



<h2 class="wp-block-heading"><strong>停止・再開手順</strong></h2>



<p>それでは、ジョブを「確実」に停止し、安全に再開するための手順を解説します 。</p>



<h3 class="wp-block-heading"><strong>バックアップ</strong></h3>



<p>まず、作業前の状態を保存します 。</p>



<p>ここで最も重要なのは「保存する場所」です 。</p>



<p>同じディレクトリ（/etc/cron.d/）にバックアップを作ると、cronがそれを誤って読み込んでしまうリスクがあります 。必ず /tmp などの監視対象外へ退避させましょう 。</p>



<p>実行コマンド例：<br></p>



<div class="wp-block-cocoon-blocks-caption-box-1 caption-box block-box not-nested-style cocoon-block-caption-box"><div class="caption-box-label block-box-label box-label"><span class="caption-box-label-text block-box-label-text box-label-text">安全な場所（/tmp）へ日付付きでバックアップ</span></div><div class="caption-box-content block-box-content box-content">
<p>以下のコマンドを実行して設定ファイルを開いてください。</p>



<div class="hcb_wrap"><pre class="prism off-numbers lang-bash" data-lang="Bash"><code>sudo cp /etc/cron.d/oisystem-batch /tmp/oisystem-batch.bak.$(date +%Y%m%d)</code></pre></div>
</div></div>



<p></p>



<h3 class="wp-block-heading"><strong>ジョブ停止（コメントアウト）</strong></h3>



<p>次に、ファイルを編集してジョブを停止します 。</p>



<p>ファイルごと削除やリネームをするのではなく、行の先頭に #（シャープ）を付けてコメントアウトします 。</p>



<p></p>



<div class="wp-block-cocoon-blocks-caption-box-1 caption-box block-box not-nested-style cocoon-block-caption-box"><div class="caption-box-label block-box-label box-label"><span class="caption-box-label-text block-box-label-text box-label-text">1.エディタで対象ファイルを開きます。</span></div><div class="caption-box-content block-box-content box-content">
<p>以下のコマンドを実行して設定ファイルを開いてください。</p>



<div class="hcb_wrap"><pre class="prism off-numbers lang-bash" data-lang="Bash"><code>vi /etc/cron.d/oisystem-batch</code></pre></div>
</div></div>



<p></p>



<div class="wp-block-cocoon-blocks-caption-box-1 caption-box block-box not-nested-style cocoon-block-caption-box"><div class="caption-box-label block-box-label box-label"><span class="caption-box-label-text block-box-label-text box-label-text">2.実行コマンドの行頭に # を追記します。</span></div><div class="caption-box-content block-box-content box-content">
<p>【変更前】</p>



<div class="hcb_wrap"><pre class="prism off-numbers lang-plain" data-file="/etc/cron.d/oisystem-batch"><code>0 * * * * oisystem /usr/local/bin/oisystem_batch.sh</code></pre></div>



<p>【変更後】</p>



<div class="hcb_wrap"><pre class="prism off-numbers lang-plain" data-file="/etc/cron.d/oisystem-batch"><code>#0 * * * * oisystem /usr/local/bin/oisystem_batch.sh</code></pre></div>
</div></div>



<p></p>



<ol class="wp-block-list"></ol>



<p>ファイルを保存した瞬間から、その行はコメント（メモ書き）として扱われ、実行されなくなります 。</p>



<h3 class="wp-block-heading"><strong>ジョブ再開（リストア）</strong></h3>



<p>メンテナンス作業が完了したら、ジョブを元に戻します 。</p>



<p>手動で # を消しても良いのですが、最も安全なのは「バックアップファイルでの上書き（リストア）」です 。</p>



<p>これにより、「戻し忘れ」や「編集ミス」といったヒューマンエラーを確実に防げます 。<br></p>



<div class="wp-block-cocoon-blocks-caption-box-1 caption-box block-box not-nested-style cocoon-block-caption-box"><div class="caption-box-label block-box-label box-label"><span class="caption-box-label-text block-box-label-text box-label-text">1.作成しておいたバックアップファイルで上書き</span></div><div class="caption-box-content block-box-content box-content">
<div class="hcb_wrap"><pre class="prism off-numbers lang-bash" data-lang="Bash"><code>sudo cp /tmp/oisystem-batch.bak.20251221 /etc/cron.d/oisystem-batch</code></pre></div>
</div></div>



<p>※日付部分は実際に作成したファイル名に合わせてください 。</p>



<h2 class="wp-block-heading"><strong>リネーム方式の注意点</strong></h2>



<p>参考として、よく知られている「ファイル名を変更する（リネーム）」方法についても触れておきます <sup>29</sup>。</p>



<h3 class="wp-block-heading"><strong>仕組みとリスク</strong></h3>



<p>ファイル名の末尾に .disabled などを付けると、cronの仕様によりそのファイルは無視（スキップ）されます 。</p>



<p></p>



<div class="wp-block-cocoon-blocks-caption-box-1 caption-box block-box not-nested-style cocoon-block-caption-box"><div class="caption-box-label block-box-label box-label"><span class="caption-box-label-text block-box-label-text box-label-text">リネームによる停止例</span></div><div class="caption-box-content block-box-content box-content">
<div class="hcb_wrap"><pre class="prism off-numbers lang-bash" data-lang="Bash"><code>sudo mv /etc/cron.d/oisystem-batch /etc/cron.d/oisystem-batch.disabled</code></pre></div>
</div></div>



<p><br></p>



<p>しかし、名前の変更をシステムが検知するタイミングには環境差があり、稀に意図せず動いてしまう可能性があります 。</p>



<p>そのため、確実性を最優先する場合は、本記事で紹介した「コメントアウト方式」を推奨します 。</p>



<h2 class="wp-block-heading"><strong>まとめ</strong></h2>



<p>/etc/cron.d/ 配下のジョブ停止は、以下のポイントを意識することで事故を防げます 。</p>



<ul class="wp-block-list">
<li>確実性重視：リネームよりも、中身を直接 # で無効化する「コメントアウト」方式が確実 。</li>



<li>安全なバックアップ：同じ場所ではなく、/tmp などに退避させる 。</li>



<li>ミスのない再開：バックアップファイルでの上書き（リストア）で元に戻す 。</li>
</ul>



<p>これらの手順を標準化して、安全なシステム運用を心がけましょう。</p>



<p></p>
]]></content:encoded>
					
					<wfw:commentRss>https://oi-systems.net/archives/1778/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>遠方の家族をITで守る。Google Nest Cam導入・設定ガイド【親の操作ゼロ】</title>
		<link>https://oi-systems.net/archives/1773</link>
					<comments>https://oi-systems.net/archives/1773#respond</comments>
		
		<dc:creator><![CDATA[クラノスケ]]></dc:creator>
		<pubDate>Sun, 21 Dec 2025 07:24:35 +0000</pubDate>
				<category><![CDATA[ITグッズを使おう]]></category>
		<category><![CDATA[Gemini]]></category>
		<category><![CDATA[GoogleNestCam]]></category>
		<category><![CDATA[GoogleOne]]></category>
		<category><![CDATA[スマートホーム]]></category>
		<guid isPermaLink="false">https://oi-systems.net/?p=1773</guid>

					<description><![CDATA[「実家の親が電話に出ないと、倒れているんじゃないかと不安になる」「最近、近所で怪しい訪問販売が増えているらしい」。離れて暮らす家族にとって、親の安全確保は切実な問題です。 しかし、高齢の親に複雑な機械操作を覚えさせるのは [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>「実家の親が電話に出ないと、倒れているんじゃないかと不安になる」「最近、近所で怪しい訪問販売が増えているらしい」。離れて暮らす家族にとって、親の安全確保は切実な問題です。</p>



<p>しかし、高齢の親に複雑な機械操作を覚えさせるのは現実的ではありませんし、それがストレスになっては本末転倒です。</p>



<p>この記事では、Google Nest Camを使って、親側の操作負担は一切ゼロで、あなたのスマホからいつでも実家や祖母宅の様子を確認・対応できる「最強の見守りシステム」の構築手順を解説します。難しい設定は最初だけあなたが代行すれば、あとは放置で運用可能です。</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-12 sbs-line sbp-l sbis-cb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oi-systems.net/wp-content/uploads/2021/04/avatar20210421011549.jpg" alt="クラノスケ" class="speech-icon-image"/></figure><div class="speech-name">クラノスケ</div></div><div class="speech-balloon">
<p>「離れて暮らしているから何もできない」は、もう過去の話です。現代には便利なITガジェットがあります。物理的な距離があっても、テクノロジーの力を使えば、すぐそばにいるような「安心」は作れます。大切な家族を守るために、便利な道具はどんどん活用していきましょう！</p>
</div></div>



<h2 class="wp-block-heading"><strong>事前準備</strong></h2>



<p>途中で「あ、ケーブル忘れた！」「パスワードなんだっけ？」とならないよう、まずは手元の装備を確認しましょう。</p>



<h3 class="wp-block-heading"><strong>必要な機材</strong></h3>



<p>今回は設置環境と親御さんの状況に合わせて、以下の2種類のカメラを使い分けました。機材選びの参考にしてください。</p>



<ul class="wp-block-list">
<li>Google Nest Cam（バッテリー式）：実家へ設置</li>



<li>選定理由：設置したい玄関や廊下にコンセントがなく、電源を引くのが難しかったため、配線不要でどこにでも置けるバッテリータイプを選びました。</li>



<li>Google Nest Cam（屋内用 / 電源アダプター式）：祖母宅へ設置</li>



<li>選定理由：高齢の祖母に数ヶ月ごとの「充電作業」をお願いするのは難しく、幸いコンセントが届く位置に設置できたため、メンテナンスフリーな電源コード式を選びました。</li>



<li>あなたのスマホ：Google Home アプリが入っているもの。</li>
</ul>



<h3 class="wp-block-heading"><strong>アカウントの考え方</strong></h3>



<p>ここが一番のキモです。あなたの普段使いのアカウント（YouTubeやGmail用）で全て管理しようとすると、通知が混ざって大変なことになります。</p>



<p>ちょっと面倒に感じるかもしれませんが、以下の形にするのが結局一番ラクです。</p>



<ul class="wp-block-list">
<li>あなたのアカウント：普段のメインアカウント。</li>



<li>実家管理用アカウント：新しく作る（例: jikka.mamoru@gmail.com）。</li>



<li>祖母宅管理用アカウント：新しく作る（例: sobo.mamoru@gmail.com）。</li>
</ul>



<h2 class="wp-block-heading"><strong>構築手順</strong></h2>



<p>効率重視でいきましょう。</p>



<p>寒い玄関先や、Wi-Fiルーターの横で立ち尽くして設定するのは辛いので、「家でできることは家でやる」のが鉄則です。</p>



<h3 class="wp-block-heading"><strong>Step 1：アプリ準備（自宅でコーヒーでも飲みながら）</strong></h3>



<p>まずはアプリの中で「箱」と「鍵」だけ用意してしまいます。これなら自宅のソファで可能です。</p>



<ol class="wp-block-list">
<li>「家」を作る<br>「実家管理用アカウント」でアプリにログインし、デジタルの世界に「実家」を作ります。</li>
</ol>



<ul class="wp-block-list">
<li>ステップ1：アプリ右上のアイコンから「実家管理用アカウント」に切り替えます。</li>



<li>ステップ2：設定 または + から 家を作成 を選びます。</li>



<li>ステップ3：家の名前（実家）と住所を入力します。これで「箱」の完成です。</li>



<li>※祖母宅分も同様に、「祖母宅アカウント」に切り替えて作っておきましょう。</li>
</ul>



<ol start="2" class="wp-block-list">
<li>自分を招待する<br>いちいちアカウントを切り替えてログインし直すのは面倒ですよね？ あなたのメインアカウントを「家族」として招待しておけば、ログインし直さずに全ての映像が見られるようになります。</li>
</ol>



<ul class="wp-block-list">
<li>ステップ1：「実家」の画面で 設定（歯車） > 世帯 > + メンバーを招待 をタップ。</li>



<li>ステップ2：あなたのメインのメールアドレスを入力して送信。</li>



<li>ステップ3：あなたのスマホにメールが届くので、リンクを開いて 承諾 をタップ。</li>
</ul>



<p>これで、あなたのメインスマホから「実家」の中身が見られるようになりました。準備完了です！</p>



<h3 class="wp-block-heading"><strong>Step 2：現地設定（実家・祖母宅に到着したら）</strong></h3>



<p>いよいよ設置です。Wi-Fiに接続して作業する必要があるので現地で作業します。中古を購入した場合はこの段階で「リセットして新品として登録し直す」のがいいと思います。</p>



<ol class="wp-block-list">
<li>カメラをリセットする<br>自宅で動作確認をした時のデータが残っていると邪魔になるので、一旦まっさらにします。</li>
</ol>



<ul class="wp-block-list">
<li>ステップ1：カメラ本体のリセットボタンを10〜15秒ほど長押ししてください。</li>



<li>ステップ2：「ピロロン」と音が鳴り、ランプが点滅したら指を離します。これで工場出荷状態です。</li>
</ul>



<ol start="2" class="wp-block-list">
<li>繋いで設置する</li>
</ol>



<ul class="wp-block-list">
<li>ステップ1：あなたのスマホを、現地のWi-Fiに接続します。</li>



<li>ステップ2：アプリで「実家」を開き、左上の + > デバイスのセットアップ > 新しいデバイス をタップ。</li>



<li>ステップ3：カメラのQRコードを読み込み、画面の指示通りに進めるだけ。</li>



<li>ステップ4：最後に「リビング」など名前を付ければ完了です！</li>
</ul>



<h2 class="wp-block-heading"><strong>動作確認</strong></h2>



<p>設置できたら、ちゃんと動くかテストしましょう。</p>



<ol class="wp-block-list">
<li>映像チェック：Wi-Fiを切って4G/5G回線にし、外からでも映像が見られるか確認します。</li>



<li>通知テスト：カメラの前を横切ってみて、「人が検知されました」と通知が来るか試します。</li>



<li>切り替えテスト：アプリ上で「自宅」「実家」「祖母宅」を切り替え、サクサク見られるか確認します。</li>
</ol>



<h2 class="wp-block-heading"><strong>AI機能と未来</strong></h2>



<p>Google Nest Camを導入した理由は、単に映像を撮るだけではなく、GoogleのAI技術に期待してのことだと思います。</p>



<h3 class="wp-block-heading"><strong>Geminiとの連携強化</strong></h3>



<p>お客様は Google AI Premium (2 TB) に加入されていますね。「無料版よりも賢いGeminiが使える」という認識をお持ちかと思いますが、そのメリットはスマートホーム分野でも発揮されます。</p>



<p>Google HomeとGeminiの連携が深まることで、例えば「複雑な文脈」を理解したサポートが可能になります。単なるQ&amp;Aだけでなく、カメラの情報を元にした高度なアシスタント機能が期待できるのは、有料プランユーザーの特権です。</p>



<h3 class="wp-block-heading"><strong>将来は「AIが見守る」時代へ</strong></h3>



<p>今は「動くものを検知して通知」がメインですが、AIの進化により、見守りの質は劇的に変わります。</p>



<ul class="wp-block-list">
<li>異常検知の高度化：<br>「知らない人が長時間うろうろしている」「普段は寝ている時間に動き回っている」といった「違和感」をAIが察知し、教えてくれるようになります。</li>



<li>自然言語での映像検索：<br>「昨日、おばあちゃんの家に誰か来た？」と聞くだけで、AIが膨大な録画データから該当シーンを一瞬で探し出してくれる。</li>
</ul>



<p>Googleのデバイスを選ぶということは、こうした「未来のAI見守り」への準備を済ませておくことと同義です。</p>



<h2 class="wp-block-heading"><strong>運用設定（ここだけはやっておこう）</strong></h2>



<p>最後に、親御さんやあなた自身のストレスを減らすための設定です。</p>



<ul class="wp-block-list">
<li>通知は「人」限定に：<br>車のライトや猫が通るたびに通知が来ると、通知が多くなってしまいます。設定 > 通知 から、「人」以外はオフにしておきましょう。</li>



<li>通話機能のテスト：<br>いざという時、カメラ越しに「おーい、大丈夫？」と話しかけられるのがこのカメラの強みです。マイクアイコンを押して、ちゃんと声が出るか一度テストしておくと安心です。</li>
</ul>



<h2 class="wp-block-heading"><strong>まとめ</strong></h2>



<p>これで、物理的な距離はあっても、スマホ一つでいつでも家族のそばにいられる環境が整いました。</p>



<p>今回のポイント：</p>



<ol class="wp-block-list">
<li>家枠と招待は自宅で済ます：面倒な入力作業は快適な環境で。</li>



<li>現地ではリセット一択：設定変更より新規登録の方がトラブルなし。</li>



<li>IT×AIの活用：便利なガジェットとAIに頼ることで、家族全員の安心を守る。</li>
</ol>



<p>これで、次の帰省からは設定作業に追われることなく、ゆっくり家族団欒の時間を過ごしてくださいね。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://oi-systems.net/archives/1773/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>【出産準備】子供の成長記録を残す最適解。GoPro購入計画と相場リサーチ</title>
		<link>https://oi-systems.net/archives/1769</link>
					<comments>https://oi-systems.net/archives/1769#respond</comments>
		
		<dc:creator><![CDATA[クラノスケ]]></dc:creator>
		<pubDate>Sun, 21 Dec 2025 07:07:54 +0000</pubDate>
				<category><![CDATA[ITグッズを使おう]]></category>
		<category><![CDATA[GoPro]]></category>
		<category><![CDATA[アクションカメラ]]></category>
		<category><![CDATA[出産準備]]></category>
		<category><![CDATA[子育て]]></category>
		<guid isPermaLink="false">https://oi-systems.net/?p=1769</guid>

					<description><![CDATA[生まれたばかりの赤ちゃんとの生活は、想像以上に目まぐるしいものです。 「あ、今の顔かわいい！」と思った瞬間に、スマホのロックを解除したり、カメラの設定をいじったりしている余裕は、正直言ってありません。 だからこそ、まだ自 [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>生まれたばかりの赤ちゃんとの生活は、想像以上に目まぐるしいものです。</p>



<p>「あ、今の顔かわいい！」と思った瞬間に、スマホのロックを解除したり、カメラの設定をいじったりしている余裕は、正直言ってありません。</p>



<p>だからこそ、まだ自由な時間が持てる「出産前」に、自分に合った最適な撮影システムを選定しておく必要があります。</p>



<p>今回は、Insta360やDJI、そしてSONYといった強力なライバル機と比較検討した結果、なぜ私が「GoPro HERO 13 Black」という結論に至ったのか。</p>



<p>そして、AIと複数のサイトを駆使した「価格調査プロセス」を、エンジニア視点で解説します。</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-12 sbs-line sbp-l sbis-cb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://oi-systems.net/wp-content/uploads/2021/04/avatar20210421011549.jpg" alt="クラノスケ" class="speech-icon-image"/></figure><div class="speech-name">クラノスケ</div></div><div class="speech-balloon">
<p>「最新スペック＝正解」とは限りません。自分の運用にフィットする「枯れた技術」を選ぶのも、賢いパパの戦略です！</p>
</div></div>



<h2 class="wp-block-heading"><strong>前提知識と環境準備：なぜ「今」やるのか</strong></h2>



<p>まずは現状の環境と、目的を整理しましょう。</p>



<p>現在、多くの方がスマートフォンをお持ちだと思います。</p>



<p>私自身もメイン機としてiPhone 14を使用しており、その画質の良さには満足しています。しかし、いざ育児（特に新生児期〜乳児期）が始まるとシミュレーションしてみた時、スマホだけではカバーしきれない致命的なシーンがあることに気づきました。</p>



<ul class="wp-block-list">
<li><strong>抱っこやお世話で常に両手がふさがっている</strong></li>



<li><strong>スマホを構えると、子供とのスキンシップが途切れる</strong></li>



<li><strong>ストレージ容量がすぐにパンクする</strong></li>
</ul>



<h3 class="wp-block-heading"><strong>目指すのは「ハンズフリー撮影環境」</strong></h3>



<p>今回のゴールは、「両手がふさがった状態（抱っこ・お世話）でも、自分の見たままの景色を記録できる環境」の構築です。これを実現するには、身体に装着できる頑丈なウェアラブルカメラが必須です。</p>



<h2 class="wp-block-heading"><strong>【徹底比較】GoPro vs ライバル3社</strong></h2>



<p>購入にあたり、市場をリードする他社製品も検討しました。</p>



<p>友人からのアドバイスでは、「GoProは企業として苦戦中」「今はDJIやInsta360の方が勢いがある」ということも聞いていたので悩みました。</p>



<p>しかし、スペック表には現れない「信頼性」や「国籍」も含め、フラットに比較を行いました。</p>



<figure class="wp-block-table"><div class="scrollable-table"><table class="has-fixed-layout"><tbody><tr><td><strong>メーカー (国)</strong></td><td><strong>代表機種</strong></td><td><strong>特徴・メリット</strong></td><td><strong>懸念点</strong></td></tr><tr><td><strong>Insta360</strong><br>(中国)</td><td>Ace Pro 2 / X4</td><td><strong>【革新とAI】</strong><br>編集が圧倒的に楽。360度撮影なら画角を気にする必要なし。</td><td>色味が派手すぎる場合がある。X4はレンズ剥き出しで破損リスクあり。</td></tr><tr><td><strong>DJI</strong><br>(中国)</td><td>Osmo Action 5 Pro</td><td><strong>【信頼とスタミナ】</strong><br>バッテリー最強、熱停止しない、夜に強い。ハードウェアの完成度はNo.1。</td><td>色味がやや淡白。GoPro独自のマウント資産が活かせない場合がある。</td></tr><tr><td><strong>SONY</strong><br>(日本)</td><td>VLOGCAMシリーズ</td><td><strong>【画質とボケ味】</strong><br>センサーサイズが大きく、映画のような映像が撮れる。</td><td><strong>装着できない。</strong><br>精密機械であり、衝撃や水濡れに弱い（アクションカムではない）。</td></tr><tr><td><strong>GoPro</strong><br>(米国)</td><td><strong>HERO 13 Black</strong></td><td><strong>【王道と資産】</strong><br>「GoProカラー」と呼ばれる美しい発色。圧倒的な知名度と堅牢性。</td><td>DJIに比べると夜に弱く、長時間撮影での熱耐性に劣る。</td></tr></tbody></table></div></figure>



<h3 class="wp-block-heading"><strong>なぜ「SONY」や「勢いのある他社」を選ばなかったのか</strong></h3>



<ul class="wp-block-list">
<li>対 SONY：<br>画質は最高ですが、今回の目的は「育児記録」です。赤ちゃんが手を伸ばしてレンズを叩いたり、抱っこ紐の金具が当たったりする可能性があります。「落としても濡れても壊れないタフさ（アクションカメラであること）」が必要不可欠だったため、繊細なVLOGCAMは候補から外しました。</li>



<li>対 DJI / Insta360：<br>性能は素晴らしいですが、長年アクションカメラ界を牽引してきた「GoPro（米国ブランド）」の知名度と信頼性を私は重視しました。「GoProで撮っている」という事実が、ガジェット好きとしての所有欲を満たしてくれる側面も否めません。</li>
</ul>



<h2 class="wp-block-heading"><strong>【選定理由】私が「HERO 13」を選んだ決定打</strong></h2>



<p>最終的にGoPro HERO 13を選んだ理由は、ブランド力だけではありません。実用面での明確なメリットがあったからです。</p>



<h3 class="wp-block-heading"><strong>1. マグネット式ラッチマウントの採用</strong></h3>



<p>これが最大の決め手です。HERO 13から、従来のネジ回し式に加え、<strong>マグネットでの着脱</strong>が可能になりました。</p>



<ul class="wp-block-list">
<li>シーン： 首掛け（ネックマウント）で散歩 → 帰宅してミニ三脚に固定。<br>この切り替えが、ネジを回すことなく「カチッ」と一瞬で完了します。忙しい育児中、この機動力はスペック以上の価値があります。</li>
</ul>



<h3 class="wp-block-heading"><strong>2. 「Enduroバッテリー」で十分と判断</strong></h3>



<p>以前のGoProは寒さや熱に弱いと言われていましたが、HERO 13に付属する「Enduroバッテリー」は非常に優秀です。</p>



<p>「2時間連続で回し続ける」といった過酷な使い方はせず、「かわいい瞬間を数分撮る」というVlog用途であれば、DJIほどのスタミナがなくても実用上十分と判断しました。</p>



<h2 class="wp-block-heading"><strong>【相場リサーチ】4段階の価格調査プロセス</strong></h2>



<p>ターゲットをHERO 13に定めたら、次は「いくらで買うか」です。</p>



<p>普段使い慣れているAmazonでいきなりポチることはしません。エンジニアとして、適正価格（相場）を把握するために以下の4ステップを踏んでいます。</p>



<h3 class="wp-block-heading"><strong>Step 1：AI（Gemini）でざっくり相場把握</strong></h3>



<p>まずは生成AIに「現在のGoPro HERO 13の市場価格は？」と問いかけます。</p>



<p>ここで「約5万円台後半〜6万円前半」という大まかなレンジを把握し、予算感を掴みます。</p>



<p><strong>現在の市場相場（2025年末）</strong></p>



<ul class="wp-block-list">
<li><strong>定価ベース:</strong> 約 62,800円前後</li>



<li><strong>量販店/ネット最安値:</strong> 約 58,000円前後</li>
</ul>



<h3 class="wp-block-heading"><strong>Step 2：価格.comで「市場の底値」を確認</strong></h3>



<p>次に、価格.comで最安値を確認します。</p>



<p>特に重要なのは「価格推移グラフ」です。現在の価格が上昇傾向なのか、下降傾向なのかを見ることで、今が「買い時」かどうかを客観的なデータとして判断します。</p>



<h3 class="wp-block-heading"><strong>Step 3：Yahoo!ショッピングで「隠れた安値」をチェック</strong></h3>



<p>価格.comには掲載されていない店舗や、セット商品がYahoo!ショッピングにある場合があります。</p>



<p>ここでは、PayPayポイント還元を含めた「実質価格」を確認します。</p>



<p>価格.comの最安値を下回ることもあり、ここが重要なベンチマークになります。</p>



<h3 class="wp-block-heading"><strong>Step 4：Amazonセールで「ファイナルアンサー」</strong></h3>



<p>Step 1〜3で「今の適正価格」を完全に把握した上で、最終的には<strong>普段使い慣れているAmazon</strong>で購入します。</p>



<ul class="wp-block-list">
<li><strong>ターゲット:</strong> 2026年1月3日〜7日のAmazon初売り / 年末年始セール</li>



<li><strong>購入判断:</strong> Amazonのセール価格が、Step 2・3で調べた相場と比較して遜色なければ、配送スピードと返品保証の安心感があるAmazonで即決します。</li>
</ul>



<p>このように「相場を知った上で、いつものサイトで買う」のが、失敗しないガジェット購入の鉄則です。</p>



<h2 class="wp-block-heading"><strong>まとめ</strong></h2>



<p>各社のカメラにはそれぞれの良さがあります。</p>



<p>しかし私は、「米国ブランドの信頼性」「子供に壊されないタフさ」、そして「マグネット運用の快適さ」のバランスから、GoPro HERO 13を相棒に選びました。</p>



<p>出産準備リストに「GoPro」を加えること。それは単なる物欲ではなく、二度と戻らない新生児期を鮮明に残すための「投資」です。</p>



<p>機材が無事に届いたら、次は「産前にやっておくべき初期設定（トラブル予防）」について、別の記事で詳しく解説します。お楽しみに！</p>



<p></p>
]]></content:encoded>
					
					<wfw:commentRss>https://oi-systems.net/archives/1769/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
