Tag-Archive for » linux «

კვირა, აგვისტო 04th, 2013 | ავტორი:

მე მქონდა ძალა outage იმოქმედებს ჩემს სერვერზე დიდი md RAID მასივი. იმის ნაცვლად, რომ ნება სერვერზე როგორც მთელი იყოს ქვემოთ მოლოდინში ეს დაასრულებს fsck, მე მქონდა ის ჩატვირთვისას გარეშე დიდი მასივი მე ვერ აწარმოებს fsck ხელით.

თუმცა, როდესაც გაშვებული ხელით მივხვდი, მე არ იცის, თუ რამდენად შორს იყო და რამდენი ხანი დასჭირდება, რათა დასრულდეს. ეს განსაკუთრებით პრობლემატური ისეთი დიდი მასივი. ერთად პატარა ძებნას მივხვდი წვერი და დასძინა, რომ -C პარამეტრი დარეკვისას fsck. მე ვერ იპოვა ეს დოკუმენტაცია, თუმცა: fsck –დახმარება აჩვენა არსებობს ასეთი ვარიანტი.

ვარიანტი აღმოჩნდება ext4 სპეციფიკური, და ამით გვიჩვენებს შესანიშნავად ფუნქციური პროგრესი ბარი პროცენტული მაჩვენებელი. მოვძებნოთ ინფორმაცია, იმის მაგიერ “fsck –დაეხმაროს” ან “კაცი fsck”, თქვენ უნდა შეყვანის “fsck.ext4 –დაეხმაროს” ან “კაცი fsck.ext4”. 🙂

Share
კვირა, აგვისტო 04th, 2013 | ავტორი:

ისტორია

ბევრი რამ შეიცვალა, რადგან ბოლო აღნიშნულ ჩემი პირადი სერვერზე – იგი გაიზარდა leaps და საზღვრები (ეს უკვე 7TB md RAID6) და ეს ბოლო პერიოდის განმავლობაში აღდგენით ერთად Ubuntu სერვერი.

Arch არასოდეს ყოფილა შეცდომა. Arch Linux უკვე მასწავლა იმდენად შესახებ Linux (და გავაგრძელებთ ამის გაკეთებას ჩემს სხვა desktop). მაგრამ არქიეპისკოპოსმა აუცილებლად მოითხოვს მეტ დროს და ყურადღებას, ვიდრე მე მინდა დაიხარჯოს სერვერზე. იდეაში მინდა ურჩევნია შეძლებს დაივიწყოს სერვერზე მცირე ხნით, სანამ შეხსენების ელფოსტა აცხადებს “um … არსებობს რამოდენიმე განახლებები თქვენ უნდა შევხედოთ, მეგობარი.”

ფართი არ არის თავისუფალი – და არც სივრცე

შესაძლებლობა მიგრაცია Ubuntu იყო ის ფაქტი, რომ მე ამოიწურა SATA პორტების, პორტს დაკავშირება დისკები დანარჩენ კომპიუტერული – რომ 7TB RAID მასივში იყენებს ბევრი პორტების! მე კი მოცემული მოშორებით ჩემს ძალიან ძველი 200GB ხისტი, როგორც ეს აიღო ერთი იმ პორტების. მე ასევე გააფრთხილა, მიმღები, რომ დისკის ნახვა SMART მონიტორინგის მითითებული ეს იყო არასაიმედო. როგორც დროებითი Workaround to ნაკლებობა SATA პორტების, მე კი მიგრაცია სერვერზე OS ნაკრების ოთხი USB ჩხირები md RAID1. Crazy. მე ვიცი. მე არ ვიყავი ძალიან ბედნიერი შესახებ სიჩქარე. გადავწყვიტე გასვლა და ყიდვა new საიმედო მყარ დისკზე და SATA გაფართოების განყოფილებიდან წასვლა მას.

სერვერზე პირველადი Arch დანაყოფი იყენებდა შესახებ 7GB დისკის. დიდი ბლოკი რომ იყო მოკლე ფაილი, ქეშირებული მონაცემები ასევე სხვა სხვადასხვა ან არასაჭირო ფაილი. სრული ფაქტობრივი ზომა OS, მათ შორის /სახლში საქაღალდე, საუბარი იყო მხოლოდ 2GB. ეს აიძულა ჩემთვის შესასწავლად სუპერ სწრაფი SSD მანქანა, ფიქრი ალბათ უფრო მცირე ერთი არ უნდა იყოს ასე ძვირი. აღმოჩნდა, რომ ყველაზე იაფი არასამთავრობო SSD დისკის I იპოვა რეალურად ღირს მეტი ვიდრე ერთი ამ შედარებით მცირე SSDs. Yay ჩემთვის. 🙂

არჩევანი? Woah?!

არჩევის OS, მინდა უკვე გადაწყვეტილია, ეს არ იქნება Arch. Out ყველა სხვა პოპულარული დისტრიბუტივების, მე ყველაზე კარგად იცნობს Ubuntu და CentOS. Fedora ასევე შესაძლებლობა – მაგრამ მე მქონდა სერიოზულად არ გაუკეთებია განიხილება ის სერვერზე. Ubuntu მოიგო რაუნდი.

მომავალი გადაწყვეტილება მქონდა, რათა არ მოხდეს ჩემთან სანამ Ubiquity (Ubuntu-ს ინსტალაცია ოსტატი) ჰკითხა მას of me: როგორ შეიქმნა დანაყოფები.

მე ვიყავი ახალი გამოყენებას SSDs in Linux – მე კარგად იცის პრობლემების შესახებ არ იყენებს მათ სწორად, ძირითადად გამო რისკის ცუდი დღეგრძელობისა თუ მიზნით გამოყენების.

მე არ მინდოდა, გამოიყენოს სპეციალური swap დანაყოფი. ვაპირებ on ამაღლების სერვერის დედაპლატა / პროცესორი / მეხსიერება არ ძალიან შორს მომავალში. დაყრდნობით, რომ გადავწყვიტე მე დააყენა swap შევიდა swap ფაილის არსებულ MD RAID. გაცვლა არ იქნება, განსაკუთრებით სწრაფად, მაგრამ მისი ერთადერთი მიზანი იქნება, რომ იშვიათი შემთხვევაა, როდესაც რაღაც გაქრა არასწორი და მეხსიერება არ არის.

ეს მაშინ დატოვა ჩემზე, რათა ძირეული გეზი სრული 60GB გარეთ Intel 330 SSD. მე ითვლება ჰყოფს / მთავარი მაგრამ ეს მხოლოდ თითქოს პატარა უაზრო, თუ როგორ პატარა იყო გამოყენებული წარსული. მე პირველად შეიქმნა დანაყოფი ერთად ავტომატური დაყოფა – რამე ცოტა ხნის წინ აკეთებდა როცა შეიქმნა Linux ყუთი (ნამდვილად, არ არსებობს საბაბი არ გამოიყენოს ავტომატური დაყოფა). როდესაც მას ნაწილს, სადაც მინდა კონფიგურაციის ფაილური სისტემის, მე დააწკაპებთ ჩამოსაშლელი და ინსტინქტურად შერჩეული ext4. მაშინ შევნიშნე btrfs იმავე სიაში. Hang on!!

მაგრამ რა?

Btrfs (“კარაქი-eff-ess”, “უკეთესად eff-ess”, “ფუტკრის ხე-eff-ess”, ან რასაც თქვენ Fancy დღეს) შედარებით ახალი ფაილური სისტემის განვითარებული რათა Linux’ ფაილური სისტემის შესაძლებლობების უკან გზაზე მიმდინარე ფაილური სისტემის ტექნიკური. არსებული King-of-the-Hill ფაილური სისტემის, “ext” (მიმდინარე ვერსია მოუწოდა ext4) საკმაოდ კარგი – მაგრამ ეს არის შეზღუდული, მოხდა ძველი პარადიგმა (ვფიქრობ, ახალი F22 Raptor vs. an F4 Phantom ერთად ნახევრად jested მცდელობა ეკვივალენტობის განახლება) და ნაკლებად სავარაუდოა, რომ კონკურენციას გაუწევს ძალიან დიდი ხნის განმავლობაში ერთად უფრო ახალი საწარმო ფაილური სისტემების, როგორიცაა Oracle-ის ZFS. Btrfs კიდევ აქვს გრძელი გზაა გასავლელი და დღემდე ითვლება ექსპერიმენტული (დამოკიდებულია ვინ ხარ ვთხოვო და რა მახასიათებლები გჭირდებათ). ბევრი მიიჩნევს, რომ იყოს სტაბილური საბაზო გამოყენება – მაგრამ არავინ აპირებს რაიმე გარანტიები. და, რა თქმა უნდა, ყველას ამბობს, რათა დააგემოვნოთ სარეზერვო!

Mooooooo

ყველაზე ფუნდამენტური სხვაობა ext და btrfs არის, რომ btrfs არის “ძროხა” ან “ასლი შესახებ დაწერეთ” ფაილური სისტემის. ეს ნიშნავს, რომ მონაცემები არასოდეს არ არის რეალურად განზრახ ინსტალერის მიერ სისტემიდან მისი შინაგანი. თუ წერთ ცვლილების ფაილი, btrfs დაწერს თქვენი ცვლილებების ახალი ადგილმდებარეობა ფიზიკური მედიისა და განაახლებს შიდა მითითებას მიმართოს ახალი ადგილმდებარეობა. Btrfs მიდის ნაბიჯი კიდევ უფრო, რომ ეს შიდა პოინტერები (მოხსენიებული როგორც მეტადატის) არიან ასევე ძროხა. უფრო ძველ ვერსიაში ext ექნება უბრალოდ ინსტალერის მონაცემები. Ext4 იარაღს გამოიყენებენ ჟურნალი, რათა უზრუნველყოს, რომ კორუფცია არ არსებობს უნდა AC plug იყოს yanked გამოსვლით საუკეთესო არ არის დროული მომენტში. ჟურნალი შედეგების მსგავსი რაოდენობის ნაბიჯები საჭირო განაახლოთ მონაცემები. ერთად SSD, ძირითადი ტექნიკის მოქმედებს მსგავსი ძროხის პროცესი არ აქვს მნიშვნელობა რა სისტემიდან თქვენ იყენებთ. ეს იმიტომ რომ SSD დრაივები ვერ რეალურად გადავაწერო მონაცემები – მათ აქვთ კოპირება მონაცემები (თქვენი ცვლილებები) ახალ ადგილმდებარეობა და მერე წაშლას წლის ბლოკში მთლიანად. ოპტიმიზაციის ამ სფეროში არის ის, რომ SSD შეიძლება არც კი წაშლას წლის ბლოკი, არამედ უბრალოდ შენიშვნა წაშლას ბლოკი მოგვიანებით, როდესაც რამ არ არის იმდენად დატვირთული. საბოლოო ჯამში არის, რომ SSD დისკები შეესაბამება ძალიან კარგად ძროხის სისტემიდან და არ ასრულებს ასევე არასამთავრობო ძროხის ფაილური სისტემების.

იმისათვის, რომ თემა საინტერესო, ძროხის in სისტემიდან მარტივად მიდის ხელიხელჩაკიდებულებმა უნდა თვისება მოუწოდა deduplication. ეს საშუალებას აძლევს ორ (ან მეტი) იდენტური ბლოკები მონაცემთა შენახვის შესაძლებლობას იყენებს მხოლოდ ერთ ეგზემპლარად, გადარჩენის სივრცეში. With ძროხა, თუ deduplicated ფაილი შეცვლილია, ცალკე ტყუპი არ შეეხება როგორც შეცვლილია ფაილის მონაცემები უკვე იწერება სხვადასხვა ფიზიკურ ბლოკი.

ძროხა თავის მხრივ ქმნის snapshotting შედარებით ადვილად განხორციელებადი. როდესაც Snapshot კეთდება სისტემა მხოლოდ ჩანაწერს ახალი Snapshot როგორც დუბლირებას ყველა მონაცემი და მეტადატის ფარგლებში მოცულობა. With ძროხა, როდესაც ცვლილებები შედის, Snapshot მონაცემებით რჩება დაუზიანებელი, და თანმიმდევრული ხედვა ფაილური სისტემის სტატუსის დროს Snapshot გაკეთდა შეიძლება შეინარჩუნა.

ახალ მეგობარს

აღნიშნული გათვალისწინებით, განსაკუთრებით უბუნტუს გააკეთა btrfs ხელმისაწვდომია როგორც ინსტალაცია დროში ვარიანტი, I figured იქნებოდა კარგი დრო, რომ ჩაყვინთვის შევიდა btrfs და შეისწავლონ პატარა. 🙂

ნაწილი 2 მალე …

Share
Friday, 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 Windows 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, select “არარის, 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. Finally, 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. 🙂

Share
Wednesday, April 22nd, 2009 | ავტორი:

Arch 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. Importantly, yaourt supports installation of applications from Arch’s AUR. The 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

OR

pacman -Syu

and follow the given recommendations.

Share
Saturday, 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. 😛

Share
კატეგორია: linux  | Tags: , , , , , , ,  | დატოვე კომენტარი