Καλημέρα.
Εν έτει 2020, πρέπει να είμαστε πολύ λίγοι με συστήματα με μνήμη =<4GB, οι περισσότεροι μάλλον δεν αντιμετωπίζετε τέτοια θέματα :
Σύστημα με 4GB RAM και περίπου 17GB ελεύθερα στο /root.
Πήγα πρωί-πρωί να εγκαταστήσω το wps-office (AUR).
Η μέθοδος που έχω μάθει είναι :
cd /tmp
git clone <πακέτο>.git
cd <πακέτο>
makepkg -si
Η πρώτη προσπάθεια στέφθηκε με πλήρη…αποτυχία.
Error : No space left on device.
Γιατί ; Αφού έχω περίπου 17G ελεύθερα στο /root.
Βρήκα ότι το /tmp έχει μόνο 1,8GB
Ψάχνοντας, κατέληξα να κάνω το εξής :
sudo mount -o remount,size=10G,noatime /tmp
(Αυτό έδωσε προσωρινά 10G στο /tmp).
Η εγκατάσταση έγινε.
Κοιτάζοντας μετά, είδα ότι το /tmp έδινε 2.6GB χρησιμοποιημένα (προφανώς γι’ αυτό δεν γινόταν η εγκατάσταση με τα αρχικά 1,8GB).
Το /tmp ανήκει στο file system tmpfs, στη σελίδα του οποίου υπάρχει αυτή η σημείωση :
To /tmp έχει εξ ορισμού το μισό μέγεθος της RAM.
Επειδή δεν συμβαίνει συχνά (προφανώς είναι λίγα τα πακέτα που θέλουν τόσο χώρο), στέκει να μεγαλώνουμε μόνιμα το /tmp ;
Φαίνεται κάπου (στο AUR) πόσο χώρο θέλει για να εγκατασταθεί ένα πακέτο ;
Σχόλια και προτάσεις ευπρόσδεκτα.
Καλημέρα @Georgie2,
Από το συγκεκριμένο άρθρο παίρνουμε τις πληροφορίες ότι
Πως είναι διαμορφωμένο το σύστημα αρχείων του Linux;
Ο φάκελος /tmp είναι βοηθητικός, αποθηκεύονται προσωρινά κάποια αρχεία. Στην επόμενη επανεκίννηση ο φάκελος αυτός αδειάζει.
Προσωπικά, για την εγκατάσταση από AUR χρησιμοποιώ τον φάκελο /opt.
Στον κατάλογο opt γίνετε η εγκατάσταση των έξτρα προγραμμάτων και βιβλιοθηκών που δεν αποτελούν μέρος της βασικής εγκατάστασης του συστήματος.
Αν τώρα επιμένεις για το /tmp δεν γνωρίζω να βοηθήσω παραπάνω!
2 «Μου αρέσει»
Δε χρειάζεται να πειράξεις καθόλου το /tmp.
Μπορείς να αλλάξεις προσωρινά τον φάκελο όπου θα γίνει το build προσθέτοντας το BUILDDIR=/diadromi/fakelou
ακριβώς πριν από το makepkg
. Αν θέλεις να το κάνεις μόνιμα (δεν το συνιστώ), αλλάζεις την αντίστοιχη γραμμή στο /etc/makepkg.conf.
2 «Μου αρέσει»
η απάντηση δεν έχει σχέση με αυτό που κάνει. Το /tmp το χρησιμοποιεί αποκλειστικά για να φτιάξει το πακέτο, δεν έχει σχέση με το που εγκαθίσταται το πακέτο. Εγώ απλά το φτιάχνω κάπου μέσα στον προσωπικό μου φάκελο. Αυτό από προεπιλογή κάνει και το yay.
Η απάντηση για το πόσο θα χώρο θα χρειαστεί το πακέτο για να φτιαχτεί, είναι ότι δεν υπάρχει γενικός τρόπος να το ξέρεις (ίσως υπάρχουν ειδικοί τρόποι, δεν το έχω κοιτάξει)
1 «Μου αρέσει»
Το ξέρω ότι δεν έχει να κάνει με το ερώτημα, απλώς ήταν μια σημείωση που ίσως μπορεί να φανεί χρήσιμη στο μέλλον.
Και εδώ είναι η ουσία του προβλήματος. Το /tmp
είναι για προσωρινά αρχεία του συστήματος και των προγραμμάτων, όχι για δικά μας. Αν αφαιρούσες αυτή την εντολή και τα έφτιαχνες στο δικό σου /home/$user
ή σε κάποιο φάκελο /home/$user/tmp
δεν θα είχες θέμα. Τότε θα γίνονταν
cd ~/tmp
Το tmpfs
δεν είναι ένα “κανονικό” σύστημα αρχείων και κρατάει τα πάντα στην μνήμη. Έτσι και αλλιώς δεν μας νοιάζει να κρατηθούν όταν κλείσει ο υπολογιστής. Σπάνια θα βγάλει τέτοια προβλήματα, αλλά αν βγάλει η λύση είναι απλή δεν το χρησιμοποιούμε και το έχουμε στον αργό δίσκο. Αν θέλεις περισσότερο χώρο για μια εργασία βάλε ενα #
στο /etc/fstab
κάνε επανεκκίνηση του υπολογιστή, δούλεψε αυτό που θέλει τον πολύ χώρο, επανέφερε το /etc/fstab
και ξεκίνα τον υπολογιστή πάλι.
2 «Μου αρέσει»
“Μ’ όποιον δάσκαλο καθίσεις”, λένε.
Την πρώτη φορά που ψαχνόμουν πώς γίνεται (όχι για το yaourt συγκεκριμένα), είχα πέσει εδώ :
https://www.tecmint.com/install-yaourt-in-arch-linux/
Από τότε κόλλησα στο cd /tmp.
Που θα πάει, θα στρώσω
2 «Μου αρέσει»
Πάμε στο Wiki του Arch και βρίσκουμε το παρακάτω
https://wiki.archlinux.org/index.php/Tmpfs
Εκεί στα παραδείγματα μας λέει πως μπορούμε να ορίσουμε το μέγιστο μέγεθος το /tmp πχ 5G (αντί του 1GB που είναι αν θυμάμαι εξορισμου)
sudo vim /etc/fstab
Και προσθέτουμε στο τέλος πχ
tmpfs /tmp tmpfs rw,nodev,nosuid,size=5G 0 0
Αυτό ορίζει το μέγιστο επιτρεπτό, όχι ότι θα καταλαμβάνει μόνιμα από το σύστημα τα 5GB
2 «Μου αρέσει»