Pendekatan semacam itu sangat rumit, dan tidak mungkin menghasilkan semua paket Anda sebagai amd64
versi alih-alih i386
versi. Hanya paket yang benar-benar menerima peningkatan kemungkinan akan diubah dalam arsitektur, dan mungkin hanya jika tidak ada paket lain yang tidak ditingkatkan bergantung pada keberadaan i386
arsitekturnya. Karena beberapa paket tidak akan menerima pembaruan apa pun sepanjang seluruh siklus dukungan rilis Ubuntu Anda, Anda mungkin tidak akan pernah memiliki amd64
sistem sepenuhnya menggunakan teknik seperti itu. Selain itu, tentu saja tidak ada dukungan resmi untuk pendekatan semacam itu.
Anda sebaiknya mengganti sistem Ubuntu yang ada dengan instalasi 64-bit yang baru.
Namun, jika Anda ingin mencoba teknik ini, Anda harus secara manual men-download .deb
file untuk dpkg
dan apt
. Anda dapat menemukannya dpkg
di Ubuntu dan apt
di halaman Ubuntu di Launchpad - perluas versi terbaru di bawah "The Oneiric Ocelot" yang ditandai sebagai rilis, keamanan, dan / atau pembaruan (tetapi Anda mungkin tidak ingin versi hanya ditandai diusulkan dan / atau backports, jika ada). Kemudian unduh .deb
file yang ditandai amd64
. Khususnya, file yang Anda inginkan adalah: ini untukdpkg
(dan yang lain juga terdaftar, jika Anda memiliki paket-paket yang diinstal) dan ini dan ini dan ini dan ini dan inidan ini untuk apt
.
Sebelum Anda melakukan apa pun dengan file-file ini, Anda harus memastikan untuk mencadangkan semua dokumen penting dalam sistem Ubuntu yang Anda instal dan file penting lainnya (misalnya, musik, ebooks, video), karena agak mungkin bahwa upaya teknik ini akan menjadi bumerang buruk. dan biarkan sistem Ubuntu Anda benar-benar tidak dapat digunakan.
Anda dapat menginstal semua paket ini dengan meletakkannya di folder yang tidak mengandung hal lain (misalkan folder tersebut dipanggil debs
dan ada di dalam Downloads
direktori Anda ), dan kemudian jalankan perintah ini:
sudo dpkg -Ri ~/Downloads/debs
Tentu saja, setelah Anda menginstalnya, mereka tidak akan benar-benar berjalan, karena executable-nya 64-bit dan sistem Ubuntu 32-bit Anda menjalankan kernel 32-bit (yang hanya akan menjalankan executable 32-bit). Bahkan, mereka mungkin bahkan tidak selesai menginstal, karena mereka mungkin memiliki skrip post-instal yang menjalankan executable 64-bit mereka yang tidak dapat di-unrunnable.
Ada berbagai cara untuk mencoba menginstal kernel 64-bit ke sistem 32-bit, tetapi semuanya sangat rumit, jadi saya sarankan Anda melakukan booting dari CD live Oneiric 64-bit (yang sendiri menjalankan 64-bit kernel), chroot ke sistem Ubuntu yang diinstal, dan gunakan 64-bit yang baru diinstal apt
dan dpkg
untuk menginstal kernel 64-bit.
Berikut adalah petunjuk khusus untuk melakukan itu ... tapi tolong jangan anggap ini berarti bahwa saya mengatakan itu akan berhasil. Saya belum mencoba ini. (Saya telah chroot ke sistem Ubuntu yang diinstal dari live CD dan melakukan manajemen paket dan operasi lainnya, tapi saya belum mencoba operasi lintas-arsitektur yang disarankan di sini.)
Di sistem Ubuntu Anda yang terinstal, buka jendela Terminal ( Ctrl+ Alt+ T) dan jalankan mount | grep ' on / '
(dengan menempelkannya ke Terminal dan menekan enter). Anda harus melihat sesuatu seperti /dev/sda2 on / type ext4 (rw,errors=remount-ro,commit=0)
. Bagian yang Anda minati adalah nama perangkat sebelumnya on
(dalam contoh ini, itu /dev/sda2
). Ingat itu, atau tuliskan.
Langkah 1 memberi Anda nama perangkat /
partisi. Jika Anda memiliki /boot
partisi yang terpisah , maka Anda harus mengetahui nama perangkat untuk itu juga. Jadi dalam hal ini, jalankan mount | grep ' on /boot '
. Anda akan melihat sesuatu seperti /dev/sda1 on /boot type ext2 (rw)
. Ingat atau tulis ini juga.
Boot dari live CD Oneiric amd64 (yaitu, 64-bit) dan pilih "Coba Ubuntu" daripada "Instal Ubuntu".
Pergilah ke browser web dan pastikan konektivitas Internet berfungsi penuh. Jika tidak, aturlah.
Buka jendela Terminal dan jalankan sudo mount /dev/sda2 /mnt
(ganti /dev/sda2
dengan nama perangkat yang Anda dapatkan di langkah 1, jika berbeda).
Jika sistem yang Anda instal memiliki /boot
partisi yang terpisah , jalankan sudo mount /dev/sda1 /mnt/boot
(ganti /dev/sda1
dengan nama perangkat yang Anda dapatkan di langkah 2, jika berbeda).
Sekarang, jalankan perintah-perintah ini untuk melakukan chroot ke sistem yang Anda instal:
sudo mount --bind /dev /mnt/dev
sudo chroot /mnt
mount -t proc none /proc
mount -t sysfs none /sys
mount -t devpts none /dev/pts
Jalankan ping -c 4 launchpad.net
untuk melihat apakah konektivitas Internet berfungsi sepenuhnya dari dalam chroot. Anda mengharapkan sesuatu seperti ini:
PING launchpad.net (91.189.89.223) 56(84) bytes of data.
64 bytes from launchpad-net.banana.canonical.com (91.189.89.223): icmp_req=1 ttl=41 time=141 ms
64 bytes from launchpad-net.banana.canonical.com (91.189.89.223): icmp_req=2 ttl=41 time=143 ms
64 bytes from launchpad-net.banana.canonical.com (91.189.89.223): icmp_req=3 ttl=41 time=142 ms
64 bytes from launchpad-net.banana.canonical.com (91.189.89.223): icmp_req=4 ttl=41 time=140 ms
--- launchpad.net ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3003ms
Sebaliknya, jika Anda tidak dapat mengirim atau menerima paket, maka Anda harus mengatur konektivitas Internet di chroot. Untuk melakukannya, jalankan perintah ini (untuk meninggalkan chroot, salin file konfigurasi yang relevan dari sistem CD langsung ke chroot, dan masukkan kembali chroot):
sudo cp /mnt/etc/resolv.conf /mnt/etc/resolv.conf.old
sudo cp /mnt/etc/hosts /mnt/etc/hosts.old
sudo cp /etc/resolv.conf /mnt/etc/resolv.conf
sudo cp /etc/hosts /mnt/etc/hosts
Walaupun umumnya Anda harus menghentikan proses ini jika ada kesalahan, jangan khawatir jika perintah pertama dan / atau kedua dari keempat perintah gagal, asalkan cara spesifik gagal adalah dengan memberi tahu Anda bahwa /mnt/etc/resolv.conf
(atau /mnt/etc/hosts
) tidak ada .
Chroot kembali dan coba lagi:
sudo chroot /mnt
ping -c 4 launchpad.net
Jalankan perintah ini untuk membuat lingkungan chroot Anda siap digunakan:
export HOME=/root
export LC_ALL=C
Jika Anda belum menginstal .deb
file untuk versi 64-bit dpkg
dan apt
, lakukan sekarang. Jika Anda menginstalnya tetapi ada kesalahan konfigurasi, jalankan dpkg --configure -a
untuk memperbaikinya. (Semoga itu akan berhasil ... mungkin lebih baik menunggu untuk mencoba menginstalnya sampai Anda berada di lingkungan live CD, kalau-kalau menginstal 64-bit dpkg
saat boot ke sistem yang diinstal meninggalkan dpkg
dalam keadaan tidak dapat digunakan.)
Dengan versi 64-bit dpkg
dan apt
diinstal, dengan asumsi bahwa mereka akan secara otomatis menginstal paket 64-bit, Anda sekarang dapat menghapus semua kernel 32-bit Anda dan menginstal kernel 64-bit. Untuk menghapus kernel 32-bit Anda, jalankan dpkg -l | grep linux-
. Ini daftar paket yang diinstal yang dimulai dengan linux-
. Anda lebih khusus tertarik dalam paket yang mulai seperti linux-generic
, linux-image
, linux-server
, dan / atau linux-headers
. Hapus file-file ini dengan apt-get purge ...
tempat ...
diganti dengan daftar paket yang Anda hapus.
Sekarang instal ulang paket yang Anda hapus. (Sebenarnya, untuk paket yang berisi nomor versi dalam nama paket, seperti misalnya linux-image-3.0.0-13-generic
, Anda hanya perlu menginstal nama paket versi terbaru.) Lakukan ini dengan menjalankan di apt-get install ...
mana ...
diganti dengan daftar paket-paket yang Anda instal dengan spasi terpisah yang Anda instal .
Perbarui konfigurasi boot loader, unmount beberapa perangkat, dan biarkan chroot:
update-grub
umount /proc || umount -lf /proc
umount /sys
umount /dev/pts
exit
sudo umount mnt/dev
Jika Anda berlari sudo cp /mnt/etc/resolv.conf /mnt/etc/resolv.conf.old
dan itu tidak gagal, maka sekarang jalankan sudo cp /mnt/etc/resolv.conf.old /mnt/etc/resolv.conf
.
Jika Anda berlari sudo cp /mnt/etc/hosts /mnt/etc/hosts.old
dan itu tidak gagal, maka sekarang jalankan sudo cp /mnt/etc/hosts.old /mnt/etc/hosts
.
Jika sistem Anda yang terinstal memiliki /boot
partisi yang terpisah , lepaskan itu:sudo umount /mnt/boot
Lepaskan /
partisi sistem yang Anda instal :sudo umount /mnt
Biarkan jendela Terminal (run exit
), lalu reboot (atau matikan) sistem live CD dan boot ke sistem yang diinstal.
Lihat apakah sistem dapat digunakan dan menjalankan kernel 64-bit ( uname -m
seharusnya mengatakan arsitekturnya x86_64
).
Mungkin ada paket tambahan yang perlu Anda instal, seperti ia32_libs
dan / atau versi 64-bit libc6
, agar ini berfungsi. Untuk beberapa di antaranya, Anda mungkin diberi tahu bahwa Anda membutuhkannya saat mencoba menginstal versi 64-bit dpkg
dan / atau apt
. Bagi yang lain, Anda mungkin tidak diberi tahu.
(Petunjuk di atas untuk chroot dan beroperasi di lingkungan chroot didasarkan pada bagian yang signifikan pada prosedur yang terkait tetapi berbeda ini dan juga pada beberapa posting Jawaban Launchpad milik saya, terutama # 6 di sini dan # 6 di sini . Dan terima kasih khusus kepada Cesium untuk menunjukkannya. bahwa 64-bit dpkg
dan apt
executable tidak akan berjalan pada sistem yang menjalankan kernel 32-bit.)