၁.၁.၃ Command Line မှတဆင့် Raspbian image တပ်ဆင်ခြင်း

၁.၁.၃ Command Line မှတဆင့် Raspbian image တပ်ဆင်ခြင်း

2020, Jan 19    

Etcher, Win32 Disk Imager စသဖြင့် ဆော့ဝဲတွေမသုံးပဲ Terminal ကနေလည်း SD card ပေါ်ကို Raspbian image တင်လို့ရပါတယ်။ ဒီနေရာမှာ သတိပြုရမှာကတော့ Linux File System တွေ သတ်မှတ်ပုံပဲ ဖြစ်ပါတယ်။ Windows OS မှာဆိုရင် Hard Drive ရဲ့ Partition တွေကို Drive C: သို့မဟုတ် Drive D: စဖြင့် Drive Letter တွေကို အသုံးပြုပြီး ဖော်ပြကြပါတယ်။ Linux System တွေမှာတော့ အဲ့ဒီလို Drive Letter တွေကို သုံးလေ့မရှိပဲ /dev/sda , /dev/sdb စသဖြင့် အသုံးပြုဖော်ပြကြပါတယ်။ ဥပမာ - ကွန်ပျူတာထဲမှာ Hard drive တစ်ခုနဲ့ USB Stick တစ်ခု တပ်ဆင်ထားတယ်ဆိုရင် ပထမ Hard drive ကို /dev/sda ၊ USB Stick ကို /dev/sdb ဆိုပြီး ဖော်ပြပါတယ်။ Hard drive မှာမှ Partition ၂ခု ထပ်ခွဲထားသေးတယ်ဆိုရင် ပထမ Partition ကို /dev/sda1 နဲ့ ဒုတိယ Partition ကို /dev/sda2 ဆိုပြီး ထပ်ခွဲပေးပါတယ်။

Raspbian image တင်မယ့် SD card ရဲ့ device အမည်ကို သေချာသိရအောင် SD card ကို ကွန်ပျူတာမှာ မတပ်ခင် အောက်ပါ Command အသုံးပြုပြီး ကွန်ပျူတာမှာ ရှိနေတဲ့ Hard Drive နာမည်တွေ၊ ပမာဏတွေကို မှတ်ထားပါ။ မှတ်ထားပြီးတဲ့နောက် SD card ကို ကွန်ပျူတာမှာ တပ်လိုက်ပြီး df -h command ကိုပဲ ထပ်ရိုက်ပါ။ SD card မတပ်ခင်နဲ့ တပ်ပြီးနောက် ကွာခြားချက်ကို စစ်ဆေးကြည့်လိုက်ရင် SD card ရဲ့ Device အမည်ကို သိနိုင်ပါတယ်။ ပုံမှန်အားဖြင့်တော့ ကွန်ပျူတာမှာ Hard Drive တစ်လုံးပဲ တပ်ဆင်ထားတယ်ဆိုရင် SD card ဟာ /dev/sdb ဖြစ်ဖို့ များပါတယ်။

$ df -h

SD card ထဲ OS မထည့်သွင်းမီ unmount ပြုလုပ်ဖို့ လိုပါတယ်။ အောက်ပါ command သုံးနိုင်ပါတယ်။ SD card မှာ Partition ထပ်ခွဲထားတာ မရှိလို့ /sdb က Drive နာမည်ဖြစ်ပြီး /sdb1 က Partition 1 ဖြစ်ပါတယ်။ ဒါကြောင့် Partition 1 ဖြစ်တဲ့ /dev/sdb1 ကိုပဲ unmount ပြုလုပ်လိုက်ပါတယ်။

$ sudo umount /dev/sdb1

Raspbian image ကို SD card ထဲ ထည့်ဖို့ Unix utility တစ်ခုဖြစ်တဲ့ dd command ကို သုံးပါမယ်။ dd ဆိုတာ Copy and Convert လုပ်ပေးတဲ့ command ပါပဲ။ cc command လို့ နာမည်ပေးဖို့ရာ C Compiler မှာ cc ရှိပြီးသားမို့ dd ဖြစ်သွားတယ်လို့ ဆိုပါတယ်။ Terminal မှာ Raspbian image file တည်ရှိတဲ့ Directory ကို cd command နဲ့ ဝင်ရောက်ထားပြီး အောက်ပါ command ရိုက်ထည့်လိုက်ပါ။ bs=4M က ကူးယူမယ့်နှုန်း 4MB ကို ဆိုလိုပါတယ်။ image file နာမည်နေရာမှာ ကိုယ့် file ရဲ့ နာမည်အတိအကျ၊ /dev/sdb1 နေရာမှာ ကိုယ့် SD card ရဲ့ နာမည်အတိအကျ ပြောင်းထည့်ပေးဖို့ သတိပြုပါ။

$ sudo dd bs=4M if=2019-07-10-raspbian-buster.img of=/dev/sdb1 conv=fsync

Download ဆွဲထားတဲ့ Raspbian image zip file ကို extract မပြုလုပ်ထားဘူး ဆိုရင်တော့ အောက်ပါ command သုံးနိုင်ပါတယ်။

$ unzip -p 2019-07-10-raspbian-buster.zip | sudo dd of=/dev/sdb1 bs=4M conv=fsync

image ကူးယူချိန် ခဏစောင့်ပြီးတဲ့အခါ အောက်ပါကဲ့သို့ status ပေါ်လာရင် SD card ကို Raspberry Pi မှာ တပ်ဆင် အသုံးပြုလို့ရပါပြီ။

901+0 records in
901+0 records out
3779067904 bytes (3.8 GB, 3.5 GiB) copied, 338.135 s, 11.2 MB/s

စိတ်ကြိုက် setup လုပ်ပြီးသား SD card ကို image backup လုပ်ချင်တယ် ဆိုရင်လည်း dd command ကိုပဲ input, output ပြောင်းပြီး သုံးနိုင်ပါတယ်။

$ sudo dd bs=4M if=/dev/sdb1 of=/home/phoewa/raspberry.img

အခန်း(၁)အား ဆက်လက်ဖတ်ရှုရန် - ၁.၂ Raspberry Pi အား Setup ပြုလုပ်ခြင်း