Tag-Archive for » ubuntu «

Dimanche, 4 août, 2013 | Auteur:

Histoire

Beaucoup de choses ont changé depuis que j'ai parlé de mon serveur personnel – il a grandi à pas de géant (il a maintenant un 7TB md RAID6) et il a été reconstruit récemment avec Ubuntu Serveur.

Arc n'a jamais été une erreur. Arch Linux m'avait déjà appris tant de choses sur Linux (et continuera de le faire sur mon autre ordinateur de bureau). Mais Arche nécessite certainement plus de temps et d'attention que je voudrais passer sur un serveur. Idéalement, je préfère être en mesure d'oublier le serveur pendant un certain temps jusqu'à ce qu'un courriel de rappel dit “um … Il ya quelques mises à jour que vous devriez regarder, copain.”

L'espace n'est pas libre – et ni l'espace

La possibilité de migrer vers Ubuntu était le fait que je n'avais plus de SATA ports, les ports nécessaires pour connecter des disques durs pour le reste de l'ordinateur – que matrice RAID 7TB utilise un grand nombre de ports! Je n'avais même cédé ma très ancien disque dur 200Go comme il a pris l'un de ces ports. J'ai aussi mis en garde le destinataire que le disque de SMART surveillance a indiqué qu'il n'était pas fiable. Comme contournement temporaire de l'absence de ports SATA, Je n'avais même migré le système d'exploitation du serveur à un ensemble de quatre clés USB dans un md RAID1. Fou. Je sais. Je n'étais pas trop content de la vitesse. J'ai décidé de sortir et d'acheter un nouveau disque dur fiable et une carte d'extension SATA pour aller avec elle.

Partition de l'arche principale du serveur utilisait environ 7 Go d'espace disque. Une grande partie de ce que c'était un échanger fichier, données mises en cache et les fichiers inutiles ou autrement divers. Globalement, la taille réelle de l'OS, y compris la /maison dossier, n'était que d'environ 2 Go. Cela m'a incité à regarder dans un super-rapide SSD conduire, pensant peut-être une plus petite pourrait ne pas être si cher. Il s'est avéré que le moins cher lecteur non-SSD que j'ai pu trouver réellement coûté plus que l'une de ces SSD relativement petites. Yay pour moi. 🙂

Choix? Woah?!

En choisissant le système d'exploitation, J'avais déjà décidé qu'il ne serait pas Arche. Sur l'ensemble des autres distributions,, Je suis plus familier avec Ubuntu et CentOS. Fedora était également une possibilité – mais je n'avais pas encore sérieusement considéré pour un serveur. Ubuntu a remporté la manche.

La prochaine décision que je devais faire n'a pas eu lieu pour moi jusqu'à ce que Ubiquity (L'assistant d'installation d'Ubuntu) il a demandé de moi: Comment mettre en place le partitions.

J'étais nouveau à l'utilisation des SSD sous Linux – Je suis bien conscient des pièges de ne pas les utiliser correctement, principalement en raison de leur risque de longévité pauvres s'ils sont mal utilisés.

Je ne voulais pas utiliser une partition swap dédiée. J'ai l'intention d'améliorer la carte mère du serveur / processeur / mémoire n'est pas trop loin dans l'avenir. Sur la base de ce que j'ai décidé je vais placer le swap dans un fichier d'échange sur le RAID existant md. Le swap ne sera pas particulièrement rapide, mais son seul but sera pour cette rare occasion quand quelque chose va mal et que la mémoire n'est pas disponible.

Cela a ensuite quitté moi de donner l' chemin racine la pleine 60GB sur un Intel 330 SSD. J'ai considéré la séparation / home, mais il m'a semblé un peu inutile, étant donné le peu a été utilisé dans le passé. J'ai d'abord mis en place la partition avec LVM – quelque chose que j'ai récemment été faire chaque fois que j'ai mis en place une boîte Linux (vraiment, il n'y a aucune excuse pour ne pas utiliser LVM). Quand il est arrivé à la partie où je configurer le système de fichiers, J'ai cliqué sur le menu déroulant et instinctivement choisi ext4. Puis j'ai remarqué btrfs dans la même liste. S'accrocher!!

Mais ce qui?

Btrfs (“beurre-eff-ess”, “mieux-eff-ess”, “bee-tree-eff-ess”, ou ce que vous avez envie le jour) est un système de fichiers relativement nouveau développé dans le but d'amener Linux’ capacités des systèmes de fichiers sur les rails avec système de fichiers actuel technologies. Le King-of-the-Hill existant du système de fichiers, “poste” (la version actuelle s'appelle ext4) est assez bonne – mais elle est limitée, coincé dans un vieux paradigme (penser d'une nouvelle marque F22 Raptor vs. une F4 Phantom avec une tentative de demi-jested à une mise à niveau d'équivalence) et il est peu probable d'être en mesure de rivaliser très longtemps avec les nouveaux systèmes de fichiers d'entreprise telles que Les ZFS Oracle. Btrfs a encore un long chemin à parcourir et il est encore considéré comme expérimental (en fonction de qui vous demandez quelles sont les caractéristiques et vous avez besoin). Beaucoup considèrent qu'elle soit stable pour une utilisation basique – mais personne n'est prêt à faire des garanties. Et, bien sûr, tout le monde dit de faire et tester les sauvegardes!

Mooooooo

La différence la plus fondamentale entre poste et btrfs est que btrfs est un “CoW” ou “Copie à l'écriture” système de fichiers. Cela signifie que les données ne sont jamais réellement délibérément écrasé par les parties internes du système de fichiers de. Si vous écrivez un changement vers un fichier, btrfs écrira vos modifications vers un nouvel emplacement sur un support physique et mettra à jour les pointeurs internes pour désigner le nouvel emplacement. Btrfs va encore plus loin en ce que ces pointeurs internes (dénommé métadonnées) sont également CoW. Les anciennes versions de poste aurait simplement écrasés les données. Ext4 serait d'utiliser un journal pour faire en sorte que la corruption ne se produira pas si la prise secteur est tiré hors au moment le plus inopportun. Les résultats de journal dans un nombre similaire d'étapes nécessaires pour mettre à jour les données. Avec un SSD, le matériel sous-jacent gère un processus de CoW similaire, peu importe quel système de fichiers que vous utilisez. C'est parce que les disques SSD ne pouvez pas réellement écraser les données – ils doivent copier les données (avec vos changements) vers un nouvel emplacement, puis effacer entièrement l'ancien bloc. Une optimisation dans ce domaine, c'est qu'un SSD pourrait même ne pas effacer l'ancien bloc mais simplement faire une note pour effacer le bloc à un moment plus tard, quand les choses ne sont pas si occupés. Le résultat final est que les disques SSD s'adaptent très bien avec un système de fichiers de vache et ne réussissent pas aussi bien avec les systèmes de fichiers non-vache.

Pour rendre les choses intéressantes, Vache dans le système de fichiers va facilement de pair avec une fonctionnalité appelée déduplication. Cela permet à deux (ou plus) blocs identiques de données à stocker à l'aide d'une seule copie, gain de place. Avec CoW, si un fichier est modifié dédupliquées, le jumeau séparé ne sera pas affecté tant que les données du fichier modifié sera ont été écrites dans un bloc physique différent.

CoW rend à son tour snapshots relativement facile à mettre en œuvre. Lorsqu'un instantané est le système n'enregistre que le nouveau snapshot comme étant une duplication de toutes les données et les métadonnées dans le volume. Avec CoW, lorsque des modifications sont apportées, les données de l'instantané reste intact, et une vue cohérente de l'état du système de fichiers à la fois le cliché a été possible de maintenir.

Un nouvel ami

Avec ce qui précède à l'esprit, d'autant plus que Ubuntu a fait btrfs disponible en option install-temps, J'ai pensé que ce serait un bon moment pour plonger dans btrfs et explorer un peu. 🙂

Partie 2 bientôt …

Partager
Jeudi, January 01st, 2009 | Auteur:

Apparemment, what operating system you use can say a lot about you. If you’re using some form of *nix, qui distro you’re using can say a lot as well. Redundancy aside, I believe that a Linux distribution depends absolutely on its package management and distribution system.

I liked apt-get (1, 2) but there was some technical problem at some point and it caused me to use aptitude instead. Using aptitude is slightly easierit has more features automated into single, logical, commands where apt-get requires separate commands. Aptitude also has a curses-based GUI. If you’re not using the GUI then, other than brevity in terms of number of commands to learn, there is apparently no technical reason to prefer one over the other. Aptitude and apt-get serve K/X/Ubuntu et Debian bien. From this point, I use the names Kubuntu and Ubuntu in a loosely interchangeable fashion.

In my use of CentOS (based on Red Hat), I’ve found I like yum. It seems to work in much the same as aptitudeone command to rule them all. It has some rather annoying default behaviour I’m not going to get into here as its most likely because I’m just not used to it. At least from a technical perspective, it is very good. I believe that Fedora also makes use of yum though my experience with Fedora is very limited.

the theory

Fedora and Ubuntu are in a class of distributions that have a fairly rigorous release cycle. Ubuntu 8.10 (the version is named so for the year and month of its release) ne sera pas, except for major bugs and minor changes, have another major update until the next version, Jaunty Jackalope. Ubuntu users have the latest versions of most software on their desktops right now. In the months preceding the next release, cependant, they’re not going to be so lucky unless they like using “bêta” releases. As I’m not very familiar with Fedora, I’m not going to bother going into its release cycle.

These 2 distributions are also within a class of distributions known asbinary” ou “binary-baseddistributions. This means that when you download an update, the files that are downloaded are precompiled and should run on anysupportedhardware. This isn’t specifically optimised for your desktop’s hardware, par exemple, your processor. Perhaps you have an AMD processor which has extra instruction support which Intel CPUs do not have. The reverse could also be true. Pour cette raison, a binary-release distribution cannot optimise for one particular brand of hardware. Regardless of thisnon-optimisation”, it should run at a decent pace.

the practice!

Sur 2 years ago I started using Kubuntu. After a few months of working with it, I started to learn more about its specifics. I’m not much of a fan of using GUI tools to update the system when, ultimately, its all happening on the command-line anyway. The GUI tools just hide the complexity I don’t mind seeing.

I ended up making a frapper scénario, update, which would run all the steps required to get aptitude to just go ahead and upgrade already, kthx?©, perhaps stopping along the way to back up my configuration, remount the NFS network share where we keep an on-site repository, back up the local cache of aptitude’s installed packages, do some folder-link shuffling to use a local copy if the network share couldn’t remount, sync between the local copy and the network share if the previous update had a network share issue, and update lists of packages in the repository. In general, it wouldn’t go ahead if there were any errors though, as you can tell, this script became a messy beast that went above and beyond the original requirements. It worked well for me.

Until the day came to update between Kubuntu 6.10 à 7.04. I did this manually though, not with the script.

I ended up reinstalling from scratch as a result of the mess that ensued. At least, as a backup administrator should do well to demonstrate, it was easy to recover everything I really needed. 🙂

What else is out there?

Even before I had to reinstall Kubuntu, I was introduced to another distribution called Gentoo. There are 2 very distinct differences between Gentoo and Ubuntu’s update system. The first is that Gentoo is a source-based distribution. This means that when you update a package, the package manager downloads the source and compiles everything, hopefully optimising it for your system. This, I think, is very cool. The downside to this is that compiling everything takes a very long time.

Here are my (very unscientific) estimates for the length of time it takes to install a basic GUI OS to a desktop from installation media, excluding extraneous drivers (par exemple, the latest 3D graphics drivers):

OS: minmax (median)

Windows Vista: 15 – 30 (20) procès-verbal

Ubuntu: 15 – 40 (20) procès-verbal

Gentoo: 3 – 40 (6) hours

Gentoo also requires much tinkering with the config files in order to get things workingthis is another reason for the extremely long delay between inserting the CD and booting your awesome* new desktop. Popular applications have binary packages available for downloadthough this isn’t a default option.

They see me rollin

There is one more very important distinction Gentoo has from most other distributions. It is arolling-releasedistribution. This means that there isn’t any rigorous version orreleasethat the distribution adheres to. If you install Gentoo todayif you finish installing Gentoo today, you’re probably going to have the latest version of all the applications you installed. If some obscure application gets a major update tomorrow, within a few days, if you update your system, you’re going to have that latest version on your desktop.

The difference between this rolling release and theotherdistributions is rather staggering. Par exemple: If 4.2 were to be released tomorrow, you’d probably have to wait less than 2 weeks for it to be available on Gentoo. Ubuntu users might have to wait till 9.04 – that’s a 4-month wait.

Something more suitable?

Personally, I’m not willing to put in the 40 hours of effort to get my system working the way I want it to. My colleague had to reinstall recently for some obscure reason and it turns out he wasn’t willing to put in the 6 hours (he’s more experienced with Gentoo) of effort to get his system back to how it was running either. Plutôt, Arch Linux caught his eye. Arch Linux is a rolling-release (like Gentoo), binary-based (like Ubuntu) distribution. Its packages (bien, the vast majority of them) don’t need much tinkering with their config files to get things working nicely either. Its the best of both worlds!

You still need to know what you’re doing* but if you’ve come to this juncture, it shouldn’t be such a giant leap of faith. Arch Linux’s package manager, called pachomme, has built-in dependency and conflict handling. I use another package manager, yaourt (French for yoghurt), which has very quickly become popular with Arch users. Yaourt enhances the functionality of pacman by allowing you to download and install applications directly from the AUR, ou Arc référentiel d'utilisateurs. This repository contains scripts that allow you to automatically download and install many applications that would otherwise be completely unsupported by Arch’s own core developers. It downloads and compiles the package into a chroot’d environment. It then packages the chroot’d environment into a pacman-compatible package tarball and uses pacman to deploy it into your system.

Aussi, the AUR supports a voting system whereby popular packages get placed into the more official [community] dépôt. Yaourt also supports an automated voting mechanism whereby, after installing a package via AUR, it asks if you want to vote for its inclusion in [community].

I estimate that the time taken for my Arch installation was about 90 procès-verbal. I don’t recommend Archlinux for newbies though I de recommend it for any Linux user who’s gotten bored with other distrosand wants to get into the nitty gritty without having to install Linux From Scratch. Arch Linux has been getting pretty popular these days. Its currently at number 14 sur Distrowatch.

* IF you know what you’re doing. AND YOU BETTER BLOODY KNOW WHAT YOU’RE DOING!
Partager