Saya menjalankan Ubuntu 14.04 pada Chromebook Toshiba menggunakan crouton. Drive tempat OS saya terinstal kecil, dengan hanya 3,6 GB ruang kosong. Saya ingin menginstal sage
pada sistem saya tapi sage
membutuhkan 6 GB ruang bebas pada sistem.
Namun, saya selalu memasukkan kartu SD ke dalam unit. Kartu ini memiliki ruang kosong 175 GB. Apakah mungkin untuk memasang sage
pada kartu SD?
Cara saya mencoba mengunduh sage
dengan perintah
apt-add-repository -y ppa:aims/sagemath
apt-get update
apt-get install sagemath-upstream-binary
seperti yang ditemukan di sini .
software-installation
external-hdd
Brian Fitzpatrick
sumber
sumber
sage
.Jawaban:
Memisahkan paket-paket Debian ke disk yang berbeda pada suatu paket berdasarkan paket itu sulit. Tidak ada dukungan untuk itu; Anda harus meminta
dpkg
secara terpisah pada paket yang ingin Anda instal di lokasi non-default.Menempatkan pohon direktori ke disk terpisah itu mudah. Untungnya bagi Anda, sejauh yang saya tahu dari pembacaan cepat, paket Sage di PPA menginstal sebagian besar file di
/usr/lib/sagemath
. Anda dapat dengan mudah meletakkannya di kartu SD. Katakanlah kartu SD sudah terpasang (jika ada) aktif/media/sdcard
. Buat direktori di sana dan buat tautan simbolis.Maka semua file yang menginstal dpkg di bawah
/usr/lib/sagemath
akan berakhir pada kartu SD (terlepas dari paket mana mereka berasal).Jika Anda mencoba menggunakan Sage atau mengelola paket Sage ketika kartu SD tidak ada, Anda akan mendapatkan pesan kesalahan, dan jika Anda memasukkan kartu SD dan mengulangi tindakan, tidak akan ada salahnya dilakukan.
sumber
sage
. Namun, mengeluarkan$ sage
pengembalianbash: /usr/bin/sage: Permission denied
.user
opsi/etc/fstab
, tambahkanexec
opsi.etc/fstab
membaca# UNCONFIGURED FSTAB FOR BASE SYSTEM
Ini pertanyaan yang menarik. Mari kita bahas beberapa cara ini bisa dicoba.
Metode # 1: Memanipulasi lokasi selama instalasi apt-get
Menggunakan apt-get, itu tidak mungkin dilakukan. Jika Anda menginstal menggunakan
.deb
file, sekali lagi itu tidak mungkin. Alasannya adalah karena lokasi untuk instalasi di-codet ke dalam paket-paket ini.Untuk memanipulasi lokasi instalasi, Anda harus mengkompilasi
sage
dari sumber dan memodifikasinyamakefile
sebelum menginstalnya. Ini akan datang dengan beban mengelola ketergantungan.Namun, ada diskusi mengenai hal ini. Mungkin orang sudah melakukannya. Mungkin mereka entah bagaimana memanipulasi lokasi instalasi. Lihat di sini dan di sini . Jika Anda menemukan cara untuk melakukan ini, silakan tambahkan komentar.
Metode # 2: Mengubah lokasi folder / usr
Anda dapat mengubah lokasi
/usr
folder itu sendiri dan mentransfernya ke kartu eksternal Anda. Biasanya ini akan berkecil hati, tetapi karena Anda mengatakan bahwa Anda selalu memasukkannya, jadi itu harus baik-baik saja.Untuk melakukan ini, ada 2 cara:
(Lebih disukai) Buat partisi di kartu eksternal Anda dan transfer semua konten di
/usr
folder saat ini ke partisi itu. Kemudian, modifikasi Anda/etc/fstab
untuk memasang partisi itu sebagai/usr
folder, dan hapus/usr
folder lama sekaligus. Untuk melakukan semua ini, Anda harus mem-boot dari beberapa disc cadangan atau CD / USB langsung.Dalam metode ini juga, boot dulu dari beberapa disc cadangan atau live CD / USB dan kemudian pindahkan
/usr
folder ke kartu eksternal dan kemudian buat symlink ke/usr
folder baru .PS
Ini adalah pertanyaan yang menarik, sesuatu yang saya pikirkan belakangan ini ketika hard disk saya mulai penuh. Saya akan mencoba beberapa dari hal ini dan memperbarui jawaban saya. Komentar dipersilahkan untuk mengkritik beberapa metode ini.
MEMPERBARUI
Juga lihat jawaban @gilles. Sarannya lebih baik. Alih-alih memindahkan semua
/usr
folder ke kartu eksternal, cukup pindahkan/usr/lib/sagemath
ke kartu eksternal karena menempati sekitar 3.1GB instalasi Anda. Jadi, di Metode # 2 , Anda bisa memindahkan folder ini/usr
.sumber
/usr
ke kartu SD akan membuat sistem tidak dapat digunakan ketika kartu SD tidak ada. Ini bukan ide yang bagus.