برچسب آرشیو برای » لینوکس «

یکشنبه, اوت 4, 2013 | نویسنده:

I had a power outage affect my server’s large MD RAID array. Rather than let the server as a whole be down while waiting for it to complete an fsck, I had it boot without the large array so I could run the fsck manually.

اما, when running it manually I realised I had no way of knowing how far it was and how long it would take to complete. This is especially problematic with such a large array. With a little searching I found the tip of adding the -C parameter when calling fsck. I couldn’t find this in the documentation however: fsckhelp showed no such option.

The option turns out to be ext4-specific, and thus shows a perfectly functional progress bar with a percentage indicator. To find the information, instead offsckhelp” یا “man fsck”, you have to inputfsck.ext4help” یا “man fsck.ext4”. 🙂

اشتراک گذاری
یکشنبه, اوت 4, 2013 | نویسنده:

تاریخ

بخش عمده ای از سال گذشته اشاره کردم تغییر کرده بود من سرور شخصی – توسط جهش و مرزهای رشد کرده است (در حال حاضر 7TB است MD RAID6) و آن را تا به حال اخیرا با بازسازی اوبونتو سرور.

قوس هرگز اشتباه بود. آرچ لینوکس در حال حاضر من خیلی در مورد لینوکس آموخته بود (ادامه خواهد داد و برای انجام این کار در دسکتاپ دیگر من). اما طاق قطعا نیاز به زمان و توجه بیشتر از من می خواهم به صرف در سرور. در حالت ایده آل من ترجیح می دهم قادر سرور برای مدتی فراموش تا زمانی که یک ایمیل یادآوری می گوید “ام … یک زن و شوهر به روز رسانی شما باید در نگاه وجود دارد, دوستان.”

فضای آزاد نیست – و نه فضا است

این فرصت را به مهاجرت به اوبونتو واقعیت است که من اجرا کرده بود SATA بنادر, پورت های مورد نیاز برای اتصال دیسک های سخت به بقیه کامپیوتر – که آرایه RAID 7TB را با استفاده از تعداد زیادی از پورت! من حتی داده بود دور من بسیار دیسک سخت 200GB به عنوان آن را در زمان یکی از این پورت ها. من هم گیرنده هشدار داد که دیسک SMART نظارت نشان داد غیر قابل اعتماد بود. به عنوان یک راه حل موقت به فقدان از پورت های SATA, من حتی سیستم عامل سرور به مجموعه ای از چهار میله های USB در MD مهاجرت کرده بودند RAID1. دیوانه. من می دانم. من در مورد سرعت بیش از حد خوشحال بود. من تصمیم به بیرون رفتن و خرید یک درایو جدید سخت قابل اعتماد و یک کارت توسعه SATA برای رفتن با آن.

پارتیشن طاق اصلی سرور با استفاده از حدود 7GB دیسک. تکه بزرگی از آن بود عوض کردن پرونده, داده های cache شده و در غیر این صورت فایل های متفرقه و یا غیر ضروری. به طور کلی اندازه واقعی سیستم عامل, از جمله /خانه پوشه, تنها در حدود 2GB بود. این باعث شد من به فوق العاده سریع SSD راندن, فکر کردن شاید یک کوچکتر ممکن است بسیار گران. معلوم شد که ارزان ترین درایو SSD غیر من می توانم در واقع پیدا کردن هزینه بیشتر از یکی از این SSD ها نسبتا کوچک. بساز برای من. 🙂

انتخاب? کشیدن?!

در انتخاب سیستم عامل, من در حال حاضر می خواهم تصمیم آن نخواهد بود طاق. از تمام توزیعهای دیگر محبوب, من بیشتر آشنا با اوبونتو هستم و لینوکس. کلاه نمدی مردانه همچنین امکان – اما من تا به حال به طور جدی هنوز آن را برای سرور در نظر گرفته نمی. اوبونتو برنده دور.

تصمیم بعدی من تا به حال به تا به من رخ نمی دهد حضور در همه جا در یک وقت (جادوگر نصب اوبونتو) آن را از من پرسید: چگونه به راه اندازی پارتیشن.

من تازه به استفاده از SSD ها در لینوکس – من به خوبی آگاه از مشکلات استفاده از آنها را به درستی, عمدتا به دلیل به خطر طول عمر فقیر اگر سوء استفاده.

من نمی خواهم یک پارتیشن swap اختصاص داده شده به استفاده از. من در ارتقاء مادربرد سرور / CPU / حافظه در آینده نه چندان دور قصد. بر اساس آن تصمیم گرفتم مبادله به مبادله فایل بر روی RAID MD های موجود قرار داده است. مبادله نخواهد بود به خصوص سریع است، اما تنها هدف خود را برای آن مناسبت نادر هنگامی که چیزی را اشتباه رفته و حافظه در دسترس نیست.

سپس به سمت چپ من را به مسیر ریشه 60GB کامل از اینتل 330 SSD. به نظر من جدا / خانه است اما آن را فقط کمی بی معنی به نظر می رسید, با توجه به میزان بسیار کمی در گذشته مورد استفاده قرار گرفت. من برای اولین بار راه اندازی پارتیشن با LVM – چیزی است که من به تازگی انجام شده است هر زمان که من راه اندازی یک جعبه لینوکس (واقعا, هیچ بهانه ای برای استفاده از LVM وجود دارد). هنگامی که آن را به بخشی که در آن من می خواهم فایل سیستم را پیکربندی, من کلیک کشویی و به طور غریزی به انتخاب فایل سیستم ext4. سپس من btrfs در لیست متوجه. ادامه دادن!!

اما چه?

Btrfs (“کره EFF-ESS”, “بهتر EFF-ESS”, “زنبور عسل درخت EFF-ESS”, یا هر آنچه شما در آن روز تصور) یک فایل سیستم نسبتا جدید توسعه یافته به منظور آوردن لینوکس’ قابلیت بازگشت در مسیر فایل سیستم با فایل سیستم در حال حاضر فن آوری. موجود پادشاه هیل فایل سیستم, “EXT” (نسخه فعلی موسوم به فایل سیستم ext4) بسیار خوب است – اما آن محدود است, گیر در پارادایم های قدیمی (فکر می کنم از یک نام تجاری جدید F22 رپتور انتظار: کاهش از. an F4 فانتوم به با تلاش نیمه jested در ارتقاء معادل) و بعید است که قادر به رقابت بسیار طولانی با سیستمهای پرونده تصدی جدیدتر مانند است ZFS اوراکل. Btrfs هنوز راه طولانی برای رفتن است و هنوز هم در نظر گرفته تجربی (بسته به نوع که شما بخواهید و چه ویژگی های است که شما نیاز دارید). بسیاری از آن را به صورت پایدار برای استفاده از پایه – اما کسی را به هر گونه که حداقل تضمین های. و, البته, هر کس می گوید برای ساخت و آزمایش پشتیبان گیری!

Mooooooo

اساسی ترین تفاوت میان EXT و btrfs است که btrfs است “گاو” یا “کپی در نوشتن” فایل سیستم. این به این معنی است که داده ها است که در واقع عمدا داخلی سیستم فایل رونویسی هرگز. اگر شما تغییرات را در یک فایل, btrfs تغییرات خود را به محل جدید در رسانه های فیزیکی نوشتن و اشاره گر داخلی برای اشاره به محل جدید به روز رسانی. Btrfs می رود یک گام بیشتر است که در آن اشاره گر داخلی (مراجعه کننده به عنوان ابرداده) هستیم همچنین گاو. نسخه های قدیمی تر از EXT به سادگی رونویسی داده. فایل سیستم Ext4 یک مجله را به اطمینان حاصل شود که فساد رخ خواهد داد استفاده از پلاگین AC در نا مناسب ترین لحظه yanked. نتایج: از شماره مجله در یک تعداد مشابهی از مراحل مورد نیاز برای به روز رسانی داده ها. با یک SSD, سخت افزاری زیرین عمل یک فرایند گاو مشابه بدون توجه به چه فایل سیستم شما با استفاده از. دلیل این است که درایوهای SSD در واقع نمی تواند بازنویسی اطلاعات – آنها باید برای کپی کردن داده ها (همه تغییرات مورد نظرتان را در) به یک محل جدید و سپس پاک کردن بلوک های قدیمی به طور کامل. بهینه سازی در این زمینه است که یک SSD حتی ممکن است پاک کردن بلوک های قدیمی بلکه به سادگی یک توجه داشته باشید به پاک کردن بلوک در یک زمان بعد وقتی که همه چیز خیلی شلوغ نیست. نتیجه نهایی این است که درایوهای SSD مناسب به خوبی با یک فایل سیستم گاو و با سیستمهای پرونده غیر گاو انجام نیست و همچنین.

به مسائل جالب, گاو در فایل سیستم به راحتی با یک ویژگی به نام deduplication را می رود دست در دست. این اجازه می دهد دو (یا بیشتر) بلوک های یکسان از داده ها ذخیره می شود با استفاده از تنها یک کپی تنها, صرفه جویی در فضا. با گاو, اگر یک فایل deduplicated تغییر, دوقلو جداگانه خواهد شد نمی شود به عنوان فایل تغییر داده شده اند به یک بلوک های مختلف فیزیکی نوشته شده است.

گاو به نوبه خود باعث می شود snapshotting نسبتا آسان به پیاده سازی. هنگامی که یک عکس فوری ساخته شده است این سیستم صرفا ثبت تصویر لحظهای را به عنوان یک کار تقلیدی است از تمام داده ها و ابرداده در حجم. با گاو, هنگامی که تغییرات ساخته شده است, داده ها عکس فوری را دست نخورده باقی می ماند, و مداوم از وضعیت فایل سیستم در زمان عکس فوری ساخته شده بود را می توان به حفظ.

دوست جدید

با بالا در ذهن, به خصوص که اوبونتو ساخته شده است btrfs موجود به عنوان یک گزینه در زمان نصب, من نمیفهمد این امر می تواند زمان خوبی برای شیرجه رفتن به btrfs و بررسی کمی. 🙂

بخش 2 به زودی …

اشتراک گذاری
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 آرچ لینوکس 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 Pتحقیقoperties. Select the hardware tab and then select [Device Manager]:

System Properties

Find the device underDisk drives”, right-click your memory stick and select Pتحقیقoperties:

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. 🙂

اشتراک گذاری
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. 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

یا

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. 😛

اشتراک گذاری