<?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>Raspberry Pi | hgrs&#039;s Blog</title>
	<atom:link href="/archives/tag/raspberry-pi/feed" rel="self" type="application/rss+xml" />
	<link>/</link>
	<description>文字好きエンジニアの技術メモ</description>
	<lastBuildDate>Sun, 29 Aug 2021 08:16:30 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.3.1</generator>

<image>
	<url>/wp-content/uploads/2019/05/cropped-port_512-32x32.png</url>
	<title>Raspberry Pi | hgrs&#039;s Blog</title>
	<link>/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Raspberry Pi に Docker と Docker Compose をインストールする</title>
		<link>/archives/437.html</link>
					<comments>/archives/437.html#respond</comments>
		
		<dc:creator><![CDATA[hgrs]]></dc:creator>
		<pubDate>Tue, 02 Jun 2020 03:00:51 +0000</pubDate>
				<category><![CDATA[技術メモ]]></category>
		<category><![CDATA[Raspberry Pi]]></category>
		<guid isPermaLink="false">/?p=437</guid>

					<description><![CDATA[はじめに ラズパイの環境構築の一環で Docker 周りの環境を用意したので、記録しておきます。 D...]]></description>
										<content:encoded><![CDATA[<h2>はじめに</h2>
<p>ラズパイの環境構築の一環で Docker 周りの環境を用意したので、記録しておきます。</p>
<h2>Docker</h2>
<p>Docker の公式に用意されているインストールスクリプトで簡単にインストールすることができます。</p>
<pre><code class="language-bash">$ curl -sSL https://get.docker.com/ | sh</code></pre>
<p>インストールが終わったら Docker のコマンドの権限をユーザに与えます。</p>
<pre><code class="language-bash">$ sudo usermod -aG docker &lt;username&gt;</code></pre>
<p>例えば、ユーザ名が <code>pi</code> ならば <code>sudo usermod -aG docker pi</code> となります。</p>
<h2>Docker Compose</h2>
<p>Docker Compose は Python の <code>pip</code> を使うと簡単にインストールできます。<br />
Python がインストールされていない人はインストールしてください。<br />
また、公式では環境を汚さないために、仮想環境を使用することが推奨されています。</p>
<p>まず、依存ライブラリをインストールします。</p>
<pre><code class="language-bash">$ sudo apt install libffi-dev</code></pre>
<p>次に Docker Compose 本体をインストールしていきます。</p>
<pre><code class="language-bash">$ pip install docker-compose</code></pre>
<h2>おわりに</h2>
<p><code>sudo apt install docker docker-compose</code> で全て入る未来は来ないんですかね？</p>
]]></content:encoded>
					
					<wfw:commentRss>/archives/437.html/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Raspberry Pi で VNC( x11vnc ) を設定して画面共有する</title>
		<link>/archives/430.html</link>
					<comments>/archives/430.html#respond</comments>
		
		<dc:creator><![CDATA[hgrs]]></dc:creator>
		<pubDate>Tue, 14 Apr 2020 03:54:41 +0000</pubDate>
				<category><![CDATA[技術メモ]]></category>
		<category><![CDATA[Raspberry Pi]]></category>
		<guid isPermaLink="false">/?p=430</guid>

					<description><![CDATA[はじめに ラズパイにを操作するのに、ディスプレイやキーボード、マウスを用意するのが面倒なので、mac...]]></description>
										<content:encoded><![CDATA[<h2>はじめに</h2>
<p>ラズパイにを操作するのに、ディスプレイやキーボード、マウスを用意するのが面倒なので、macOS から画面共有できるようにします。</p>
<h2>x11vnc のインストール</h2>
<p>x11vnc は VNC プロトコルを利用した画面共有を実現するためのものです。</p>
<p>Raspbian では以下のコマンドでインストールすることができます。</p>
<pre><code class="language-bash">$ sudo apt install x11vnc</code></pre>
<h2>x11vnc の設定</h2>
<p>画面共有の認証に使うパスワードを以下のコマンドで設定します。</p>
<pre><code class="language-bash">$ x11vnc -storepasswd</code></pre>
<p>パスワード入力すると <code>Write password to /home/&lt;user_name&gt;/.vnc/passwd?  [y]/n</code> と確認されます。こちらは次に説明する自動起動設定に使用するので <code>y</code> で解答します。</p>
<p>また、Raspberry Pi にディスプレイを接続している場合は、画面共有時、そのディスプレイと同じ画面、同じ解像度で表示されます。<br />
ディスプレイを接続していない場合は、「Raspberry Pi の設定」のディスプレイの解像度が使用されるため、解像度を変更したい場合はこちらを変更します。（コマンドラインから変更する場合は <code>sudo raspi-config</code> &gt; <code>Display Options</code> から設定します）</p>
<h2>自動起動設定</h2>
<p>起動時に毎回、手動で立ち上げるのでは、あまり意味がないので、自動起動の設定を行います。</p>
<p>まず、以下の内容の <code>x11vnc.service</code> というファイルを <code>/etc/systemd/system/</code> に作成します。</p>
<pre><code class="language-text">[Unit]
Description=X11vnc
After=multi-user.target

[Service]
Type=simple
ExecStart=/usr/bin/x11vnc -forever -auth guess -rfbauth /home/pi/.vnc/passwd

[Install]
WantedBy=multi-user.target</code></pre>
<p>これは systemd という Raspbian で採用されているデーモンの設定ファイルで、それぞれのオプションについてはここでは説明しませんが、x11vnc に限らず、自由に自動起動の設定が行えるので、覚えておくと良いでしょう。</p>
<p>また x11vnc の実行オプションにこだわりのある方は上記の <code>ExecStart</code> の行にオプションを書き加えることで実行オプションを変更することができます。</p>
<p>上記の設定ファイルを保存したら、以下のコマンドで設定ファイルを読み込ませます。</p>
<pre><code class="language-bash">$ sudo systemctl daemon-reload</code></pre>
<p>次に、設定が正しく行えて起動できるかを確認するために以下のコマンドで起動します。</p>
<pre><code class="language-bash">$ sudo systemctl start x11vnc</code></pre>
<p>後述する接続方法で接続ができれば、以下のコマンドで、自動起動を有効にします。</p>
<pre><code class="language-bash">$ sudo systemctl enable x11vnc</code></pre>
<h2>画面共有の接続</h2>
<p>macOS から確認するには 画面共有.app を使用します。画面共有.app は Spotlight から検索すると出てきます。</p>
<p>アドレスには Raspberry Pi のホスト名か IP アドレスを指定します。</p>
<p>または、Finder からサーバへ接続（ Command + K ）をし、<code>vnc://raspberrypi.local/</code> に接続することでも画面共有を開始できます。</p>
<p>この際 <code>raspberrypi.local</code> の部分は環境によって IP アドレスやホスト名に適宜変更してください。</p>
<h2>おわりに</h2>
<p>これでラズパイ用の周辺機器がなくても操作できるようになりました。</p>
]]></content:encoded>
					
					<wfw:commentRss>/archives/430.html/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Raspberry Pi で Samba を設定してホームディレクトリにアクセスする</title>
		<link>/archives/428.html</link>
					<comments>/archives/428.html#respond</comments>
		
		<dc:creator><![CDATA[hgrs]]></dc:creator>
		<pubDate>Mon, 13 Apr 2020 03:21:05 +0000</pubDate>
				<category><![CDATA[技術メモ]]></category>
		<category><![CDATA[Raspberry Pi]]></category>
		<guid isPermaLink="false">/?p=428</guid>

					<description><![CDATA[はじめに ラズパイをセットアップしたので、ファイル共有の設定をしていきたいと思います。 Samba ...]]></description>
										<content:encoded><![CDATA[<h2>はじめに</h2>
<p>ラズパイをセットアップしたので、ファイル共有の設定をしていきたいと思います。</p>
<h2>Samba のインストール</h2>
<p><a href="https://www.samba.org/">Samba</a> は SMB プロトコルを利用したファイル共有を実現するためのものです。</p>
<p>Raspbian では以下のコマンドでインストールすることができます。</p>
<pre><code class="language-bash">$ sudo apt install samba</code></pre>
<h2>ホームディレクトリを設定</h2>
<p>インストールした Samba の設定ファイルは <code>/etc/samba/smb.conf</code> にあります。これを編集してホームディレクトリにアクセスできるようにします。</p>
<p>お好きなエディタか <code>sudo nano /etc/samba/smb.conf</code> のコマンドで以下のように編集してください。</p>
<p><code>#</code> の行はコメントなので入力する必要はありません</p>
<pre><code class="language-text"># [homes] より下を編集
# browsable = no を yes に変更
browsable = yes
# read only = yes を no に変更
read only = no
# create mask = 0700 をコメントアウト / もしくは権限変更
# directory mask = 0700 をコメントアウト / もしくは権限変更</code></pre>
<p>これで設定ファイルを保存すれば、ホームディレクトリにアクセスできます。</p>
<h2>Samba ユーザの作成</h2>
<p>Samba のユーザを作成するため以下のコマンドでユーザを作成します。</p>
<pre><code class="language-bash">$ sudo smbpasswd -a &lt;user_name&gt;</code></pre>
<p><code>&lt;user_name&gt;</code> は自分の好きなものにします。例えば <code>pi</code> の場合は <code>sudo smbpasswd -a pi</code> となります。</p>
<h2>Samba の再起動</h2>
<p>変更した設定を読み込ませるために以下のコマンドで、Samba を再起動します。</p>
<pre><code class="language-bash">$ sudo systemctl restart smbd</code></pre>
<p>これで他のデバイスからホームディレクトリに自由にアクセスできるようになります。</p>
<h2>他のデバイスからアクセス。</h2>
<p>例えば macOS からは Finder で Command + K でサーバへ接続し、 <code>smb:/raspberrypi.local/</code> に先ほど作成したユーザで接続すると、ディレクトリが選択できて <code>Home</code> を選ぶと、ホームディレクトリに移動できます。</p>
<p>この際 <code>raspberrypi.local</code> の部分は環境によって IP アドレスやホスト名に適宜変更してください。</p>
<h2>おわりに</h2>
<p>これでファイルの移動や共有が簡単になりました。</p>
]]></content:encoded>
					
					<wfw:commentRss>/archives/428.html/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>macOS で Raspberry Pi 用に Raspbian を SD カードに焼く</title>
		<link>/archives/425.html</link>
					<comments>/archives/425.html#respond</comments>
		
		<dc:creator><![CDATA[hgrs]]></dc:creator>
		<pubDate>Sun, 12 Apr 2020 00:47:48 +0000</pubDate>
				<category><![CDATA[技術メモ]]></category>
		<category><![CDATA[Raspberry Pi]]></category>
		<guid isPermaLink="false">/?p=425</guid>

					<description><![CDATA[はじめに クローゼットに眠っていたラズパイを有効活用すべく、久しぶりにセットアップを行ったので、その...]]></description>
										<content:encoded><![CDATA[<h2>はじめに</h2>
<p>クローゼットに眠っていたラズパイを有効活用すべく、久しぶりにセットアップを行ったので、その記録です。</p>
<h2>Raspbian のダウンロード</h2>
<p>まずは OS 本体をダウンロードしてきます。</p>
<p><a href="https://www.raspberrypi.org/downloads/raspbian/">ダウンロードサイト</a></p>
<p>好きなバージョンを選んでダウンロードします。僕は GUI 環境が欲しかったので Raspbian Buster with desktop を選びました。</p>
<p><img decoding="async" src="/wp-content/uploads/2020/04/ad4867038f1d716ed71e1c47cbee5673.png" alt="Raspbian Buster with desktop" /></p>
<h2>SD カードに書き込み</h2>
<h3>SD カードのアンマウント</h3>
<p>書き込みに備えて、SD カードをアンマウント状態にします。</p>
<p>ターミナルから <code>diskutil list</code> コマンドを実行して、SD カードのデバイス番号を取得します。環境にもよりますが <code>/dev/disk0</code> や <code>/dev/disk1</code> などは macOS のために使用されるため、<code>/dev/disk2</code> 以降に割り当てられていると思います。</p>
<p>僕の環境では <code>/dev/disk2</code> であったため、これ以降は <code>/dev/disk2</code> の表記を使いますが、それぞれの番号に置き換えてコマンドを実行してください。</p>
<p>アンマウントは以下のコマンドで実行できます。</p>
<pre><code class="language-bash">$ diskutil unmountDisk /dev/disk2</code></pre>
<h3>OS の書き込み</h3>
<p>書き込みは <code>dd</code> コマンドを使用して、<code>dd if=&lt;path_to_os&gt; of=&lt;disk&gt;</code> の様に実行できます。</p>
<p>執筆時点で最新の Raspbian を使用して、カレントディレクトリに解凍してある場合は以下のコマンドで、書き込むことができます。</p>
<pre><code class="language-bash">$ sudo dd if=2020-02-13-raspbian-buster.img of=/dev/rdisk2 bs=1m</code></pre>
<p>ここで、気をつけたいのが、先ほど確認したデバイスは <code>/dev/disk2</code> であったのに対し、今回の入力では <code>/dev/rdisk2</code> を使用しています。</p>
<p><code>/dev/disk2</code> はバッファリングを使用しアクセスするのに対し、<code>/dev/rdisk2</code> は直にデバイスへアクセスするため、書き込みを高速化することができます。</p>
<p>またオプションの <code>bs=1m</code> も高速化のために使用しています。</p>
<p>どちらも高速化のために行っているので、<code> sudo dd if=2020-02-13-raspbian-buster.img of=/dev/disk2</code> という通常コマンドでも、問題なく書き込むことができます。</p>
<p>時間は記録してませんが 5 – 10 分程度だった気がします。</p>
<h2>Raspberry Pi で起動確認</h2>
<p>書き込んだ SD カードを Raspberry Pi に戻し、起動させます。ちゃんと起動すれば成功です。</p>
<p>セットアップが始まるので、ガイドに沿って進めていきましょう。</p>
<h2>おわりに</h2>
<p>前は FreeBSD で使ってたので Raspbian のセットアップは購入時以来だったのですが、ガイドに沿って進めるとめちゃくちゃ簡単に使えるんですね。</p>
<p>もっと苦戦するものかと思ってました。</p>
]]></content:encoded>
					
					<wfw:commentRss>/archives/425.html/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
