コマンドラインからUbuntuをインストールするためのUSBインストーラーを作成しますか?


22

Ubuntuを新しいコンピューターにインストールするための起動可能なUSBイメージを作成しようとしています。

Ubuntuデスクトップ用のUSBドライブの作成」の指示に従う前にこれを実行しましたが、Ubuntuデスクトップを使用できません。

コマンドラインのみを使用して同じことを行うにはどうすればよいですか?

私が試したこと:

  • Mac用のubuntu.comの「USBドライブの作成」の指示に従って、Mac OS Xで起動可能なUSBを作成します。起動しません。
  • usb-creator: による apt-cache search usb-creatorウィキペディアに、usb-creatorはグラフィカルツールとしてのみ存在します。
  • 指示「手動作成」で説明ファイルとディレクトリのなし(例:help.ubuntu.comではcasperfilesystem.manifestmenu.lst)ISOイメージ内に存在する、と私はそれらを交換したかわかりません。
  • unetbootinスクリプト:完全にスクリプト化されている場合でも、実行するにはXサーバー(グラフィックスサポート)が必要です。(コマンドsudo unetbootin lang=en method=diskimage isofile=~/ubuntu-10.10-server-amd64.iso installtype=USB targetdrive=/dev/sdg1 autoinstall=yesはエラーメッセージを表示しますunetbootin: cannot connect to X server。)

更新

GRUBいじりも試してみました:からの情報のマージ

私はそこで途中に着くことができました-USBから起動し、grubメニューを表示してインストールを開始しましたが、インストールは完了しませんでした。

参考までに、これは私が最も近いものです:

sudo su
  # mount USB pen
mount /dev/sd[X]1 /media/usb
  # install GRUB
grub-install --force --no-floppy --root-directory=/media/usb /dev/sd[X]
  # copy ISO image to USB
cp ~/ubuntu-10.10-server-amd64.iso /media/usb
  # mount ISO image, copy existing grub.cfg
mount ~/ubuntu-10.10-server-amd64.iso /media/iso/ -o loop
cp /media/iso/boot/grub/grub.cfg /media/usb/boot/grub/

その後、編集/media/usb/boot/grub.cfgして.isoループバックを追加します。例はgrubエントリです。

menuentry "Install Ubuntu Server" {
  set gfxpayload=keep
  loopback loop /ubuntu-10.10-server-amd64.iso  
  linux (loop)/install/vmlinuz  file=(loop)/preseed/ubuntu-server.seed iso-scan/filename=/ubuntu-10.10-server-amd64.iso quiet --
  initrd (loop)/install/initrd.gz
}

USBから起動すると、Grub起動メニューが表示され、インストーラーが起動しますが、インストーラーは、CD-ROMドライブが見つからないという不満を数画面表示した後、gaveめました。(当然、インストールするボックスには光学ドライブがありません。)

この特定の問題は、Ubuntu LiveデスクトップCD(光学式ドライブを搭載したコンピューター)を使用して「USBドライブの作成」ルーチンを放棄して実行し、USBインストールが機能することで解決しました。

しかし、Xサーバーと光学ドライブを使用しないUbuntuシステムのコマンドラインからこれを行う方法があると予想しているため、疑問が残っています。

誰もが方法を知っていますか?


unetbootinを試してください。
RolandiXor

@Roland- unetbootin: cannot connect to X server 完全にスクリプト化されている場合でも(unetbootin lang=en method=diskimage isofile=/srv/share/ubuntu-10.10-server-amd64.iso installtype=USB targetdrive=/dev/sdg1 autoinstall=yes)Xが必要なようです。ただし、ヒントをありがとう。他のオプションが足りなくなったらXをインストールするかもしれません。
JG-ファウスト

これらは有望に見えます:pendrivelinux.com/install-grub2-on-usb-from-ubuntu-linux およびunix.stackexchange.com/questions/665/…調整が必要ですが、試してみます。
jgファウスト

@ jg-faustus:物事がとても複雑だったら、多分Linuxを放棄したでしょう。を使用しますdd。その宝石。十分とは言えません。そして、すべてのLinuxディストリビューションにはdd; そのため、スクリプト/書き込み/構成を行うことなく、普遍的なソリューションを使用できます。ただ一つの美しいライン。
マヘシュ

そのgrub.cfgエントリは、CDイメージが正常に検出された後の致命的な「事前設定ファイルの取得に失敗しました」エラーを回避するためfile=/cdrom/preseed/ubuntu-server.seedに、linux行で(およびではなくfile=(loop)/preseed/ubuntu-server.seed)言う必要があります。
ポール・ウィテカー

回答:


9

USBから起動すると、Grub起動メニューが表示され、インストーラーが起動しますが、インストーラーは、CD-ROMドライブが見つからないという不満を数画面表示した後、gaveめました。

これはubuntuサーバーisoの既知のバグです(デスクトップisoは正常に動作します)が、usbドライブのisoからパッケージを取得する修正があります:インストーラーで一度、Ctrl + Alt + f2でttyを開き、ターミナル:

mount -t vfat /dev/sdX1 /mnt
ln -sf /mnt/ubuntu-server.iso /dev/sr0

その後、インストーラーに戻り、cdでパッケージのスキャンを再試行します。動作するはずです。


私は現時点でそれを試してみるシステムを持っていませんが、ええ-それはうまくいくはずです:)ありがとう!
JG-ファウスト

「CD-ROMの検出とマウント」メニューオプションが元に戻り/dev/sr0、元に戻してln元の(壊れた)状態に戻ることがわかりました。ただし、「CD-ROMのマウントを再試行しますか?」プロンプトlnでtty2を実行し、[はい]を押すように戻り、動作しました。(ただし、「再試行しますか?」ダイアログは、mountコマンドが与えられた後にのみ表示されます。)
ポール・ウィテカー

10

#で試しましたdd if=path/to/image.iso of=/dev/sd# か?


これは宝石です。最高のもの。どんなLinuxディストリビューションでも動作します。ただし、特に注意する必要があります。bs=20Mその他の適切な値を追加すると、速度が上がります。詳細については、次を参照してくださいman dd
Mahesh

1
ノー@Mahesh、一部のLinuxディストリビューションは、そのうちの一つはOpenSUSEのある、このコマンドを使用しても動作しません
アンワル

またはMeeGoとそれらの画像の派生物はハイブリッド画像と呼ばれます
-rzr

5

あなたの前にプロンプ​​ト以外のものはないと仮定しましょう。GUIがある場合は、ターミナルを開いて、ここで説明されているすべての操作を実行できます。または、ttyを使用できます。

警告:
潜在的な損傷を避けるため、非常に慎重に指示に従ってください。

  • 入力してルートプロンプトに切り替えます sudo su

    USBがどのデバイスであるかを検出します。

  • tail -f /var/log/syslog

これで、syslogでライブビューが表示されます。USBドライブを接続します。画面にいくつかのメッセージが表示されます。このようなもの。

May 27 00:35:07 Mahesh kernel: [ 5054.646585] usb 2-1.1: new high-speed USB device number 5 using ehci_hcd
May 27 00:35:07 Mahesh kernel: [ 5054.741437] scsi8 : usb-storage 2-1.1:1.0
May 27 00:35:07 Mahesh mtp-probe: checking bus 2, device 5: "/sys/devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.1"
May 27 00:35:07 Mahesh mtp-probe: bus: 2, device: 5 was not an MTP device
May 27 00:35:08 Mahesh kernel: [ 5055.739177] scsi 8:0:0:0: Direct-Access     JetFlash TS2GJFV30        8.07 PQ: 0 ANSI: 2
May 27 00:35:08 Mahesh kernel: [ 5055.740198] sd 8:0:0:0: Attached scsi generic sg3 type 0
May 27 00:35:08 Mahesh kernel: [ 5055.741593] sd 8:0:0:0: [sdc] 4005888 512-byte logical blocks: (2.05 GB/1.91 GiB)
May 27 00:35:08 Mahesh kernel: [ 5055.742214] sd 8:0:0:0: [sdc] Write Protect is off
May 27 00:35:08 Mahesh kernel: [ 5055.742218] sd 8:0:0:0: [sdc] Mode Sense: 03 00 00 00
May 27 00:35:08 Mahesh kernel: [ 5055.742712] sd 8:0:0:0: [sdc] No Caching mode page present
May 27 00:35:08 Mahesh kernel: [ 5055.742715] sd 8:0:0:0: [sdc] Assuming drive cache: write through
May 27 00:35:08 Mahesh kernel: [ 5055.745326] sd 8:0:0:0: [sdc] No Caching mode page present
May 27 00:35:08 Mahesh kernel: [ 5055.745329] sd 8:0:0:0: [sdc] Assuming drive cache: write through
May 27 00:35:08 Mahesh kernel: [ 5055.781564]  sdc: sdc1
May 27 00:35:08 Mahesh kernel: [ 5055.784191] sd 8:0:0:0: [sdc] No Caching mode page present
May 27 00:35:08 Mahesh kernel: [ 5055.784196] sd 8:0:0:0: [sdc] Assuming drive cache: write through
May 27 00:35:08 Mahesh kernel: [ 5055.784200] sd 8:0:0:0: [sdc] Attached SCSI removable disk

それを見て、角かっこが繰り返していることを見つけますか?sdcこの場合。一枚の紙にメモしてください。タイプCtrl+Cプロンプトを取得します。

USBに書き込むISOファイルを見つけます。

ISOファイルが/path/to/iso/somecd.iso;の場合 一枚の紙にこの経路に注意してください。

USBに書き込む

警告:

これにより、USBディスク全体が消去されます。続行する前にバックアップしてください。

  • dd if=/path/to/iso/somecd.iso of=/dev/sdc ibs=20M obs=20M

/path/to/iso/somecd.isoisoファイルへの実際のパスに置き換えます。

/dev/sdc先に書き留めたものに置き換えます。繰り返し部分がsdb;の場合 使用/dev/sdbなど。

警告:

ドライブ文字を間違って入力すると、別のドライブで永続的なデータが失われます。ddコマンドを発行する際は特に注意してください。


2
間違ったディスクを選択してデータの損失を防ぐために、/dev/disk/by-label/LABEL代わりに/dev/sdc
-totti

1
賢明な提案。しかし、ラベルがわからない場合、または「新しいボリューム」が大量にある場合は、苦痛になります。私は常にsdXを好むが、それは個人的な選択だ。
マヘシュ

1
ベストアンサー。推奨される改善点の1つは、ddへの入力ストリームでpvを使用することです。そのため、ユーザーは進行状況のフィードバックを取得します(つまり、pvはisoを読み取り、ddにストリーミングし、stderrに進行状況を表示します)。
ステーブルドッグ14年

2

ターミナルから起動可能なUbuntu USBフラッシュドライブを作成する

  • ubuntu.isoファイルをマウントします。これには、ターミナルで以下のコマンドを実行します。

    sudo mkdir /media/iso
    sudo mount -o loop /path/to/ubuntu.iso /media/iso
    
  • 次に、すべてのファイル/media/isoをのマウントされたUSBフラッシュドライブフォルダーにコピーします/media

    USBフラッシュドライブを挿入します。

    USBパーティションは内部にマウントする必要があります。USB /mediaドライブが/media/xxxxフォルダー内にマウントされていると仮定します。次に、以下のコマンドを実行します。

    cp -a /media/iso/. /media/xxx
    

    lsblkコマンドを実行して、USBデバイスパーティションを確認します。

  • 次にldlinux.sys、USBフラッシュドライブパーティション(私の場合は/ dev / sdd1)内にファイルを貼り付けて、USBを起動可能にします。これには、以下のコマンドを実行します。

    sudo apt-get install syslinux mtools
    syslinux -s /dev/sdd1
    
  • 入る/media/xxxフォルダと名前を変更isolinuxするディレクトリをsyslinux.Thenは、名前を変更したSYSLINUXフォルダに移動して、ファイルの名前を変更isolinux.cfgしますsyslinux.cfg

       mv /media/xxx/isolinux /media/xxx/syslinux
       mv /media/xxx/syslinux/isolinux.cfg /media/xxx/syslinux/syslinux.cfg
    
  • PCを再起動してboot-orderBIOSをUSBに変更すると、ubuntu usbフラッシュドライブが起動し、インストールできます。

この方法は、ubuntuだけでなく、どのLinuxディストリビューションでも機能します。


1

Ubuntu LiveデスクトップCDを使用して、この特定の問題を解決しました。

オプティカルドライブを搭載したコンピューターでLive CDを起動すると、Ubuntuデスクトップの指示を使用して、既存のインストールに触れることなくUSBペンインストーラーを作成できます。


1

これを行うためにusb-creatorをハックできます。

すでにusbデバイスのパーティション1として単一のvfatパーティションがあり(usb-creator-gtkのディスク消去ステップがこれを実行します)、ブート可能とマークされているはずです。

次に、usb-creator pythonコードを取得して支援します。

$ sudo apt-get install usb-creator

または

$ bzr branch lp:usb-creator

このコンテンツでファイルを作成し、usb-creator-cliという名前を付けます。最後の手順でbzrを使用する場合は、このファイルをusb-creatorディレクトリ(bzrブランチのルート)に配置します

#!/usr/bin/env python
from __future__ import print_function
from usbcreator.misc import sane_path, setup_gettext, setup_logging, text_type

from usbcreator.install import install

sane_path()
setup_logging()
setup_gettext()

#/dev/sdb1 should be mounted on /mnt
#iso should be mounted to /iso
dev = '/dev/sdb1'
source = '/iso'
target = '/mnt' 
ugh = install(source, target, False, device=dev)
ugh.success = print
ugh.failure = print
ugh.progress = print
ugh.progress_message = print
ugh.progress_pulse = print
ugh.progress_pulse_stop = print
ugh.retry = print
ugh.run()

実行可能にする

$ chmod +x usb-creator-cli

次に、isoを/ isoにマウントし、USBデバイスを/ mntにマウントします

$ sudo mkdir /iso ; sudo mount ubuntu-server-12.10-amd64.iso /iso
$ sudo mount /dev/sdb1 /mnt

コンソールで非常に詳細なメッセージが必要な場合は、〜/ .cache / usb-creator.logをtailできます

$ tail -f ~/.cache/usb-creator.log &

次に、そのusb-creator-cliスクリプトを実行します

$ sudo ./usb-creator-cli

そして、すべてのメッセージがスクロールするのを見てください。

プロンプトに戻ったら、USBストレージデバイスをヤンクする前に/ mntをアンマウントすることを忘れないでください。


-2

代替インストールまたはミニISO(512MBスティックに収まる必要があります)を使用して、コマンドライン(CLI)Ubuntuをインストールできます。

次に、別の方法を使用してCrunchbangをインストールしますhttp ://crunchbanglinux.org/forums/topic/26/crunchbang-linux-81001-alternative-installation/

512 MB未満のLiteバージョンのCrunchBangを試すこともできます。

Unetbootinを使用してUSBスティックを準備できます。


クランチバン?ハハ?
RolandiXor

ISOをスティックに合わせるのに問題はありません(16GBです)。最初にISOから起動するUSB​​スティックを作成し、CLI以外を使用せずに作成する方法の問題です。
jgファウスト

また、残念ながらunetbootinは機能しません。コマンドラインから実行する場合でもグラフィックスのサポートが必要なようです。
JG-ファウスト
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.