Q&A
いつでもOK

iPhoneのLinuxのos を使うutm se設定

Keed
Keedさん
レギュラー

IMG_8343.jpeg

iPhoneでLinuxのos を使うためにutm seで設定しているのですが、
https://qiita.com/nouernet/items/b5fff473ea5390b321b9の"「vda」を入力"(「lvm」を入力)あたりまで進んだのですが、画像のようになってしまい、サイトと同じようになりませんでした。理由はわかりますでしょうか?


1 件の回答

moto g24(mineo(docomo)) medal ベストアンサー獲得数 13 件

 1つめの赤丸で"vda"を入力せず、
enterキーを押すだけで良いような気がします


 enterキーは"none"を選択したことになり、デフォルトの"vda"が設定されると思います

 "vda"を入力すると、デフォルトの"vda"に入力した"vda"が足され、
"vdavda"が選択されるようです

 "vdavda"というデバイスはないので、
"…/vdavda is not a block device" というエラーを返しています
  • 1
あいだの2件を表示

AX7(mineo(softbank)) medal ベストアンサー獲得数 44 件

>>2

以下は、setup-alpine コマンドのソースコード
https://github.com/alpinelinux/alpine-conf/blob/master/setup-alpine.in
の該当箇所です。(322行~325行目)

print_heading2 " Disk & Install"
print_heading2 "----------------"
DEFAULT_DISK=none \
setup-disk -w /tmp/alpine-install-diskmode.out -q ${DISKOPTS} || exit

要はsetup-disk コマンドを呼び出しているだけなので、
setup-disk コマンドのソースコード
https://github.com/alpinelinux/alpine-conf/blob/master/setup-disk.in
の該当箇所を探します。(1393行目~)

ask_disk() {
local prompt="$1"
local help_func="$2"
local i=
shift 2
local default_disk="${DEFAULT_DISK:-$1}"

resp=
while ! all_in_list "$resp" $@ "none" "abort"; do
echo "Available disks are:"
show_disk_info "$@"
printf "\n"
ask "$prompt" "$default_disk"
case "$resp" in
'abort') exit 0;;
'none') return 0;;
'?') $help_func;;
*) for i in $resp; do
if ! [ -b "/dev/$i" ]; then
echo "/dev/$i is not a block device" >&2
resp=
fi
done;;
esac
done
}

ユーザの入力値(今回の場合 vda)に対してチェックしているのは、最後の
if ! [ -b "/dev/$i" ]; then echo "/dev/$i is not a block device" >&2
です。
(この時点で $i には vda が入っています)

つまり、
/dev/ユーザの入力値
がブロックデバイスかどうか判断し、ブロックデバイスでない場合、
/dev/ユーザの入力値 is not a block device
と出力するようになっています。
今回の場合、
/dev/vdavda is not a block device
と出ているのですから、ユーザの入力値がvdavdaであったことは明らかです。

何も入力しなかった場合、/dev/vdaが規定値として入るなんて処理は、このプログラムのどこにもありません。憶測で書くのは止めましょう。
  • 4

AX7(mineo(softbank)) medal ベストアンサー獲得数 44 件

>>3 _カブさん

>仮想環境の /vda 内に 設定を保存できるので、"none"(変更しない - 既定の場所に保存)を選択

ソースコードを覗いたついでなので、こちらも該当箇所を。

https://github.com/alpinelinux/alpine-conf/blob/master/setup-lbu.in
176行目~

while [ -z "$media" ]; do
ask "Enter where to store configs ($alternatives or 'none')" "$suggestion"
media="$resp"
case "$media" in
none|LABEL=*) break;;
esac
if [ -d "/media/$media" ]; then
break
fi
echo "/media/$media is not a directory. Please try again."
media=
done

if [ "$media" = "none" ]; then
exit 0
fi

set_media "$media"

ユーザーがディレクトリを指定した場合は、そのディレクトリを指定して set_media コマンドを起動し設定ファイルを作成しています。

何も入力しない場合は、何も設定せずに終了であって、既定の場所へ保存ではありません。

そもそも規定値がある場合は、その規定値を[]の中に表示するのがsetupコマンドのルールであって、none は「何もしない」という意味しかありえませんよ。
  • 5