Περισσότερα
Πώς να προσδιορίσετε αν ένα συγκεκριμένο Linux είναι 32 bit ή 64 bit;
Όταν πληκτρολογώ uname -a
, δίνει την ακόλουθη έξοδο.
Linux mars 2.6.9-67.0.15.ELsmp #1 SMP Tue Apr 22 13:50:33 EDT 2008 i686 i686 i386 GNU/Linux
Πώς μπορώ να ξέρω από αυτό ότι το συγκεκριμένο λειτουργικό σύστημα είναι 32 ή 64 bit;
Αυτό είναι χρήσιμο όταν γράφουμε σενάρια "ρυθμίσεων", για παράδειγμα: για ποια αρχιτεκτονική κατασκευάζω;
466
3
Δοκιμάστε
uname -m
. Το οποίο είναι συντομογραφία τουuname --machine
και βγάζει:Διαφορετικά, όχι για τον πυρήνα του Linux, αλλά για τη CPU, πληκτρολογείτε:
ή:
Κάτω από την παράμετρο "flags", θα δείτε διάφορες τιμές: βλέπε "Τι σημαίνουν οι σημαίες στο /proc/cpuinfo;", Μεταξύ αυτών, μία ονομάζεται
lm
:Long Mode
(x86-64: amd64, επίσης γνωστή ως Intel 64, δηλαδή ικανή για 64-bit)Ή χρησιμοποιώντας το
lshw
(όπως αναφέρεται παρακάτω από τον Rolf of Saxony), χωρίςsudo
(μόνο για την αναζήτηση του πλάτους της cpu):Σημείωση: μπορείτε να έχετε μια CPU 64-bit με εγκατεστημένο πυρήνα 32-bit.
(όπως αναφέρει ο ysdx στη δική του/της απάντηση, "Στις μέρες μας, ένα σύστημα μπορεί να είναι multiarch οπότε δεν έχει νόημα ούτως ή άλλως. Ίσως να θέλετε να βρείτε τον προεπιλεγμένο στόχο του μεταγλωττιστή")
Αν τρέχατε μια πλατφόρμα 64 bit θα βλέπατε x86_64 ή κάτι πολύ παρόμοιο στην έξοδο από το [uname][1] -a
Για να λάβετε το συγκεκριμένο όνομα υλικού του μηχανήματός σας εκτελέστε
Μπορείτε επίσης να καλέσετε
η οποία επιστρέφει είτε 32 είτε 64
[1]: http://manpages.ubuntu.com/manpages/intrepid/man1/uname.html "uname",
Αυτό το σύστημα είναι 32bit. iX86 στο
uname
σημαίνει ότι είναι αρχιτεκτονική 32-bit. Αν ήταν 64 bit, θα επέστρεφε