Tag-Αρχείο για » linux «

Κυριακή, 4η Αυγούστου, 2013 | Συγγραφέας:

Είχα μια διακοπή ρεύματος επηρεάζει server μου είναι μεγάλη MD RAID παράταξη. Αντί να αφήσει ο server ως σύνολο είναι κάτω ενώ περιμένουν για να ολοκληρώσει μια fsck, Είχα να εκκινήσετε χωρίς την μεγάλη ποικιλία για να μπορέσω να το fsck το χέρι.

Ωστόσο, όταν τρέχει το χέρι μου συνειδητοποίησα ότι δεν είχε καμία δυνατότητα να γνωρίζει κατά πόσο ήταν και πόσο καιρό θα πάρει για να ολοκληρώσει. Αυτό είναι ιδιαίτερα προβληματικό με μια τέτοια μεγάλη ποικιλία. Με μια μικρή αναζήτηση βρήκα την άκρη του προσθέτοντας την παράμετρο-C κατά την κλήση fsck. Δεν μπόρεσα να βρω αυτό το σκεπτικό, ωστόσο: fsck –βοήθεια δεν έδειξε τέτοια επιλογή.

Η επιλογή αποδεικνύεται ότι είναι ext4 ειδικά, και έτσι δείχνει μια απόλυτα λειτουργική γραμμή προόδου με ένδειξη ποσοστού. Για να βρείτε τις πληροφορίες, αντί “fsck –βοήθεια” ή “man fsck”, θα πρέπει να εισάγετε “fsck.ext4 –βοήθεια” ή “άνθρωπος fsck.ext4”. 🙂

Μερίδιο
Κυριακή, 4η Αυγούστου, 2013 | Συγγραφέας:

Ιστορία

Πολλά είχαν αλλάξει από την τελευταία φορά που αναφέρθηκε μου προσωπικούς server – έχει αυξηθεί αλματωδώς (τώρα έχει μια 7TB MD RAID6) και είχε πρόσφατα ανακατασκευαστεί με Ubuntu Διακομιστή.

Αψίδα δεν ήταν ποτέ ένα λάθος. Arch Linux είχε δίδαξε ήδη τόσα πολλά για το Linux (και θα συνεχίσει να το κάνει για άλλη επιφάνεια εργασίας του υπολογιστή μου). Αλλά Arch σίγουρα απαιτεί περισσότερο χρόνο και προσοχή από ό, τι θα ήθελαν να περάσουν σε ένα διακομιστή. Ιδανικά θα προτιμούσα να είναι σε θέση να ξεχάσουμε το διακομιστή για λίγο μέχρι ένα email υπενθύμισης λέει “um … υπάρχει μια ενημερώσεις ζευγάρι θα πρέπει να εξετάσουμε, φίλε.”

Ο χώρος δεν είναι δωρεάν – και ούτε είναι ο χώρος

Η ευκαιρία να μεταναστεύσουν σε Ubuntu ήταν το γεγονός ότι είχα ξεμείνει από SATA λιμένες, οι θύρες που απαιτούνται για τη σύνδεση σκληρών δίσκων με το υπόλοιπο του υπολογιστή – ότι 7TB συστοιχία RAID χρησιμοποιεί πολλά λιμάνια! Είχα ακόμη δοθεί μακριά μου πολύ old 200GB σκληρό δίσκο, δεδομένου ότι πήρε ένα από αυτά τα λιμάνια. Έχω προειδοποιήσει επίσης τον παραλήπτη ότι ο δίσκος του SMART της παρακολούθησης έδειξαν ότι ήταν αναξιόπιστα. Ως προσωρινή λύση για την έλλειψη θύρες SATA, Είχα μετανάστευσαν ακόμη και το λειτουργικό σύστημα του διακομιστή σε ένα σύνολο τεσσάρων USB sticks σε ένα MD RAID1. Τρελός. Ξέρω. Δεν ήμουν πάρα πολύ χαρούμενος για την ταχύτητα. Αποφάσισα να πάω έξω και να αγοράσει ένα νέο αξιόπιστο σκληρό δίσκο και ένα SATA κάρτα επέκτασης για να πάει με αυτό.

Πρωτεύον διαμέρισμα Αψίδα του διακομιστή χρησιμοποιούσε για 7GB του δίσκου. Ένα μεγάλο κομμάτι του ότι ήταν μια ανταλλάξουν αρχείο, προσωρινής αποθήκευσης δεδομένων και άλλα διάφορα υλικά ή περιττά αρχεία. Συνολικά, το πραγματικό μέγεθος του λειτουργικού συστήματος, συμπεριλαμβανομένης της /σπίτι ντοσιέ, ήταν μόνο περίπου 2 GB. Αυτό με ώθησε να εξετάσουμε σε ένα υπερ-γρήγορο SSD οδηγώ, σκέφτεται ίσως ένα μικρότερο μπορεί να μην είναι τόσο ακριβό. Αποδείχθηκε ότι η φθηνότερη μη SSD δίσκο θα μπορούσε να βρει στην πραγματικότητα το κόστος περισσότερο από μία από αυτές τις σχετικά μικρές SSDs. Yay για μένα. 🙂

Επιλογή? Woah?!

Για την επιλογή του λειτουργικού συστήματος, Είχα ήδη αποφασίσει ότι δεν θα ήταν Arch. Από όλες τις άλλες δημοφιλείς διανομές, Είμαι πιο εξοικειωμένοι με το Ubuntu και CentOS. Μαλακό καπέλλο ήταν επίσης μια δυνατότητα – αλλά δεν είχα σοβαρά ακόμη θεωρείται για ένα διακομιστή. Ubuntu κέρδισε τον γύρο.

Η επόμενη απόφαση που έπρεπε να κάνω, δεν συμβαίνουν σε μένα μέχρι Πανταχού παρουσία (Οδηγός εγκατάστασης του Ubuntu) ζήτησε από μένα: Πως να ρυθμίσετε το χωρίσματα.

Ήμουν νέος στη χρήση SSDs στο Linux – Είμαι πολύ καλά τις παγίδες που δεν τα χρησιμοποιούν σωστά, ως επί το πλείστον οφείλεται σε κίνδυνο τους φτωχούς μακροζωία αν καταχρηστικά.

Δεν θέλετε να χρησιμοποιήσετε ένα ειδικό κατάτμησης swap. I σχέδιο σχετικά με την αναβάθμιση μητρική πλακέτα του server / CPU / μνήμης δεν είναι πολύ μακριά στο μέλλον. Με βάση αυτό αποφάσισα ότι θα θέσει ανταλλαγής σε ένα αρχείο μετάθεσης στο υπάρχον RAID md. Η ανταλλαγή δεν θα είναι ιδιαίτερα γρήγορη, αλλά μοναδικός σκοπός της θα είναι για την σπάνια περίπτωση που κάτι πάει στραβά και η μνήμη δεν είναι διαθέσιμη.

Αυτό στη συνέχεια άφησε να δώσει την διαδρομή ρίζας η πλήρης 60GB έξω από ένα Intel 330 SSD. Θεώρησα το διαχωρισμό / home, αλλά μόλις φάνηκε λίγο άσκοπο, δεδομένου πόσο λίγο είχε χρησιμοποιηθεί στο παρελθόν. Για πρώτη φορά τη δημιουργία του διαμερίσματος με το LVM – κάτι που έχω πρόσφατα κάνει κάθε φορά που έχω δημιουργήσει ένα Linux box (πραγματικά, δεν υπάρχει καμία δικαιολογία για να μην χρησιμοποιούν LVM). Όταν έφτασε στο μέρος όπου θα ρυθμίσετε το σύστημα αρχείων, Χτύπησα το drop-down και ενστικτωδώς επιλεγεί ext4. Τότε παρατήρησα btrfs στην ίδια λίστα. Εμμένω!!

Αλλά ένα τι?

Btrfs (“βούτυρο-eff-ess”, “καλύτερα-eff-ess”, “μέλισσα-δέντρο-eff-ess”, ή ό, τι φαντάζεστε την ημέρα) είναι ένα σχετικά νέο σύστημα αρχείων αναπτύχθηκε για να φέρει το Linux’ filesystem δυνατότητες και πάλι στο προσκήνιο με την τρέχουσα αρχείων τεχνολογίας. Η υπάρχουσα King-of-the-Hill αρχείων, “ext” (η τρέχουσα έκδοση που ονομάζεται ext4) είναι αρκετά καλό – αλλά είναι περιορισμένη, κολλήσει σε ένα παλιό μοντέλο (σκεφτείτε ένα ολοκαίνουργιο F22 Raptor vs. ένα F4 Phantom με μισή Jested προσπάθεια αναβάθμισης ισοδυναμίας) και είναι απίθανο να είναι σε θέση να ανταγωνιστούν για πολύ καιρό με νεότερα συστήματα αρχείων των επιχειρήσεων, όπως ZFS της Oracle. Btrfs έχει ακόμα πολύ δρόμο να διανύσουμε και εξακολουθεί να θεωρείται πειραματική (ανάλογα με το ποιος σας ρωτήσω και τι θα πρέπει να διαθέτει). Πολλοί θεωρούν ότι είναι σταθερή για βασική χρήση – αλλά κανείς δεν πρόκειται να κάνει καμία εγγύηση. Και, φυσικά, ο καθένας λέει να κάνει αντίγραφα ασφαλείας και να δοκιμάσουν!

Mooooooo

Η πιο θεμελιώδης διαφορά μεταξύ ext και btrfs είναι ότι είναι ένα btrfs “Αγελάδα” ή “Αντιγραφή Γράψτε” σύστημα αρχείων. Αυτό σημαίνει ότι τα δεδομένα δεν είναι ποτέ πραγματικά σκόπιμα αντικατασταθεί από εσωτερικά του συστήματος αρχείων του. Αν γράψετε μια αλλαγή σε ένα αρχείο, btrfs θα γράψετε τις αλλαγές σας σε μια νέα θέση σε φυσικά μέσα, και θα ενημερώσει τους εσωτερικούς δείκτες να αναφερθώ στη νέα θέση. Btrfs πηγαίνει ένα βήμα παραπέρα σε ότι αυτές οι εσωτερικές δείκτες (αναφέρεται ως μετα-δεδομένα) είναι επίσης Αγελάδα. Παλαιότερες εκδόσεις του ext θα πρέπει απλά να αντικατασταθούν τα δεδομένα. Ext4 θα χρησιμοποιήσει ένα περιοδικό για να διασφαλιστεί ότι η διαφθορά δεν θα πρέπει να συμβεί το βύσμα AC να yanked από την πιο ακατάλληλη στιγμή. Τα αποτελέσματα περιοδικό σε ένα παρόμοιο αριθμό των βημάτων που απαιτούνται για την ενημέρωση των δεδομένων. Με ένα SSD, το υποκείμενο υλικό λειτουργεί μια παρόμοια διαδικασία CoW Δεν έχει σημασία τι σύστημα αρχείων που χρησιμοποιείτε. Αυτό είναι επειδή SSD drives δεν μπορεί να αντικαταστήσει πραγματικά δεδομένα – θα πρέπει να αντιγράψετε τα δεδομένα (με τις αλλαγές σας) σε μια νέα θέση και στη συνέχεια να διαγράψετε το παλιό μπλοκ εξ ολοκλήρου. Η βελτιστοποίηση στον τομέα αυτό είναι ότι ένα SSD δεν μπορεί να διαγράψει ακόμη και το παλιό μπλοκ, αλλά απλώς να κάνει μια σημείωση για να διαγράψει το μπλοκ σε μεταγενέστερο χρόνο, όταν τα πράγματα δεν είναι τόσο απασχολημένος. Το τελικό αποτέλεσμα είναι ότι οι δίσκοι SSD ταιριάζει πολύ καλά με ένα σύστημα αρχείων αγελάδας και δεν αποδίδουν εξίσου καλά με μη CoW αρχείων.

Για να κάνει τα πράγματα ενδιαφέροντα, Αγελάδα στο σύστημα αρχείων εύκολα πηγαίνει χέρι-χέρι με ένα χαρακτηριστικό που ονομάζεται deduplication. Αυτό επιτρέπει σε δύο (ή περισσότερο) ταυτόσημες μπλοκ δεδομένων που πρέπει να αποθηκευτούν χρησιμοποιώντας ένα μόνο αντίγραφο, εξοικονόμηση χώρου. Με αγελάδα, εάν ένα deduplicated αρχείο έχει τροποποιηθεί, το ξεχωριστό δίδυμο δεν θα επηρεαστούν τα δεδομένα του τροποποιημένου αρχείου θα έχουν γραφτεί σε διαφορετικές φυσικές μπλοκ.

Αγελάδα με τη σειρά του καθιστά snapshotting σχετικά εύκολο να εφαρμόσουν. Όταν ένα στιγμιότυπο γίνεται το σύστημα καταγράφει απλώς το νέο στιγμιότυπο ως μια επανάληψη όλων των δεδομένων και των μεταδεδομένων μέσα στον όγκο. Με αγελάδα, όταν γίνονται αλλαγές, δεδομένα του στιγμιότυπου του παραμένει ανέπαφη, και μια συνεκτική εικόνα της κατάστασης του συστήματος αρχείων κατά τη στιγμή το στιγμιότυπο έγινε μπορεί να διατηρηθεί.

Ένα νέο φίλο

Με την παραπάνω στο μυαλό, ειδικά το Ubuntu έχει κάνει btrfs διαθέσιμο ως επιλογή εγκατάστασης χρόνο, Σκέφτηκα ότι θα ήταν μια καλή στιγμή για να βουτήξει btrfs και να εξερευνήσετε λίγο. 🙂

Μέρος 2 προσεχώς …

Μερίδιο
Παρασκευή, September 11th, 2009 | Συγγραφέας:

Peace in the land of USB

Under a *nix operating system, having multiple partitions on a USB drive isn’t rocket science, it just works. Στην περίπτωσή μου, my USB drive has two partitions because the first partition is a bootable Arch Linux installer.

I have Παράθυρα on a desktop at homemostly for gamingand many of my colleagues use it too. Since Windows doesn’t do very well with non-Windows partitions I figured I could create a FAT32 partition on the memory stick after the bootable Arch Linux partition. FAT32 is almost ubiquitous and is usable on every common desktop operating system in the world.

Bleh

Unfortunately it doesn’t work straight off the bat. Apparently, Microsoft in their infinite wisdom decided that memory sticks are supposed to have one (and only one) partition. In reality Windows finds the first partition and then ignores any others that happen to be set up:

Please Format

Err, no, I do not want you to format my Arch Linux installation partition

The trick to getting it working is to fool Windows into thinking the device is δεν a regular USB memory stick but perhaps a solid-state hard disk which happens to be connected via USB. Yes I know, this is seriously stupid that Windows behaves this way. A solid-state hard disk is just a whopping big (and fast) memory stick after all!

I found a few sources on how to do this however I still had to figure out some things on my own. Specifically, the guides I found either skipped some steps or didn’t provide enough information on where to download the driver package.

This procedure involves manually changing hardware drivers and installingnon-signeddriversnot intended for your hardware”. I know someone is going to break their system and blame me so I say now that I take no responsibility for any damage you may do to your Windows system as a result of this. Read that again. 😛

Instructions

remove the highlighted text

click for larger version

Download and unzip the driver, originally created by Hitachi, εδώ. Open the cfadisk.inf file in notepad (or your favourite plaintext editor), and find the section labeled [cfadisk_device]. Remove the section highlighted on the right:

Minimize (don’t close) the editor and go to your desktop iconsright-click on My Computer and select Properties. Select the hardware tab and then select [Device Manager]:

System Properties

Find the device underDisk drives”, right-click your memory stick and select Properties:

Device Manager

Click the Details tab and in the dropdown box on that page, selectHardware Ids”. Click the first line in the list of Hardware IDs and press Ctrl+C to copy the name:

USB Hardware Ids

Don’t close this dialog, go back to notepad (which was minimised) and paste the hardware ID into where the previous content was removed.

Changes pasted into notepad

Save the file in notepad and go back to the device’s property dialog window. Click theDrivertab and click the [Update Driver…] button. In the windows that pop up, selectNo, not this time”; [Next] -> “Install from a list or a specific location (Advanced)”; [Next] -> “Don’t search. I will choose the driver to install.”; [Next] -> [Have Disk…].

Unsigned Drivers - Click Continue Anyway

Browse to the folder where you have saved the modified cfadisk.inf file. Κάντε κλικ [Εντάξει]. You will find

there is a Hitachi Microdrive driver listed. Select this and click [Next]. When the warning

appears, click [Yes]. Another warning will pop up regarding a similar issue (these are theunsigned” και “not intended for your hardwarewarnings I mentioned earlier). Κάντε κλικ [Continue Anyway]:

At this point I recommend closing all the dialog boxes related to the setup. Τελικά, remove and re-insert the memory stick into your USB port and you should find that the extra partitions on the stick are accessible. In the worst-case scenario, you might still need to partition the disk however the hard part is over. 🙂

Μερίδιο
Wednesday, April 22nd, 2009 | Συγγραφέας:

Αψίδα Linux’s installation process is documented on the Arch wiki. I recommend that persons new to Arch try the excellent Beginner’s Guide instead of the Official Arch Linux Install Guide. Though both wiki entries cover similar ground, the Beginner’s Guide gives a lot more relevant information for those new to the system. The Beginner’s Guide is aimed at desktop installation and, as I’m installing a server, I won’t be going through the installation of the graphical environment at all. Assuming that you’re following my installation, assume that I’ve followed the Beginner’s Guide right up to and including the installation of sudo. I installed the ssh daemon afterwards rather than during the initial setup however.

A few small recommendations and notes regarding installation:

  • If you can, consider using a USB memory stick for the installer and keep it handy for future installations.
  • I keep a copy of my localrepositoryof installed applications on my installer memory stick. Once installation is finished I save a bit of download and update time by copying this to the new server’s /var/cache/pacman/pkg/ folder. The repository on my desktop is typically 1.7GB
  • For the rc.conf, South African-appropriate regional settings are:
    LOCALE=en_ZA.utf8
    TIMEZONE=Africa/Johannesburg
  • I’ve set up the network very simply, according to the guide, and will be expanding on the network setup in a later post.
  • As it is for a server, my non-privileged user on the server is only part of 3 groups: wheel (for sudo), storage, and users. A desktop user will likely be in many more groups.

I prefer using an application called γιαούρτι instead of Arch’s default package manager. Yaourt has the exact same usage syntax as pacman except that it supports a few extra options. It is actually a wrapper application in that it, in turn, uses pacman. Είναι σημαντικό, yaourt supports installation of applications from Arch’s AUR. Ο AUR is a repository of installation scripts built by Arch users for Arch users to easily install applications that are not officially supported by the main Arch repositories. Yaourt can download and install applications from AUR or the main repositories with the same command, treating the AUR asjust another repository”. Pacman unfortunately does not support this.

Πάλι, the installation is covered in the wiki. I recommend the easy route mentioned in the wiki if you’re new at Arch. Its too much too soon to do it the hard way (also mentioned in the wiki entry).

When done, update your system by issuing the single command:

yaourt -Syu

Ή

pacman -Syu

and follow the given recommendations.

Μερίδιο
Σάββατο, March 28th, 2009 | Συγγραφέας:

Its amazing how much you can do by combining the small yet powerful commands Unix has available.

This little-used command, time, finally became useful today as a way to report the length of time that certain automated operations are running. In my example, I’m timing how long it takes to build the Linux kernel:

$ time rebuild-kernel26
...
couple-thousand-lines-of-scrolling-text
...
==> Finished making: kernel26 2.6.28.8-1 x86_64 (Sat Mar 28 17:19:52 SAST 2009)
real    62m21.994s
user    43m31.846s
sys     6m1.096s

Yup, that took a little over an hour to build. The values are:

  • realthe actual time elapsed while the command was running – 62 minutes
  • userthe amount of userland time the command used – 43 minutes
  • systhe amount of system time the command used – 6 minutes

(I was busy doing other things while this was happening which is why it took 62 minutes for the desktop to do (43+6=) 49 minutes-worth of work)

If you’re using the GNU version (most likely), it also gives you the option of displaying the results in a custom fashion. Mostly, this command could be useful in scripts where you need to report how long a task tookor maybe? just a geeky way to time something random. 😛

Μερίδιο
Κατηγορία: linux  | Ετικέτες: , , , , , , ,  | Αφήστε ένα σχόλιο