<?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>スグブログ</title>
	<atom:link href="https://sugublog.org/feed/" rel="self" type="application/rss+xml" />
	<link>https://sugublog.org</link>
	<description>ブログ運営について発信中</description>
	<lastBuildDate>Sun, 29 Mar 2026 15:26:41 +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://sugublog.org/wp-content/uploads/2021/07/icon_20210703-min-150x150.png</url>
	<title>スグブログ</title>
	<link>https://sugublog.org</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>【脱・cmd】バッチファイルからPowerShellへ！</title>
		<link>https://sugublog.org/powershell-beginner-guide/</link>
					<comments>https://sugublog.org/powershell-beginner-guide/?noamp=mobile#respond</comments>
		
		<dc:creator><![CDATA[suguru]]></dc:creator>
		<pubDate>Sun, 29 Mar 2026 15:17:29 +0000</pubDate>
				<category><![CDATA[bat]]></category>
		<category><![CDATA[IT]]></category>
		<category><![CDATA[Powershell]]></category>
		<category><![CDATA[windows]]></category>
		<category><![CDATA[プログラミング]]></category>
		<guid isPermaLink="false">https://sugublog.org/?p=7017</guid>

					<description><![CDATA[<p><img src="https://sugublog.org/wp-content/uploads/2026/03/Gemini_Generated_Image_4falkt4falkt4fal-1024x572.png" class="webfeedsFeaturedVisual" /></p>エンジニアのための入門・書き換えガイド プログラムを実践してきた筆者が、基本構文から実務で使える便利コマンドまで徹底解説します。 なぜバッチファイルからPowerShellなのか 「あぁ、また文字化けか……」 Windo [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><img src="https://sugublog.org/wp-content/uploads/2026/03/Gemini_Generated_Image_4falkt4falkt4fal-1024x572.png" class="webfeedsFeaturedVisual" /></p>
<p><strong>エンジニアのための入門・書き換えガイド</strong></p>



<p>プログラムを実践してきた筆者が、基本構文から実務で使える便利コマンドまで徹底解説します。</p>


<div class="p-blogParts post_content" data-partsID="5030">
<p>windowsのプロンプトで使用できるbatやpythonやphpを使用して、業務効率化やWebサイトを作成しております。javaやシェルスクリプトなど、様々なプログラミングを行った実績ありの筆者です。</p>
</div>


<h2 class="wp-block-heading">なぜバッチファイルからPowerShellなのか</h2>



<figure class="wp-block-image size-large"><img decoding="async" width="1024" height="853" src="https://sugublog.org/wp-content/uploads/2021/12/PC教室20211216-6-1024x853.jpg" alt="教師" class="wp-image-4809" srcset="https://sugublog.org/wp-content/uploads/2021/12/PC教室20211216-6-1024x853.jpg 1024w, https://sugublog.org/wp-content/uploads/2021/12/PC教室20211216-6-300x250.jpg 300w, https://sugublog.org/wp-content/uploads/2021/12/PC教室20211216-6-768x640.jpg 768w, https://sugublog.org/wp-content/uploads/2021/12/PC教室20211216-6.jpg 1200w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<p>「あぁ、また文字化けか……」</p>



<p>Windowsエンジニアなら誰もが一度は、メモ帳で書いたバッチファイル（.bat）を叩いた瞬間に真っ黒な画面で暴れる「謎の記号」に頭を抱えたことがあるはずです。</p>



<p class="is-style-big_icon_hatena">ファイル名に日付を入れてバックアップを取りたいだけなのに、%date:~0,4%%date:~5,2%… といった、まるで呪文のような文字列をググりながら必死に打ち込んだ経験はありませんか？</p>



<p>確かに、長年連れ添ったバッチファイルは手軽です。<br>しかし、現場のDX化が進み、クラウドやJSON、複雑なAPI連携が当たり前になった令和の今、「コマンドプロンプト（bat）」という武器だけでは、正直戦えなくなってきています。</p>



<p>「batで無理やり書けばなんとかなる」<br>その職人気質なこだわりが、実はあなたの貴重な残業時間を奪っているかもしれません。</p>



<p class="is-style-big_icon_point">そこでおすすめしたいのが、Windowsの標準シェルでありながら、圧倒的なパワーを秘めた<strong>「PowerShell」</strong>です。</p>



<p>「難しそう」「青い画面はとっつきにくい」<br>そう思って避けてきたあなたへ。</p>



<p>この記事では、IT現場の「泥臭い自動化」を支えてきたエンジニアの視点で、<strong>バッチファイルで消耗していたあの日々を過去にする「PowerShellの最短攻略法」</strong>を解説します。</p>



<p>この記事を読み終える頃には、あなたは「.bat」を右クリックして編集するのをやめ、自信を持って「.ps1」を作り始めているはずです。</p>



<ul class="wp-block-list">
<li><strong>なぜ今、PowerShellなのか？</strong>
<ul class="wp-block-list">
<li>Windows 10/11の標準シェルがPowerShellへ移行している現状。</li>



<li>bat（コマンドプロンプト）では難しかった「複雑な条件分岐」や「JSON/XML操作」が容易になるメリット。</li>
</ul>
</li>



<li><strong>この記事で学べること</strong>
<ul class="wp-block-list">
<li>PowerShellの起動と実行ポリシーの設定。</li>



<li>batファイルとの書き方の違い（比較表）。</li>
</ul>
</li>
</ul>



<h2 class="wp-block-heading"><strong>&nbsp;準備：実行ポリシーの設定（最初につまずくポイント）</strong></h2>



<figure class="wp-block-image size-large"><img decoding="async" width="1024" height="683" src="https://sugublog.org/wp-content/uploads/2021/06/shutterstock_1433996435-min-1024x683.jpg" alt="エラー" class="wp-image-2885"/></figure>



<p>新しくスクリプトを学ぶ時に全く別の箇所でつまずき挫折することはよくあります。なのでまずはPowershellで最初につまずくポイントを整理しておきます。</p>



<div class="swell-block-capbox cap_box"><div class="cap_box_ttl"><span>Powershellで最初につまずくポイント</span></div><div class="cap_box_content">
<ul class="wp-block-list">
<li>PowerShellはデフォルトではスクリプト（.ps1）が実行できない仕様。</li>



<li>Set-ExecutionPolicy コマンドの紹介。RemoteSigned への変更手順をコマンド例とともに解説。</li>
</ul>
</div></div>



<h3 class="wp-block-heading">PowerShellはデフォルトではスクリプト（.ps1）が実行できない仕様</h3>



<p>PowerShellの学習を始めた人が、真っ先にぶつかる「高い壁」。 それが、<strong><span class="swl-marker mark_orange"><span class="swl-inline-color has-swl-deep-01-color">「スクリプトが実行できません」という無慈悲な赤文字のエラー</span></span></strong>です。</p>



<p>「せっかく勉強しようと思ったのに、最初から拒否されるのか……」と、ここで挫折してしまうのは本当にもったいない！</p>



<p>実はこれ、PowerShellが「悪意のあるプログラムからあなたのPCを守るため」にあえてかけている「強力なセーフティ（安全装置）」なのです。バッチファイル（.bat）にはなかった、現代的なセキュリティの考え方ですね。</p>



<p>この安全装置を、開発に支障がない程度に「少しだけ緩める」のが、最初の一歩になります。</p>



<h3 class="wp-block-heading">実行ポリシーを「RemoteSigned」へ変更する</h3>



<p>実務で最もバランスが良い設定が <strong><code>RemoteSigned</code></strong> です。 「自分で書いたスクリプトは動かすけど、ネットから拾ってきた怪しいやつは署名がないと動かさないよ」という、まさにエンジニアのための設定です。</p>



<p>設定手順はたったの2ステップ。</p>



<ol start="1" class="wp-block-list">
<li><strong>PowerShellを「管理者として実行」で起動する</strong> （ここを忘れると、設定変更自体が拒否されます！）</li>



<li><strong>魔法のコマンドを打ち込む</strong></li>
</ol>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>Set-ExecutionPolicy RemoteSigned</code></pre></div>



<p>コマンドを打つと、「実行ポリシーを変更しますか？」と聞かれますので、迷わず <strong><code>Y</code></strong>（または <code>A</code>）を押してエンター。これで、あなたのPCは「PowerShellを受け入れる準備」が整いました。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p><strong>【プロのワンポイントアドバイス】</strong> 「セキュリティを下げるのは怖い……」と思うかもしれませんが、ご安心を。この設定は、あくまで「スクリプトファイル（.ps1）を直接叩けるようにする」ためのもの。まずはここを突破しないと、PowerShellの真価を味わうことはできません。</p>
</blockquote>



<h2 class="wp-block-heading"><strong>【比較で覚える】bat vs PowerShell 基本構文</strong></h2>



<p>「コマンドプロンプト（bat）で培った知識は、もうゴミ箱行きなのか？」 いいえ、そんなことはありません。</p>



<p>PowerShellはバッチファイルの進化系です。多くのコマンド（<code>dir</code> や <code>cd</code>、<code>copy</code> など）が「エイリアス（別名）」として引き継がれているため、今までの操作感のまま、より強力な書き方ができるようになります。</p>



<p>まずは、最もよく使う「基本の型」を比較表でサクッと確認してみましょう。</p>



<p class="has-text-align-center is-style-balloon_box">bat vs PowerShell 基本構文</p>



<figure class="wp-block-table is-style-regular"><table><thead><tr><th><strong>項目</strong></th><th><strong>バッチファイル (.bat)</strong></th><th><strong>PowerShell (.ps1)</strong></th><th>ポイント</th></tr></thead><tbody><tr><th><strong>変数</strong></th><td>set VAR=value</td><td>$var = &#8220;value&#8221;</td><td>PSは頭に <code>$</code> を付けるだけ！</td></tr><tr><th><strong>出力</strong></th><td>echo Hello</td><td>Write-Host &#8220;Hello&#8221;</td><td><code>echo</code> でも動くが正式にはこれ</td></tr><tr><th><strong>コメント</strong></th><td>rem または ::</td><td>#</td><td>プログラミング言語に近い <code>#</code></td></tr><tr><th><strong>引数</strong></th><td>%1, %2</td><td>$args[0], $args[1]</td><td>0番目から始まる配列形式</td></tr><tr><th>日付の取得</th><td><code>%date%</code> (要整形)</td><td>Get-Date</td><td>オブジェクトとして高機能</td></tr></tbody></table></figure>



<h3 class="wp-block-heading">実際のコードで見比べる「変数の扱い」</h3>



<p>バッチファイルで一番イライラするのは、変数を「%」で囲んだり、代入の時にスペースを空けてはいけなかったりする独特のルールですよね。PowerShellなら、もっと直感的に書けます。</p>



<h4 class="wp-block-heading">バッチファイルの場合</h4>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>@echo off
set NAME=SuguBlog
echo Hello, %NAME%!
pause</code></pre></div>



<h4 class="wp-block-heading">PowerShellの場合</h4>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code># 変数に代入（スペースがあってもOK！）
$name = &quot;SuguBlog&quot;

# 文字列の中でそのまま展開できる
Write-Host &quot;Hello, ${name}!&quot;

# 画面を止めたい時は Read-Host
Read-Host &quot;Enterキーを押して終了してください...&quot;</code></pre></div>



<h3 class="wp-block-heading">なぜPowerShellの方が「楽」なのか？</h3>



<p>バッチファイルの場合、変数を連結したり計算したりするたびに <code>set /a</code> や複雑なエスケープ処理が必要でした。</p>



<p>しかし、<span class="swl-inline-color has-swl-deep-01-color"><span class="swl-marker mark_orange">PowerShellは「エンジニアが直感的に書きたいように書ける」ように設計されています。</span></span> 例えば、文字列の中で <code>$name</code> と書くだけで中身を表示してくれる「変数展開」のスマートさ。これだけでも、書き換えのストレスが半分以下になるはずです。</p>



<h2 class="wp-block-heading has-text-align-left">PowerShellの最大の特徴「オブジェクト」を理解する</h2>



<figure class="wp-block-image size-large"><img decoding="async" width="1024" height="944" src="https://sugublog.org/wp-content/uploads/2021/12/PC教室20211216-1-1024x944.jpg" alt="パソコン教室" class="wp-image-4804" srcset="https://sugublog.org/wp-content/uploads/2021/12/PC教室20211216-1-1024x944.jpg 1024w, https://sugublog.org/wp-content/uploads/2021/12/PC教室20211216-1-300x277.jpg 300w, https://sugublog.org/wp-content/uploads/2021/12/PC教室20211216-1-768x708.jpg 768w, https://sugublog.org/wp-content/uploads/2021/12/PC教室20211216-1.jpg 1200w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<div class="swell-block-capbox cap_box"><div class="cap_box_ttl"><span>見出し</span></div><div class="cap_box_content">
<ul class="wp-block-list">
<li>テキストではなく「モノ（オブジェクト）」としてデータを扱う考え方の解説。</li>



<li><strong>パイプライン（|）の強力さ</strong>
<ul class="wp-block-list">
<li>例：Get-ChildItem | Where-Object { $_.Length -gt 1MB }</li>



<li>（1MB以上のファイルを抽出する、といった直感的な操作例）</li>
</ul>
</li>
</ul>
</div></div>



<ul class="wp-block-list">
<li></li>
</ul>



<p>バッチファイルやLinuxのシェルを使っていると、コマンドの実行結果はただの「文字（テキスト）」として返ってきます。 そのため、特定のデータを取り出すには、複雑な <code>findstr</code> や <code>awk</code> を駆使して、文字を切り刻む必要がありました。</p>



<p class="is-style-icon_good">しかし、PowerShellは違います。 <strong>返ってくるのは文字ではなく、データが詰まった「オブジェクト（情報の塊）」</strong>なのです。</p>



<h3 class="wp-block-heading">「文字」ではなく「中身」で会話する</h3>



<p>例えば、ファイルのサイズを知りたいとき。 バッチファイルでは <code>dir</code> の結果から「何文字目から何文字目がサイズで……」とパズルをしていました。</p>



<h3 class="wp-block-heading">魔法の杖「パイプライン（|）」の真骨頂</h3>



<p class="is-style-icon_good">PowerShellなら、ファイルという「オブジェクト」に「ねぇ、サイズ（Length）だけ教えて？」と聞くだけで終わります。</p>



<p>この「オブジェクト」の真価を発揮するのが、おなじみの縦棒 <strong><code>|</code>（パイプライン）</strong> です。 PowerShellのパイプは、ただ結果を渡すだけではありません。「データの塊を、次のコマンドへ丸ごと放り投げる」役割を持っています。</p>



<h4 class="wp-block-heading">1MB以上のファイルだけを「スグ」に見つける例</h4>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p>直感的なフィルタリング</p>
</blockquote>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code># カレントディレクトリのファイル一覧を取得して、
# その中から「サイズが1MBより大きいもの」だけを選び出す
Get-ChildItem | Where-Object { $_.Length -gt 1MB }</code></pre></div>



<p>これ、バッチファイルで書こうとしたら何行必要か想像してみてください。 PowerShellなら、たった1行。「何を取得して（Get）」「どう分けるか（Where）」を繋げるだけで、複雑なロジックが完成します。</p>



<h3 class="wp-block-heading">「$_」という、ちょっと不思議な記号</h3>



<p>コードの中に出てきた <code>$_</code> という記号。最初は「何これ？」と思うかもしれませんが、これは「今、パイプラインを通っているそのデータ」を指す代名詞です。</p>



<p>「目の前のコイツの、サイズ（Length）を見て！」 そんな風にPCに指示を出しているイメージですね。</p>



<h2 class="wp-block-heading"><strong>実務で「スグ」使える逆引きレシピ 3選</strong></h2>



<figure class="wp-block-image size-large"><img decoding="async" width="1024" height="770" src="https://sugublog.org/wp-content/uploads/2021/12/PC教室20211216-2-1024x770.jpg" alt="パソコン教室" class="wp-image-4805" srcset="https://sugublog.org/wp-content/uploads/2021/12/PC教室20211216-2-1024x770.jpg 1024w, https://sugublog.org/wp-content/uploads/2021/12/PC教室20211216-2-300x226.jpg 300w, https://sugublog.org/wp-content/uploads/2021/12/PC教室20211216-2-768x577.jpg 768w, https://sugublog.org/wp-content/uploads/2021/12/PC教室20211216-2.jpg 1200w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<div class="swell-block-capbox cap_box"><div class="cap_box_ttl"><span>見出し</span></div><div class="cap_box_content">
<ul class="wp-block-list">
<li><strong>① ファイルのバックアップ（日付付与）</strong>
<ul class="wp-block-list">
<li>Get-Date フォーマットを使ったファイル名生成。</li>
</ul>
</li>



<li><strong>② 特定の文字列を含むファイルの検索と抽出</strong>
<ul class="wp-block-list">
<li>Select-String の使い方。</li>
</ul>
</li>



<li><strong>③ CSVファイルの読み込みと加工</strong>
<ul class="wp-block-list">
<li>Import-Csv でデータをループ処理する方法。</li>
</ul>
</li>
</ul>
</div></div>



<ul class="wp-block-list">
<li></li>
</ul>



<p>「理屈はわかった。で、実際どう使うの？」 そんな声にお応えして、今日からあなたの現場で<strong><span class="swl-inline-color has-swl-deep-01-color">即戦力になる3つの鉄板レシピ</span></strong>を用意しました。バッチファイルでは苦労していたあの作業が、驚くほどスマートに片付きます。</p>



<h3 class="wp-block-heading">① ファイルのバックアップ（日付付与）</h3>



<p>ログファイルや設定ファイルを保存する際、「ファイル名_20240329.bak」のように日付を入れたいケースは多いですよね。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p>日付付きコピーの決定版</p>
</blockquote>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code># 今日の日付を「yyyyMMdd」形式で取得
$date = Get-Date -Format &quot;yyyyMMdd&quot;

# 元ファイルを日付付きでコピー
Copy-Item &quot;C:\logs\app.log&quot; &quot;C:\backup\app_$date.log&quot;</code></pre></div>



<p class="is-style-icon_good"><strong>【ここがスゴイ！】</strong> バッチファイルのように <code>%date:~0,4%</code> といった複雑な切り出しは不要。<code>-Format</code> を指定するだけで、あなたが欲しい形の日付が手に入ります。</p>



<h3 class="wp-block-heading">② 特定の文字列を含むファイルを一括検索</h3>



<p>「あの設定値、どのファイルに書いたっけ？」 そんな時は <code>Select-String</code> の出番です。Linuxの <code>grep</code> に近い感覚で使えます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code># 「Error」という文字が含まれる .txt ファイルをサブフォルダまで検索
Get-ChildItem -Recurse *.txt | Select-String &quot;Error&quot;</code></pre></div>



<p class="is-style-icon_good"><strong>【ここがスゴイ！】</strong> <code>-Recurse</code> をつけるだけで、サブフォルダまで根こそぎ探してくれます。結果には「行番号」も表示されるので、修正作業が爆速になります。</p>



<h3 class="wp-block-heading">③ CSVファイルの読み込みと加工</h3>



<p>Excelで管理しているリストを元に、フォルダを一括作成したり設定を変更したりする場合、PowerShellは最強のツールになります。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code># CSVを読み込んで、1行ずつ処理する
Import-Csv &quot;C:\data\user_list.csv&quot; | ForEach-Object {
    # 「UserName」列の値を使ってフォルダを作成
    New-Item -Path &quot;C:\Users\Desktop&quot; -Name $_.UserName -ItemType Directory
}</code></pre></div>



<p class="is-style-icon_good"><strong>【ここがスゴイ！】</strong> <code>Import-Csv</code> を使うと、CSVのヘッダー名をそのまま変数として扱えます。文字割りの処理を自分で書く必要はもうありません。</p>



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



<h3 class="wp-block-heading">【＋α】さらに一歩先へ：Active Directory（AD）連携</h3>



<p>もしあなたが社内インフラや情シスの担当者なら、PowerShellは「知っておかなければならない武器」に変わります。</p>



<p>例えば、**「期限切れ間近のユーザーアカウントを抽出する」**といった作業。 GUI（マウス操作）で一人ずつ確認していたら日が暮れますが、PowerShell（Active Directoryモジュール）を使えば一瞬です。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code># 30日以内にパスワードが切れるユーザーを一覧表示
Search-ADAccount -PasswordExpiring -TimeSpan 30.00:00:00 | Select-Object Name, SamAccountName</code></pre></div>



<p>こうした「AD連携」や「サーバー構築の自動化」こそが、PowerShellの本領発揮。 まずは日々のファイル操作から慣れていき、徐々にこうした高度な自動化に挑戦していきましょう！</p>



<h2 class="wp-block-heading">まとめ：小さな一歩が「エンジニアの自由」を作る</h2>



<figure class="wp-block-image size-large"><img decoding="async" width="1024" height="572" src="https://sugublog.org/wp-content/uploads/2026/03/Gemini_Generated_Image_4falkt4falkt4fal-1024x572.png" alt="バッチファイル（.bat）からPowerShell（.ps1）への移行をイメージした比較画像。左側には古いMS-DOS風の画面と手作業のファイル、右側にはPowerShellのコード（Get-DateやWhere-Object）と自動化されたデータパイプラインが描かれ、「バッチで消耗していませんか？PowerShellで『自由』を手に入れよう！」というキャッチコピーが入ったスグブログのアイキャッチ画像" class="wp-image-7022" srcset="https://sugublog.org/wp-content/uploads/2026/03/Gemini_Generated_Image_4falkt4falkt4fal-1024x572.png 1024w, https://sugublog.org/wp-content/uploads/2026/03/Gemini_Generated_Image_4falkt4falkt4fal-300x167.png 300w, https://sugublog.org/wp-content/uploads/2026/03/Gemini_Generated_Image_4falkt4falkt4fal-768x429.png 768w, https://sugublog.org/wp-content/uploads/2026/03/Gemini_Generated_Image_4falkt4falkt4fal.png 1376w" sizes="(max-width: 1024px) 100vw, 1024px" /><figcaption class="wp-element-caption">バッチファイルの限界を感じていませんか？PowerShellなら、たった1行のコードで複雑な自動化をスマートに実現できます。</figcaption></figure>



<div class="swell-block-capbox cap_box"><div class="cap_box_ttl"><span>見出し</span></div><div class="cap_box_content">
<ul class="wp-block-list">
<li>PowerShellは最初は難しく感じるが、一度覚えると自動化の幅が劇的に広がる。</li>



<li>まずは「今のbatを1つだけPowerShellに書き換えてみる」ことから始めよう。</li>
</ul>
</div></div>



<p>最後まで読んでいただき、ありがとうございます！</p>



<p>ここまで読んでくださったあなたは、もう薄々感じているはずです。 「バッチファイルで頑張っていたあの時間は、もっと短縮できたんだ」と。</p>



<p>もちろん、長年使い古した <code>.bat</code> をすべて捨てる必要はありません。 でも、もし明日「ファイル名を一括で変えたい」「ログから特定のエラーを探したい」という作業が発生したら、グッとこらえて <strong>PowerShell（.ps1）</strong> を開いてみてください。</p>



<p>最初は、実行ポリシーのエラーに首を傾げるかもしれません。 パイプラインの書き方に戸惑うかもしれません。</p>



<p class="is-style-big_icon_point">しかし、その「最初の一歩」を乗り越えた先には、<strong>面倒なルーチンワークを1行のコマンドで終わらせ、涼しい顔で定時に帰宅する「自由」が待っています。</strong></p>



<h3 class="wp-block-heading">次のステップへのヒント</h3>



<ul class="wp-block-list">
<li><strong>まずは「1行」書いてみる:</strong> <code>Get-ChildItem</code>（dirの代わり）から始めてみましょう。</li>



<li><strong>わからないことは「スグ」検索:</strong> PowerShellのコミュニティは広大です。困ったらこの記事を読み返してください。</li>
</ul>



<p>ITエンジニアの世界は、新しい武器を手に入れた者勝ちです。 今日、あなたが手に入れた「PowerShell」という強力な剣を、ぜひ現場で振り回してみてくださいね。</p>



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



<p>これからも『スグブログ』では、エンジニアの皆さんが「スグ」に現場で使える技術ネタを発信していきます。</p>



<p>次は、Active Directoryの自動操作や、さらに高度なスクリプト術でお会いしましょう。 それでは、また！</p>
]]></content:encoded>
					
					<wfw:commentRss>https://sugublog.org/powershell-beginner-guide/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>【Linux基礎】ルーティングの設定をする！追加や削除やDGの設定</title>
		<link>https://sugublog.org/linux-routing-setting/</link>
					<comments>https://sugublog.org/linux-routing-setting/?noamp=mobile#respond</comments>
		
		<dc:creator><![CDATA[suguru]]></dc:creator>
		<pubDate>Sun, 02 Jun 2024 04:50:06 +0000</pubDate>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[サーバ]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[ルーティング設定]]></category>
		<guid isPermaLink="false">https://sugublog.org/?p=6895</guid>

					<description><![CDATA[<p><img src="https://sugublog.org/wp-content/uploads/2021/07/server_007-3-1024x768.jpg" class="webfeedsFeaturedVisual" /></p>Linuxサーバーでルーティングの設定をする事がたまにあります。 そこで今回はLinuxサーバーでのルーティングの設定を、実例を踏まえて行います。 ルーティング追加から削除やデフォルトルートの設定なども行います。 また一 [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><img src="https://sugublog.org/wp-content/uploads/2021/07/server_007-3-1024x768.jpg" class="webfeedsFeaturedVisual" /></p>
<p>Linuxサーバーで<strong><span class="swl-inline-color has-swl-deep-01-color">ルーティングの設定</span></strong>をする事がたまにあります。</p>



<p>そこで今回はLinuxサーバーでのルーティングの設定を、実例を踏まえて行います。</p>



<p class="is-style-icon_announce">ルーティング追加から削除やデフォルトルートの設定なども行います。</p>



<p>また<strong><span class="swl-inline-color has-swl-deep-02-color">一時的なルーティング設定</span></strong>や<strong><span class="swl-inline-color has-swl-deep-03-color">永続的なルーティング設定</span></strong>を現役エンジニアの筆者がまとめます。</p>


<div class="p-blogParts post_content" data-partsID="5908">
<p>筆者はWindowsサーバーやLinuxサーバーの運用構築を11年間以上おこなってきました。その経験を元に知識を公開していきます！</p>
</div>


<p class="has-border -border02">この記事で<strong><span class="swl-inline-color has-swl-deep-01-color">Linuxのルーティング設定</span></strong>について、理解ができます。</p>



<script async="" src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<ins class="adsbygoogle ads" style="display:block; text-align:center;" data-ad-layout="in-article" data-ad-format="fluid" data-ad-client="ca-pub-9330904718533231" data-ad-slot="6086594686"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>



<h2 class="wp-block-heading">Linuxでルーティングの設定をする方法</h2>


<div class="wp-block-image is-style-photo_frame">
<figure class="aligncenter size-large"><img decoding="async" width="1024" height="503" src="https://sugublog.org/wp-content/uploads/2021/11/Server_20211109-5-1024x503.jpg" alt="サーバー" class="wp-image-4412" srcset="https://sugublog.org/wp-content/uploads/2021/11/Server_20211109-5-1024x503.jpg 1024w, https://sugublog.org/wp-content/uploads/2021/11/Server_20211109-5-300x148.jpg 300w, https://sugublog.org/wp-content/uploads/2021/11/Server_20211109-5-768x378.jpg 768w, https://sugublog.org/wp-content/uploads/2021/11/Server_20211109-5.jpg 1200w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>
</div>


<p>Linuxで<strong><span class="swl-inline-color has-swl-deep-01-color">ルーティングの設定をするコマンド</span></strong>についてまとめます。</p>



<p>ルーティング設定コマンドはいくつかあります。自身の環境のインストールしている<span class="swl-inline-color has-swl-deep-02-color">ネットワーク設定ツール</span>によってコマンドが変わってきます。</p>



<div class="swell-block-capbox cap_box is-style-onborder_ttl"><div class="cap_box_ttl"><span>ネットワーク設定ツール別コマンド</span></div><div class="cap_box_content">
<ul class="wp-block-list">
<li>net-toolsツール⇒routeコマンド</li>



<li>iproute2ツール⇒ip routeコマンド</li>
</ul>
</div></div>



<p class="is-style-icon_info">どちらを使用すれば良いかというと、iproute2ツールの「ip route」コマンドが推奨です。</p>



<h2 class="wp-block-heading">Linuxでルーティング追加の設定をする</h2>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img decoding="async" width="1024" height="256" src="https://sugublog.org/wp-content/uploads/2021/11/programing_shool1121-5-1024x256.jpg" alt="traning" class="wp-image-4538" srcset="https://sugublog.org/wp-content/uploads/2021/11/programing_shool1121-5-1024x256.jpg 1024w, https://sugublog.org/wp-content/uploads/2021/11/programing_shool1121-5-300x75.jpg 300w, https://sugublog.org/wp-content/uploads/2021/11/programing_shool1121-5-768x192.jpg 768w, https://sugublog.org/wp-content/uploads/2021/11/programing_shool1121-5.jpg 1200w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>
</div>


<h3 class="wp-block-heading">iproute2ツールでルーティング追加の設定</h3>



<p><span class="swl-marker mark_orange">iproute2ツールで<strong><span class="swl-inline-color has-swl-deep-01-color">ルーティング追加</span></strong>の設定を行います。</span>「ip route」コマンドの基礎構文を以下に示します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>ip route add 「IPアドレス/マスク」 via 「GWアドレス」</code></pre></div>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>ip route add 「IPアドレス/32」 via 「GWアドレス」</code></pre></div>



<p class="is-style-icon_info">ホストを指定する時はマスクを32にして設定します。</p>



<p>実際にルーティング設定をしてみます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>ip route add 192.168.111.0/24 via 192.168.0.1
ip route add 192.168.111.1/32 via 192.168.0.1</code></pre></div>



<p>セグメント「192.168.111.0」を「192.168.0.1」に向けたルーティングを追加しました。</p>



<p>また「192.168.111.1」のホストを「192.168.0.1」に向けたルーティングを追加しました。</p>



<p>ルーティングテーブルを確認します。<span class="swl-marker mark_blue">iproute2ツールの<strong><span class="swl-inline-color has-swl-deep-02-color">ルーティング確認コマンド</span></strong>は「ip route show」です。</span></p>



<p class="is-style-icon_pen">Linuxサーバーでルーティング確認方法の詳細は以下の記事でまとめています。</p>


<div class="swell-block-postLink">			<div class="p-blogCard -internal" data-type="type1" data-onclick="clickLink">
				<div class="p-blogCard__inner">
					<span class="p-blogCard__caption">あわせて読みたい</span>
					<div class="p-blogCard__thumb c-postThumb"><figure class="c-postThumb__figure"><img decoding="async" src="https://sugublog.org/wp-content/uploads/2021/07/pixta_77773496_M-e1626536234619-300x232.jpg" alt="" class="c-postThumb__img u-obf-cover" width="320" height="180"></figure></div>					<div class="p-blogCard__body">
						<a class="p-blogCard__title" href="https://sugublog.org/linux-routing-check-command/">【Linux基礎】ルーティング確認コマンドについてまとめました！</a>
						<span class="p-blogCard__excerpt">Linuxサーバでルーティング確認するコマンドについてまとめました。 CentOSやUbuntuのOSでルーティング確認したい方は読んでください。 Linuxサーバーでルーティング確&#8230;</span>					</div>
				</div>
			</div>
		</div>


<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# ip route show
default via 192.168.0.1 dev enp0s3 proto dhcp metric 100
192.168.0.0/24 dev enp0s3 proto kernel scope link src 192.168.0.4 metric 100
192.168.111.0/24 via 192.168.0.1 dev enp0s3
192.168.111.1 via 192.168.0.1 dev enp0s3</code></pre></div>



<p class="has-border -border01">iproute2ツールで<strong><span class="swl-inline-color has-swl-deep-02-color">指定のルーティングが追加</span></strong>されています。</p>



<h3 class="wp-block-heading">net-toolsツールでルーティング追加の設定</h3>



<p><span class="swl-marker mark_green">net-toolsツールで<strong><span class="swl-inline-color has-swl-deep-03-color">ルーティング追加</span></strong>の設定を行います。</span>「route」コマンドの基礎構文を以下に示します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>route add -net 「IPアドレス」 netmask 「マスク」 gw 「GWアドレス」</code></pre></div>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>route add -host 「IPアドレス」 gw 「GWアドレス」</code></pre></div>



<p class="is-style-icon_info">セグメントを指定する時はnetを、ホストを指定する時はhostを記述します。</p>



<p>実際にルーティング設定をしてみます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>route add -net 192.168.222.0 netmask 255.255.255.0 gw 192.168.0.1
route add -host 192.168.222.1 gw 192.168.0.1</code></pre></div>



<p class="is-style-icon_info">マスクの箇所は「24」等ではエラーが出ます。きちんと「255.255.255.0」等で入力します。</p>



<p class="is-style-icon_bad">ホストのルーティングを設定する時に、netmaskを指定するとエラーとなります。</p>



<p>セグメント「192.168.222.0」を「192.168.0.1」に向けたルーティングを追加しました。</p>



<p>また「192.168.222.1」のホストを「192.168.0.1」に向けたルーティングを追加しました。</p>



<p>ルーティングテーブルを確認します。<span class="swl-marker mark_blue">net-toolsツールの<strong><span class="swl-inline-color has-swl-deep-02-color">ルーティング確認コマンド</span></strong>は「netstat -r」か「route」コマンドです。</span></p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# netstat -r
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
default         router          0.0.0.0         UG        0 0          0 enp0s3
192.168.0.0     0.0.0.0         255.255.255.0   U         0 0          0 enp0s3
192.168.111.0   router          255.255.255.0   UG        0 0          0 enp0s3
192.168.111.1   router          255.255.255.255 UGH       0 0          0 enp0s3
192.168.222.0   router          255.255.255.0   UG        0 0          0 enp0s3
192.168.222.1   router          255.255.255.255 UGH       0 0          0 enp0s3</code></pre></div>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         router          0.0.0.0         UG    100    0        0 enp0s3
192.168.0.0     0.0.0.0         255.255.255.0   U     100    0        0 enp0s3
192.168.111.0   router          255.255.255.0   UG    0      0        0 enp0s3
192.168.111.1   router          255.255.255.255 UGH   0      0        0 enp0s3
192.168.222.0   router          255.255.255.0   UG    0      0        0 enp0s3
192.168.222.1   router          255.255.255.255 UGH   0      0        0 enp0s3</code></pre></div>



<p class="has-border -border01"><span class="swl-marker mark_green">net-toolsツールで<strong><span class="swl-inline-color has-swl-deep-03-color">指定のルーティングが追加</span></strong>されています。</span></p>



<p class="is-style-icon_book">Flagsの項目の記号の意味をまとめます。</p>



<div class="swell-block-capbox cap_box is-style-onborder_ttl"><div class="cap_box_ttl"><span>Flagsの項目の記号の意味</span></div><div class="cap_box_content">
<ul class="wp-block-list">
<li>U・・・UPしている</li>



<li>G・・・Gatewayを向いている</li>



<li>H・・・Hostを意味する</li>



<li>！・・・無効</li>
</ul>
</div></div>



<h2 class="wp-block-heading">Linuxでルーティング削除の設定をする</h2>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img decoding="async" width="1024" height="792" src="https://sugublog.org/wp-content/uploads/2021/07/clash-1024x792.jpg" alt="エラー発生" class="wp-image-3586" srcset="https://sugublog.org/wp-content/uploads/2021/07/clash-1024x792.jpg 1024w, https://sugublog.org/wp-content/uploads/2021/07/clash-300x232.jpg 300w, https://sugublog.org/wp-content/uploads/2021/07/clash-768x594.jpg 768w, https://sugublog.org/wp-content/uploads/2021/07/clash-1536x1187.jpg 1536w, https://sugublog.org/wp-content/uploads/2021/07/clash-scaled.jpg 2048w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>
</div>


<h3 class="wp-block-heading">iproute2ツールでルーティング削除の設定</h3>



<p>Linuxサーバーの<span class="swl-marker mark_orange">iproute2ツールで<strong><span class="swl-inline-color has-swl-deep-01-color">ルーティング削除</span></strong>の設定</span>を行います。削除コマンドの基礎構文を以下に示します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>ip route delete 「IPアドレス/マスク」</code></pre></div>



<p class="is-style-icon_bad">ルーティング削除で「delete」を「del」にするとエラーが出ます。</p>



<p>実際にルーティング削除の設定をしてみます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>ip route delete 192.168.111.0/24
ip route delete 192.168.111.1/32</code></pre></div>



<p>先程追加したセグメント「192.168.111.0」とホストの「192.168.111.1」のルーティングを削除しました。</p>



<p>ルーティングテーブルを確認します。iproute2ツールのルーティング確認コマンドは「ip route show」でした。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# ip route show
default via 192.168.0.1 dev enp0s3 proto dhcp metric 100
192.168.0.0/24 dev enp0s3 proto kernel scope link src 192.168.0.4 metric 100
192.168.222.0/24 via 192.168.0.1 dev enp0s3
192.168.222.1 via 192.168.0.1 dev enp0s3</code></pre></div>



<p class="has-border -border01"><span class="swl-marker mark_orange">iproute2ツールで<strong><span class="swl-inline-color has-swl-deep-01-color">指定のルーティングが削除</span></strong>されています。</span></p>



<h3 class="wp-block-heading">net-toolsツールでルーティング削除の設定</h3>



<p><span class="swl-marker mark_orange">net-toolsツールで<strong><span class="swl-inline-color has-swl-deep-01-color">ルーティング削除の設定</span></strong>を行います。</span>「route」コマンドの基礎構文を以下に示します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>route del -[net/host] 「IPアドレス/マスク」</code></pre></div>



<p class="is-style-icon_info">削除の場合、セグメントを指定する時はnetをホストを指定する時はhostを記述します。</p>



<p>実際にルーティング削除の設定をしてみます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>route del -net 192.168.222.0/24
route del -host 192.168.222.1/32</code></pre></div>



<p class="is-style-icon_info">hostの場合はマスクを省略できますが、netの場合マスクを省略すればエラーが出ます。きちんとマスクも設定します！</p>



<p>セグメント「192.168.222.0」とホスト「192.168.0.1」のルーティングを削除しました。</p>



<p>ルーティングテーブルを確認します。net-toolsツールのルーティング確認コマンドは「netstat -r」か「route」コマンドです。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# netstat -r
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
default         router          0.0.0.0         UG        0 0          0 enp0s3
192.168.0.0     0.0.0.0         255.255.255.0   U         0 0          0 enp0s3</code></pre></div>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         router          0.0.0.0         UG    100    0        0 enp0s3
192.168.0.0     0.0.0.0         255.255.255.0   U     100    0        0 enp0s3</code></pre></div>



<p class="has-border -border01"><span class="swl-marker mark_orange">net-toolsツールで<strong><span class="swl-inline-color has-swl-deep-01-color">指定のルーティングが削除</span></strong>されています。</span></p>



<h2 class="wp-block-heading">Linuxでデフォルトゲートウェイ追加の設定をする</h2>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img decoding="async" width="1024" height="683" src="https://sugublog.org/wp-content/uploads/2021/10/moving1006-2-1024x683.jpg" alt="moving" class="wp-image-4235" srcset="https://sugublog.org/wp-content/uploads/2021/10/moving1006-2-1024x683.jpg 1024w, https://sugublog.org/wp-content/uploads/2021/10/moving1006-2-300x200.jpg 300w, https://sugublog.org/wp-content/uploads/2021/10/moving1006-2-768x512.jpg 768w, https://sugublog.org/wp-content/uploads/2021/10/moving1006-2.jpg 1200w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>
</div>


<h3 class="wp-block-heading">iproute2ツールでデフォルトゲートウェイ追加の設定</h3>



<p>Linuxサーバーで<strong><span class="swl-inline-color has-swl-deep-03-color">デフォルトゲートウェイ追加</span></strong>の設定を行います。「ip route」コマンドの基礎構文を以下に示します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>ip route add default via 「GWアドレス」</code></pre></div>



<p>実際にデフォルトゲートウェイの設定をしてみます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>ip route add default via 192.168.0.254</code></pre></div>



<p>デフォルトゲートウェイを追加しました。</p>



<p>ルーティングテーブルを確認します。iproute2ツールのルーティング確認コマンドは「ip route show」です。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# ip route show
default via 192.168.0.254 dev enp0s3
default via 192.168.0.1 dev enp0s3 proto dhcp metric 100
192.168.0.0/24 dev enp0s3 proto kernel scope link src 192.168.0.4 metric 100</code></pre></div>



<p class="has-border -border01"><span class="swl-marker mark_green">iproute2ツールで<strong><span class="swl-inline-color has-swl-deep-03-color">指定のデフォルトゲートウェイが追加</span></strong>されています。</span></p>



<h3 class="wp-block-heading">net-toolsツールでデフォルトゲートウェイ追加の設定</h3>



<p><span class="swl-marker mark_green">net-toolsツールで<strong><span class="swl-inline-color has-swl-deep-03-color">デフォルトゲートウェイ追加</span></strong>の設定を行います。</span>「route」コマンドの基礎構文を以下に示します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>route add default gw 「GWアドレス」</code></pre></div>



<p>実際にデフォルトゲートウェイの設定をしてみます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>route add default gw 192.168.0.253</code></pre></div>



<p>「192.168.0.253」に向けたデフォルトゲートウェイを追加しました。</p>



<p>ルーティングテーブルを確認します。net-toolsツールのルーティング確認コマンドは「netstat -r」か「route」コマンドでした。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# netstat -r
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
default         gateway         0.0.0.0         UG        0 0          0 enp0s3
default         gateway         0.0.0.0         UG        0 0          0 enp0s3
default         router          0.0.0.0         UG        0 0          0 enp0s3
192.168.0.0     0.0.0.0         255.255.255.0   U         0 0          0 enp0s3</code></pre></div>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         gateway         0.0.0.0         UG    0      0        0 enp0s3
default         gateway         0.0.0.0         UG    0      0        0 enp0s3
default         router          0.0.0.0         UG    100    0        0 enp0s3
192.168.0.0     0.0.0.0         255.255.255.0   U     100    0        0 enp0s3</code></pre></div>



<p class="is-style-icon_bad">複数のデフォルトゲートウェイがある場合はnet-toolsツールのコマンドでは、どれが追加されたかわかりません。</p>



<p>そういった場合の対処法として<span class="swl-inline-color has-swl-deep-02-color">nオプション</span>を使用しましょう！<span class="swl-inline-color has-swl-deep-02-color">名前ではなくIPで表示</span>してくれます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# netstat -nr
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
0.0.0.0         192.168.0.253   0.0.0.0         UG        0 0          0 enp0s3
0.0.0.0         192.168.0.254   0.0.0.0         UG        0 0          0 enp0s3
0.0.0.0         192.168.0.1     0.0.0.0         UG        0 0          0 enp0s3
192.168.0.0     0.0.0.0         255.255.255.0   U         0 0          0 enp0s3</code></pre></div>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.0.253   0.0.0.0         UG    0      0        0 enp0s3
0.0.0.0         192.168.0.254   0.0.0.0         UG    0      0        0 enp0s3
0.0.0.0         192.168.0.1     0.0.0.0         UG    100    0        0 enp0s3
192.168.0.0     0.0.0.0         255.255.255.0   U     100    0        0 enp0s3</code></pre></div>



<h2 class="wp-block-heading">複数のルーティングを追加すると通信できなくなった場合の対処法</h2>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img decoding="async" width="1024" height="683" src="https://sugublog.org/wp-content/uploads/2021/06/shutterstock_1433996435-min-1024x683.jpg" alt="エラー" class="wp-image-2885"/></figure>
</div>


<p class="is-style-icon_bad">デフォルトゲートウェイを複数設定しましたが、外に通信できなくなりました。</p>



<p><span class="swl-bg-color has-swl-deep-01-background-color">Pingコマンド</span>でGoogleのDNSサーバーに通信してみます。</p>


<div class="swell-block-postLink">			<div class="p-blogCard -internal" data-type="type1" data-onclick="clickLink">
				<div class="p-blogCard__inner">
					<span class="p-blogCard__caption">あわせて読みたい</span>
					<div class="p-blogCard__thumb c-postThumb"><figure class="c-postThumb__figure"><img decoding="async" src="https://sugublog.org/wp-content/uploads/2021/12/PC教室20211216-3-300x232.jpg" alt="" class="c-postThumb__img u-obf-cover" width="320" height="180"></figure></div>					<div class="p-blogCard__body">
						<a class="p-blogCard__title" href="https://sugublog.org/linux-ping/">【Linux】pingの使い方！オプションでポート指定して疎通確認を行う</a>
						<span class="p-blogCard__excerpt">Linuxサーバーでpingコマンドの使い方についてまとめます。 相手先のポートが開いているか確認する為に、ポートを指定してPingを行いたい。 Pingの回数を指定して行いた&#8230;</span>					</div>
				</div>
			</div>
		</div>


<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# ping -c 2 8.8.8.8
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
From 192.168.0.4 icmp_seq=1 Destination Host Unreachable
From 192.168.0.4 icmp_seq=2 Destination Host Unreachable

--- 8.8.8.8 ping statistics ---
2 packets transmitted, 0 received, +2 errors, 100% packet loss, time 1006ms
pipe 2</code></pre></div>



<p>通信できませんでした。経路情報を<span class="swl-bg-color has-swl-deep-02-background-color">tracerouteコマンド</span>で確認します。</p>



<p class="is-style-icon_pen">tracerouteのオプションなど詳細は以下の記事参照</p>


<div class="swell-block-postLink">			<div class="p-blogCard -internal" data-type="type1" data-onclick="clickLink">
				<div class="p-blogCard__inner">
					<span class="p-blogCard__caption">あわせて読みたい</span>
					<div class="p-blogCard__thumb c-postThumb"><figure class="c-postThumb__figure"><img decoding="async" src="https://sugublog.org/wp-content/uploads/2021/07/pixta_77773496_M-e1626536234619-300x232.jpg" alt="" class="c-postThumb__img u-obf-cover" width="320" height="180"></figure></div>					<div class="p-blogCard__body">
						<a class="p-blogCard__title" href="https://sugublog.org/linux-traceroute/">【Linux】tracerouteの使い方！オプションなどもご紹介</a>
						<span class="p-blogCard__excerpt">Linuxサーバーでtracerouteの使い方を教えて欲しいです。オプションなども含めて使い方を見てみたい そういったエンジニアの疑問に、現役エンジニアの筆者が答えます。 &#8230;</span>					</div>
				</div>
			</div>
		</div>


<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# traceroute -n -w 2 8.8.8.8
traceroute to 8.8.8.8 (8.8.8.8), 30 hops max, 60 byte packets
 1  * * *
 2  * * *
 3  * * *
 4  * * *
 5  * * *
 6  * 192.168.0.4  1010.630 ms !H  1010.468 ms !H</code></pre></div>



<p>最初のホップのデフォルトゲートウェイに通信できていません。</p>



<p><strong><span class="swl-marker mark_orange">外に通信できなくなった原因</span></strong>は以下の２つです。</p>



<div class="swell-block-capbox cap_box is-style-onborder_ttl"><div class="cap_box_ttl"><span>インターネット接続できなくなった原因２つ</span></div><div class="cap_box_content">
<ul class="wp-block-list">
<li>設定したデフォルトゲートウェイのIPのL3機器がない</li>



<li>ルーティングの優先度</li>
</ul>
</div></div>



<p>1つめの原因は設定したデフォルトゲートウェイのIPアドレスのL3機器がなかった事です。ルータがあれば通信できました。</p>



<p>2つ目の原因はルーティングの優先度です。もともと設定してあったデフォルトゲートウェイの<span class="swl-bg-color has-swl-deep-03-background-color">優先度</span>が高かったら通信はできていました。</p>



<p class="is-style-icon_pen">Linuxでインターネット接続できなくなった時の対処法の全ては、以下の記事にまとめています。</p>


<div class="swell-block-postLink">			<div class="p-blogCard -internal" data-type="type1" data-onclick="clickLink">
				<div class="p-blogCard__inner">
					<span class="p-blogCard__caption">あわせて読みたい</span>
					<div class="p-blogCard__thumb c-postThumb"><figure class="c-postThumb__figure"><img decoding="async" src="https://sugublog.org/wp-content/uploads/2021/09/code_0923-1-300x198.jpg" alt="" class="c-postThumb__img u-obf-cover" width="320" height="180"></figure></div>					<div class="p-blogCard__body">
						<a class="p-blogCard__title" href="https://sugublog.org/linux-internet-connect-check/">【Linux】インターネット接続の確認方法！コマンドをご紹介</a>
						<span class="p-blogCard__excerpt">Linuxサーバーでインターネット接続の確認方法をまとめます。 Linuxサーバー構築でインターネット接続が出来ない事も多いので、確認のやり方を現役エンジニアの筆者がま&#8230;</span>					</div>
				</div>
			</div>
		</div>


<p><span class="swl-marker mark_green"><strong><span class="swl-inline-color has-swl-deep-03-color">ルーティング追加の優先度</span></strong>に<strong>メトリック</strong>があります。</span>もう一度ルーティングテーブルを確認します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         gateway         0.0.0.0         UG    0      0        0 enp0s3
default         gateway         0.0.0.0         UG    0      0        0 enp0s3
default         router          0.0.0.0         UG    100    0        0 enp0s3
192.168.0.0     0.0.0.0         255.255.255.0   U     100    0        0 enp0s3</code></pre></div>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# ip route show
default via 192.168.0.253 dev enp0s3
default via 192.168.0.254 dev enp0s3
default via 192.168.0.1 dev enp0s3 proto dhcp metric 100
192.168.0.0/24 dev enp0s3 proto kernel scope link src 192.168.0.4 metric 100</code></pre></div>



<p>通信できていたデフォルトゲートウェイはメトリックが100となっています。手動で設定したものはメトリックが1になり優先度が高いです。</p>



<p>デフォルトゲートウェイの設定を一度削除します。</p>



<h3 class="wp-block-heading">デフォルトゲートウェイの削除する方法</h3>



<p><span class="swl-marker mark_orange">iproute2ツールでの<strong><span class="swl-inline-color has-swl-deep-01-color">デフォルトゲートウェイ削除設定</span></strong></span></p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>ip route del default via 192.168.0.254</code></pre></div>



<p><span class="swl-marker mark_green">net-toolsツールでの<strong><span class="swl-inline-color has-swl-deep-03-color">デフォルトゲートウェイ削除設定</span></strong></span></p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>route del default gw 192.168.0.253</code></pre></div>



<p>削除されたか確認します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.0.1     0.0.0.0         UG    100    0        0 enp0s3
192.168.0.0     0.0.0.0         255.255.255.0   U     100    0        0 enp0s3</code></pre></div>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# ip route show
default via 192.168.0.1 dev enp0s3 proto dhcp metric 100
192.168.0.0/24 dev enp0s3 proto kernel scope link src 192.168.0.4 metric 100</code></pre></div>



<p>削除されました。通信できるかPingとtracerouteしてみます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain" data-file="Ping確認"><code>[root@localhost ~]# ping -c 2 8.8.8.8
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=57 time=21.1 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=57 time=16.0 ms

--- 8.8.8.8 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1008ms
rtt min/avg/max/mdev = 16.013/18.577/21.141/2.564 ms</code></pre></div>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain" data-file="Ping確認"><code>[root@localhost ~]# traceroute -n -w 1 8.8.8.8
traceroute to 8.8.8.8 (8.8.8.8), 30 hops max, 60 byte packets
 1  192.168.0.1  23.912 ms  28.261 ms  28.119 ms
～省略～
 8  * * *
 9  8.8.8.8  12.252 ms  22.657 ms  31.309 ms</code></pre></div>



<p>デフォルトゲートウェイに飛んでいて通信できています。やはりデフォルトゲートウェイが原因でした。</p>



<p class="is-style-icon_info"><strong>ルーティング設定</strong>に<strong>メトリック</strong>をつけて設定するには、最後に「metric 数字」と設定します。</p>



<p><span class="swl-marker mark_orange">iproute2ツールで<strong><span class="swl-inline-color has-swl-deep-01-color">メトリック付きのデフォルトルートの指定</span></strong>方法</span></p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>ip route add default via 192.168.0.254 metric 101</code></pre></div>



<p><span class="swl-marker mark_green">net-toolsツールで</span><strong><span class="swl-inline-color has-swl-deep-03-color"><span class="swl-marker mark_green">メトリック付きのデフォルトルートの指定</span></span></strong>方法</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>route add default gw 192.168.0.253 metric 102</code></pre></div>



<p>ルーティング確認します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.0.1     0.0.0.0         UG    100    0        0 enp0s3
0.0.0.0         192.168.0.254   0.0.0.0         UG    101    0        0 enp0s3
0.0.0.0         192.168.0.253   0.0.0.0         UG    102    0        0 enp0s3
192.168.0.0     0.0.0.0         255.255.255.0   U     100    0        0 enp0s3</code></pre></div>



<p>メトリックが設定されています。Pingで疎通確認します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# ping -c 2 8.8.8.8
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=57 time=19.4 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=57 time=15.7 ms

--- 8.8.8.8 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1007ms
rtt min/avg/max/mdev = 15.770/17.622/19.475/1.857 ms</code></pre></div>



<p>疎通できています。tracerouteでも確認します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# ping -c 2 8.8.8.8
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=57 time=19.4 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=57 time=15.7 ms

--- 8.8.8.8 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1007ms
rtt min/avg/max/mdev = 15.770/17.622/19.475/1.857 ms

[root@localhost ~]# traceroute -n -w 1 8.8.8.8
traceroute to 8.8.8.8 (8.8.8.8), 30 hops max, 60 byte packets
 1  192.168.0.1  9.836 ms  9.213 ms  9.621 ms
～省略～
 8  * * *
 9  8.8.8.8  47.182 ms  47.139 ms  47.036 ms</code></pre></div>



<p>通信できるようになりました。</p>



<p class="has-border -border02">やはりインターネット接続できなくなった原因は、メトリックの低い（優先度が高い）デフォルトゲートウェイの追加でした。</p>



<h2 class="wp-block-heading">永続的にルーティング設定する方法</h2>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img decoding="async" width="1024" height="633" src="https://sugublog.org/wp-content/uploads/2021/09/junp2_0907-2-1024x633.jpg" alt="ルーティング設定" class="wp-image-4150" srcset="https://sugublog.org/wp-content/uploads/2021/09/junp2_0907-2-1024x633.jpg 1024w, https://sugublog.org/wp-content/uploads/2021/09/junp2_0907-2-300x186.jpg 300w, https://sugublog.org/wp-content/uploads/2021/09/junp2_0907-2-768x475.jpg 768w, https://sugublog.org/wp-content/uploads/2021/09/junp2_0907-2.jpg 1200w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>
</div>


<p>今まで行ってきた<span class="swl-marker mark_yellow">ルーティング設定は<strong>一時的な設定</strong>であり、再起動すると消えてしまいます。</span></p>



<p>Linuxサーバーを再起動してから、ルーティング設定を確認します。</p>



<p class="is-style-icon_pen">再起動のやり方の詳細は以下の記事を参照下さい。</p>


<div class="swell-block-postLink">			<div class="p-blogCard -internal" data-type="type1" data-onclick="clickLink">
				<div class="p-blogCard__inner">
					<span class="p-blogCard__caption">あわせて読みたい</span>
					<div class="p-blogCard__thumb c-postThumb"><figure class="c-postThumb__figure"><img decoding="async" src="https://sugublog.org/wp-content/uploads/2021/10/カスタマイズ1013-2-300x215.jpg" alt="" class="c-postThumb__img u-obf-cover" width="320" height="180"></figure></div>					<div class="p-blogCard__body">
						<a class="p-blogCard__title" href="https://sugublog.org/linux-reboot/">【Linux基礎】サーバー再起動するコマンドについて教えます！</a>
						<span class="p-blogCard__excerpt">Linuxサーバーで再起動するコマンドについて教えて欲しいです。 そういった疑問に現役エンジニアの筆者が答えます。 再起動コマンドのオプションについても詳しく触れて&#8230;</span>					</div>
				</div>
			</div>
		</div>


<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# netstat -nr
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
0.0.0.0         192.168.0.1     0.0.0.0         UG        0 0          0 enp0s3
192.168.0.0     0.0.0.0         255.255.255.0   U         0 0          0 enp0s3</code></pre></div>



<p class="is-style-icon_bad">再起動したら<strong><span class="swl-inline-color has-swl-deep-02-color">ルーティング設定</span></strong>が消えました。</p>



<p><span class="swl-marker mark_orange">再起動してもルーティング設定を残したい場合は<strong><span class="swl-inline-color has-swl-deep-01-color">「nmcli」コマンド</span></strong>を使用します。</span></p>



<h3 class="wp-block-heading">永続的にルーティング追加する方法</h3>



<p><span class="swl-marker mark_orange">「nmcli」コマンドで<strong><span class="swl-inline-color has-swl-deep-01-color">ルーティング追加設定</span></strong>する基礎構文</span>は以下となります。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>nmcli connection modify 「コネクション名」 +ipv4.routes &quot;セグメント/マスク GWアドレス&quot;</code></pre></div>



<p class="is-style-big_icon_caution">「ipv4」の前の+を忘れないようにしましょう！今まで設定したもの全て消えて、今回ルーティング追加した設定のみになってしまいます。</p>



<p class="is-style-icon_pen">「不明な接続」となりコマンド実行できない時は以下の記事を参照下さい。</p>


<div class="swell-block-postLink">			<div class="p-blogCard -internal" data-type="type1" data-onclick="clickLink">
				<div class="p-blogCard__inner">
					<span class="p-blogCard__caption">あわせて読みたい</span>
					<div class="p-blogCard__thumb c-postThumb"><figure class="c-postThumb__figure"><img decoding="async" src="https://sugublog.org/wp-content/uploads/2021/09/error404_0915-3-300x189.jpg" alt="" class="c-postThumb__img u-obf-cover" width="320" height="180"></figure></div>					<div class="p-blogCard__body">
						<a class="p-blogCard__title" href="https://sugublog.org/linux-how-to-fix-the-unknown-connection-error/">【Linux】nmcliコマンドで不明な接続となり設定できない時の対処法</a>
						<span class="p-blogCard__excerpt">LinuxでNetwork-Managerツールで、ipアドレスやルーティングを設定する事はよくあると思います。 そんな時に「不明な接続」となり設定できない時の、原因と対処法をお伝&#8230;</span>					</div>
				</div>
			</div>
		</div>


<p>実際にルーティングの永続設定を行います。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>nmcli connection modify enp0s3 +ipv4.routes &quot;192.168.111.0/24 192.168.0.254&quot;</code></pre></div>



<p>ルーティングテーブルを確認します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# ip route show
default via 192.168.0.1 dev enp0s3 proto dhcp metric 100
192.168.0.0/24 dev enp0s3 proto kernel scope link src 192.168.0.4 metric 100</code></pre></div>



<p>反映していません。。</p>



<p class="has-border -border02">「nmcli」コマンドでの設定を反映するには「nmcli connection up コネクション名」を実行します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>nmcli connection up enp0s3</code></pre></div>



<p>再度ルーティングテーブルを確認します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# ip route show
default via 192.168.0.1 dev enp0s3 proto dhcp metric 100
192.168.0.0/24 dev enp0s3 proto kernel scope link src 192.168.0.4 metric 100
192.168.111.0/24 via 192.168.0.254 dev enp0s3 proto static metric 100</code></pre></div>



<p class="has-border -border01">ルーティングが追加されました。再起動しても残っています。</p>



<h3 class="wp-block-heading">永続的にルーティングを削除する</h3>



<p>「nmcli」コマンドで<strong><span class="swl-inline-color has-swl-deep-01-color">ルーティング削除</span></strong>設定する基礎構文は以下となります。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>nmcli connection modify 「コネクション名」 -ipv4.routes &quot;セグメント/マスク GWアドレス&quot;</code></pre></div>



<p><span class="swl-marker mark_yellow"><span class="swl-inline-color has-swl-deep-01-color">永続的に削除</span>するには+を-にします。</span></p>



<p>では実際に「nmcli」コマンドで<strong><span class="swl-inline-color has-swl-deep-01-color">ルーティング削除</span></strong>してみます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>nmcli connection modify enp0s3 -ipv4.routes &quot;192.168.111.0/24 192.168.0.254&quot;</code></pre></div>



<p>ルーティング削除設定を反映させます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>nmcli connection up enp0s3</code></pre></div>



<p>ルーティングテーブルを確認します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# ip route show
default via 192.168.0.1 dev enp0s3 proto dhcp metric 100
192.168.0.0/24 dev enp0s3 proto kernel scope link src 192.168.0.4 metric 100</code></pre></div>



<p class="has-border -border01"><strong><span class="swl-inline-color has-swl-deep-01-color">ルーティングが永続的に削除</span></strong>されています。</p>



<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-9330904718533231"
     crossorigin="anonymous"></script>
<ins class="adsbygoogle"
     style="display:block"
     data-ad-format="autorelaxed"
     data-ad-client="ca-pub-9330904718533231"
     data-ad-slot="8455594968"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>



<h2 class="wp-block-heading">まとめ：Linuxでルーティング設定する</h2>


<div class="wp-block-image is-style-photo_frame">
<figure class="aligncenter size-large"><img decoding="async" width="1024" height="768" src="https://sugublog.org/wp-content/uploads/2021/08/DB0804-4-1024x768.jpg" alt="アクセス" class="wp-image-3843" srcset="https://sugublog.org/wp-content/uploads/2021/08/DB0804-4-1024x768.jpg 1024w, https://sugublog.org/wp-content/uploads/2021/08/DB0804-4-300x225.jpg 300w, https://sugublog.org/wp-content/uploads/2021/08/DB0804-4-768x576.jpg 768w, https://sugublog.org/wp-content/uploads/2021/08/DB0804-4.jpg 1200w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>
</div>


<h3 class="wp-block-heading">Linuxで一時的にルーティング設定する</h3>



<p>Linuxで<strong><span class="swl-inline-color has-swl-deep-01-color">一時的にルーティングの設定をするコマンド</span></strong>についてまとめます。</p>



<div class="swell-block-capbox cap_box is-style-onborder_ttl"><div class="cap_box_ttl"><span>ネットワーク設定ツール別コマンド</span></div><div class="cap_box_content">
<ul class="wp-block-list">
<li>net-toolsツール⇒routeコマンド</li>



<li>iproute2ツール⇒ip routeコマンド</li>
</ul>
</div></div>



<p class="is-style-icon_info">どちらを使用すれば良いかというと、iproute2ツールの「ip route」コマンドが推奨です。</p>



<h3 class="wp-block-heading">Linuxサーバーでルーティング追加の設定</h3>



<p><span class="swl-marker mark_orange">iproute2ツールで<strong><span class="swl-inline-color has-swl-deep-01-color">ルーティング追加</span></strong>の設定を行います。</span>「ip route」コマンドの基礎構文を以下に示します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>ip route add 「IPアドレス/マスク」 via 「GWアドレス」</code></pre></div>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>ip route add 「IPアドレス/32」 via 「GWアドレス」</code></pre></div>



<p><span class="swl-marker mark_green">net-toolsツールで<strong><span class="swl-inline-color has-swl-deep-03-color">ルーティング追加</span></strong>の設定を行います。</span>「route」コマンドの基礎構文を以下に示します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>route add -net 「IPアドレス」 netmask 「マスク」 gw 「GWアドレス」</code></pre></div>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>route add -host 「IPアドレス」 gw 「GWアドレス」</code></pre></div>



<h3 class="wp-block-heading">Linuxサーバーでルーティング削除の設定</h3>



<p>iproute2ツールの<span class="swl-marker mark_orange">iproute2ツールで<strong><span class="swl-inline-color has-swl-deep-01-color">ルーティング削除</span></strong>の設定</span>を行います。削除コマンドの基礎構文を以下に示します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>ip route delete 「IPアドレス/マスク」</code></pre></div>



<p><span class="swl-marker mark_orange">net-toolsツールで<strong><span class="swl-inline-color has-swl-deep-01-color">ルーティング削除の設定</span></strong>を行います。</span>「route」コマンドの基礎構文を以下に示します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>route del -[net/host] 「IPアドレス/マスク」</code></pre></div>



<h3 class="wp-block-heading">Linuxサーバーでデフォルトゲートウェイ追加の設定</h3>



<p>iproute2ツールで<strong><span class="swl-inline-color has-swl-deep-03-color">デフォルトゲートウェイ追加</span></strong>の設定を行います。「ip route」コマンドの基礎構文を以下に示します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>ip route add default via 「GWアドレス」</code></pre></div>



<p><span class="swl-marker mark_green">net-toolsツールで<strong><span class="swl-inline-color has-swl-deep-03-color">デフォルトゲートウェイ追加</span></strong>の設定を行います。</span>「route」コマンドの基礎構文を以下に示します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>route add default gw 「GWアドレス」</code></pre></div>



<h3 class="wp-block-heading">デフォルトゲートウェイの削除する方法</h3>



<p><span class="swl-marker mark_orange">iproute2ツールでの<strong><span class="swl-inline-color has-swl-deep-01-color">デフォルトゲートウェイ削除設定</span></strong></span></p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>ip route del default via 192.168.0.254</code></pre></div>



<p><span class="swl-marker mark_green">net-toolsツールでの<strong><span class="swl-inline-color has-swl-deep-03-color">デフォルトゲートウェイ削除設定</span></strong></span></p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>route del default gw 192.168.0.253</code></pre></div>



<h3 class="wp-block-heading">永続的にルーティング追加する方法</h3>



<p><span class="swl-marker mark_orange">「nmcli」コマンドで<strong><span class="swl-inline-color has-swl-deep-01-color">ルーティング追加設定</span></strong>する基礎構文</span>は以下となります。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>nmcli connection modify 「コネクション名」 +ipv4.routes &quot;セグメント/マスク GWアドレス&quot;</code></pre></div>



<p class="is-style-big_icon_caution">「ipv4」の前の+を忘れないようにしましょう！今まで設定したもの全て消えて、今回ルーティング追加した設定のみになってしまいます。</p>



<p class="has-border -border02">「nmcli」コマンドでの設定を反映するには「nmcli connection up コネクション名」を実行します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>nmcli connection up enp0s3</code></pre></div>



<p>「nmcli」コマンドで<strong><span class="swl-inline-color has-swl-deep-01-color">ルーティング削除</span></strong>設定する基礎構文は以下となります。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>nmcli connection modify 「コネクション名」 -ipv4.routes &quot;セグメント/マスク GWアドレス&quot;</code></pre></div>
]]></content:encoded>
					
					<wfw:commentRss>https://sugublog.org/linux-routing-setting/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>【Linux】nmcliコマンドで不明な接続となり設定できない時の対処法</title>
		<link>https://sugublog.org/linux-how-to-fix-the-unknown-connection-error/</link>
					<comments>https://sugublog.org/linux-how-to-fix-the-unknown-connection-error/?noamp=mobile#respond</comments>
		
		<dc:creator><![CDATA[suguru]]></dc:creator>
		<pubDate>Sun, 02 Jun 2024 04:38:02 +0000</pubDate>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[サーバ]]></category>
		<category><![CDATA[トラブル]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[不明な接続]]></category>
		<guid isPermaLink="false">https://sugublog.org/?p=6904</guid>

					<description><![CDATA[<p><img src="https://sugublog.org/wp-content/uploads/2021/09/error404_0915-3-1024x645.jpg" class="webfeedsFeaturedVisual" /></p>LinuxでNetwork-Managerツールで、ipアドレスやルーティングを設定する事はよくあると思います。 そんな時に「不明な接続」となり設定できない時の、原因と対処法をお伝えします。 Network-manage [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><img src="https://sugublog.org/wp-content/uploads/2021/09/error404_0915-3-1024x645.jpg" class="webfeedsFeaturedVisual" /></p>
<p>Linuxで<strong><span class="swl-inline-color has-swl-deep-01-color">Network-Managerツール</span></strong>で、ipアドレスやルーティングを設定する事はよくあると思います。</p>



<p>そんな時に<span class="swl-marker mark_orange"><strong><span class="swl-inline-color has-swl-deep-01-color">「不明な接続」</span></strong>となり設定できない時の、原因と対処法</span>をお伝えします。</p>


<div class="p-blogParts post_content" data-partsID="5908">
<p>筆者はWindowsサーバーやLinuxサーバーの運用構築を11年間以上おこなってきました。その経験を元に知識を公開していきます！</p>
</div>


<p class="is-style-icon_info">Network-managerの「不明な接続」で設定できない時にはこの記事を読んでください。</p>



<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-9330904718533231"
     crossorigin="anonymous"></script>
<ins class="adsbygoogle"
     style="display:block"
     data-ad-format="autorelaxed"
     data-ad-client="ca-pub-9330904718533231"
     data-ad-slot="8455594968"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>



<h2 class="wp-block-heading">Linuxのnmcliコマンドで「不明な接続」となり設定できない時の原因</h2>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img decoding="async" width="1024" height="683" src="https://sugublog.org/wp-content/uploads/2021/06/shutterstock_1433996435-min-1024x683.jpg" alt="エラー" class="wp-image-2885"/></figure>
</div>


<p>Linuxの<strong><span class="swl-inline-color has-swl-deep-01-color">nmcliコマンドで「不明な接続」となり設定できない時の原因</span></strong>を探っていきます。</p>



<p>「不明な接続」の時の確認コマンドを以下に示します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>nmcli connection show
nmcli device</code></pre></div>



<p>ちなみにNetwok-Managerのコマンドのオプションは全て1文字で省略できます。なので下のコマンドでも可能です。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>nmcli c s
nmcli d</code></pre></div>



<p>実際にnmcliコマンドを実行してみます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# nmcli c s
NAME        UUID                                  TYPE      DEVICE
有線接続 1  879a4db2-2867-3d88-b5d2-1d33ca6c6471  ethernet  enp0s3</code></pre></div>



<p>「nmcli connection show」コマンドでNAMEの項目が「有線接続 1」となっています。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# nmcli d
DEVICE  TYPE      STATE     CONNECTION
enp0s3  ethernet  接続済み  有線接続 1</code></pre></div>



<p>「nmcli device」コマンドではCONNECTIONの項目が「有線接続 1」となっています。</p>



<p><strong><span class="swl-inline-color has-swl-deep-01-color">Linuxのnmcliコマンドで「不明な接続」となる原因</span></strong>は、ここの値が設定する時の値と合っていない事です。</p>



<h2 class="wp-block-heading">Linuxのnmcliコマンドで「不明な接続」となり設定できない時の対処法</h2>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img decoding="async" width="1024" height="683" src="https://sugublog.org/wp-content/uploads/2021/08/school_08-4-1024x683.jpg" alt="対処法" class="wp-image-4090" srcset="https://sugublog.org/wp-content/uploads/2021/08/school_08-4-1024x683.jpg 1024w, https://sugublog.org/wp-content/uploads/2021/08/school_08-4-300x200.jpg 300w, https://sugublog.org/wp-content/uploads/2021/08/school_08-4-768x512.jpg 768w, https://sugublog.org/wp-content/uploads/2021/08/school_08-4.jpg 1200w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>
</div>


<p>Linuxの<strong><span class="swl-inline-color has-swl-deep-03-color">nmcliコマンドで「不明な接続」となり設定できない時の対処法</span></strong>を示します。</p>



<p>対処法は<strong><span class="swl-inline-color has-swl-deep-03-color">「有線接続 1」の値をデバイス名に変更</span></strong>する事です。ここでは「enp0s3」に変更します。</p>



<p class="is-style-icon_info">この値はご自身の環境に合わせて下さい。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>nmcli connection modify &quot;有線接続 1&quot; connection.id enp0s3</code></pre></div>



<p>上のコマンドで設定されました。以下のコマンドで何もでなければ問題ありません。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>nmcli connection modify enp0s3 connection.autoconnect yes</code></pre></div>



<p>もう一度先程のコマンドで確認します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# nmcli d
DEVICE  TYPE      STATE     CONNECTION
enp0s3  ethernet  接続済み  enp0s3</code></pre></div>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# nmcli c s
NAME    UUID                                  TYPE      DEVICE
enp0s3  879a4db2-2867-3d88-b5d2-1d33ca6c6471  ethernet  enp0s3</code></pre></div>



<p>どちらの値もデバイス名に変更できました。</p>



<p class="has-border -border02">これで<strong><span class="swl-inline-color has-swl-deep-03-color">「不明な接続」となるエラーは解消</span></strong>できました。</p>



<p class="is-style-icon_pen">nmcliコマンドでルーティング設定するやり方などは、以下の記事を参照ください。</p>


<div class="swell-block-postLink">			<div class="p-blogCard -internal" data-type="type1" data-onclick="clickLink">
				<div class="p-blogCard__inner">
					<span class="p-blogCard__caption">あわせて読みたい</span>
					<div class="p-blogCard__thumb c-postThumb"><figure class="c-postThumb__figure"><img decoding="async" src="https://sugublog.org/wp-content/uploads/2021/07/server_007-3-300x225.jpg" alt="" class="c-postThumb__img u-obf-cover" width="320" height="180"></figure></div>					<div class="p-blogCard__body">
						<a class="p-blogCard__title" href="https://sugublog.org/linux-routing-setting/">【Linux基礎】ルーティングの設定をする！追加や削除やDGの設定</a>
						<span class="p-blogCard__excerpt">Linuxサーバーでルーティングの設定をする事がたまにあります。 そこで今回はLinuxサーバーでのルーティングの設定を、実例を踏まえて行います。 ルーティング追加から&#8230;</span>					</div>
				</div>
			</div>
		</div>]]></content:encoded>
					
					<wfw:commentRss>https://sugublog.org/linux-how-to-fix-the-unknown-connection-error/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>【Linux基礎】ルーティング確認コマンドについてまとめました！</title>
		<link>https://sugublog.org/linux-routing-check-command/</link>
					<comments>https://sugublog.org/linux-routing-check-command/?noamp=mobile#respond</comments>
		
		<dc:creator><![CDATA[suguru]]></dc:creator>
		<pubDate>Sun, 02 Jun 2024 04:33:35 +0000</pubDate>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[サーバ]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[ルーティング]]></category>
		<guid isPermaLink="false">https://sugublog.org/?p=6891</guid>

					<description><![CDATA[<p><img src="https://sugublog.org/wp-content/uploads/2021/07/pixta_77773496_M-e1626536234619-1024x791.jpg" class="webfeedsFeaturedVisual" /></p>Linuxサーバでルーティング確認するコマンドについてまとめました。 CentOSやUbuntuのOSでルーティング確認したい方は読んでください。 Linuxサーバーでルーティング確認するコマンド Linuxサーバーでル [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><img src="https://sugublog.org/wp-content/uploads/2021/07/pixta_77773496_M-e1626536234619-1024x791.jpg" class="webfeedsFeaturedVisual" /></p>
<p>Linuxサーバで<strong><span class="swl-inline-color has-swl-deep-01-color">ルーティング確認するコマンド</span></strong>についてまとめました。</p>



<p>CentOSやUbuntuのOSでルーティング確認したい方は読んでください。</p>



<h2 class="wp-block-heading">Linuxサーバーでルーティング確認するコマンド</h2>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img decoding="async" width="1024" height="683" src="https://sugublog.org/wp-content/uploads/2021/07/search-1024x683.jpg" alt="search" class="wp-image-3589"/></figure>
</div>


<p>Linuxサーバーで<strong><span class="swl-inline-color has-swl-deep-01-color">ルーティングの確認</span></strong>をしたり、設定する時に使用するツールによってコマンドが違います。</p>



<div class="swell-block-capbox cap_box is-style-onborder_ttl"><div class="cap_box_ttl"><span>Linuxでルーティング確認するツール</span></div><div class="cap_box_content">
<ul class="wp-block-list">
<li>iproute2</li>



<li>net-tools</li>
</ul>
</div></div>



<p>どちらのコマンドもルーティング確認できますので、ご自身の環境に合わせて使用してください。</p>



<p class="is-style-icon_announce">Linuxのツール別ルーティング確認コマンドをまとめます。</p>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>iproute2ツールのルーティング確認コマンド</th><th>net-toolsツールのルーティング確認コマンド</th></tr></thead><tbody><tr><td>ip route show</td><td>netstat -r</td></tr><tr><td></td><td>route</td></tr></tbody></table><figcaption class="wp-element-caption">Linuxのツール別ルーティング確認コマンド</figcaption></figure>



<p>net-toolsツールのルーティング確認コマンドは２つあります。</p>



<p class="is-style-icon_info">iproute2ツールはnet-toolsの後継を言われていますので、iproute2ツール推奨です。</p>



<h2 class="wp-block-heading">iproute2ツールでルーティング確認する</h2>



<p><span class="swl-marker mark_green"><span class="swl-bg-color has-swl-deep-03-background-color">iproute2ツール</span>で<strong><span class="swl-inline-color has-swl-deep-03-color">ルーティング確認するコマンド</span></strong>を以下に示します。</span></p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>ip route show</code></pre></div>



<p>または「ip route」だけでも良いです。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# ip route show
default via 192.168.0.1 dev enp0s3 proto dhcp metric 100
192.168.0.0/24 dev enp0s3 proto kernel scope link src 192.168.0.4 metric 100
192.168.222.0/24 dev enp0s3 proto kernel scope link src 192.168.222.0</code></pre></div>



<p class="has-border -border01">ルーティング確認出来ました。</p>



<h2 class="wp-block-heading">net-toolsツールでルーティング確認する</h2>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img decoding="async" width="1024" height="683" src="https://sugublog.org/wp-content/uploads/2021/11/programing_shool1121-3-1024x683.jpg" alt="training" class="wp-image-4543" srcset="https://sugublog.org/wp-content/uploads/2021/11/programing_shool1121-3-1024x683.jpg 1024w, https://sugublog.org/wp-content/uploads/2021/11/programing_shool1121-3-300x200.jpg 300w, https://sugublog.org/wp-content/uploads/2021/11/programing_shool1121-3-768x512.jpg 768w, https://sugublog.org/wp-content/uploads/2021/11/programing_shool1121-3.jpg 1200w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>
</div>


<p><span class="swl-marker mark_blue"><span class="swl-bg-color has-swl-deep-02-background-color">net-toolsツール</span>で<strong><span class="swl-inline-color has-swl-deep-02-color">ルーティング確認するコマンド</span></strong>を以下に示します。</span>2種類あります。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>netstat -r
route </code></pre></div>



<p>実際に「netstat -r」コマンドでルーティング確認してみます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# netstat -r
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
default         router          0.0.0.0         UG        0 0          0 enp0s3
192.168.0.0     0.0.0.0         255.255.255.0   U         0 0          0 enp0s3
192.168.222.0   0.0.0.0         255.255.255.0   U         0 0          0 enp0s3</code></pre></div>



<p>「route」コマンドでルーティング確認してみます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         router          0.0.0.0         UG    100    0        0 enp0s3
192.168.0.0     0.0.0.0         255.255.255.0   U     100    0        0 enp0s3
192.168.222.0   0.0.0.0         255.255.255.0   U     0      0        0 enp0s3</code></pre></div>



<p class="has-border -border01">ルーティング確認出来ました。</p>



<p>補足として<span class="swl-inline-color has-swl-deep-01-color">ルーティングテーブルのFlagsの項目</span>についてまとめます。</p>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>ルーティング確認のFlags項目</th><th>意味</th></tr></thead><tbody><tr><td>U</td><td>UPしている。有効</td></tr><tr><td>G</td><td>Gateway。デフォルトゲートウェイを表す</td></tr><tr><td>H</td><td>Host。ネットワークではなくホストを表す</td></tr><tr><td>!</td><td>経路を拒否。無効</td></tr></tbody></table><figcaption class="wp-element-caption">ルーティングテーブルのFlags項目の意味</figcaption></figure>



<h3 class="wp-block-heading">DNS名前解決せずにルーティング確認する方法</h3>



<p>net-toolsツールの「netstat -r」コマンドや「route」コマンドでは「Gateway」の値がIPアドレスではなく「router」になっています。</p>



<p>原因はルータのIPアドレスをDNS名前解決している為です。名前解決する分処理が多くなります。</p>



<p>このLinuxサーバーの<span class="swl-inline-color has-swl-deep-01-color">hostsファイルで名前解決</span>が行われていました。実際のhostsファイルを確認します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.0.1 router</code></pre></div>



<p class="is-style-icon_book">Linuxサーバーの<strong>hostsファイル</strong>についての詳しい内容は、以下の記事で紹介しています。</p>


<div class="swell-block-postLink">			<div class="p-blogCard -internal" data-type="type1" data-onclick="clickLink">
				<div class="p-blogCard__inner">
					<span class="p-blogCard__caption">あわせて読みたい</span>
					<div class="p-blogCard__thumb c-postThumb"><figure class="c-postThumb__figure"><img decoding="async" src="https://sugublog.org/wp-content/uploads/2021/09/moving_09268-300x188.jpg" alt="" class="c-postThumb__img u-obf-cover" width="320" height="180"></figure></div>					<div class="p-blogCard__body">
						<a class="p-blogCard__title" href="https://sugublog.org/linux-hosts/">【Linux】hostsファイルの設定する！反映するタイミングなど</a>
						<span class="p-blogCard__excerpt">Linuxでhostsファイルの設定方法などを教えます。 またhostsファイルの設定、編集して反映するタイミングや確認方法などを現役エンジニアの筆者が教えます。 簡単に名前&#8230;</span>					</div>
				</div>
			</div>
		</div>


<p>ルーターのIPアドレスである「192.168.0.1」が「router」という名前で登録されています。</p>



<p>なのでルーティング確認すると「Gateway」の箇所が「router」となっていました。</p>



<p>解決策として<span class="swl-marker mark_orange"><strong>DNS名前解決せずにルーティング確認</strong>するにはnオプションを使用します。</span></p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# netstat -rn
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
0.0.0.0         192.168.0.1     0.0.0.0         UG        0 0          0 enp0s3
192.168.0.0     0.0.0.0         255.255.255.0   U         0 0          0 enp0s3
192.168.222.0   0.0.0.0         255.255.255.0   U         0 0          0 enp0s3</code></pre></div>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.0.1     0.0.0.0         UG    100    0        0 enp0s3
192.168.0.0     0.0.0.0         255.255.255.0   U     100    0        0 enp0s3
192.168.222.0   0.0.0.0         255.255.255.0   U     0      0        0 enp0s3</code></pre></div>



<p class="has-border -border01">デフォルトゲートウェイを表す「default」が「0.0.0.0」に、「router」がルーターのIPアドレスである「192.168.0.1」に変更されています。</p>



<h2 class="wp-block-heading">Linuxのルーティング確認以外のコマンド</h2>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img decoding="async" width="1024" height="560" src="https://sugublog.org/wp-content/uploads/2021/11/programing_1122-4-1024x560.jpg" alt="プログラミングスクール" class="wp-image-4561" srcset="https://sugublog.org/wp-content/uploads/2021/11/programing_1122-4-1024x560.jpg 1024w, https://sugublog.org/wp-content/uploads/2021/11/programing_1122-4-300x164.jpg 300w, https://sugublog.org/wp-content/uploads/2021/11/programing_1122-4-768x420.jpg 768w, https://sugublog.org/wp-content/uploads/2021/11/programing_1122-4.jpg 1200w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>
</div>


<p>Linuxの<strong><span class="swl-inline-color has-swl-deep-01-color">ルーティング確認以外のコマンド</span></strong>についてまとめます。</p>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>やりたい事</th><th>iproute2ツールのコマンド</th><th>net-toolsツールのコマンド</th></tr></thead><tbody><tr><td>ルーティング確認</td><td>ip route</td><td>netstat -r<br>route</td></tr><tr><td>ルーティング追加</td><td>ip route add IPアドレス/マスク via GWアドレス</td><td>route add -[net/host] IPアドレス netmask マスク gw GWアドレス</td></tr><tr><td>ルーティング削除</td><td>ip route delete IPアドレス/マスク</td><td>route del -[net/host] IPアドレス<br></td></tr><tr><td>デフォルトゲートウェイ設定</td><td>ip route add default via DGアドレス</td><td>route add default gw DGアドレス</td></tr></tbody></table><figcaption class="wp-element-caption">Linuxのルーティング確認以外のコマンドまとめ</figcaption></figure>



<p class="is-style-icon_info">ここでのルーティング追加は一時的なもので、OSを再起動したら削除されてしまいます。</p>



<p class="is-style-icon_pen">ルーティングを永続的に追加したいという場合は、以下の記事を参照ください。</p>


<div class="swell-block-postLink">			<div class="p-blogCard -internal" data-type="type1" data-onclick="clickLink">
				<div class="p-blogCard__inner">
					<span class="p-blogCard__caption">あわせて読みたい</span>
					<div class="p-blogCard__thumb c-postThumb"><figure class="c-postThumb__figure"><img decoding="async" src="https://sugublog.org/wp-content/uploads/2021/07/server_007-3-300x225.jpg" alt="" class="c-postThumb__img u-obf-cover" width="320" height="180"></figure></div>					<div class="p-blogCard__body">
						<a class="p-blogCard__title" href="https://sugublog.org/linux-routing-setting/">【Linux基礎】ルーティングの設定をする！追加や削除やDGの設定</a>
						<span class="p-blogCard__excerpt">Linuxサーバーでルーティングの設定をする事がたまにあります。 そこで今回はLinuxサーバーでのルーティングの設定を、実例を踏まえて行います。 ルーティング追加から&#8230;</span>					</div>
				</div>
			</div>
		</div>]]></content:encoded>
					
					<wfw:commentRss>https://sugublog.org/linux-routing-check-command/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>【Linux基礎】IPアドレスを確認する方法！ツール別にまとめます</title>
		<link>https://sugublog.org/linux-ip-address-verification/</link>
					<comments>https://sugublog.org/linux-ip-address-verification/?noamp=mobile#respond</comments>
		
		<dc:creator><![CDATA[suguru]]></dc:creator>
		<pubDate>Sat, 01 Jun 2024 15:00:00 +0000</pubDate>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[サーバ]]></category>
		<category><![CDATA[ipアドレス]]></category>
		<category><![CDATA[linux]]></category>
		<guid isPermaLink="false">https://sugublog.org/?p=6885</guid>

					<description><![CDATA[<p><img src="https://sugublog.org/wp-content/uploads/2021/09/code_0923-1-1-1024x666.jpg" class="webfeedsFeaturedVisual" /></p>Linuxサーバー運用をしていてサーバーのIPアドレスなんだっけ？確認したいな。 そういった時の為に簡単にIPアドレスを確認する方法をまとめます。 LinuxでIPアドレスを確認する方法 LinuxサーバーでIPアドレス [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><img src="https://sugublog.org/wp-content/uploads/2021/09/code_0923-1-1-1024x666.jpg" class="webfeedsFeaturedVisual" /></p>
<p>Linuxサーバー運用をしていてサーバーのIPアドレスなんだっけ？確認したいな。</p>



<p>そういった時の為に<strong><span class="swl-inline-color has-swl-deep-01-color">簡単にIPアドレスを確認する方法</span></strong>をまとめます。</p>



<h2 class="wp-block-heading">LinuxでIPアドレスを確認する方法</h2>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img decoding="async" width="1024" height="576" src="https://sugublog.org/wp-content/uploads/2021/09/code_0923-4-1024x576.jpg" alt="code" class="wp-image-4184" srcset="https://sugublog.org/wp-content/uploads/2021/09/code_0923-4-1024x576.jpg 1024w, https://sugublog.org/wp-content/uploads/2021/09/code_0923-4-300x169.jpg 300w, https://sugublog.org/wp-content/uploads/2021/09/code_0923-4-768x432.jpg 768w, https://sugublog.org/wp-content/uploads/2021/09/code_0923-4.jpg 1200w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>
</div>


<p><span class="swl-marker mark_yellow">Linuxサーバーで<strong><span class="swl-inline-color has-swl-deep-01-color">IPアドレスを確認するコマンド</span></strong>は、インストールしているツールによって変わります。</span></p>



<p><strong><span class="swl-inline-color has-swl-deep-02-color">IPアドレス確認する為のツール</span></strong>は以下の２つです。</p>



<div class="swell-block-capbox cap_box is-style-onborder_ttl"><div class="cap_box_ttl"><span>LinuxでIPアドレス確認する為のツール</span></div><div class="cap_box_content">
<ul class="wp-block-list">
<li>net-tools</li>



<li>iproute2</li>
</ul>
</div></div>



<p>どちらを使用した方が良いかは<span class="swl-bg-color has-swl-deep-01-background-color">「iproute2」の方が推奨</span>されています。</p>



<p><span class="swl-marker mark_yellow">それぞれのツールでの<strong><span class="swl-inline-color has-swl-deep-01-color">IPアドレス確認方法</span></strong></span>をまとめます。</p>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>iproute2ツール（推奨）</th><th>net-toolsツール</th></tr></thead><tbody><tr><td>ip address</td><td>ifconfig -a</td></tr></tbody></table><figcaption class="wp-element-caption">Linuxのツール別IPアドレス確認コマンド</figcaption></figure>



<h2 class="wp-block-heading">実践：OSでIPアドレスを確認してみる</h2>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img decoding="async" width="1024" height="683" src="https://sugublog.org/wp-content/uploads/2021/11/programing_shool1121-1-1024x683.jpg" alt="training" class="wp-image-4541" srcset="https://sugublog.org/wp-content/uploads/2021/11/programing_shool1121-1-1024x683.jpg 1024w, https://sugublog.org/wp-content/uploads/2021/11/programing_shool1121-1-300x200.jpg 300w, https://sugublog.org/wp-content/uploads/2021/11/programing_shool1121-1-768x512.jpg 768w, https://sugublog.org/wp-content/uploads/2021/11/programing_shool1121-1.jpg 1200w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>
</div>


<p>では実際にIPアドレスを確認してみます。</p>



<p><span class="swl-bg-color has-swl-deep-02-background-color">iproute2ツール</span>で<strong><span class="swl-inline-color has-swl-deep-02-color">IPアドレスを確認</span></strong>する</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# ip a
1: lo: &lt;LOOPBACK,UP,LOWER_UP&gt; mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: enp0s3: &lt;BROADCAST,MULTICAST,UP,LOWER_UP&gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 08:00:27:55:14:5d brd ff:ff:ff:ff:ff:ff
    inet 192.168.0.4/24 brd 192.168.0.255 scope global noprefixroute dynamic enp0s3
       valid_lft 80755sec preferred_lft 80755sec
    inet6 fe80::c3e:9200:96ee:fd26/64 scope link noprefixroute
       valid_lft forever preferred_lft forever</code></pre></div>



<p>目的のインターフェースのみ表示させるには「show dev インターフェース名」で指定します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# ip a show dev enp0s3
2: enp0s3: &lt;BROADCAST,MULTICAST,UP,LOWER_UP&gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 08:00:27:55:14:5d brd ff:ff:ff:ff:ff:ff
    inet 192.168.0.4/24 brd 192.168.0.255 scope global noprefixroute dynamic enp0s3
       valid_lft 80698sec preferred_lft 80698sec
    inet6 fe80::c3e:9200:96ee:fd26/64 scope link noprefixroute
       valid_lft forever preferred_lft forever</code></pre></div>



<p class="has-border -border01">iproute2ツールで、<strong><span class="swl-inline-color has-swl-deep-02-color">IPアドレスが確認</span></strong>できました。</p>



<p><span class="swl-bg-color has-swl-deep-03-background-color">net-toolsツール</span>で<strong><span class="swl-inline-color has-swl-deep-03-color">IPアドレスを確認</span></strong>する</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# ifconfig -a
enp0s3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1500
        inet 192.168.0.4  netmask 255.255.255.0  broadcast 192.168.0.255
        inet6 fe80::c3e:9200:96ee:fd26  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 08:00:27:55:14:5d  txqueuelen 1000  (Ethernet)
        RX packets 30071  bytes 40624377 (38.7 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 16620  bytes 1161687 (1.1 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0</code></pre></div>



<p class="has-border -border01">net-toolsツールで、<strong><span class="swl-inline-color has-swl-deep-03-color">IPアドレスが確認</span></strong>できました。</p>



<h2 class="wp-block-heading">IPアドレス確認コマンドでのその他の確認</h2>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img decoding="async" width="1024" height="576" src="https://sugublog.org/wp-content/uploads/2021/11/DB_1103-1-1024x576.jpg" alt="テーブル" class="wp-image-4330" srcset="https://sugublog.org/wp-content/uploads/2021/11/DB_1103-1-1024x576.jpg 1024w, https://sugublog.org/wp-content/uploads/2021/11/DB_1103-1-300x169.jpg 300w, https://sugublog.org/wp-content/uploads/2021/11/DB_1103-1-768x432.jpg 768w, https://sugublog.org/wp-content/uploads/2021/11/DB_1103-1.jpg 1200w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>
</div>


<p>IPアドレスコマンドでその他の項目を確認できます。ツール別にまとめます。</p>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>項目</th><th>iproute2ツール</th><th>net-toolsツール</th></tr></thead><tbody><tr><td>IPアドレス確認</td><td>ip address</td><td>ifconfig -a</td></tr><tr><td>インターフェース操作</td><td>ip link set IF名 [up/down]</td><td>ifconfig IF名 [up/down]</td></tr><tr><td>IPアドレス設定</td><td>ip address add IPアドレス/マスク dev IF名</td><td>ifconfig IF名 IPアドレス netmask マスク</td></tr><tr><td>ARPテーブル確認</td><td>ip neighbour</td><td>arp -a</td></tr><tr><td>ARPテーブル詳細確認</td><td>ip -s neighbour</td><td>arp -v</td></tr><tr><td>マルチアドレス確認</td><td>ip maddress</td><td>netstat -g</td></tr><tr><td>ポート確認</td><td>ss</td><td>netstat</td></tr></tbody></table><figcaption class="wp-element-caption">IPアドレス確認ツールで出来る事一覧</figcaption></figure>
]]></content:encoded>
					
					<wfw:commentRss>https://sugublog.org/linux-ip-address-verification/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>【Linux基礎】OSのバージョン確認する方法！</title>
		<link>https://sugublog.org/linux-os-version-check/</link>
					<comments>https://sugublog.org/linux-os-version-check/?noamp=mobile#respond</comments>
		
		<dc:creator><![CDATA[suguru]]></dc:creator>
		<pubDate>Fri, 31 May 2024 15:00:00 +0000</pubDate>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[サーバ]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[バージョン確認]]></category>
		<guid isPermaLink="false">https://sugublog.org/?p=6883</guid>

					<description><![CDATA[<p><img src="https://sugublog.org/wp-content/uploads/2021/09/randam_0915-4-1024x576.jpg" class="webfeedsFeaturedVisual" /></p>LinuxでOSのバージョン確認したい場合ないでしょうか？ すぐ確認したいけどどうすれば良いかわからなくなった。 そんな時の為にLinuxでOSのバージョン確認する方法をまとめます。 LinuxのOSのバージョン確認する [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><img src="https://sugublog.org/wp-content/uploads/2021/09/randam_0915-4-1024x576.jpg" class="webfeedsFeaturedVisual" /></p>
<p>Linuxで<strong><span class="swl-inline-color has-swl-deep-01-color">OSのバージョン確認</span></strong>したい場合ないでしょうか？</p>



<p>すぐ確認したいけどどうすれば良いかわからなくなった。</p>



<p>そんな時の為に<strong><span class="swl-bg-color has-swl-deep-01-background-color">LinuxでOSのバージョン確認する方法</span></strong>をまとめます。</p>



<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-9330904718533231"
     crossorigin="anonymous"></script>
<ins class="adsbygoogle"
     style="display:block"
     data-ad-format="autorelaxed"
     data-ad-client="ca-pub-9330904718533231"
     data-ad-slot="8455594968"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>



<h2 class="wp-block-heading">LinuxのOSのバージョン確認する方法</h2>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img decoding="async" width="1024" height="576" src="https://sugublog.org/wp-content/uploads/2021/08/script_0809-1-1024x576.jpg" alt="バージョン" class="wp-image-3869" srcset="https://sugublog.org/wp-content/uploads/2021/08/script_0809-1-1024x576.jpg 1024w, https://sugublog.org/wp-content/uploads/2021/08/script_0809-1-300x169.jpg 300w, https://sugublog.org/wp-content/uploads/2021/08/script_0809-1-768x432.jpg 768w, https://sugublog.org/wp-content/uploads/2021/08/script_0809-1.jpg 1200w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>
</div>


<p>Linuxの<strong><span class="swl-inline-color has-swl-deep-01-color">OSのバージョン確認する方法</span></strong>は、ディストリビューションによって違います。</p>



<p>今回はよく使用する以下の２つのOSについてまとめます。</p>



<div class="swell-block-capbox cap_box is-style-onborder_ttl"><div class="cap_box_ttl"><span>Linuxでよく使用するディストリビューション</span></div><div class="cap_box_content">
<ul class="wp-block-list">
<li>CentOS・・・Redhat系のディストリビューション</li>



<li>ubuntu・・・debian系のディストリビューション</li>
</ul>
</div></div>



<h2 class="wp-block-heading">CentOSでOSのバージョン確認する方法</h2>



<p><strong><span class="swl-inline-color has-swl-deep-01-color">CentOSでOSのバージョン確認する方法</span></strong>は以下のコマンドです。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>cat /etc/centos-release</code></pre></div>



<p>実際にコマンドを実行して、OSのバージョン確認してみます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# cat /etc/centos-release
CentOS Linux release 7.9.2009 (Core)</code></pre></div>



<p class="has-border -border01">OSのバージョン確認できました。7.9.2009 (Core)という事がわかります。</p>



<p>以下のコマンドでも可能です。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>cat /etc/os-release</code></pre></div>



<p>実際にコマンドを実行して、OSのバージョン確認してみます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# cat /etc/os-release
NAME=&quot;CentOS Linux&quot;
VERSION=&quot;7 (Core)&quot;
ID=&quot;centos&quot;
ID_LIKE=&quot;rhel fedora&quot;
VERSION_ID=&quot;7&quot;
PRETTY_NAME=&quot;CentOS Linux 7 (Core)&quot;
ANSI_COLOR=&quot;0;31&quot;
CPE_NAME=&quot;cpe:/o:centos:centos:7&quot;
HOME_URL=&quot;https://www.centos.org/&quot;
BUG_REPORT_URL=&quot;https://bugs.centos.org/&quot;

CENTOS_MANTISBT_PROJECT=&quot;CentOS-7&quot;
CENTOS_MANTISBT_PROJECT_VERSION=&quot;7&quot;
REDHAT_SUPPORT_PRODUCT=&quot;centos&quot;
REDHAT_SUPPORT_PRODUCT_VERSION=&quot;7&quot;</code></pre></div>



<p class="has-border -border01">詳細なOSの情報が表示されています。</p>



<h2 class="wp-block-heading">UbuntuサーバーでOSのバージョン確認する方法</h2>



<p><strong><span class="swl-inline-color has-swl-deep-03-color">UbuntuサーバーでOSのバージョン確認する方法</span></strong>は以下のコマンドです。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>cat /etc/lsb-release</code></pre></div>



<p>実際にコマンドを実行して、OSのバージョン確認してみます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>ubuntu1@ubuntu1:~$ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=22.04
DISTRIB_CODENAME=jammy
DISTRIB_DESCRIPTION=&quot;Ubuntu 22.04.3 LTS&quot;</code></pre></div>



<p class="has-border -border01">OSのバージョン確認できました。22.04という事がわかります。</p>



<p>以下のコマンドでも可能です。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>cat /etc/os-release</code></pre></div>



<p>実際にコマンドを実行して、OSのバージョン確認してみます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>ubuntu1@ubuntu1:~$ cat /etc/os-release
PRETTY_NAME=&quot;Ubuntu 22.04.3 LTS&quot;
NAME=&quot;Ubuntu&quot;
VERSION_ID=&quot;22.04&quot;
VERSION=&quot;22.04.3 LTS (Jammy Jellyfish)&quot;
VERSION_CODENAME=jammy
ID=ubuntu
ID_LIKE=debian
HOME_URL=&quot;https://www.ubuntu.com/&quot;
SUPPORT_URL=&quot;https://help.ubuntu.com/&quot;
BUG_REPORT_URL=&quot;https://bugs.launchpad.net/ubuntu/&quot;
PRIVACY_POLICY_URL=&quot;https://www.ubuntu.com/legal/terms-and-policies/privacy-policy&quot;
UBUNTU_CODENAME=jammy</code></pre></div>



<p class="has-border -border01">詳細なOSの情報が表示されています。</p>



<script async="" src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<ins class="adsbygoogle ads" style="display:block; text-align:center;" data-ad-layout="in-article" data-ad-format="fluid" data-ad-client="ca-pub-9330904718533231" data-ad-slot="6086594686"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>



<h2 class="wp-block-heading">Linuxで現状を確認するコマンドについて</h2>



<p>LinuxのCPU使用率確認コマンドについて</p>


<div class="swell-block-postLink">			<div class="p-blogCard -internal" data-type="type1" data-onclick="clickLink">
				<div class="p-blogCard__inner">
					<span class="p-blogCard__caption">あわせて読みたい</span>
					<div class="p-blogCard__thumb c-postThumb"><figure class="c-postThumb__figure"><img decoding="async" src="https://sugublog.org/wp-content/uploads/2021/07/web-design-007-6-300x180.jpg" alt="" class="c-postThumb__img u-obf-cover" width="320" height="180"></figure></div>					<div class="p-blogCard__body">
						<a class="p-blogCard__title" href="https://sugublog.org/linux-cpu-usage-check/">【Linux】CPUの使用率を確認する方法</a>
						<span class="p-blogCard__excerpt">LinuxでCPUの使用率を確認したい時はないでしょうか？ 確認するコマンドはいくつか知っていますが、どれを使えば良いのかわからない時はないでしょうか？ そういった時&#8230;</span>					</div>
				</div>
			</div>
		</div>


<p>Linuxのメモリ使用率確認コマンドについて</p>


<div class="swell-block-postLink">			<div class="p-blogCard -internal" data-type="type1" data-onclick="clickLink">
				<div class="p-blogCard__inner">
					<span class="p-blogCard__caption">あわせて読みたい</span>
					<div class="p-blogCard__thumb c-postThumb"><figure class="c-postThumb__figure"><img decoding="async" src="https://sugublog.org/wp-content/uploads/2021/11/DB_1103-2-300x169.jpg" alt="" class="c-postThumb__img u-obf-cover" width="320" height="180"></figure></div>					<div class="p-blogCard__body">
						<a class="p-blogCard__title" href="https://sugublog.org/linux-memory-usage-check/">【Linux】メモリの使用率や使用量を確認する方法をご説明</a>
						<span class="p-blogCard__excerpt">Linuxでメモリの使用率や使用量などを確認したい場合どうすれば良いのでしょうか？ 複数確認のやり方はありますが、どのように使い分ければ良いかわからないといった事&#8230;</span>					</div>
				</div>
			</div>
		</div>


<p>Linuxの物理ディスク確認コマンドについて</p>


<div class="swell-block-postLink">			<div class="p-blogCard -internal" data-type="type1" data-onclick="clickLink">
				<div class="p-blogCard__inner">
					<span class="p-blogCard__caption">あわせて読みたい</span>
					<div class="p-blogCard__thumb c-postThumb"><figure class="c-postThumb__figure"><img decoding="async" src="https://sugublog.org/wp-content/uploads/2021/11/HDD_1107-1-1-300x169.jpg" alt="" class="c-postThumb__img u-obf-cover" width="320" height="180"></figure></div>					<div class="p-blogCard__body">
						<a class="p-blogCard__title" href="https://sugublog.org/linux-physical-disk-capacity-check/">【Linux】物理ディスクの容量確認する方法！容量拡張のリンクあり</a>
						<span class="p-blogCard__excerpt">Linuxで物理ディスクの容量確認したいです。 そういった疑問に現役エンジニアの筆者が答えます。 Linuxの物理ディスクの概念も少しややこしいですが、この記事を読めば&#8230;</span>					</div>
				</div>
			</div>
		</div>


<p>Linuxのファイルシステムの容量確認コマンドについて</p>


<div class="swell-block-postLink">			<div class="p-blogCard -internal" data-type="type1" data-onclick="clickLink">
				<div class="p-blogCard__inner">
					<span class="p-blogCard__caption">あわせて読みたい</span>
					<div class="p-blogCard__thumb c-postThumb"><figure class="c-postThumb__figure"><img decoding="async" src="https://sugublog.org/wp-content/uploads/2021/12/PC教室20211216-1-300x277.jpg" alt="" class="c-postThumb__img u-obf-cover" width="320" height="180"></figure></div>					<div class="p-blogCard__body">
						<a class="p-blogCard__title" href="https://sugublog.org/linux-du-command/">【Linux基礎】dfコマンドの使い方！ファイルシステム別の容量確認コマンド</a>
						<span class="p-blogCard__excerpt">Linuxサーバーでディスクの容量を確認する、dfコマンドについて学んで行きます。 サーバーエンジニアはディスクの容量を気にしなければいけません。そんな時に役立つdf&#8230;</span>					</div>
				</div>
			</div>
		</div>


<p>Linuxのファイルやディレクトリの容量確認コマンドについて</p>


<div class="swell-block-postLink">			<div class="p-blogCard -internal" data-type="type1" data-onclick="clickLink">
				<div class="p-blogCard__inner">
					<span class="p-blogCard__caption">あわせて読みたい</span>
					<div class="p-blogCard__thumb c-postThumb"><figure class="c-postThumb__figure"><img decoding="async" src="https://sugublog.org/wp-content/uploads/2021/07/analytics-1-300x200.jpg" alt="" class="c-postThumb__img u-obf-cover" width="320" height="180"></figure></div>					<div class="p-blogCard__body">
						<a class="p-blogCard__title" href="https://sugublog.org/linux-du-command-2/">【Linux基礎】duコマンドでファイルの容量を確認する方法</a>
						<span class="p-blogCard__excerpt">Linuxサーバーでファイルやディレクトリの容量を確認するコマンドにduコマンドがあります。 そのduコマンドの使い方やオプションについてまとめます。 Linuxでduコマン&#8230;</span>					</div>
				</div>
			</div>
		</div>]]></content:encoded>
					
					<wfw:commentRss>https://sugublog.org/linux-os-version-check/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>【Linux基礎】コマンドの履歴を見る方法！履歴から実行する方法</title>
		<link>https://sugublog.org/linux-command-history/</link>
					<comments>https://sugublog.org/linux-command-history/?noamp=mobile#respond</comments>
		
		<dc:creator><![CDATA[suguru]]></dc:creator>
		<pubDate>Thu, 30 May 2024 15:01:00 +0000</pubDate>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[サーバ]]></category>
		<category><![CDATA[history]]></category>
		<category><![CDATA[linux]]></category>
		<guid isPermaLink="false">https://sugublog.org/?p=6877</guid>

					<description><![CDATA[<p><img src="https://sugublog.org/wp-content/uploads/2021/12/PC教室20211216-8-1024x782.jpg" class="webfeedsFeaturedVisual" /></p>Linuxサーバーを運用していてコマンドの履歴を見たいと思った事はないでしょうか？ またコマンド履歴から実行すると便利だと思いませんか？ という事でLinuxサーバーのコマンド履歴を見たり、実行したりしてみます。 Lin [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><img src="https://sugublog.org/wp-content/uploads/2021/12/PC教室20211216-8-1024x782.jpg" class="webfeedsFeaturedVisual" /></p>
<p>Linuxサーバーを運用していて<strong><span class="swl-inline-color has-swl-deep-01-color">コマンドの履歴</span></strong>を見たいと思った事はないでしょうか？</p>



<p>また<span class="swl-inline-color has-swl-deep-01-color">コマンド履歴から実行</span>すると便利だと思いませんか？</p>



<p>という事でLinuxサーバーのコマンド履歴を見たり、実行したりしてみます。</p>


<div class="p-blogParts post_content" data-partsID="5908">
<p>筆者はWindowsサーバーやLinuxサーバーの運用構築を11年間以上おこなってきました。その経験を元に知識を公開していきます！</p>
</div>


<script async="" src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<ins class="adsbygoogle ads" style="display:block; text-align:center;" data-ad-layout="in-article" data-ad-format="fluid" data-ad-client="ca-pub-9330904718533231" data-ad-slot="6086594686"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>



<h2 class="wp-block-heading">Linuxでコマンドの履歴を見る方法</h2>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img decoding="async" width="1024" height="724" src="https://sugublog.org/wp-content/uploads/2021/12/結婚1209-3-1024x724.jpg" alt="コマンド履歴を見る" class="wp-image-4722" srcset="https://sugublog.org/wp-content/uploads/2021/12/結婚1209-3-1024x724.jpg 1024w, https://sugublog.org/wp-content/uploads/2021/12/結婚1209-3-300x212.jpg 300w, https://sugublog.org/wp-content/uploads/2021/12/結婚1209-3-768x543.jpg 768w, https://sugublog.org/wp-content/uploads/2021/12/結婚1209-3.jpg 1200w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>
</div>


<p>Linuxで<strong><span class="swl-inline-color has-swl-deep-01-color">コマンド履歴を見る方法</span></strong>は2つあります。</p>



<div class="swell-block-capbox cap_box is-style-onborder_ttl"><div class="cap_box_ttl"><span>Linuxでコマンド履歴を見る方法2選</span></div><div class="cap_box_content">
<ul class="wp-block-list">
<li>キーボードの矢印キーの上を押す</li>



<li>historyコマンドで見る</li>
</ul>
</div></div>



<h3 class="wp-block-heading">キーボードの矢印キーの上を押す</h3>



<p>キーボードの矢印キーの上を押すと、<strong><span class="swl-inline-color has-swl-deep-01-color">コマンド履歴の最新</span></strong>が表示されます。</p>



<p>更に上を押していくことで、新しい履歴から順に表示されていきます。</p>



<p>実行したいコマンド履歴になれば、エンターを押せばそのまま実行できます。</p>



<h3 class="wp-block-heading">コマンド履歴を見るhistoryコマンドで見る</h3>



<p>historyコマンドで<strong><span class="swl-inline-color has-swl-deep-01-color">コマンド履歴が一覧表示</span></strong>されます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# history
   80  passwd -e test1
   81  cat /etc/shadow
～省略
 1078  du
 1079  history</code></pre></div>



<p>1000個のコマンド履歴が表示されています。</p>



<p class="is-style-icon_info">デフォルトでは1000個までコマンド履歴が保存されます。</p>



<p>コマンド履歴の数を変更したい場合は、HISTFILESIZEというシェル変数とHISTSIZEという環境変数を変更します。</p>



<p class="is-style-icon_pen">環境変数を設定する方法の詳しい情報は以下の記事にまとめています。</p>


<div class="swell-block-postLink">			<div class="p-blogCard -internal" data-type="type1" data-onclick="clickLink">
				<div class="p-blogCard__inner">
					<span class="p-blogCard__caption">あわせて読みたい</span>
					<div class="p-blogCard__thumb c-postThumb"><figure class="c-postThumb__figure"><img decoding="async" src="https://sugublog.org/wp-content/uploads/2021/09/code_0923-1-300x198.jpg" alt="" class="c-postThumb__img u-obf-cover" width="320" height="180"></figure></div>					<div class="p-blogCard__body">
						<a class="p-blogCard__title" href="https://sugublog.org/linux-environmental-variables/">【Linux】環境変数を設定や削除する方法！一覧表示して確認まで行います</a>
						<span class="p-blogCard__excerpt">Linuxで環境変数を設定したいです。 そういった疑問に現役エンジニアの筆者が答えます。 また環境変数の削除や確認や定義や代入まで見ていきます。 この記事を読めばLin&#8230;</span>					</div>
				</div>
			</div>
		</div>


<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>export HISTSIZE=500
export HISTFILESIZE=500</code></pre></div>


<div class="swell-block-postLink">			<div class="p-blogCard -internal" data-type="type1" data-onclick="clickLink">
				<div class="p-blogCard__inner">
					<span class="p-blogCard__caption">あわせて読みたい</span>
					<div class="p-blogCard__thumb c-postThumb"><figure class="c-postThumb__figure"><img decoding="async" src="https://sugublog.org/wp-content/uploads/2021/09/junp2_0907-2-300x186.jpg" alt="" class="c-postThumb__img u-obf-cover" width="320" height="180"></figure></div>					<div class="p-blogCard__body">
						<a class="p-blogCard__title" href="https://sugublog.org/linux-export-command/">【Linux】exportコマンドの使い方！環境変数を確認や削除する</a>
						<span class="p-blogCard__excerpt">Linuxサーバーの運用をしていてexportコマンドの使い方がいまいちよくわかりません。 そういったLinuxサーバーエンジニアの方の疑問に答えます。 Linuxでexportコマンド&#8230;</span>					</div>
				</div>
			</div>
		</div>


<h2 class="wp-block-heading">コマンド履歴から実行する方法</h2>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img decoding="async" width="1024" height="560" src="https://sugublog.org/wp-content/uploads/2021/11/programing_1122-4-1024x560.jpg" alt="コマンド履歴から実行" class="wp-image-4561" srcset="https://sugublog.org/wp-content/uploads/2021/11/programing_1122-4-1024x560.jpg 1024w, https://sugublog.org/wp-content/uploads/2021/11/programing_1122-4-300x164.jpg 300w, https://sugublog.org/wp-content/uploads/2021/11/programing_1122-4-768x420.jpg 768w, https://sugublog.org/wp-content/uploads/2021/11/programing_1122-4.jpg 1200w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>
</div>


<p>コマンド履歴を表示すると番号が表示されています。</p>



<p>左の番号を使用してコマンド実行する事が可能です。</p>



<p>コマンド履歴からコマンド実行する方法は、<span class="swl-inline-color has-swl-deep-01-color">「!」の後に番号を指定</span>すれば可能です。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code> [root@localhost ~]# history
～省略～
 1098  ls
 1099  ls -a
 1100  cat .bash_history
 1101  history
 1102  du -ah
 1103  history</code></pre></div>



<p>上のようなコマンド履歴があるとします。1098番のlsコマンドを実行したいのであれば「!1098」を実行します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# !1098
ls
file1.txt startup.log testdir1</code></pre></div>



<p class="has-border -border01"><strong><span class="swl-inline-color has-swl-deep-01-color">コマンド履歴からコマンド実行</span></strong>できています。</p>



<h2 class="wp-block-heading">コマンド履歴を検索する方法</h2>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img decoding="async" width="1024" height="454" src="https://sugublog.org/wp-content/uploads/2021/07/analytics-7-1024x454.jpg" alt="analystics" class="wp-image-3693" srcset="https://sugublog.org/wp-content/uploads/2021/07/analytics-7-1024x454.jpg 1024w, https://sugublog.org/wp-content/uploads/2021/07/analytics-7-300x133.jpg 300w, https://sugublog.org/wp-content/uploads/2021/07/analytics-7-768x340.jpg 768w, https://sugublog.org/wp-content/uploads/2021/07/analytics-7.jpg 1200w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>
</div>


<p class="is-style-big_icon_hatena">コマンド履歴はデフォルトで1000個もあり、欲しいコマンド履歴を探すのに大変ではないでしょうか？</p>



<p>そんな時に役立つのが<strong><span class="swl-inline-color has-swl-deep-01-color">コマンド履歴検索</span></strong>です。</p>



<p><span class="swl-marker mark_orange">コマンド履歴検索のやり方は<span class="swl-inline-color has-swl-deep-01-color">Ctrl＋r</span>を押す事です。</span></p>



<p>プロンプトが「ユーザー名@localhost」から「reverse-i-search」に変更されてコマンド履歴検索が可能になります。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]#
(reverse-i-search)`df&#39;: df -h</code></pre></div>



<p><span class="swl-inline-color has-swl-deep-01-color">欲しいコマンド履歴の最初の一文字を入力</span>すると、その文字から始まったコマンド履歴が表示されます。</p>



<p>欲しいコマンド履歴になるまで文字を入力していき、検索します。</p>



<h2 class="wp-block-heading">コマンド履歴を見るhistoryコマンドのオプション</h2>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img decoding="async" width="1024" height="444" src="https://sugublog.org/wp-content/uploads/2021/11/DB_1114-7-1024x444.jpg" alt="オプション" class="wp-image-4503" srcset="https://sugublog.org/wp-content/uploads/2021/11/DB_1114-7-1024x444.jpg 1024w, https://sugublog.org/wp-content/uploads/2021/11/DB_1114-7-300x130.jpg 300w, https://sugublog.org/wp-content/uploads/2021/11/DB_1114-7-768x333.jpg 768w, https://sugublog.org/wp-content/uploads/2021/11/DB_1114-7.jpg 1200w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>
</div>


<p>コマンド履歴を見る<strong><span class="swl-inline-color has-swl-deep-01-color">historyコマンドのオプション</span></strong>についてまとめます。</p>



<figure class="wp-block-table"><table><thead><tr><th>historyコマンドのオプション</th><th>オプションの効果</th></tr></thead><tbody><tr><td>数字</td><td>指定した数字分のコマンド履歴を表示する</td></tr><tr><td>-d 番号</td><td>指定した番号のコマンド履歴を削除する</td></tr><tr><td>-c</td><td>コマンド履歴一覧を全て削除する</td></tr><tr><td>-r ファイル名</td><td>コマンド履歴ファイルを読み込み、履歴に追加する</td></tr><tr><td>-w ファイル名</td><td>現在のコマンド履歴をファイルに上書きする</td></tr><tr><td>-a ファイル名</td><td>現セッションの履歴をファイルに書き出しする</td></tr></tbody></table><figcaption class="wp-element-caption">historyコマンドのオプション一覧</figcaption></figure>



<h3 class="wp-block-heading">指定した数字分のコマンド履歴を表示する</h3>



<p>デフォルトで1000個もあるコマンド履歴。</p>



<p>そんなに表示しなくても良いという場合は、<strong><span class="swl-inline-color has-swl-deep-01-color">個数を指定してコマンド履歴を表示</span></strong>できます。</p>



<p>個数を指定してコマンド履歴を表示する方法は、「history」コマンドの後に欲しい数字を入力するだけです。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# history 10
 1096  history 5
 1097  ls
 1098  ls /home/root
 1099  ls -a
 1100  cat .bash_history
 1101  history
 1102  du -ah
 1103  history
 1104  ls
 1105  history 10</code></pre></div>



<p class="has-border -border01">指定した分のコマンド履歴が表示されました。</p>



<h3 class="wp-block-heading">指定した番号のコマンド履歴を削除する</h3>



<p><strong><span class="swl-inline-color has-swl-deep-01-color">コマンド履歴を削除</span></strong>する事も可能です。</p>



<p>コマンド履歴を削除するには、dオプションで削除したい番号を指定するだけです。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# history 10
 1096  history 5
 1097  ls
 1098  ls /home/root
 1099  ls -a
 1100  cat .bash_history
 1101  history
 1102  du -ah
 1103  history
 1104  ls
 1105  history 10
[root@localhost ~]# history -d 1100
[root@localhost ~]# history 10
 1097  ls
 1098  ls /home/root
 1099  ls -a
 1100  history
 1101  du -ah
 1102  history
 1103  ls
 1104  history 10
 1105  history -d 1100
 1106  history 10</code></pre></div>



<p class="has-border -border01">前回のコマンド履歴1100番の「cat .bash_history」コマンドが削除されています。</p>



<h3 class="wp-block-heading">コマンド履歴一覧を全て削除する</h3>



<p><strong><span class="swl-inline-color has-swl-deep-01-color">コマンド履歴一覧を全て削除</span></strong>する事も可能です。</p>



<p>コマンド履歴一覧を全て削除するには、cオプションを使用します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# history -c
[root@localhost ~]# history
  108  history</code></pre></div>



<p class="has-border -border01">以前までのコマンド履歴が全て消えています。</p>



<p class="is-style-icon_book">全てのコマンド履歴が消えてから実行した「history」コマンドの履歴だけ表示されています。</p>



<h3 class="wp-block-heading">コマンド履歴ファイルを読み込み、履歴に追加する</h3>



<p>コマンド履歴をcオプションで全削除しましたが、<span class="swl-marker mark_yellow"><span class="swl-inline-color has-swl-deep-01-color">コマンド履歴を保存しているファイル</span>からは削除されていません。</span></p>



<p>そのファイルを読み込む事でコマンド履歴を復活させることも可能です。</p>



<p><span class="swl-marker mark_orange"><strong><span class="swl-inline-color has-swl-deep-01-color">コマンド履歴ファイルを読み込み、履歴に追加する方法</span></strong>はrオプションにファイルを指定するだけです。</span></p>



<p>ユーザーのコマンド履歴を保存しているファイルは、ホームディレクトリの「.bash_history」ファイルです。</p>



<p class="is-style-icon_book">ファイルの最初の「.」は隠しファイルを意味します。</p>



<p class="is-style-icon_pen">隠しファイルを表示する時に困ったら、以下の記事を参照</p>


<div class="swell-block-postLink">			<div class="p-blogCard -internal" data-type="type1" data-onclick="clickLink">
				<div class="p-blogCard__inner">
					<span class="p-blogCard__caption">あわせて読みたい</span>
					<div class="p-blogCard__thumb c-postThumb"><figure class="c-postThumb__figure"><img decoding="async" src="https://sugublog.org/wp-content/uploads/2021/08/programing_0812-6-300x169.jpg" alt="" class="c-postThumb__img u-obf-cover" width="320" height="180"></figure></div>					<div class="p-blogCard__body">
						<a class="p-blogCard__title" href="https://sugublog.org/linux-hidden-file-display/">【Linux】隠しファイルを表示する方法をわかりやすく解説します！</a>
						<span class="p-blogCard__excerpt">Linuxサーバーで隠しファイルを表示する方法を知りたいです。 そのような疑問に現役エンジニアの筆者が答えます。 Linuxサーバーの管理をする者は隠しファイルの存在も&#8230;</span>					</div>
				</div>
			</div>
		</div>


<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# history
  108  history

[root@localhost ~]# history -r .bash_history

[root@localhost ~]# history
  201  chage -l root
  202  chage -l testuser2
～省略～
 1199  history -a
 1200  history
[root@localhost ~]#</code></pre></div>



<p class="has-border -border01">コマンド履歴が1つしかなかったのが、「bash_history」ファイルを読み込む事で復活しました。</p>



<h3 class="wp-block-heading">現在のコマンド履歴をファイルに上書きする</h3>



<p><strong><span class="swl-inline-color has-swl-deep-01-color">現在のコマンド履歴をファイルに上書き</span></strong>する事が可能です。</p>



<p>現在のコマンド履歴をファイルに上書きする方法は、wオプションでファイルを指定するだけです。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# history -c
[root@localhost ~]# history
  202  history
[root@localhost ~]# history -w .bash_history

[root@localhost ~]# cat .bash_history
history
history -w .bash_history
[root@localhost ~]#
[root@localhost ~]# history -r .bash_history
[root@localhost ~]#
[root@localhost ~]# history
  202  history
  203  history -w .bash_history
  204  cat .bash_history
  205  history -r .bash_history
  206  history
  207  history -w .bash_history
  208  history</code></pre></div>



<p>「history -c」コマンドでコマンド履歴を全削除して「history -w .bash_history」コマンドでファイルに上書きします。</p>



<p class="has-border -border01">そうする事で「history -r .bash_history」コマンドで再読み込みしてもコマンド履歴を削除する事が可能できました。</p>



<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-9330904718533231"
     crossorigin="anonymous"></script>
<ins class="adsbygoogle"
     style="display:block"
     data-ad-format="autorelaxed"
     data-ad-client="ca-pub-9330904718533231"
     data-ad-slot="8455594968"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>



<h2 class="wp-block-heading">まとめ：Linuxでコマンドの履歴を扱う方法</h2>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img decoding="async" width="1024" height="782" src="https://sugublog.org/wp-content/uploads/2021/12/PC教室20211216-8-1024x782.jpg" alt="コマンド履歴" class="wp-image-4802" srcset="https://sugublog.org/wp-content/uploads/2021/12/PC教室20211216-8-1024x782.jpg 1024w, https://sugublog.org/wp-content/uploads/2021/12/PC教室20211216-8-300x229.jpg 300w, https://sugublog.org/wp-content/uploads/2021/12/PC教室20211216-8-768x586.jpg 768w, https://sugublog.org/wp-content/uploads/2021/12/PC教室20211216-8.jpg 1200w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>
</div>


<p>Linuxで<strong><span class="swl-inline-color has-swl-deep-01-color">コマンド履歴を見る方法</span></strong>は2つあります。</p>



<div class="swell-block-capbox cap_box is-style-onborder_ttl"><div class="cap_box_ttl"><span>Linuxでコマンド履歴を見る方法2選</span></div><div class="cap_box_content">
<ul class="wp-block-list">
<li>キーボードの矢印キーの上を押す</li>



<li>historyコマンドで見る</li>
</ul>
</div></div>



<p>コマンド履歴からコマンド実行する方法は、<span class="swl-inline-color has-swl-deep-01-color">「!」の後に番号を指定</span>すれば可能です。</p>



<p><span class="swl-marker mark_orange">コマンド履歴検索のやり方は<span class="swl-inline-color has-swl-deep-01-color">Ctrl＋r</span>を押すして、検索モードにして最初の文字を入力する事です。</span></p>



<p>コマンド履歴を見る<strong><span class="swl-inline-color has-swl-deep-01-color">historyコマンドのオプション</span></strong>についてまとめます。</p>



<figure class="wp-block-table"><table><thead><tr><th>historyコマンドのオプション</th><th>オプションの効果</th></tr></thead><tbody><tr><td>数字</td><td>指定した数字分のコマンド履歴を表示する</td></tr><tr><td>-d 番号</td><td>指定した番号のコマンド履歴を削除する</td></tr><tr><td>-c</td><td>コマンド履歴一覧を全て削除する</td></tr><tr><td>-r ファイル名</td><td>コマンド履歴ファイルを読み込み、履歴に追加する</td></tr><tr><td>-w ファイル名</td><td>現在のコマンド履歴をファイルに上書きする</td></tr><tr><td>-a ファイル名</td><td>現セッションの履歴をファイルに書き出しする</td></tr></tbody></table><figcaption class="wp-element-caption">historyコマンドのオプション一覧</figcaption></figure>



<p>コマンド履歴は作業などの後から見返せるので、削除するのはやめましょう！コマンド履歴を他のファイルに書き出して後から確認するのもオススメです。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://sugublog.org/linux-command-history/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>【Linux】任意のサイズでファイルを作成する方法！検証に使えます。</title>
		<link>https://sugublog.org/linux-create-files-of-any-size/</link>
					<comments>https://sugublog.org/linux-create-files-of-any-size/?noamp=mobile#respond</comments>
		
		<dc:creator><![CDATA[suguru]]></dc:creator>
		<pubDate>Wed, 29 May 2024 15:00:00 +0000</pubDate>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[サーバ]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[任意のサイズのファイル]]></category>
		<guid isPermaLink="false">https://sugublog.org/?p=6872</guid>

					<description><![CDATA[<p><img src="https://sugublog.org/wp-content/uploads/2022/01/sweets_20220105-3-1024x683.jpg" class="webfeedsFeaturedVisual" /></p>Linuxサーバーで任意のサイズでファイルを作成したい場合はないでしょうか？ 検証などで大きなファイルが欲しいという時に便利です。負荷検証などでよく使用します。 Linuxサーバーで任意のサイズのファイルを作成する方法  [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><img src="https://sugublog.org/wp-content/uploads/2022/01/sweets_20220105-3-1024x683.jpg" class="webfeedsFeaturedVisual" /></p>
<p>Linuxサーバーで<strong><span class="swl-inline-color has-swl-deep-01-color">任意のサイズでファイルを作成</span></strong>したい場合はないでしょうか？</p>



<p>検証などで大きなファイルが欲しいという時に便利です。負荷検証などでよく使用します。</p>



<script async="" src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<ins class="adsbygoogle ads" style="display:block; text-align:center;" data-ad-layout="in-article" data-ad-format="fluid" data-ad-client="ca-pub-9330904718533231" data-ad-slot="6086594686"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>



<h2 class="wp-block-heading">Linuxサーバーで任意のサイズのファイルを作成する方法</h2>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img decoding="async" width="1024" height="576" src="https://sugublog.org/wp-content/uploads/2021/11/programing_1122-5-1024x576.jpg" alt="任意のサイズ" class="wp-image-4562" srcset="https://sugublog.org/wp-content/uploads/2021/11/programing_1122-5-1024x576.jpg 1024w, https://sugublog.org/wp-content/uploads/2021/11/programing_1122-5-300x169.jpg 300w, https://sugublog.org/wp-content/uploads/2021/11/programing_1122-5-768x432.jpg 768w, https://sugublog.org/wp-content/uploads/2021/11/programing_1122-5.jpg 1200w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>
</div>


<p>Linuxサーバーで<span class="swl-marker mark_orange"><strong><span class="swl-inline-color has-swl-deep-01-color">任意のサイズのファイルを作成する方法</span></strong>は、ddコマンドを使用</span>します。</p>



<p><span class="swl-bg-color has-swl-deep-01-background-color">1G</span>のファイルサイズを作成するコマンド</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>dd if=/dev/zero of=1G.dummy bs=1M count=1000</code></pre></div>



<p><span class="swl-bg-color has-swl-deep-02-background-color">3M</span>のファイルサイズを作成するコマンド</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>dd if=/dev/zero of=3M.dummy bs=1M count=3</code></pre></div>



<p class="is-style-icon_announce">bsの部分とcountの部分を変更して、サイズを変更できます。</p>



<p>ofの部分はファイル名を入力します。</p>



<h2 class="wp-block-heading">Linuxのddコマンドの詳細</h2>



<p>Linuxの<strong><span class="swl-inline-color has-swl-deep-01-color">ddコマンド</span></strong>は以下のオプションに従いコピーしてくれます。</p>



<div class="swell-block-capbox cap_box is-style-onborder_ttl"><div class="cap_box_ttl"><span>ddコマンドのオプション</span></div><div class="cap_box_content">
<ul class="wp-block-list">
<li>if=入力ファイルやソースファイル</li>



<li>of=出力ファイル</li>



<li>bs=繰り返すファイルサイズ</li>



<li>count=繰り返し回数</li>
</ul>
</div></div>



<h2 class="wp-block-heading">実際に任意のサイズのファイルを作成してみる</h2>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img decoding="async" width="1024" height="576" src="https://sugublog.org/wp-content/uploads/2021/11/programing_shool1121-6-1024x576.jpg" alt="traning" class="wp-image-4539" srcset="https://sugublog.org/wp-content/uploads/2021/11/programing_shool1121-6-1024x576.jpg 1024w, https://sugublog.org/wp-content/uploads/2021/11/programing_shool1121-6-300x169.jpg 300w, https://sugublog.org/wp-content/uploads/2021/11/programing_shool1121-6-768x432.jpg 768w, https://sugublog.org/wp-content/uploads/2021/11/programing_shool1121-6.jpg 1200w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>
</div>


<p><span class="swl-bg-color has-swl-deep-02-background-color">3M</span>サイズのファイルを作成してみます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# dd if=/dev/zero of=3M.dummy bs=1M count=3
3+0 レコード入力
3+0 レコード出力
3145728 バイト (3.1 MB) コピーされました、 0.00410684 秒、 766 MB/秒</code></pre></div>



<p>作成されました。<span class="swl-inline-color has-swl-deep-01-color">lsコマンドとgrepコマンド</span>を使用して確認してみます。</p>


<div class="swell-block-postLink">			<div class="p-blogCard -internal" data-type="type1" data-onclick="clickLink">
				<div class="p-blogCard__inner">
					<span class="p-blogCard__caption">あわせて読みたい</span>
					<div class="p-blogCard__thumb c-postThumb"><figure class="c-postThumb__figure"><img decoding="async" src="https://sugublog.org/wp-content/uploads/2021/11/programing_1122-7-300x200.jpg" alt="" class="c-postThumb__img u-obf-cover" width="320" height="180"></figure></div>					<div class="p-blogCard__body">
						<a class="p-blogCard__title" href="https://sugublog.org/linux-ls-command/">【Linux】lsコマンドの使い方！オプションなどを使用する</a>
						<span class="p-blogCard__excerpt">Linuxサーバーでlsのコマンドの使い方をまとめます。 Linuxサーバーでディレクトリやファイルの表示方法での悩み Linuxサーバーでディレクトリ配下のファイルも表示した&#8230;</span>					</div>
				</div>
			</div>
		</div>

<div class="swell-block-postLink">			<div class="p-blogCard -internal" data-type="type1" data-onclick="clickLink">
				<div class="p-blogCard__inner">
					<span class="p-blogCard__caption">あわせて読みたい</span>
					<div class="p-blogCard__thumb c-postThumb"><figure class="c-postThumb__figure"><img decoding="async" src="https://sugublog.org/wp-content/uploads/2021/12/PC教室20211216-6-300x250.jpg" alt="" class="c-postThumb__img u-obf-cover" width="320" height="180"></figure></div>					<div class="p-blogCard__body">
						<a class="p-blogCard__title" href="https://sugublog.org/shellscript-grep/">【シェルスクリプト】grepで文字列を抽出する方法！正規表現も使用します</a>
						<span class="p-blogCard__excerpt">Linuxでシェルスクリプトのgrepのやり方がよくわかりません。オプションや正規表現を使用した文字列抽出を行いたいです。 そういった声が多いので今回はシェルスクリプ&#8230;</span>					</div>
				</div>
			</div>
		</div>


<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# ls -lh | grep 3M.dummy
-rw-r--r--   1 root root 3.0M  5月 27 12:23 3M.dummy</code></pre></div>



<p><span class="swl-inline-color has-swl-deep-01-color">duコマンド</span>でもファイルサイズを確認できます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# du -h 3M.dummy
3.0M    3M.dummy</code></pre></div>



<p class="is-style-icon_pen">duコマンドの詳しい詳細は以下の記事を参照下さい。</p>


<div class="swell-block-postLink">			<div class="p-blogCard -internal" data-type="type1" data-onclick="clickLink">
				<div class="p-blogCard__inner">
					<span class="p-blogCard__caption">あわせて読みたい</span>
					<div class="p-blogCard__thumb c-postThumb"><figure class="c-postThumb__figure"><img decoding="async" src="https://sugublog.org/wp-content/uploads/2021/07/analytics-1-300x200.jpg" alt="" class="c-postThumb__img u-obf-cover" width="320" height="180"></figure></div>					<div class="p-blogCard__body">
						<a class="p-blogCard__title" href="https://sugublog.org/linux-du-command-2/">【Linux基礎】duコマンドでファイルの容量を確認する方法</a>
						<span class="p-blogCard__excerpt">Linuxサーバーでファイルやディレクトリの容量を確認するコマンドにduコマンドがあります。 そのduコマンドの使い方やオプションについてまとめます。 Linuxでduコマン&#8230;</span>					</div>
				</div>
			</div>
		</div>


<p class="has-border -border01">3Mのファイルが作成されています。</p>



<h3 class="wp-block-heading">どのくらいの時間でファイル作成できるのか</h3>



<p class="is-style-big_icon_hatena">どのくらいの時間で任意のサイズのファイルが作成できるのでしょうか？</p>



<p>timeコマンドで測定してみます。</p>



<p>時間を測定しながら、<span class="swl-bg-color has-swl-deep-02-background-color">3M</span>サイズのファイルを作成してみます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# time dd if=/dev/zero of=3M.dummy2 bs=1M count=3
3+0 レコード入力
3+0 レコード出力
3145728 バイト (3.1 MB) コピーされました、 0.00413476 秒、 761 MB/秒

real    0m0.006s
user    0m0.001s
sys     0m0.005s</code></pre></div>



<p class="has-border -border01"><span class="swl-marker mark_blue">3Mのファイルは0.006秒で完成しています。</span></p>



<p>時間を測定しながら、<span class="swl-bg-color has-swl-deep-01-background-color">1G</span>サイズのファイルを作成してみます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# time dd if=/dev/zero of=1M.dummy bs=1M count=1000
1000+0 レコード入力
1000+0 レコード出力
1048576000 バイト (1.0 GB) コピーされました、 2.97847 秒、 352 MB/秒

real    0m2.980s
user    0m0.001s
sys     0m1.298s</code></pre></div>



<p class="has-border -border01"><span class="swl-marker mark_orange">1Gのファイルは2.98秒で完成しています。</span></p>



<p>それほど時間はかからない事がわかります。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://sugublog.org/linux-create-files-of-any-size/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>【Linux基礎】duコマンドでファイルの容量を確認する方法</title>
		<link>https://sugublog.org/linux-du-command-2/</link>
					<comments>https://sugublog.org/linux-du-command-2/?noamp=mobile#respond</comments>
		
		<dc:creator><![CDATA[suguru]]></dc:creator>
		<pubDate>Tue, 28 May 2024 15:00:00 +0000</pubDate>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[サーバ]]></category>
		<category><![CDATA[du]]></category>
		<category><![CDATA[linux]]></category>
		<guid isPermaLink="false">https://sugublog.org/?p=6870</guid>

					<description><![CDATA[<p><img src="https://sugublog.org/wp-content/uploads/2021/07/analytics-1-1024x683.jpg" class="webfeedsFeaturedVisual" /></p>Linuxサーバーでファイルやディレクトリの容量を確認するコマンドにduコマンドがあります。 そのduコマンドの使い方やオプションについてまとめます。 Linuxでduコマンドの使い方 Linuxサーバーでduコマンドの [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><img src="https://sugublog.org/wp-content/uploads/2021/07/analytics-1-1024x683.jpg" class="webfeedsFeaturedVisual" /></p>
<p>Linuxサーバーで<span class="swl-marker mark_orange"><strong>ファイルやディレクトリの容量を確認する</strong>コマンドに<strong><span class="swl-inline-color has-swl-deep-01-color">duコマンド</span></strong></span>があります。</p>



<p>そのduコマンドの使い方やオプションについてまとめます。</p>



<script async="" src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<ins class="adsbygoogle ads" style="display:block; text-align:center;" data-ad-layout="in-article" data-ad-format="fluid" data-ad-client="ca-pub-9330904718533231" data-ad-slot="6086594686"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>



<h2 class="wp-block-heading">Linuxでduコマンドの使い方</h2>


<div class="wp-block-image is-style-photo_frame">
<figure class="aligncenter size-large"><img decoding="async" width="1024" height="640" src="https://sugublog.org/wp-content/uploads/2021/09/pitapa-2-1024x640.jpg" alt="duコマンド" class="wp-image-4117" srcset="https://sugublog.org/wp-content/uploads/2021/09/pitapa-2-1024x640.jpg 1024w, https://sugublog.org/wp-content/uploads/2021/09/pitapa-2-300x188.jpg 300w, https://sugublog.org/wp-content/uploads/2021/09/pitapa-2-768x480.jpg 768w, https://sugublog.org/wp-content/uploads/2021/09/pitapa-2.jpg 1200w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>
</div>


<p>Linuxサーバーで<strong><span class="swl-inline-color has-swl-deep-01-color">duコマンドの使い方の基本</span></strong>を以下に示します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>du [オプション] [ファイルやディレクトリ]</code></pre></div>



<p>ファイルやディレクトリの容量を表示してくれます。</p>



<p class="is-style-icon_announce">デフォルトの単位は<strong>キロバイト</strong>です。</p>



<p class="is-style-icon_pen">ディレクトリは<strong>サブディレクトリの容量もプラス</strong>されています。</p>



<p class="is-style-icon_info">容量を表示させるものを<strong>省略</strong>すれば、カレントディレクトリの<strong>ディレクトリのみ</strong>表示されます。</p>



<p class="is-style-icon_pen">Linuxでファイルシステムの容量を確認したい場合は、以下の記事を参照ください。</p>


<div class="swell-block-postLink">			<div class="p-blogCard -internal" data-type="type1" data-onclick="clickLink">
				<div class="p-blogCard__inner">
					<span class="p-blogCard__caption">あわせて読みたい</span>
					<div class="p-blogCard__thumb c-postThumb"><figure class="c-postThumb__figure"><img decoding="async" src="https://sugublog.org/wp-content/uploads/2021/12/PC教室20211216-1-300x277.jpg" alt="" class="c-postThumb__img u-obf-cover" width="320" height="180"></figure></div>					<div class="p-blogCard__body">
						<a class="p-blogCard__title" href="https://sugublog.org/linux-du-command/">【Linux基礎】dfコマンドの使い方！ファイルシステム別の容量確認コマンド</a>
						<span class="p-blogCard__excerpt">Linuxサーバーでディスクの容量を確認する、dfコマンドについて学んで行きます。 サーバーエンジニアはディスクの容量を気にしなければいけません。そんな時に役立つdf&#8230;</span>					</div>
				</div>
			</div>
		</div>


<h2 class="wp-block-heading">duコマンドのオプションについて</h2>



<p>ファイルやディレクトリの容量を表示してくれる、<strong><span class="swl-inline-color has-swl-deep-01-color">duコマンドのオプション</span></strong>についてまとめます。</p>



<figure class="wp-block-table"><table><thead><tr><th>duコマンドのオプション</th><th>オプションの効果</th></tr></thead><tbody><tr><td>-a</td><td>ディレクトリだけでなくファイルも表示する</td></tr><tr><td>-h</td><td>容量に適した単位で表示する</td></tr><tr><td>-s</td><td>総量のみ表示する</td></tr><tr><td>-S</td><td>サブディレクトリの容量を含めず表示する</td></tr></tbody></table><figcaption class="wp-element-caption">duコマンドのオプション一覧</figcaption></figure>



<h2 class="wp-block-heading">実践でduコマンドを使用してみた</h2>


<div class="wp-block-image is-style-photo_frame">
<figure class="aligncenter size-large"><img decoding="async" width="1024" height="512" src="https://sugublog.org/wp-content/uploads/2021/11/programing_shool1121-2-1024x512.jpg" alt="training" class="wp-image-4542" srcset="https://sugublog.org/wp-content/uploads/2021/11/programing_shool1121-2-1024x512.jpg 1024w, https://sugublog.org/wp-content/uploads/2021/11/programing_shool1121-2-300x150.jpg 300w, https://sugublog.org/wp-content/uploads/2021/11/programing_shool1121-2-768x384.jpg 768w, https://sugublog.org/wp-content/uploads/2021/11/programing_shool1121-2.jpg 1200w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>
</div>


<p>duコマンドを使用して、実際に<strong><span class="swl-inline-color has-swl-deep-01-color">ファイルやディレクトリの容量を表示</span></strong>してみます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# du
0       ./sh_test/66_log
0       ./sh_test/67_myapp/.svn
0       ./sh_test/67_myapp
0       ./sh_test/16test
4       ./sh_test/file_exist
0       ./sh_test/64_backup_before
0       ./sh_test/64_backup_after
4       ./sh_test/18test
8       ./sh_test/output
328     ./sh_test
4       ./.ssh
0       ./backup
0       ./.pki/nssdb
0       ./.pki
4       ./.vnc
4       ./.local/share/xrdp
4       ./.local/share
4       ./.local
0       ./testdir1
588     .</code></pre></div>



<p class="has-border -border01">引数無しは<strong><span class="swl-inline-color has-swl-deep-01-color">ディレクトリのみ表示</span></strong>されています。</p>



<p>duコマンドで<strong><span class="swl-inline-color has-swl-deep-02-color">特定のディレクトリ</span></strong>を指定してみます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# du sh_test/
0       sh_test/66_log
0       sh_test/67_myapp/.svn
0       sh_test/67_myapp
0       sh_test/16test
4       sh_test/file_exist
0       sh_test/64_backup_before
0       sh_test/64_backup_after
4       sh_test/18test
8       sh_test/output
0       sh_test/74_dir1
328     sh_test/</code></pre></div>



<p class="has-border -border01"><strong><span class="swl-inline-color has-swl-deep-02-color">指定したディレクトリの容量</span></strong>が表示されています。</p>



<p>duコマンドでファイルを指定してみます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# du file1.txt
4       file1.txt</code></pre></div>



<p class="has-border -border01">ファイルの容量が表示されています。</p>



<p>duコマンドのデフォルトは<span class="swl-bg-color has-swl-deep-01-background-color">ディレクトリのみ表示</span>されていましたが、aオプションで<span class="swl-bg-color has-swl-deep-02-background-color">ファイルも表示</span>してみます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# du
0       ./sh_test/66_log
0       ./sh_test/67_myapp/.svn
0       ./sh_test/67_myapp
0       ./sh_test/16test
4       ./sh_test/file_exist
0       ./sh_test/64_backup_before
0       ./sh_test/64_backup_after
4       ./sh_test/18test
8       ./sh_test/output
328     ./sh_test
4       ./.ssh
0       ./backup
0       ./.pki/nssdb
0       ./.pki
4       ./.vnc
4       ./.local/share/xrdp
4       ./.local/share
4       ./.local
0       ./testdir1
12      ./.file1.txt.swp
4       ./file1.txt
12      ./.file1.txt.swo
588     .</code></pre></div>



<p class="has-border -border01">ディレクトリだけでなく、ファイルの容量も表示されています。</p>



<p>duコマンドのhオプションで、<strong><span class="swl-inline-color has-swl-deep-03-color">容量の適切な単位で表示</span></strong>してみます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# du -ah
4.0K    ./anaconda-ks.cfg
20K     ./.bash_history
328K    ./sh_test
3.0M    ./3M.dummy2
2.0G    ./2M.dummy
12K     ./.file1.txt.swp
4.0K    ./file1.txt
12K     ./.file1.txt.swo
4.0K    ./memory_usage_check.log
28K     ./vmstat.log
3.0M    ./3M.dummy
1000M   ./1M.dummy
3.0G    .</code></pre></div>



<p class="has-border -border01">適切な単位で容量が表示されています。</p>



<p class="is-style-icon_announce">※ひとつ1000Mになっていますが、1Gは1024Mなので1023Mまでは1Gと表示されません</p>



<p>duコマンドのsオプションで、<strong><span class="swl-inline-color has-swl-deep-04-color">総量（summary）のみ確認</span></strong>してみます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# du -s
3078732 .</code></pre></div>



<p class="has-border -border01"><strong><span class="swl-inline-color has-swl-deep-04-color">総量のみ表示</span></strong>されています。</p>



<p>duコマンドのSオプションで、<strong><span class="swl-inline-color has-swl-main-color">サブディレクトリの容量は数えない</span></strong>で表示します。</p>



<p>duコマンドの結果と比べてみます。</p>



<div class="swell-block-columns"><div class="swell-block-columns__inner">
<div class="swell-block-column swl-has-mb--s">
<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# du
4       ./sh_test/file_exist
4       ./sh_test/18test
8       ./sh_test/output
0       ./sh_test/74_dir1
328     ./sh_test
8       ./bash-completion/completions
12      ./bash-completion
4       ./.local/share/xrdp
4       ./.local/share
4       ./.local
4       ./.dbus/session-bus
4       ./.dbus
3078732 .</code></pre></div>
</div>



<div class="swell-block-column swl-has-mb--s">
<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# du -S
4       ./sh_test/file_exist
4       ./sh_test/18test
8       ./sh_test/output
0       ./sh_test/74_dir1
312     ./sh_test
8       ./bash-completion/completions
4       ./bash-completion
4       ./.local/share/xrdp
0       ./.local/share
0       ./.local
4       ./.dbus/session-bus
0       ./.dbus
3078308 .</code></pre></div>
</div>
</div></div>



<p class="has-border -border01"><span class="swl-bg-color has-swl-deep-01-background-color">duコマンド</span>は<span class="swl-inline-color has-swl-deep-01-color">サブディレクトリの容量もプラス</span>していますが、<span class="swl-bg-color has-swl-deep-02-background-color">Sオプション</span>を付ける事で<span class="swl-inline-color has-swl-deep-02-color">ディレクトリ単体の容量</span>を表示しています。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://sugublog.org/linux-du-command-2/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>【Linux基礎】dfコマンドの使い方！ファイルシステム別の容量確認コマンド</title>
		<link>https://sugublog.org/linux-du-command/</link>
					<comments>https://sugublog.org/linux-du-command/?noamp=mobile#respond</comments>
		
		<dc:creator><![CDATA[suguru]]></dc:creator>
		<pubDate>Mon, 27 May 2024 15:00:00 +0000</pubDate>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[サーバ]]></category>
		<category><![CDATA[du]]></category>
		<category><![CDATA[linux]]></category>
		<guid isPermaLink="false">https://sugublog.org/?p=6865</guid>

					<description><![CDATA[<p><img src="https://sugublog.org/wp-content/uploads/2021/12/PC教室20211216-1-1024x944.jpg" class="webfeedsFeaturedVisual" /></p>Linuxサーバーでディスクの容量を確認する、dfコマンドについて学んで行きます。 サーバーエンジニアはディスクの容量を気にしなければいけません。そんな時に役立つdfコマンドをマスターしましょう！ Linuxのdfコマン [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><img src="https://sugublog.org/wp-content/uploads/2021/12/PC教室20211216-1-1024x944.jpg" class="webfeedsFeaturedVisual" /></p>
<p>Linuxサーバーで<span class="swl-marker mark_orange">ディスクの容量を確認する、<strong><span class="swl-inline-color has-swl-deep-01-color">dfコマンド</span></strong></span>について学んで行きます。</p>



<p>サーバーエンジニアはディスクの容量を気にしなければいけません。そんな時に役立つdfコマンドをマスターしましょう！</p>



<h2 class="wp-block-heading">Linuxのdfコマンドの使い方</h2>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img decoding="async" width="1024" height="428" src="https://sugublog.org/wp-content/uploads/2021/11/HDD_1107-2-1-1024x428.jpg" alt="ハードディスク" class="wp-image-4361" srcset="https://sugublog.org/wp-content/uploads/2021/11/HDD_1107-2-1-1024x428.jpg 1024w, https://sugublog.org/wp-content/uploads/2021/11/HDD_1107-2-1-300x126.jpg 300w, https://sugublog.org/wp-content/uploads/2021/11/HDD_1107-2-1-768x321.jpg 768w, https://sugublog.org/wp-content/uploads/2021/11/HDD_1107-2-1.jpg 1200w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>
</div>


<p>Linuxで<span class="swl-marker mark_orange">ディスクの容量を表示する<strong><span class="swl-inline-color has-swl-deep-01-color">dfコマンドの基礎構文</span></strong></span>を以下に示します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>df [オプション] [ディスク]</code></pre></div>



<p>カレントディレクトリでdfコマンドを使用してみます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# df
ファイルシス            1K-ブロック    使用   使用可 使用% マウント位置
devtmpfs                     495440       0   495440    0% /dev
tmpfs                        507268       0   507268    0% /dev/shm
tmpfs                        507268    6888   500380    2% /run
tmpfs                        507268       0   507268    0% /sys/fs/cgroup
/dev/mapper/centos-root    32696320 7113248 25583072   22% /
/dev/sda1                   1038336  173404   864932   17% /boot
tmpfs                        101456       0   101456    0% /run/user/0</code></pre></div>



<p>dfコマンドの表示の意味を以下にまとめます。</p>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>dfコマンドの項目</th><th>意味</th></tr></thead><tbody><tr><td>ファイルシステム</td><td>ファイルシステムの名前</td></tr><tr><td>1K-ブロック</td><td>ブロック数</td></tr><tr><td>使用</td><td>使用している容量</td></tr><tr><td>使用可</td><td>使用していない容量</td></tr><tr><td>使用%</td><td>使用率</td></tr><tr><td>マウント位置</td><td>マウント位置情報</td></tr></tbody></table><figcaption class="wp-element-caption">dfコマンドの結果の意味</figcaption></figure>



<p class="is-style-icon_pen">Linuxでファイルやディレクトリの容量を確認したい場合は以下の記事を参照下さい。</p>


<div class="swell-block-postLink">			<div class="p-blogCard -internal" data-type="type1" data-onclick="clickLink">
				<div class="p-blogCard__inner">
					<span class="p-blogCard__caption">あわせて読みたい</span>
					<div class="p-blogCard__thumb c-postThumb"><figure class="c-postThumb__figure"><img decoding="async" src="https://sugublog.org/wp-content/uploads/2021/07/analytics-1-300x200.jpg" alt="" class="c-postThumb__img u-obf-cover" width="320" height="180"></figure></div>					<div class="p-blogCard__body">
						<a class="p-blogCard__title" href="https://sugublog.org/linux-du-command-2/">【Linux基礎】duコマンドでファイルの容量を確認する方法</a>
						<span class="p-blogCard__excerpt">Linuxサーバーでファイルやディレクトリの容量を確認するコマンドにduコマンドがあります。 そのduコマンドの使い方やオプションについてまとめます。 Linuxでduコマン&#8230;</span>					</div>
				</div>
			</div>
		</div>


<h2 class="wp-block-heading">Linuxのdfコマンドのオプション</h2>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img decoding="async" width="1024" height="664" src="https://sugublog.org/wp-content/uploads/2021/11/HDD_1107-3-1-1024x664.jpg" alt="ハードディスク" class="wp-image-4363" srcset="https://sugublog.org/wp-content/uploads/2021/11/HDD_1107-3-1-1024x664.jpg 1024w, https://sugublog.org/wp-content/uploads/2021/11/HDD_1107-3-1-300x195.jpg 300w, https://sugublog.org/wp-content/uploads/2021/11/HDD_1107-3-1-768x498.jpg 768w, https://sugublog.org/wp-content/uploads/2021/11/HDD_1107-3-1.jpg 1199w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>
</div>


<p>Linuxの<strong><span class="swl-inline-color has-swl-deep-01-color">dfコマンドのオプション</span></strong>についてまとめます。</p>



<figure class="wp-block-table"><table><thead><tr><th>dfコマンドのオプション</th><th>効果</th></tr></thead><tbody><tr><td>-k,-m</td><td>-kはキロバイト、-mはメガバイトで表示（デフォルトはキロ）</td></tr><tr><td>-h</td><td>容量に合わせた適切な単位にして表示</td></tr><tr><td>-i</td><td>i-nodeを表示する</td></tr><tr><td>-T</td><td>ファイルシステムのタイプ（種類）を表示</td></tr><tr><td>-a</td><td>全てのディスクを表示する</td></tr></tbody></table><figcaption class="wp-element-caption">dfコマンドのオプション一覧</figcaption></figure>



<h2 class="wp-block-heading">単位を指定して容量を指定する</h2>



<p>Linuxのdfコマンドで、<span class="swl-marker mark_orange"><strong>単位を指定して</strong>容量を表示したい場合</span>は、-kや-mオプションを使用します。</p>



<p><span class="swl-marker mark_orange"><strong><span class="swl-inline-color has-swl-deep-01-color">デフォルトのdfコマンド</span></strong>でファイルシステムの容量を表示</span>します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# df
ファイルシス            1K-ブロック    使用   使用可 使用% マウント位置
devtmpfs                     495440       0   495440    0% /dev
tmpfs                        507268       0   507268    0% /dev/shm
tmpfs                        507268    6888   500380    2% /run
tmpfs                        507268       0   507268    0% /sys/fs/cgroup
/dev/mapper/centos-root    32696320 7113252 25583068   22% /
/dev/sda1                   1038336  173404   864932   17% /boot
tmpfs                        101456       0   101456    0% /run/user/0</code></pre></div>



<p><span class="swl-marker mark_blue"><strong><span class="swl-inline-color has-swl-deep-02-color">単位をキロバイトで表示</span></strong>するには、-kオプション</span>を使用します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# df -k
ファイルシス            1K-ブロック    使用   使用可 使用% マウント位置
devtmpfs                     495440       0   495440    0% /dev
tmpfs                        507268       0   507268    0% /dev/shm
tmpfs                        507268    6888   500380    2% /run
tmpfs                        507268       0   507268    0% /sys/fs/cgroup
/dev/mapper/centos-root    32696320 7113252 25583068   22% /
/dev/sda1                   1038336  173404   864932   17% /boot
tmpfs                        101456       0   101456    0% /run/user/0</code></pre></div>



<p class="has-border -border01">単位がキロバイトで表示されています。</p>



<p class="is-style-icon_info">数字に変化はありません。つまりdfコマンドのデフォルトはキロバイトで表示されます。</p>



<p><span class="swl-marker mark_green"><strong><span class="swl-inline-color has-swl-deep-03-color">単位をメガバイトで表示</span></strong>するには、-mオプション</span>を使用します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# df -m
ファイルシス            1M-ブロック  使用 使用可 使用% マウント位置
devtmpfs                        484     0    484    0% /dev
tmpfs                           496     0    496    0% /dev/shm
tmpfs                           496     7    489    2% /run
tmpfs                           496     0    496    0% /sys/fs/cgroup
/dev/mapper/centos-root       31930  6947  24984   22% /
/dev/sda1                      1014   170    845   17% /boot
tmpfs                           100     0    100    0% /run/user/0</code></pre></div>



<p class="has-border -border01">単位がメガバイトで表示されています。</p>



<h2 class="wp-block-heading">容量に合わせた適切な単位にして表示</h2>



<p>Linuxのdfコマンドで<span class="swl-marker mark_orange"><strong>容量に合わせた、適切な単位にして表示</strong>したい場合は、-hオプション</span>を使用します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# df -h
ファイルシス            サイズ  使用  残り 使用% マウント位置
devtmpfs                  484M     0  484M    0% /dev
tmpfs                     496M     0  496M    0% /dev/shm
tmpfs                     496M  6.8M  489M    2% /run
tmpfs                     496M     0  496M    0% /sys/fs/cgroup
/dev/mapper/centos-root    32G  6.8G   25G   22% /
/dev/sda1                1014M  170M  845M   17% /boot
tmpfs                     100M     0  100M    0% /run/user/0</code></pre></div>



<p class="has-border -border01">単位が容量に合わせた、適切な単位にして表示されています。</p>



<h2 class="wp-block-heading">i-nodeを表示する</h2>



<p>Linuxのdfコマンドで<span class="swl-marker mark_orange"><strong>i-nodeを表示</strong>したい場合は、-iオプション</span>を使用します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# df -i
ファイルシス             Iノード I使用    I残り I使用% マウント位置
devtmpfs                  123860   364   123496     1% /dev
tmpfs                     126817     1   126816     1% /dev/shm
tmpfs                     126817   484   126333     1% /run
tmpfs                     126817    16   126801     1% /sys/fs/cgroup
/dev/mapper/centos-root 16353280 90802 16262478     1% /
/dev/sda1                 524288   332   523956     1% /boot
tmpfs                     126817     1   126816     1% /run/user/0</code></pre></div>



<p class="has-border -border01">i-nodeで表示されています。</p>



<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-9330904718533231"
     crossorigin="anonymous"></script>
<ins class="adsbygoogle"
     style="display:block"
     data-ad-format="autorelaxed"
     data-ad-client="ca-pub-9330904718533231"
     data-ad-slot="8455594968"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>



<h2 class="wp-block-heading">ファイルシステムのタイプ（種類）を表示</h2>



<p>Linuxのdfコマンドで<span class="swl-marker mark_orange"><strong>ファイルシステムのタイプ（種類）</strong>を表示したい場合は、-Tオプション</span>を使用します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>[root@localhost ~]# df -T
ファイルシス            タイプ   1K-ブロック    使用   使用可 使用% マウント位置
devtmpfs                devtmpfs      495440       0   495440    0% /dev
tmpfs                   tmpfs         507268       0   507268    0% /dev/shm
tmpfs                   tmpfs         507268    6888   500380    2% /run
tmpfs                   tmpfs         507268       0   507268    0% /sys/fs/cgroup
/dev/mapper/centos-root xfs         32696320 7113252 25583068   22% /
/dev/sda1               xfs          1038336  173404   864932   17% /boot
tmpfs                   tmpfs         101456       0   101456    0% /run/user/0</code></pre></div>



<p class="has-border -border01">ファイルシステムのタイプ（種類）が表示されています。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://sugublog.org/linux-du-command/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
