summaryrefslogtreecommitdiff
path: root/debian
diff options
context:
space:
mode:
authorDimitri John Ledkov <xnox@ubuntu.com>2016-07-02 19:16:01 +0100
committerDimitri John Ledkov <xnox@ubuntu.com>2016-07-02 19:16:01 +0100
commitb83f8fcaffa542498c5698a3a161b9967ac1d3d6 (patch)
tree3cb83259723d112fd7b08b5bd299df2f5ee94009 /debian
mdadm (3.4-2) unstable; urgency=low
* Reneable incremental assembly * Rely on udev to assemble incremental arrays * In environments with systemd rely on mdadm-last-resort@.timer|.service units to activate degrated raids * In environments initramfs-tools initrd (no systemd) add local-block script to do the same after 2/3rds of root delay iteration * Drop local-top initramfs script * Drop dependency on initscripts package * Drop INITRDSTART support * Drop mdadm-raid init script * Drop ancient preinst * In mdadm.init remove dependency on mdadm-raid * In mdadm.init check, and bail out running in a container * In mdadm.config drop mdadm/autostart logic * Drop CREATE stanzas from mkconf and don't include them in the initramfs. The generated defaults, are the compiled-in defaults. And the current one generates warnings when running mdadm in the initramfs, as there is no passwd|group files to resolve root/disk uid/gid. Closes: 717609 * Adapt changes and formatting of initramfs hook from Ubuntu * Bump standards version to 3.9.7, no changes required * Fix copyright-refers-to-symlink-license * Closes: #781172, #796624, #769201, #813335, #632401, #804973, #714155, #770002, #737132, #675452, #726390, #813637, #814036. # imported from the archive
Diffstat (limited to 'debian')
-rw-r--r--debian/FAQ581
-rw-r--r--debian/NEWS107
-rw-r--r--debian/README.Debian148
-rw-r--r--debian/README.checkarray33
-rw-r--r--debian/README.recipes149
-rw-r--r--debian/TODO29
-rwxr-xr-xdebian/bugscript219
-rw-r--r--debian/changelog1889
-rw-r--r--debian/checkarray219
-rw-r--r--debian/compat1
-rw-r--r--debian/control32
-rw-r--r--debian/copyright21
-rw-r--r--debian/initramfs/hook110
-rw-r--r--debian/initramfs/script.local-block44
-rw-r--r--debian/initramfs/script.local-bottom3
-rw-r--r--debian/mdadm-waitidle56
-rw-r--r--debian/mdadm.config43
-rw-r--r--debian/mdadm.cron.d12
-rw-r--r--debian/mdadm.cron.daily18
-rw-r--r--debian/mdadm.doc-base.faq9
-rw-r--r--debian/mdadm.doc-base.recipes9
-rw-r--r--debian/mdadm.docs7
-rw-r--r--debian/mdadm.init100
-rw-r--r--debian/mdadm.logcheck.ignore.server23
-rw-r--r--debian/mdadm.logcheck.violations3
-rw-r--r--debian/mdadm.maintscript1
-rw-r--r--debian/mdadm.modules8
-rw-r--r--debian/mdadm.postinst107
-rw-r--r--debian/mdadm.postrm25
-rw-r--r--debian/mdadm.templates38
-rw-r--r--debian/mkconf97
-rw-r--r--debian/patches/debian-conffile-location.diff115
-rw-r--r--debian/patches/debian-no-Werror.diff24
-rw-r--r--debian/patches/mdmonitor-service-simplify.diff20
-rw-r--r--debian/patches/readlink-path.patch15
-rw-r--r--debian/patches/series5
-rw-r--r--debian/patches/sha1-includes.diff40
-rw-r--r--debian/po/POTFILES.in1
-rw-r--r--debian/po/ca.po184
-rw-r--r--debian/po/cs.po228
-rw-r--r--debian/po/da.po175
-rw-r--r--debian/po/de.po249
-rw-r--r--debian/po/es.po218
-rw-r--r--debian/po/eu.po176
-rw-r--r--debian/po/fi.po173
-rw-r--r--debian/po/fr.po186
-rw-r--r--debian/po/gl.po177
-rw-r--r--debian/po/it.po177
-rw-r--r--debian/po/ja.po233
-rw-r--r--debian/po/nl.po188
-rw-r--r--debian/po/pt.po179
-rw-r--r--debian/po/pt_BR.po304
-rw-r--r--debian/po/ru.po189
-rw-r--r--debian/po/sk.po176
-rw-r--r--debian/po/sv.po186
-rw-r--r--debian/po/templates.pot78
-rw-r--r--debian/po/vi.po179
-rw-r--r--debian/presubj32
-rwxr-xr-xdebian/rules103
-rw-r--r--debian/source/format1
-rw-r--r--debian/watch2
61 files changed, 8154 insertions, 0 deletions
diff --git a/debian/FAQ b/debian/FAQ
new file mode 100644
index 0000000..325fcb5
--- /dev/null
+++ b/debian/FAQ
@@ -0,0 +1,581 @@
+Frequently asked questions -- Debian mdadm
+==========================================
+
+Also see /usr/share/doc/mdadm/README.recipes.gz .
+
+The latest version of this FAQ is available here:
+ http://git.debian.org/?p=pkg-mdadm/mdadm.git;a=blob;f=debian/FAQ;hb=HEAD
+
+0. What does MD stand for?
+~~~~~~~~~~~~~~~~~~~~~~~~~~
+ MD is an abbreviation for "multiple device" (also often called "multi-
+ disk"). The Linux MD implementation implements various strategies for
+ combining multiple physical devices into single logical ones. The most
+ common use case is commonly known as "Software RAID". Linux supports RAID
+ levels 1, 4, 5, 6, and 10, as well as the "pseudo-redundant" RAID level 0.
+ In addition, the MD implementation covers linear and multipath
+ configurations.
+
+ Most people refer to MD as RAID. Since the original name of the RAID
+ configuration software is "md"adm, I chose to use MD consistently instead.
+
+1. How do I overwrite ("zero") the superblock?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ mdadm --zero-superblock /dev/mdX
+
+ Note that this is a destructive operation. It does not actually delete any
+ data, but the device will have lost its "authority". You cannot assemble the
+ array with it anymore, and if you add the device to another array, the
+ synchronisation process *will* *overwrite* all data on the device.
+
+ Nevertheless, sometimes it is necessary to zero the superblock:
+
+ - If you are reusing a disk that has been part of an array with an different
+ superblock version and/or location. In this case you zero the superblock
+ before you assemble the array, or add the device to an array.
+
+ - If you are trying to prevent a device from being recognised as part of an
+ array. Say for instance you are trying to change an array spanning sd[ab]1
+ to sd[bc]1 (maybe because sda is failing or too slow), then automatic
+ (scan) assembly will still recognise sda1 as a valid device. You can limit
+ the devices to scan with the DEVICE keyword in the configuration file, but
+ this may not be what you want. Instead, zeroing the superblock will
+ (permanently) prevent a device from being considered as part of an array.
+
+2. How do I change the preferred minor of an MD array (RAID)?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ See item 12 in /usr/share/doc/mdadm/README.recipes.gz and read the mdadm
+ manpage (search for 'preferred').
+
+3. How does mdadm determine which /dev/mdX or /dev/md/X to use?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ The logic used by mdadm to determine the device node name in the mdadm
+ --examine output (which is used to generate mdadm.conf) depends on several
+ factors. Here's how mdadm determines it:
+
+ It first checks the superblock version of a given array (or each array in
+ turn when iterating all of them). Run
+
+ mdadm --detail /dev/mdX | sed -ne 's,.*Version : ,,p'
+
+ to determine the superblock version of a running array, or
+
+ mdadm --examine /dev/sdXY | sed -ne 's,.*Version : ,,p'
+
+ to determine the superblock version from a component device of an array.
+
+ Version 0 superblocks (00.90.XX)
+ ''''''''''''''''''''''''''''''''
+ You need to know the preferred minor number stored in the superblock,
+ so run either of
+
+ mdadm --detail /dev/mdX | sed -ne 's,.*Preferred Minor : ,,p'
+ mdadm --examine /dev/sdXY | sed -ne 's,.*Preferred Minor : ,,p'
+
+ Let's call the resulting number MINOR. Also see FAQ 2 further up.
+
+ Given MINOR, mdadm will output /dev/md<MINOR> if the device node
+ /dev/md<MINOR> exists.
+ Otherwise, it outputs /dev/md/<MINOR>
+
+ Version 1 superblocks (01.XX.XX)
+ ''''''''''''''''''''''''''''''''
+ Version 1 superblocks actually seem to ignore preferred minors and instead
+ use the value of the name field in the superblock. Unless specified
+ explicitly during creation (-N|--name) the name is determined from the
+ device name used, using the following regexp: 's,/dev/md/?(.*),$1,', thus:
+
+ /dev/md0 -> 0
+ /dev/md/0 -> 0
+ /dev/md_d0 -> _d0 (d0 in later versions)
+ /dev/md/d0 -> d0
+ /dev/md/name -> name
+ (/dev/name does not seem to work)
+
+ mdadm will append the name to '/dev/md/', so it will always output device
+ names under the /dev/md/ directory. Newer versions can create a symlink
+ from /dev/mdX. See the symlinks option in mdadm.con(5) and mdadm(8).
+
+ If you want to change the name, you can do so during assembly:
+
+ mdadm -A -U name -N newname /dev/mdX /dev/sd[abc]X
+
+ I know this all sounds inconsistent and upstream has some work to do.
+ We're on it.
+
+4. Which RAID level should I use?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ Many people seem to prefer RAID4/5/6 because it makes more efficient use of
+ space. For example, if you have disks of size X, then in order to get 2X
+ storage, you need 3 disks for RAID5, but 4 if you use RAID10 or RAID1+0 (or
+ RAID6).
+
+ This gain in usable space comes at a price: performance; RAID1/10 can be up
+ to four times faster than RAID4/5/6.
+
+ At the same time, however, RAID4/5/6 provide somewhat better redundancy in
+ the event of two failing disks. In a RAID10 configuration, if one disk is
+ already dead, the RAID can only survive if any of the two disks in the other
+ RAID1 array fails, but not if the second disk in the degraded RAID1 array
+ fails (see next item, 4b). A RAID6 across four disks can cope with any two
+ disks failing. However, RAID6 is noticeably slower than RAID5. RAID5 and
+ RAID4 do not differ much, but can only handle single-disk failures.
+
+ If you can afford the extra disks (storage *is* cheap these days), I suggest
+ RAID1/10 over RAID4/5/6. If you don't care about performance but need as
+ much space as possible, go with RAID4/5/6, but make sure to have backups.
+ Heck, make sure to have backups whatever you do.
+
+ Let it be said, however, that I thoroughly regret putting my primary
+ workstation on RAID5. Anything disk-intensive brings the system to its
+ knees; I will have to migrate to RAID10 at one point.
+
+4b. Can a 4-disk RAID10 survive two disk failures?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ I am assuming that you are talking about a setup with two copies of each
+ block, so --layout=near2/far2/offset2:
+
+ In two thirds of the cases, yes[0], and it does not matter which layout you
+ use. When you assemble 4 disks into a RAID10, you essentially stripe a RAID0
+ across two RAID1, so the four disks A,B,C,D become two pairs: A,B and C,D.
+ If A fails, the RAID10 can only survive if the second failing disk is either
+ C or D; If B fails, your array is dead.
+
+ Thus, if you see a disk failing, replace it as soon as possible!
+
+ If you need to handle two failing disks out of a set of four, you have to
+ use RAID6, or store more than two copies of each block (see the --layout
+ option in the mdadm(8) manpage).
+
+ See also question 18 further down.
+
+ 0. it's actually (n-2)/(n-1), where n is the number of disks. I am not
+ a mathematician, see http://aput.net/~jheiss/raid10/, which gives the
+ chance of *failure* as 1/(n-1), so the chance of success is 1-1/(n-1), or
+ (n-2)/(n-1), or 2/3 in the four disk example.
+ (Thanks to Per Olofsson for clarifying this in #493577).
+
+5. How to convert RAID5 to RAID10?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ To convert RAID5 to RAID10, you need a spare disk (either a spare, forth
+ disk in the array, or a new one). Then you remove the spare and one of the
+ three disks from the RAID5, create a degraded RAID10 across them, create
+ the filesystem and copy the data (or do a raw copy), then add the other two
+ disks to the new RAID10. However, mdadm cannot assemble a RAID10 with 50%
+ missing devices the way you might like it:
+
+ mdadm --create -l 10 -n4 -pn2 /dev/md1 /dev/sd[cd] missing missing
+
+ For reasons that may be answered by question 20 further down, mdadm actually
+ cares about the order of devices you give it. If you intersperse the missing
+ keywords with the physical drives, it should work:
+
+ mdadm --create -l 10 -n4 -pn2 /dev/md1 /dev/sdc missing /dev/sdd missing
+
+ or even
+
+ mdadm --create -l 10 -n4 -pn2 /dev/md1 missing /dev/sd[cd] missing
+
+ Also see item (4b) further up, and this thread:
+ http://marc.theaimsgroup.com/?l=linux-raid&m=116004333406395&w=2
+
+6. What is the difference between RAID1+0 and RAID10?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ RAID1+0 is a form of RAID in which a RAID0 is striped across two RAID1
+ arrays. To assemble it, you create two RAID1 arrays and then create a RAID0
+ array with the two md arrays.
+
+ The Linux kernel provides the RAID10 level to do pretty much exactly the
+ same for you, but with greater flexibility (and somewhat improved
+ performance). While RAID1+0 makes sense with 4 disks, RAID10 can be
+ configured to work with only 3 disks. Also, RAID10 has a little less
+ overhead than RAID1+0, which has data pass the md layer twice.
+
+ I prefer RAID10 over RAID1+0.
+
+6b. What's the difference between RAID1+0 and RAID0+1?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ In short: RAID1+0 concatenates two mirrored arrays while RAID0+1 mirrors two
+ concatenated arrays. However, the two are also often switched.
+
+ The linux MD driver supports RAID10, which is equivalent to the above
+ RAID1+0 definition.
+
+ RAID1+0/10 has a greater chance to survive two disk failures, its
+ performance suffers less when in degraded state, and it resyncs faster after
+ replacing a failed disk.
+
+ See http://aput.net/~jheiss/raid10/ for more details.
+
+7. Which RAID10 layout scheme should I use
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ RAID10 gives you the choice between three ways of laying out the blocks on
+ the disk. Assuming a simple 4 drive setup with 2 copies of each block, then
+ if A,B,C are data blocks, a,b their parts, and 1,2 denote their copies, the
+ following would be a classic RAID1+0 where 1,2 and 3,4 are RAID0 pairs
+ combined into a RAID1:
+
+ near=2 would be (this is the classic RAID1+0)
+
+ hdd1 Aa1 Ba1 Ca1
+ hdd2 Aa2 Ba2 Ca2
+ hdd3 Ab1 Bb1 Cb1
+ hdd4 Ab2 Bb2 Cb2
+
+ offset=2 would be
+
+ hdd1 Aa1 Bb2 Ca1 Db2
+ hdd2 Ab1 Aa2 Cb1 Ca2
+ hdd3 Ba1 Ab2 Da1 Cb2
+ hdd4 Bb1 Ba2 Db1 Da2
+
+ far=2 would be
+
+ hdd1 Aa1 Ca1 .... Bb2 Db2
+ hdd2 Ab1 Cb1 .... Aa2 Ca2
+ hdd3 Ba1 Da1 .... Ab2 Cb2
+ hdd4 Bb1 Db1 .... Ba2 Da2
+
+ Where the second set start half-way through the drives.
+
+ The advantage of far= is that you can easily spread a long sequential read
+ across the drives. The cost is more seeking for writes. offset= can
+ possibly get similar benefits with large enough chunk size. Neither upstream
+ nor the package maintainer have tried to understand all the implications of
+ that layout. It was added simply because it is a supported layout in DDF and
+ DDF support is a goal.
+
+8. (One of) my RAID arrays is busy and cannot be stopped. What gives?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ It is perfectly normal for mdadm to report the array with the root
+ filesystem to be busy on shutdown. The reason for this is that the root
+ filesystem must be mounted to be able to stop the array (or otherwise
+ /sbin/mdadm does not exist), but to stop the array, the root filesystem
+ cannot be mounted. Catch 22. The kernel actually stops the array just before
+ halting, so it's all well.
+
+ If mdadm cannot stop other arrays on your system, check that these arrays
+ aren't used anymore. Common causes for busy/locked arrays are:
+
+ * The array contains a mounted filesystem (check the `mount' output)
+ * The array is used as a swap backend (check /proc/swaps)
+ * The array is used by the device-mapper (check with `dmsetup')
+ * LVM
+ * dm-crypt
+ * EVMS
+ * The array contains a swap partition used for suspend-to-ram
+ (check /etc/initramfs-tools/conf.d/resume)
+ * The array is used by a process (check with `lsof')
+
+9. Should I use RAID0 (or linear)?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ No. Unless you know what you're doing and keep backups, or use it for data
+ that can be lost.
+
+9b. Why not?
+~~~~~~~~~~~~
+ RAID0 has zero redundancy. If you stripe a RAID0 across X disks, you
+ increase the likelyhood of complete loss of the filesystem by a factor of X.
+
+ The same applies to LVM by the way.
+
+ If you want/must used LVM or RAID0, stripe it across RAID1 arrays
+ (RAID10/RAID1+0, or LVM on RAID1), and keep backups!
+
+10. Can I cancel a running array check (checkarray)?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ See the -x option in the `/usr/share/mdadm/checkarray --help` output.
+
+11. mdadm warns about duplicate/similar superblocks; what gives?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ In certain configurations, especially if your last partition extends all the
+ way to the end of the disk, mdadm may display a warning like:
+
+ mdadm: WARNING /dev/hdc3 and /dev/hdc appear to have very similar
+ superblocks. If they are really different, please --zero the superblock on
+ one. If they are the same or overlap, please remove one from the DEVICE
+ list in mdadm.conf.
+
+ There are two ways to solve this:
+
+ (a) recreate the arrays with version-1 superblocks, which is not always an
+ option -- you cannot yet upgrade version-0 to version-1 superblocks for
+ existing arrays.
+
+ (b) instead of 'DEVICE partitions', list exactly those devices that are
+ components of MD arrays on your system. So in the above example:
+
+ - DEVICE partitions
+ + DEVICE /dev/hd[ab]* /dev/hdc[123]
+
+12. mdadm -E / mkconf report different arrays with the same device
+ name / minor number. What gives?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ In almost all cases, mdadm updates the super-minor field in an array's
+ superblock when assembling the array. It does *not* do this for RAID0
+ arrays. Thus, you may end up seeing something like this when you run
+ mdadm -E or mkconf:
+
+ ARRAY /dev/md0 level=raid0 num-devices=2 UUID=abcd...
+ ARRAY /dev/md0 level=raid1 num-devices=2 UUID=dcba...
+
+ Note how the two arrays have different UUIDs but both appear as /dev/md0.
+
+ The solution in this case is to explicitly tell mdadm to update the
+ superblock of the RAID0 array. Assuming that the RAID0 array in the above
+ example should really be /dev/md1:
+
+ mdadm --stop /dev/md1
+ mdadm --assemble --update=super-minor --uuid=abcd... /dev/md1
+
+ See question 2 of this FAQ, and also http://bugs.debian.org/386315 and
+ recipe #12 in README.recipes .
+
+13. Can a MD array be partitioned?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ Since kernel 2.6.28, MD arrays can be partitioned like any other block
+ device.
+
+ Prior to 2.6.28, for a MD array to be able to hold partitions, it must be
+ created as a "partitionable array", using the configuration auto=part on the
+ command line or in the configuration file, or by using the standard naming
+ scheme (md_d* or md/d*) for partitionable arrays:
+
+ mdadm --create --auto=yes ... /dev/md_d0 ...
+ # see mdadm(8) manpage about the values of the --auto keyword
+
+14. When would I partition an array?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ This answer by Doug Ledford is shamelessly adapted from [0] (with
+ permission):
+
+ First, not all MD types make sense to be split up, e.g. multipath. For
+ those types, when a disk fails, the *entire* disk is considered to have
+ failed, but with different arrays you won't switch over to the next path
+ until each MD array has attempted to access the bad path. This can have
+ obvious bad consequences for certain array types that do automatic
+ failover from one port to another (you can end up getting the array in
+ a loop of switching ports repeatedly to satisfy the fact that one array
+ failed over during a path down, then the path came back up, and another
+ array stayed on the old path because it didn't send any commands during
+ the path down time period).
+
+ Second, convenience. Assume you have a 6 disk RAID5 array. If a disk
+ fails and you are using a partitioned MD array, then all the partitions on
+ the disk will already be handled without using that disk. No need to
+ manually fail any still active array members from other arrays.
+
+ Third, safety. Again with the raid5 array. If you use multiple arrays on
+ a single disk, and that disk fails, but it only failed on one array, then
+ you now need to manually fail that disk from the other arrays before
+ shutting down or hot swapping the disk. Generally speaking, that's not
+ a big deal, but people do occasionally have fat finger syndrome and this
+ is a good opportunity for someone to accidentally fail the wrong disk, and
+ when you then go to remove the disk you create a two disk failure instead
+ of one and now you are in real trouble.
+
+ Forth, to respond to what you wrote about independent of each other --
+ part of the reason why you partition. I would argue that's not true. If
+ your goal is to salvage as much use from a failing disk as possible, then
+ OK. But, generally speaking, people that have something of value on their
+ disks don't want to salvage any part of a failing disk, they want that
+ disk gone and replaced immediately. There simply is little to no value in
+ an already malfunctioning disk. They're too cheap and the data stored on
+ them too valuable to risk loosing something in an effort to further
+ utilize broken hardware. This of course is written with the understanding
+ that the latest MD RAID code will do read error rewrites to compensate for
+ minor disk issues, so anything that will throw a disk out of an array is
+ more than just a minor sector glitch.
+
+ 0. http://marc.theaimsgroup.com/?l=linux-raid&m=116117813315590&w=2
+
+15. How can I start a dirty degraded array?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ A degraded array (e.g. a RAID5 with only two disks) that has not been
+ properly stopped cannot be assembled just like that; mdadm will refuse and
+ complain about a "dirty degraded array", for good reasons.
+
+ The solution might be to force-assemble it, and then to start it. Please see
+ recipes 4 and 4b of /usr/share/doc/mdadm/README.recipes.gz and make sure you
+ know what you're doing.
+
+16. How can I influence the speed with which an array is resynchronised?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ For each array, the MD subsystem exports parameters governing the
+ synchronisation speed via sysfs. The values are in kB/sec.
+
+ /sys/block/mdX/md/sync_speed -- the current speed
+ /sys/block/mdX/md/sync_speed_max -- the maximum speed
+ /sys/block/mdX/md/sync_speed_min -- the guaranteed minimum speed
+
+17. When I create a new array, why does it resynchronise at first?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ See the mdadm(8) manpage:
+ When creating a RAID5 array, mdadm will automatically create a degraded
+ array with an extra spare drive. This is because building the spare into
+ a degraded array is in general faster than resyncing the parity on
+ a non-degraded, but not clean, array. This feature can be over-ridden with
+ the --force option.
+
+ This also applies to RAID levels 4 and 6.
+
+ It does not make much sense for RAID levels 1 and 10 and can thus be
+ overridden with the --force and --assume-clean options, but it is not
+ recommended. Read the manpage.
+
+18. How many failed disks can a RAID10 handle?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ (see also question 4b)
+
+ The following table shows how many disks you can lose and still have an
+ operational array. In some cases, you *can* lose more than the given number
+ of disks, but there is no guarantee that the array survives. Thus, the
+ following is the guaranteed number of failed disks a RAID10 array survives
+ and the maximum number of failed disks the array can (but is not guaranteed
+ to) handle, given the number of disks used and the number of data block
+ copies. Note that 2 copies means original + 1 copy. Thus, if you only have
+ one copy (the original), you cannot handle any failures.
+
+ 1 2 3 4 (# of copies)
+ 1 0/0 0/0 0/0 0/0
+ 2 0/0 1/1 1/1 1/1
+ 3 0/0 1/1 2/2 2/2
+ 4 0/0 1/2 2/2 3/3
+ 5 0/0 1/2 2/2 3/3
+ 6 0/0 1/3 2/3 3/3
+ 7 0/0 1/3 2/3 3/3
+ 8 0/0 1/4 2/3 3/4
+ (# of disks)
+
+ Note: I have not really verified the above information. Please don't count
+ on it. If a disk fails, replace it as soon as possible. Corrections welcome.
+
+19. What should I do if a disk fails?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ Replace it as soon as possible:
+
+ mdadm --remove /dev/md0 /dev/sda1
+ halt
+ <replace disk and start the machine>
+ mdadm --add /dev/md0 /dev/sda1
+
+20. So how do I find out which other disk(s) can fail without killing the
+ array?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ Did you read the previous question and its answer?
+
+ For cases when you have two copies of each block, the question is easily
+ answered by looking at the output of /proc/mdstat. For instance on a four
+ disk array:
+
+ md3 : active raid10 sdg7[3] sde7[0] sdh7[2] sdf7[1]
+
+ you know that sde7/sdf7 form one pair and sdg7/sgh7 the other.
+
+ If sdh now fails, this will become
+
+ md3 : active raid10 sdg7[3] sde7[0] sdh7[4](F) sdf7[1]
+
+ So now the second pair is broken; the array could take another failure in
+ the first pair, but if sdg now also fails, you're history.
+
+ Now go and read question 19.
+
+ For cases with more copies per block, it becomes more complicated. Let's
+ think of a seven disk array with three copies:
+
+ md5 : active raid10 sdg7[6] sde7[4] sdb7[5] sdf7[2] sda7[3] sdc7[1] sdd7[0]
+
+ Each mirror now has 7/3 = 2.33 disks to it, so in order to determine groups,
+ you need to round up. Note how the disks are arranged in increasing order of
+ their indices (the number in brackes in /proc/mdstat):
+
+ disk: -sdd7- -sdc7- -sdf7- -sda7- -sde7- -sdb7- -sdg7-
+ group: [ one ][ two ][ three ]
+
+ Basically this means that after two disk failed, you need to make sure that
+ the third failed disk doesn't destroy all copies of any given block. And
+ that's not always easy as it depends on the layout chosen: whether the
+ blocks are near (same offset within each group), far (spread apart in a way
+ to maximise the mean distance), or offset (offset by size/n within each
+ block).
+
+ I'll leave it up to you to figure things out. Now go read question 19.
+
+21. Why does the kernel speak of 'resync' when using checkarray?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ Please see README.checkarray and
+ http://www.mail-archive.com/linux-raid@vger.kernel.org/msg04835.html .
+
+ In short: it's a bug. checkarray is actually not a resync, but the kernel
+ does not distinguish between them.
+
+22. Can I prioritise the sync process and sync certain arrays before others?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ Upon start, md will resynchronise any unclean arrays, starting in somewhat
+ random order. Sometimes it's desirable to sync e.g. /dev/md3 first (because
+ it's the most important), but while /dev/md1 is synchronising, /dev/md3 will
+ be DELAYED (see /proc/mdstat; only if they share the same physical
+ components.
+
+ It is possible to delay the synchronisation via /sys:
+
+ echo idle >/sys/block/md1/md/sync_action
+
+ This will cause md1 to go idle and md to synchronise md3 (or whatever is
+ queued next; repeat the above for other devices if necessary). md will also
+ realise that md1 is still not in sync and queue it for resynchronisation,
+ so it will sync automatically when its turn has come.
+
+23. mdadm's init script fails because it cannot find any arrays. What gives?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ This does not happen anymore, if no arrays present in config file, no arrays
+ will be started.
+
+24. What happened to mdrun? How do I replace it?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ mdrun used to be the sledgehammer approach to assembling arrays. It has
+ accumulated several problems over the years (e.g. #354705) and thus has been
+ deprecated and removed with the 2.6.7-2 version of this package.
+
+ If you are still using mdrun, please ensure that you have a valid
+ /etc/mdadm/mdadm.conf file (run /usr/share/mdadm/mkconf --generate to get
+ one), and run
+
+ mdadm --assemble --scan --auto=yes
+
+ instead of mdrun.
+
+25. Why are my arrays marked auto-read-only in /proc/mdstat?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ Arrays are kept read-only until the first write occurs. This allows md to
+ skip lengthy resynchronisation for arrays that have not been properly shut
+ down, but which also not have changed.
+
+26. Why doesn't mdadm find arrays specified in the config file and causes the
+ boot to fail?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ My boot process dies at an early stage and drops me into the busybox shell.
+ The last relevant output seems to be from mdadm and is something like
+
+ "/dev/md2 does not exist"
+
+ or
+
+ "No devices listed in conf file found"
+
+ Why does mdadm break my system?
+
+ Short answer: It doesn't, the underlying devices aren't yet available yet
+ when mdadm runs during the early boot process.
+
+ Long answer: It doesn't. but the drivers of those devices incorrectly
+ communicate to the kernel that the devices are ready, when in fact they are
+ not. I consider this a bug in those drivers. Please consider reporting it.
+
+ Workaround: there is nothing mdadm can or will do against this. Fortunately
+ though, initramfs provides a method, documented at
+ http://wiki.debian.org/InitramfsDebug. Please append rootdelay=10 to the
+ kernel command line and try if the boot now works.
+
+ -- martin f. krafft <madduck@debian.org> Wed, 13 May 2009 09:59:53 +0200
diff --git a/debian/NEWS b/debian/NEWS
new file mode 100644
index 0000000..691f717
--- /dev/null
+++ b/debian/NEWS
@@ -0,0 +1,107 @@
+mdadm (3.2.2-1) unstable; urgency=low
+
+ Metadata format change requires recent Grub
+ The following only applies to users who want to let the grub-pc bootloader
+ load the kernel directly off a RAID device created with mdadm 3.x and
+ default values, or when the metadata version is explicitly set using -e.
+
+ Specifically, this includes all arrays created during or after the
+ installation of Debian squeeze (mdadm-3.1.4+8efb9d1). Arrays created with
+ older mdadm versions, and RAIDs created with the command-line option
+ -e 0.9 are not affected.
+
+ Versions of grub-pc older than 1.98+20100720-1 will not be able to boot
+ directly off a RAID with the 1.x metadata formats (the new default is 1.2).
+ To ensure a bootable system, please make sure to use grub-pc 1.98+20100720-1
+ or later, which is provided by Debian squeeze. An unbootable system may be
+ rescued with Super Grub2 Disk (http://www.supergrubdisk.org/super-grub2-disk/)
+ or grml (http://grml.org/).
+
+ -- Scott Schaefer <saschaefer@neurodiverse.org> Wed, 27 Jul 2011 20:21:50 -0400
+
+mdadm (3.1.4-1+8efb9d1) unstable; urgency=low
+
+ Default metadata format for newly created arrays has changed from
+ 0.90 to 1.2. Location of the superblock is now 4Kb from the start
+ of the device, instead of at the end of the device for 0.90.
+ The change from 0.9 to 1.x lifted many restrictions of the old
+ metadata format, and change in location (from end to 4k after
+ start for 1.2) reduced chances to confuse a raid array with
+ filesystem inside it. It is now less easy to mount a component
+ device as separate filesystem by incident, thus destroying the
+ array.
+
+ Also, chunk size by default is 512K (was 64K) and bitmap chunk size
+ is 64Mb.
+
+ -- Michael Tokarev <mjt@tls.msk.ru> Sat, 10 Sep 2011 13:35:12 +0400
+
+mdadm (2.6.7-2) unstable; urgency=low
+
+ /dev/disk symlinks:
+ mdadm now creates symlinks in /dev/disk/by-id, using the template
+ md-uuid-* for the array UUIDs and md-name-* for any names assigned to
+ arrays (version-1 superblocks only). Thanks to Suse for the udev rules
+ file.
+
+ mdrun removed:
+ This version also removes mdrun once and for all. If you are still using
+ mdrun, please ensure that you have a valid /etc/mdadm/mdadm.conf file (run
+ /usr/share/mdadm/mkconf --generate to get one), and run
+
+ mdadm --assemble --scan --auto=yes
+
+ -- martin f. krafft <madduck@debian.org> Wed, 02 Jul 2008 10:57:32 +0200
+
+mdadm (2.5.3.git200608201206-1) unstable; urgency=low
+
+ This version makes mdadm.conf mandatory. If you do not have such a file, it
+ will be created for you.
+
+ You must verify the contents of this file and ensure that it represents your
+ local configuration. See /usr/share/doc/mdadm/README.upgrading-2.5.3.gz for
+ more information.
+
+ -- martin f. krafft <madduck@debian.org> Sun, 20 Aug 2006 21:58:43 +0100
+
+mdadm (2.5-1) unstable; urgency=low
+
+ mdrun has been (finally) obsoleted, and an appropriate warning message is
+ written to the console if you (or a script) attempts to run it. If you
+ cannot live without mdrun, you can disable the warning by setting
+ USE_DEPRECATED_MDRUN=1 in /etc/default/mdadm. Note that mdrun will *not* be
+ supported. Please also see /usr/share/doc/mdadm/README.mdrun .
+
+ -- martin f. krafft <madduck@debian.org> Tue, 30 May 2006 23:25:13 +0200
+
+mdadm (2.4.1-5) unstable; urgency=low
+
+ This version drops the automatic generation of the /etc/mdadm/mdadm.conf
+ file on every boot (if it was missing). This means that you need to ensure
+ that you have a valid configuration file. If none is present during package
+ configuration, mdadm *will* try to generate one, but it will only contain
+ information about arrays that were running at the time of package
+ configuration. Arrays not listed in the configuration file will *not* be
+ started automatically after boot (with the exception of the root partition).
+
+ If you want to recreate your configuration file, either figure out what it
+ should contain from the mdadm.conf(5) manpage, or simply assemble and run
+ all the arrays the way you like it, then run
+ /usr/share/mdadm/mkconf force-generate /etc/mdadm/mdadm.conf
+
+ -- martin f. krafft <madduck@debian.org> Sat, 03 Jun 2006 17:45:47 +0200
+
+mdadm (2.4.1-1) unstable; urgency=low
+
+ As of version 2.3, mdadm uses /etc/mdadm.conf as its main configuration
+ file, and falls back to /etc/mdadm/mdadm.conf if the former is not found.
+ Since Debian uses /etc/mdadm/mdadm.conf as the configuration file path, this
+ order was reverted: Debian's mdadm reads /etc/mdadm/mdadm.conf as its main
+ file and falls back to /etc/mdadm.conf if the former is not found.
+
+ An incompatible change in the reshaping of RAID 5 arrays was made in this
+ upstream release. If you want to reshape a RAID 5 array with a version-1
+ superblock, please make sure to use mdadm 2.4.1 and at least a 2.6.17-rc2
+ kernel.
+
+ -- martin f. krafft <madduck@debian.org> Tue, 16 May 2006 13:07:49 -0500
diff --git a/debian/README.Debian b/debian/README.Debian
new file mode 100644
index 0000000..bfca8cb
--- /dev/null
+++ b/debian/README.Debian
@@ -0,0 +1,148 @@
+mdadm for Debian
+================
+
+Please make sure you read into /usr/share/doc/mdadm/NEWS.Debian.gz and the
+documents listed under "further reading" a little later in this file.
+
+The latest version of this document is available here:
+ http://git.debian.org/?p=pkg-mdadm/mdadm.gita=blob;f=debian/README.Debian;hb=HEAD
+
+Autostarting devices
+~~~~~~~~~~~~~~~~~~~~
+The mdadm.conf file controls which devices are to be started automatically by
+mdadm during boot, and various other parameters about how they are to be started.
+The file can also contain some control parameters for the mdadm monitor daemon.
+See mdadm.conf(5) for more information.
+
+Note: this only applies to modular kernels. If you use a monolithic kernel,
+you can control which devices are started automatically by changing the
+partition type: 0xfd for autostart, 0x83 to prevent autostart. mdadm does not
+actually care about the partition type, only the kernel does.
+
+Common recipes
+~~~~~~~~~~~~~~
+Check /usr/share/doc/mdadm/README.recipes.gz for some simple examples of how
+to do the most common stuff with mdadm.
+
+To RAID5 or not to RAID5
+~~~~~~~~~~~~~~~~~~~~~~~~
+See http://www.miracleas.com/BAARF/BAARF2.html . The package maintainer could
+not possibly come up with so much emotion over such a technical topic.
+
+Further reading
+~~~~~~~~~~~~~~~
+The documentation for the kernel md driver is included in
+/usr/share/doc/mdadm/md.txt.gz. In addition, the md(4) manpage provides
+valuable information about the applicable concepts. Do read those!
+
+Further documents of interest:
+ - Linux-RAID reference Wiki:
+ http://linux-raid.osdl.org
+ - Linux software RAID HOWTO:
+ http://tldp.org/HOWTO/Software-RAID-HOWTO.html
+ - linux-raid mailing list info:
+ http://vger.kernel.org/vger-lists.html#linux-raid
+ - linux-raid mailing list FAQ:
+ http://www.faqs.org/contrib/linux-raid/
+
+Upstream
+~~~~~~~~
+For completeness: The upstream repository is available from
+ git clone git://neil.brown.name/mdadm
+
+You can browse Neil's repository here:
+ http://neil.brown.name/git?p=mdadm
+
+You can also clone from Debian's Git repository, where upstream's code is in
+the 'upstream' branch:
+ git://git.debian.org/git/pkg-mdadm/mdadm
+
+Reporting bugs
+~~~~~~~~~~~~~~
+For reporting bugs, please use the reportbug tool, as it collects useful
+information about the system where you're experiencing the problem.
+
+If the system is another, please include the output of
+/usr/share/bug/mdadm/scripts with your report.
+
+If you are turning to the linux-raid@vger.kernel.org mailing list because you
+already know that the issue is with the md kernel driver and certainly not
+Debian-specific, please also include the output of
+/usr/share/bug/mdadm/scripts.
+
+In general, report bugs against the mdadm Debian package, using reportbug.
+I am happy to route reports to where they belong.
+
+Debian package maintenance
+~~~~~~~~~~~~~~~~~~~~~~~~~~
+The package is maintained with Git and published on git.debian.org. To obtain
+the source:
+
+ git clone git://git.debian.org/git/pkg-mdadm/mdadm
+
+You can browse the repository here:
+ http://git.debian.org/?p=pkg-mdadm/mdadm
+
+If you want to join the mdadm effort, please send me an email. I'll be very
+glad for any help I get.
+
+There are things to do listed in debian/TODO.
+
+You might also be interested in the following document, which explains how
+package maintenance of mdadm was migrated from SVN to Git:
+ http://blog.madduck.net/debian/2007.10.07_converting-a-package-to-git
+
+Patches
+~~~~~~~
+The best way to submit patches is with git-format-patch, as outlined in the
+following. If this is too complicated for you, please feel free to make
+normal diffs, or contact me for assistance if you'd like to learn how to use
+Git.
+
+Please try to follow the guidelines outlined in
+ http://repo.or.cz/w/git.git?a=blob;f=Documentation/SubmittingPatches;hb=HEAD
+
+First, the setup, which you only have to do once on each machine you work with:
+
+# leave out --global if you want to set your identity only for mdadm
+git config --global user.name 'your name'
+git config --global user.email 'your@email.address'
+git clone git://git.debian.org/git/pkg-mdadm/mdadm.git
+
+To prepare the actual patch, do the following:
+
+git pull
+git checkout -b some-name-identifying-my-work
+while not finished:
+ // if resuming after a while, maybe update your branch:
+ git rebase master
+ // edit files
+ git add files
+ git commit
+ ...
+end
+
+After you've brought your change to a state where you want to submit it, please
+squash it into logical single commits. If you only made one change, then this
+will do:
+
+git checkout -b temp-squash master
+git merge --squash some-name-identifying-my-work
+git commit // ... remove the "Squashed commit of the following:" leader
+git format-patch -M -s master
+// now inspect the files this created in $PWD
+// when you're ready to submit, do:
+git send-email --to your@email.address
+// check that it's okay when it arrives
+git send-email --to pkg-mdadm-devel@lists.alioth.debian.org
+
+For multiple logical changes, cherry-pick or squash-merge every commit
+belonging to a change to the integration branch and then commit it.
+
+Also, read the git-send-email manpage in case you're submitting multiple
+logical changes, in case you want to thread them.
+
+The manpage also includes information about adding a prologue message explaining your patch, or how to insert it into an existing
+thread (in-reply-to).
+
+ -- martin f. krafft <madduck@debian.org> Tue, 16 Oct 2007 18:12:13 +0100
diff --git a/debian/README.checkarray b/debian/README.checkarray
new file mode 100644
index 0000000..8071a4d
--- /dev/null
+++ b/debian/README.checkarray
@@ -0,0 +1,33 @@
+checkarray notes
+================
+
+checkarray will run parity checks across all your redundant arrays. By
+default, it is configured to run on the first Sunday of each month, at 01:06
+in the morning. This is realised by asking cron to wake up every Sunday with
+/etc/cron.d/mdadm, but then only running the script when the day of the month
+is less than or equal to 7. See #380425.
+
+Cron will try to run the check at "idle I/O priority" (see ionice(1)), so that
+the check does not overload the system too much. Note that this will only
+work if all the component devices of the array employ the (default) "cfq" I/O
+scheduler. See the kernel documentation[0] for information on how to verify
+and modify the scheduler. checkarray does not verify this for you.
+
+ 0. http://www.kernel.org/doc/Documentation/block/switching-sched.txt
+
+If you manually invoke checkarray, it runs with default I/O priority. Should
+you need to run a check at a higher (or lower) I/O priority, then have a look
+at the --idle, --slow, --fast, and --realtime options.
+
+'check' is a read-only operation, even though the kernel logs may suggest
+otherwise (e.g. /proc/mdstat and several kernel messages will mention
+"resync"). Please also see question 21 of the FAQ.
+
+If, however, while reading, a read error occurs, the check will trigger the
+normal response to read errors which is to generate the 'correct' data and try
+to write that out - so it is possible that a 'check' will trigger a write.
+However in the absence of read errors it is read-only.
+
+You can cancel a running array check with the -x option to checkarray.
+
+ -- martin f. krafft <madduck@debian.org> Thu, 02 Sep 2010 10:27:29 +0200
diff --git a/debian/README.recipes b/debian/README.recipes
new file mode 100644
index 0000000..2b1891e
--- /dev/null
+++ b/debian/README.recipes
@@ -0,0 +1,149 @@
+mdadm recipes
+=============
+
+The following examples/recipes may help you with your mdadm experience. I'll
+leave it as an exercise to use the correct device names and parameters in each
+case. You can find pointers to additional documentation in the README.Debian
+file.
+
+Enjoy. Submissions welcome.
+
+The latest version of this document is available here:
+ http://git.debian.org/?p=pkg-mdadm/mdadm.git;a=blob;f=debian/README.recipes;hb=HEAD
+
+0. create a new array
+~~~~~~~~~~~~~~~~~~~~~
+ mdadm --create -l1 -n2 -x1 /dev/md0 /dev/sd[abc]1 # RAID 1, 1 spare
+ mdadm --create -l5 -n3 -x1 /dev/md0 /dev/sd[abcd]1 # RAID 5, 1 spare
+ mdadm --create -l6 -n4 -x1 /dev/md0 /dev/sd[abcde]1 # RAID 6, 1 spare
+
+1. create a degraded array
+~~~~~~~~~~~~~~~~~~~~~~~~~~
+ mdadm --create -l5 -n3 /dev/md0 /dev/sda1 missing /dev/sdb1
+ mdadm --create -l6 -n4 /dev/md0 /dev/sda1 missing /dev/sdb1 missing
+
+2. assemble an existing array
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ mdadm --assemble --auto=yes /dev/md0 /dev/sd[abc]1
+
+ # if the array is degraded, it won't be started. use --run:
+ mdadm --assemble --auto=yes --run /dev/md0 /dev/sd[ab]1
+
+ # or start it by hand:
+ mdadm --run /dev/md0
+
+3. assemble all arrays in /etc/mdadm/mdadm.conf
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ mdadm --assemble --auto=yes --scan
+
+4. assemble a dirty degraded array
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ mdadm --assemble --auto=yes --force /dev/md0 /dev/sd[ab]1
+ mdadm --run /dev/md0
+
+4b. assemble a dirty degraded array at boot-time
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ If the array is started at boot time by the kernel (partition type 0xfd),
+ you can force-assemble it by passing the kernel boot parameter
+
+ md-mod.start_dirty_degraded=1
+
+5. stop arrays
+~~~~~~~~~~~~~~
+ mdadm --stop /dev/md0
+
+ # to stop all arrays in /etc/mdadm/mdadm.conf
+ mdadm --stop --scan
+
+6. hot-add components
+~~~~~~~~~~~~~~~~~~~~~
+ # on the running array:
+ mdadm --add /dev/md0 /dev/sdc1
+ # if you add more components than the array was setup with, additional
+ # components will be spares
+
+7. hot-remove components
+~~~~~~~~~~~~~~~~~~~~~~~~
+ # on the running array:
+ mdadm --fail /dev/md0 /dev/sdb1
+ # if you have configured spares, watch /proc/mdstat how it fills in
+ mdadm --remove /dev/md0 /dev/sdb1
+
+8. hot-grow a RAID1 by adding new components
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ # on the running array, in either order:
+ mdadm --grow -n3 /dev/md0
+ mdadm --add /dev/md0 /dev/sdc1
+ # note: without growing first, additional devices become spares and are
+ # *not* synchronised after the add.
+
+9. hot-shrink a RAID1 by removing components
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ mdadm --fail /dev/md0 /dev/sdc1
+ mdadm --remove /dev/md0 /dev/sdc1
+ mdadm --grow -n2 /dev/md0
+
+10. convert existing filesystem to RAID 1
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ # The idea is to create a degraded RAID 1 on the second partition, move
+ # data, then hot add the first. This seems safer to me than simply to
+ # force-add a superblock to the existing filesystem.
+ #
+ # Assume /dev/sda1 holds the data (and let's assume it's mounted on
+ # /home) and /dev/sdb1 is empty and of the same size...
+ #
+ mdadm --create /dev/md0 -l1 -n2 /dev/sdb1 missing
+ mkfs -t <type> /dev/md0
+ mount /dev/md0 /mnt
+ tar -cf- -C /home . | tar -xf- -C /mnt -p
+ # consider verifying the data
+ umount /home
+ umount /mnt
+ mount /dev/md0 /home # also change /etc/fstab
+ mdadm --add /dev/md0 /dev/sda1
+
+ Warren Togami has a document explaining how to convert a filesystem on
+ a remote system via SSH: http://togami.com/~warren/guides/remoteraidcrazies/
+
+10b. convert existing filesystem to RAID 1 in-place
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ In-place conversion of /dev/sda1 to /dev/md0 is effectively
+ mdadm --create /dev/md0 -l1 -n2 /dev/sda1 missing
+ however, do NOT do this, as you risk filesystem corruption.
+
+ If you need to do this, first unmount and shrink the filesystem by
+ a megabyte (if supported). Then run the above command, then (optionally)
+ again grow the filesystem as much as possible.
+
+ Do make sure you have backups. If you do not yet, consider method (10)
+ instead (and make backups anyway!).
+
+11. convert existing filesystem to RAID 5/6
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ # See (10) for the basics.
+ mdadm --create /dev/md0 -l5 -n3 /dev/sdb1 /dev/sdc1 missing
+ #mdadm --create /dev/md0 -l6 -n4 /dev/sdb1 /dev/sdc1 /dev/sdd1 missing
+ mkfs -t <type> /dev/md0
+ mount /dev/md0 /mnt
+ tar -cf- -C /home . | tar -xf- -C /mnt -p
+ # consider verifying the data
+ umount /home
+ umount /mnt
+ mount /dev/md0 /home # also change /etc/fstab
+ mdadm --add /dev/md0 /dev/sda1
+
+12. change the preferred minor of an MD array (RAID)
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ # you need to manually assemble the array to change the preferred minor
+ # if you manually assemble, the superblock will be updated to reflect
+ # the preferred minor as you indicate with the assembly.
+ # for example, to set the preferred minor to 4:
+ mdadm --assemble /dev/md4 /dev/sd[abc]1
+
+ # this only works on 2.6 kernels, and only for RAID levels of 1 and above.
+ # for other MD arrays, you need to specify --update explicitly:
+ mdadm --assemble --update=super-minor /dev/md4 /dev/sd[abc]1
+
+ # see also item 12 in the FAQ contained with the Debian package.
+
+ -- martin f. krafft <madduck@debian.org> Fri, 06 Oct 2006 15:39:58 +0200
diff --git a/debian/TODO b/debian/TODO
new file mode 100644
index 0000000..eb3299e
--- /dev/null
+++ b/debian/TODO
@@ -0,0 +1,29 @@
+debian mdadm TODO list
+======================
+
+- version-1 is a nightmare. E.g. on partitionable arrays, with / on
+ /dev/md_d0p3, mdadm -Es ignores /dev/md_d0 and just uses the name, so
+ /dev/md/<arrayname>.
+- figure out something about device names.
+- (better) udev integration
+
+- check whether mdadm.conf and system are consistent during initramfs creation
+ and fail otherwise (#381303).
+- add code to compare existing and expected configuration, after standardising
+ the files. In most cases, we'll have to answer DUNNO as to whether the
+ existing configuration file is okay, but I guess in some cases we can
+ determine that the configuration is okay. A conservative approach would be
+ beneficial to the user. Not sure if it's worth the effort though.
+- one nice^W important thing would be to check device names and UUIDs at least.
+
+- verify operation without udev
+ - udev removed before mdadm installed
+ - udev removed after mdadm installed
+
+- more granular handling of init.d starts/stops, don't force all arrays to be
+ started.
+- let user specify when to start/stop which array (#398310).
+- also only stop those array we started; this can be easily done with
+ sentinels in $STATEDIR
+
+- manage DAEMON_OPTIONS with debconf
diff --git a/debian/bugscript b/debian/bugscript
new file mode 100755
index 0000000..dcb88eb
--- /dev/null
+++ b/debian/bugscript
@@ -0,0 +1,219 @@
+#!/bin/bash
+#
+# mdadm bug submission control script
+#
+# allows Debian's bug tools to include relevant information in bug reports.
+#
+# Copyright © martin f. krafft <madduck@debian.org>
+# distributed under the terms of the Artistic Licence 2.0
+#
+# we need /bin/bash for readline and -n capabalities in the prompt(s)
+#
+
+# maximise information output even in the case of errors
+set +eu
+
+if ! command -v yesno >/dev/null; then
+ if [ -r /usr/share/reportbug/handle_bugscript ]; then
+ exec /usr/share/reportbug/handle_bugscript ". $0" /dev/stdout
+ fi
+ yesno() {
+ read -n1 -p"$1" REPLY
+ case "$REPLY" in
+ [yY]) REPLY=yep;;
+ [nN]) REPLY=nop;;
+ ('') REPLY="$2";;
+ esac
+ }
+ exec 3>&1
+fi
+
+# do not let people ctrl-c out of the bugscript
+trap : INT
+
+if [ $(id -u) != 0 ]; then
+ if [ -x "$(command -v sudo)" ]; then
+ yesno "Gather system information as root using sudo? (Y/n) " yep
+ if [ "$REPLY" = yep ]; then
+ echo running sudo "$0" "$@"...
+ sudo "$0" "$@" >&3 && exit 0
+ echo "sudo invocation failed, trying /bin/su..."
+ fi
+ fi
+
+ yesno "Gather system information as root using su? (Y/n) " yep
+ if [ "$REPLY" = yep ]; then
+ ARGS=
+ for i in "$@"; do ARGS="${ARGS:+$ARGS }'$1'"; shift; done
+ echo "running su root -s '/bin/sh -c $0${ARGS:+ $ARGS}'..."
+ su root -s /bin/sh -c "$0 $ARGS" >&3 && exit 0
+ unset ARGS
+ echo "su invocation failed."
+ fi
+
+ # arrive here only if neither sudo nor su worked:
+ yesno "Will you provide system information in the bug report yourself? (N/y) " nop
+ if [ "$REPLY" = yep ]; then
+ cat <<_eof >&3
+
+IMPORTANT:
+ please do not forget to include all relevant system information with this
+ bug report. You could run
+ /usr/share/bug/mdadm/script 3>&1
+ as root and attach or include the output.
+
+_eof
+ exit 0
+ fi
+
+ # try our best
+ cat <<_eof >&3
+
+WARNING:
+ the following output was not generated by the root user. If you can, please
+ replace the following up until "-- System Information:" with the output of
+ /usr/share/bug/mdadm/script 3>&1
+ run as root. Thanks!
+
+_eof
+fi
+
+if [ ! -r /proc/mdstat ]; then
+ echo "The local system does not have MD (RAID) support: no drivers loaded."
+ echo "Without MD support, I cannot collect as much information as I'd like."
+
+ #yesno "Are you sure you want to report a bug at this time? " yep
+ yesno "Hit any key to continue..." yep
+ #[ "$REPLY" = yep ] || exit 1
+fi
+
+echo "--- mdadm.conf" >&3
+if [ -r /etc/mdadm/mdadm.conf ]; then
+ grep '^[^#]' /etc/mdadm/mdadm.conf >&3
+elif [ -r /etc/mdadm.conf ]; then
+ grep '^[^#]' /etc/mdadm.conf >&3
+else
+ echo no mdadm.conf file. >&3
+fi
+echo >&3
+
+echo "--- /etc/default/mdadm" >&3
+if [ -r /etc/default/mdadm ]; then
+ grep '^[^#]' /etc/default/mdadm >&3
+else
+ echo no /etc/default/mdadm file. >&3
+fi
+echo >&3
+
+echo "--- /proc/mdstat:" >&3
+cat /proc/mdstat >&3 2>&3 || :
+echo >&3
+
+echo "--- /proc/partitions:" >&3
+cat /proc/partitions >&3 2>&3 || :
+echo >&3
+
+echo "--- LVM physical volumes:" >&3
+if [ -x "$(command -v pvs)" ]; then
+ pvs >&3
+else
+ echo "LVM does not seem to be used." >&3
+fi
+
+echo "--- mount output" >&3
+mount >&3
+echo >&3
+
+echo "--- initrd.img-$(uname -r):" >&3
+if [ -r /boot/initrd.img-$(uname -r) ]; then
+ TEMPDIR=$(mktemp -d)
+ OLDPWD="$PWD"
+ cd "$TEMPDIR"
+ zcat /boot/initrd.img-$(uname -r) 2>&3 | cpio -i 2>&3
+ find -regex '.*/md[a/].+' -type f -exec md5sum {} \; >&3
+
+ echo >&3
+ echo "--- initrd's /conf/conf.d/md:" >&3
+ if [ -r conf/conf.d/md ]; then
+ cat conf/conf.d/md >&3
+ else
+ echo "no conf/md file." >&3
+ fi
+
+ cd "$OLDPWD"
+ rm -rf "$TEMPDIR"
+ unset TEMPDIR
+else
+ echo "no initrd.img-$(uname -r) found." >&3
+fi
+echo >&3
+
+if [ -r /proc/modules ]; then
+ echo "--- /proc/modules:" >&3
+ egrep '(dm_|raid|linear|multipath|faulty)' < /proc/modules >&3 || :
+ echo >&3
+fi
+
+if [ -f /var/log/syslog ]; then
+ if [ -r /var/log/syslog ]; then
+ echo "--- /var/log/syslog:" >&3
+ egrep "^\w{3} [ :[:digit:]]{11} ($(hostname)|localhost) (kernel: md|mdadm): " /var/log/syslog >&3 || :
+ echo >&3
+ else
+ echo "syslog not readable by user." >&3
+ fi
+fi
+
+echo "--- volume detail:" >&3
+for dev in /dev/[hsv]d[a-z]*; do
+ [ ! -r $dev ] && echo "$dev not readable by user." && continue
+ mdadm -E $dev 2>/dev/null && echo -- || echo "$dev is not recognised by mdadm."
+done >&3
+echo >&3
+
+if [ -r /proc/cmdline ]; then
+ echo "--- /proc/cmdline" >&3
+ cat /proc/cmdline >&3
+ echo >&3
+fi
+
+if [ -f /boot/grub/grub.cfg ]; then
+ echo "--- grub2:" >&3
+ if [ -r /boot/grub/grub.cfg ]; then
+ egrep '^[^#].*\<(root=|raid)' /boot/grub/grub.cfg >&3 || :
+ else
+ echo grub.cfg file not readable. >&3
+ fi
+ echo >&3
+fi
+
+if [ -f /boot/grub/menu.lst ]; then
+ echo "--- grub legacy:" >&3
+ if [ -r /boot/grub/menu.lst ]; then
+ grep '^[^#].*\<root=' /boot/grub/menu.lst >&3 || :
+ else
+ echo menu.lst file not readable. >&3
+ fi
+ echo >&3
+fi
+
+if [ -f /etc/lilo.conf ]; then
+ echo "--- lilo:" >&3
+ if [ -r /etc/lilo.conf ]; then
+ egrep '^([^#].*)?root=' /etc/lilo.conf >&3 || :
+ else
+ echo lilo.conf file not readable. >&3
+ fi
+ echo >&3
+fi
+
+echo "--- udev:" >&3
+COLUMNS=70 dpkg -l udev | grep '\<udev\>' >&3
+md5sum /etc/udev/rules.d/*md* /lib/udev/rules.d/*md* >&3 2>/dev/null
+echo >&3
+
+echo "--- /dev:" >&3
+ls -l /dev/md* /dev/disk/by-* >&3
+echo >&3
+
+echo "Auto-generated on $(date -R) by mdadm bugscript" >&3
diff --git a/debian/changelog b/debian/changelog
new file mode 100644
index 0000000..f843ff8
--- /dev/null
+++ b/debian/changelog
@@ -0,0 +1,1889 @@
+mdadm (3.4-2) unstable; urgency=low
+
+ * Reneable incremental assembly
+ * Rely on udev to assemble incremental arrays
+ * In environments with systemd rely on mdadm-last-resort@.timer|.service
+ units to activate degrated raids
+ * In environments initramfs-tools initrd (no systemd) add local-block
+ script to do the same after 2/3rds of root delay iteration
+ * Drop local-top initramfs script
+ * Drop dependency on initscripts package
+ * Drop INITRDSTART support
+ * Drop mdadm-raid init script
+ * Drop ancient preinst
+ * In mdadm.init remove dependency on mdadm-raid
+ * In mdadm.init check, and bail out running in a container
+ * In mdadm.config drop mdadm/autostart logic
+ * Drop CREATE stanzas from mkconf and don't include them in the
+ initramfs. The generated defaults, are the compiled-in defaults. And
+ the current one generates warnings when running mdadm in the
+ initramfs, as there is no passwd|group files to resolve root/disk
+ uid/gid. Closes: 717609
+ * Adapt changes and formatting of initramfs hook from Ubuntu
+ * Bump standards version to 3.9.7, no changes required
+ * Fix copyright-refers-to-symlink-license
+ * Closes: #781172, #796624, #769201, #813335, #632401, #804973, #714155,
+ #770002, #737132, #675452, #726390, #813637, #814036.
+
+ -- Dimitri John Ledkov <xnox@ubuntu.com> Sat, 02 Jul 2016 19:16:01 +0100
+
+mdadm (3.4-1) unstable; urgency=medium
+
+ * New upstream release.
+ * Drop use-tempnode-not-devnode.patch, not needed anymore.
+ * Drop use-external-blkid.diff. (Closes: #793631)
+ * Refresh patches.
+
+ -- Dimitri John Ledkov <xnox@ubuntu.com> Fri, 19 Feb 2016 16:18:36 +0000
+
+mdadm (3.3.4-1.1) unstable; urgency=medium
+
+ * Non-maintainer upload.
+ * disable-incremental-assembly.patch: incremental assembly prevents booting
+ in degraded mode (Closes: #784070)
+
+ -- Yann Soubeyrand <yann-externe.soubeyrand@edf.fr> Tue, 10 Nov 2015 11:18:39 +0100
+
+mdadm (3.3.4-1) unstable; urgency=medium
+
+ [ Dimitri John Ledkov ]
+ * Adopting the package as per mjt delegation. Thank you for your
+ service mainting this package over the years, your contributions
+ are highly appreciated by all of Debian and derivate communities.
+ * New upstream release.
+ * Bump standards version to 3.9.6.0, no changes required.
+ * Use dh_prep instead of dh_clean -k
+ * Drop cherrypicked patches.
+
+ [ Helmut Grohne ]
+ * Fix FTCBFS. Export CROSS_COMPILE=<triplet>- (Closes: #794335)
+
+ [ Cyril B. ]
+ * Copy AUTO lines from host into initrd, when updating initrd.
+ (Closes: #785104)
+
+ [ Martin von Wittich ]
+ * Ignore errors attempting to apply *nice to checkarray, it may be
+ done already. (Closes: #791554)
+
+ -- Dimitri John Ledkov <xnox@debian.org> Sun, 08 Nov 2015 11:48:03 +0000
+
+mdadm (3.3.2-5) unstable; urgency=medium
+
+ * use-tempnode-not-devnode.patch: change udev rules file to use
+ $tempnode which works both on wheezy and jessie udev, instead
+ of $devnode which only works in jessie. At this stage it is
+ better to make rules file compatible with old version instead
+ of adding versioned dependency. Should be removed for jessie+1.
+ (Closes: #770883)
+ * fix Closes: list in previous entry (Closes: #771852)
+
+ -- Michael Tokarev <mjt@tls.msk.ru> Sat, 20 Dec 2014 11:48:44 +0300
+
+mdadm (3.3.2-4) unstable; urgency=medium
+
+ * really remove /var/lib/mdadm in postinst, fixing a brown-paper bag
+ bug in previous upload (I fixed it earlier but forgot to commit it
+ before 3.3.2-3 release). (Closes: #764036, #771852)
+ * mention closing of #588965 #599352 #694513 by 3.3-1
+
+ -- Michael Tokarev <mjt@tls.msk.ru> Fri, 05 Dec 2014 17:29:22 +0300
+
+mdadm (3.3.2-3) unstable; urgency=medium
+
+ * remove /var/lib/mdadm dir in postinst to clean up from old pkg,
+ remove config files on purge (restore extraneous cleanup from
+ last change) (Closes: #764036)
+ * remove set -u (error on unset variables) from maintscripts
+ (Closes: #766308)
+ * rebuildmap-strip-local-host-name-from-device-name.patch - a patch
+ from upstream fixing a bug when mdadm have to re-create device
+ nodes after assembling arrays (eg, when switching from initramfs
+ without preserving /dev and /run), to choose the same device names
+ as when doing inital assembly
+ * readlink-path.patch: readlink is in /bin not /usr/bin on debian
+ (Closes: #766416)
+ * mdmonitor-service-simplify.diff: simplify mdmonitor.service
+ systemd file, do not try to read non-existing files (Closes: #764647)
+
+ -- Michael Tokarev <mjt@tls.msk.ru> Fri, 28 Nov 2014 09:55:14 +0300
+
+mdadm (3.3.2-2) unstable; urgency=medium
+
+ * remove more leftovers from old versions
+ * do not embed $VERSION to mkconf and bugscript
+ * removed unneeded lintian-overrides file
+ * removed examples/mdadd.sh
+ * removed references to MAIL_TO from /etc/default/mdadm (pre-2.x mdadm)
+ * removed AUTOSTART variable from /etc/default/mdadm
+ (system will start arrays listed in mdadm.conf)
+ * simplify d/rules, build udeb in a subdir (for now, to be removed)
+ * install systemd services and disable some initscripts (mask them)
+ when systemd is running (Closes: #763959)
+ * build-sys-no-check_rundir.patch: stop (re)linking executables
+ at install time
+
+ -- Michael Tokarev <mjt@tls.msk.ru> Sat, 04 Oct 2014 20:38:36 +0400
+
+mdadm (3.3.2-1) unstable; urgency=low
+
+ * new minor/bugfix upstream release (Closes: #731884, #763080)
+ * removed remove-bashism-from-makefile.patch (applied upstream)
+ * copy 64-md-raid-assembly.rules to initramfs too, this should
+ bring us array auto-assemble during initramfs run (Closes: #678691)
+ * denote inability to initialize md subsystem in local-top script
+ from fatal error to warning (Closes: #733574)
+ * create /etc/modprobe.d/mdadm.conf to set start_ro=1 there
+ instead of doing it in the initramfs
+ * use install -D in d/rules consistently and remove dirs from d/mdadm.dirs
+ * remove references to old (2.x and 1.x) mdadm versions (Closes: #728804)
+ * remove references to very old (pre-wheeze) breaks/replaces/depends
+ * remove support of makedev
+ * reformat mdadm-raid initscript a bit
+ * remove rebuilding-raid.html (had invisible refs) and
+ RAID5_versus_RAID10.txt docs. Maybe it's a good idea to remove
+ other docs shipped with the package, since these becoming stale
+ and these days, better alternatives exist online
+ * removed debian-specific mdadm-startall script which does nothing more than
+ "mdadm --assemble --scan". Remove docbook-to-man from build-deps.
+ * pass dpkg-buildflags to upstream build system and
+ stop using our own -O0, -Os etc
+ * remove separate CFLAGS for udeb and simplify *FLAGS handling
+ * bump Standards-Version to 3.9.5 (no changes needed)
+ * fix VCS links to point to anonscm.d.o
+
+ -- Michael Tokarev <mjt@tls.msk.ru> Wed, 01 Oct 2014 15:09:07 +0400
+
+mdadm (3.3-2) unstable; urgency=low
+
+ * use 63-md-raid-arrays.rules instead of old 64-md-raid.rules
+ (Closes: #726237)
+ * do not use builtin blkid in udev rules, as our udev (at least
+ on wheezy) does not have it (use-external-blkid.diff)
+
+ -- Michael Tokarev <mjt@tls.msk.ru> Mon, 14 Oct 2013 15:49:54 +0400
+
+mdadm (3.3-1) unstable; urgency=low
+
+ [ Michael Tokarev ]
+ * new upstream 3.3 release (Closes: #718896, #588965, #599352, #694513)
+ See ANNOUNCE-3.3 for details.
+ Patches:
+ - refreshed debian-conffile-location.diff
+ (added .conf.d)
+ - removed debian-disable-udev-incr-assembly.diff
+ (do not ship udev-md-raid-assembly.rules for now)
+ - refreshed debian-no-Werror.diff
+ - refreshed sha1-includes.diff
+ - removed patches (included upstream)A:
+ spelling-and-manpages.patch
+ fix-enough-function-for-RAID10.patch
+ fix-segfaults-in-detail.patch
+ super0-do-not-override-uuid-with-homehost.patch
+ mdmon-allow-takeover-when-original-was-started-with-.patch
+ mdmon-fix-arg-parsing.patch
+ mdmon-fix-arg-processing-for-a.path
+ Install udev-md-raid-arrays.rules instead of udev-md-raid.rules,
+ don't install new udev-md-raid-assembly.rules for now.
+ * remove Martin F. Krafft from uploaders per his request.
+ Thank you for your contributions!
+ * added remove-bashism-from-makefile.patch patch to work around
+ newly introduced bashism
+ * remove debian/source/options, there's no need to set compression
+ options for debian.tar.gz.
+ * remove outdated debian/docs/md_superblock_formats.txt and
+ debian/docs/md.txt (Closes: #714977, #714978)
+ * ship ANNOUNCE-*, external-reshape-design.txt, mdmon-design.txt
+ files as documentation (Closes: #715324)
+
+ [ Dmitrijs Ledkovs ]
+ * Properly remove 65-mdadm.vol_id.rules, instead of trying to remove a
+ never-existed 65_mdadm.vol_id.rules (note the 65- vs 65_).
+
+ -- Michael Tokarev <mjt@tls.msk.ru> Fri, 11 Oct 2013 10:12:47 +0400
+
+mdadm (3.2.5-6) unstable; urgency=low
+
+ * replace home-grown and not-working-since-etch udevsettle call
+ in initramfs script with proper wait_for_udev function (from
+ common initramfs functions). This unbreaks situations when
+ the underlying device needs some udev magic to happen before
+ being available, which includes stacked devices (md on lvm)
+ and other cases. Thanks to Thomas Parmelan and Dave Whitla
+ for finding the root cause of breakage and for providing
+ the fix. (Closes: #644876)
+
+ -- Michael Tokarev <mjt@tls.msk.ru> Tue, 05 Mar 2013 13:32:21 +0400
+
+mdadm (3.2.5-5) unstable; urgency=low
+
+ * add (empty) restart and force-reload actions to mdadm-waitidle
+ script -- this script is used only when the system needs to be
+ shut down or rebooted, there's nothing to start or restart.
+
+ -- Michael Tokarev <mjt@tls.msk.ru> Thu, 24 Jan 2013 17:04:49 +0400
+
+mdadm (3.2.5-4+mdmon) experimental; urgency=low
+
+ * fix `/etc/init.d/mdadm-raid status' inverse logic (Closes: #686100)
+ * /etc/init.d/mdadm: change RUNDIR to /run instead of /var/run.
+ Mdadm itself uses /run internally, we properly depend on initscripts
+ version which creates /run, and the initscript itself is started
+ after local_fs is processed, so this is merely a no-op, but let's
+ do it for consistency.
+ * Fix 'enough' function for RAID10, to prevent starting of a RAID10
+ array which does not have required minimum of component devices.
+ (Closes: #691668).
+ * fix segfaults in Detail() - mdadm --detail may segfault if a drive
+ has been removed from the array (Closes: #691670)
+ * super0: do not override uuid with homehost. The bug prevented
+ re-creating an array with v0.90 superblock with the specified uuid
+ when homehost is also specified. (Closes: #686703)
+ * several fixes for mdmon argument processing (Closes: #691671):
+ - allow --takeover when original was started with --offroot
+ - fix arg parsing.
+ - fix arg processing for -a
+ * Changes based on a patch by Miquel van Smoorenburg (Closes: #684708):
+ - install mdmon in udeb and initramfs, so imsm arrays can work.
+ mdadm runs mdmon automatically when needed (currently for imsm
+ arrays), and mdmon is required to make such arrays read-write
+ (they're read-only by default) so merely presence of mdmon is
+ enough to be able to use imsm arrays.
+ - /etc/init.d/mdadm start: if a mdmon pidfile is found in /run/mdadm,
+ restart mdmon (--takeover --all)
+ - /etc/init.d/mdadm stop: link pidfiles of mdmon processes into
+ /run/sendsigs.omit.d, and make sure that happens before sendsigs runs.
+ - stop mdadm before sendsigs, so that the above code works
+ - add script mdadm-waitidle that runs just before reboot/halt.
+ For each array that is still running, it sets sync_action to idle,
+ and uses mdadm --wait-clean to wait for all arrays to go idle
+ (it has a short timeout).
+
+ -- Michael Tokarev <mjt@tls.msk.ru> Sat, 20 Oct 2012 19:20:12 +0400
+
+mdadm (3.2.5-3) unstable; urgency=low
+
+ * revert "Drop unused debconf templates" change -- the templates
+ are actually being (indirectly) used in debian/mdadm.config
+ * fix initramfs-script config name (slipped in the initramfs fixes)
+
+ -- Michael Tokarev <mjt@tls.msk.ru> Sat, 25 Aug 2012 23:12:50 +0400
+
+mdadm (3.2.5-2) unstable; urgency=low
+
+ [ Sergey B Kirpichev ]
+ * Fix mdadm.lintian-overrides
+ * Fix spelling in binaries, fix lintian warnings
+ manpage-has-errors-from-man and hyphen-used-as-minus-sign
+ * Drop unused debconf templates
+ * Implement status option for mdadm-raid init.d script
+ * Fix lintian info's conflicts-with-version: Conflicts -> Breaks
+
+ [ Michael Tokarev ]
+ * fix spelling mistakes in previous changelog entry
+ * some cleanups for checkarray:
+ - change --help printing and shorten/simplify the text
+ - make --quiet cumulative and stop documenting --real-quiet
+ - do not produce help in case of incorrect usage, and exit with 1
+ * fixes for initramfs integration (Closes: #644389, #678262, #685161):
+ - check INITRDSTART=none early
+ - do not explicitly load raid level modules (modprobe/kmod does this)
+ - do not collect needed raid levels (we include all modules anyway)
+ - load md_mod explicitly since we need to change global parameter
+
+ [ Dmitrijs Ledkovs ]
+ * Use dh_installinit with --no-restart-on-upgrade, which will start
+ arrays, but will not stop them during upgrade. (Closes: 678971)
+ * Copy local administrator's modified udev rules as well as the system
+ one. (Closes: #678973)
+
+ -- Michael Tokarev <mjt@tls.msk.ru> Sat, 25 Aug 2012 16:25:37 +0400
+
+mdadm (3.2.5-1) unstable; urgency=low
+
+ [ Michael Tokarev ]
+ * new upstream (bugfix) release, fixing regression when --add'ing
+ device to an array, introduced in 3.2.4, plus other minor fixes
+ (Closes: #673104, #673344)
+ * new patch: sha1-includes.diff to fix #include mess in new sha1.h
+ * added a check into debian/checkarray to skip checking arrays created
+ less than 2 weeks ago (Closes: #624273)
+
+ [ Dmitrijs Ledkovs ]
+ * Remove obsolete documentation dating back to ~etch release
+ * Remove reference to obsolete documention from debconf templates
+ * Update debconf templates translations
+ * Remove compatibility with ancient initramfs-tools
+ * Remove debian-specific mdadm-startall.8 in clean target
+
+ -- Michael Tokarev <mjt@tls.msk.ru> Fri, 25 May 2012 20:23:52 +0400
+
+mdadm (3.2.4-1) unstable; urgency=low
+
+ * new upstream (bugfix) release (Closes: #664088, #661552)
+ * removed debian-run-udev.diff (applied upstream), and
+ all RUNDIR handling from debian/rules (it is the default now)
+ * add build-arch and build-indep targets to debian/rules, and
+ bump Standards-Version to 3.9.3
+
+ -- Michael Tokarev <mjt@tls.msk.ru> Thu, 10 May 2012 17:51:41 +0400
+
+mdadm (3.2.3-3) unstable; urgency=low
+
+ * switch from topgit to plain 3.0 (quilt) layout, creating
+ debian/patches. Don't build-depend on quilt as patching
+ is done automatically by dpkg-source.
+ * debian/patches/debian-run-udev.diff by Roger Leigh (Closes: #644319, #627774)
+ * update debian/mdadm.logcheck.ignore.server to recognize "k" in
+ addition of "blocks" in kernel messages. Thanks to Frédéric Brière
+ for the patch (Closes: #656038)
+
+ -- Michael Tokarev <mjt@tls.msk.ru> Mon, 30 Apr 2012 14:12:38 +0400
+
+mdadm (3.2.3-2) unstable; urgency=low
+
+ [ Michael Tokarev ]
+ * new upstream bugfix/stable version, with lots of fixes all over.
+ Closes: #641886, #628667, #645563, #651880, #607375, #633880
+ * update Neil's email (Closes: #650630)
+ * update mdadd.sh to version 1.52 (Closes: #655212)
+ * fixed a typo (RAID6 vs RAID10) in FAQ (Closes: #637068)
+ * declare ordering dependency for multipath-tools-boot in
+ mdadm-raid init script (Closes: #641584)
+ While at it, remove mention of devfsd
+ * added Slovak (sk.po) po-debconf translation from Slavko <linux@slavino.sk>
+ (Closes: #641972)
+ * set nice value of the check/resync thread too, together with I/O
+ scheduling class, based on patch by Sergey B Kirpichev (Closes: #652547)
+ * small changes for debian/checkarray
+ * (internal) move files from contrib/* topgit branches into debian directory
+ * remove dh_testroot from clean target
+ * add myself to uploaders
+
+ [ Peter Eisentraut ]
+ * Added support for "status" action to mdadm init script (Closes: #651737)
+
+ -- Michael Tokarev <mjt@tls.msk.ru> Wed, 18 Jan 2012 22:33:01 +0400
+
+mdadm (3.2.2-1) unstable; urgency=low
+
+ [ martin f. krafft ]
+ * New upstream version (closes: #615494), which addresses:
+ - --grow option aware of size change of underlying device (closes: #618463)
+ - builds with -Werror on gcc-4.6 (closes: #625392).
+ - new features/functionality:
+ + Policy framework.
+ + Improved management of reshaping arrays.
+ + Support for Intel Matrix Storage Manager (IMSM)
+ Thanks to Scott Schaefer for his help in preparing this release!
+ * Do not print io rescheduling info message when run by cron
+ (closes: #598957).
+ * Fix checkarray script so that it does not die after scheduling the first
+ device when there is no scheduling class specified; thanks to Mario
+ 'BitKoenig' Holbe (closes: #611627).
+ * Do not include DEVICE line in generated configs but use the built-in value
+ by default (closes: #604702).
+ * Make mdadm-raid init script depend on hostname; thanks to Mario
+ 'BitKoenig' Holbe (closes: #610421).
+ * Schedule start/stop of mdadm-raid before/after filesystems are
+ checked&mounted/unmounted; thanks to Mario 'BitKoenig' Holbe
+ (closes: #611632).
+ * Work around a shell coding bug for cases when there are zero active
+ devices (closes: #618561).
+ * Add NEWS entry about metadata change and requirement on new Grub version
+ (closes: #595516).
+ * Update mdadd.sh script from Arno's webpage.
+ * Update md.txt from latest kernel source.
+ * Updated debconf translations:
+ - Catalan by Innocent De Marchi (closes: #628371)
+ - Danish by Joe Dalton (closes: #621346)
+ * Small typo fix in RAID5_versus_RAID10.txt
+ * Bump Standards-Version to 3.9.2; no changes required.
+
+ [ Michael Tokarev ]
+ * don't print W: auto-read-only in checkarray in quiet mode,
+ thanks to Bernd Hanisch for the patch (Closes: #605722)
+ * move initscript metadata from /lib/init/rw/.mdadm to /run/mdadm,
+ and depend on initscripts (>= 2.88dsf-13.3) for /run (Closes: #633054)
+ * move runtime stuff from /dev/.mdadm to /run/mdadm
+ * document defaults change in debian/NEWS (it was forgotten to be
+ done for squeeze) - metadata & chunk size (Closes: #595516)
+
+ -- martin f. krafft <madduck@debian.org> Mon, 01 Aug 2011 10:41:41 +0200
+
+mdadm (3.1.4-1+8efb9d1) unstable; urgency=low
+
+ * Added patch with Makefile fix from upstream (commit 8efb9d1) to fix
+ compiler/linker problem on non-x86 architectures (closes: #595290).
+
+ -- martin f. krafft <madduck@debian.org> Fri, 03 Sep 2010 10:45:01 +0200
+
+mdadm (3.1.4-1) unstable; urgency=low
+
+ * New upstream release, which closes:#595039 and addresses the following
+ issues too:
+ - reverts move of incremental map (closes: #585015).
+ - fixes mdadm monitor in the case of an inactive (or start-failed) raid0
+ or linear array (closes: #539154).
+ - prevent --remove faulty from skipping renumbered devices
+ (closes: #587550).
+ - fixed overflow when growing a RAID6 (closes: #589493).
+ * However, disable the incremental assembly upstream turned on in 3.1.3 for
+ now, this will have to wait until after the squeeze release.
+ * initramfs/hook: make sure configuration file exists before accessing it;
+ thanks to Michael Prokop for the fix and NMU (closes: #589836).
+ * initramfs/hook: Match UUID case-insensitive while checking for running
+ arrays not listed in mdadm.conf; thanks to Mario 'BitKoenig' Holbe for the
+ patch (closes: #583545).
+ * Fix URL in the bug reporting preamble (presubj) (closes: #589833).
+ * Add I/O rescheduling functionality to the checkarray script and make the
+ cronjob use the idle priority; this should now minimise the impact of the
+ monthly re-check on the running system; Florian Heigl had the idea
+ (closes: #592149, #508123).
+
+ -- martin f. krafft <madduck@debian.org> Sun, 29 Aug 2010 13:44:59 +0200
+
+mdadm (3.1.2-2) unstable; urgency=low
+
+ * Fix logcheck regexp to cure "egrep: Unmatched [ or [^" message
+ (closes: #583376).
+ * Cherry-pick 94fcb80 from upstream to fix compiler error due to argument
+ type error (at least on ia64, sparc, powerpc) (closes: #583495).
+
+ -- martin f. krafft <madduck@debian.org> Fri, 28 May 2010 09:35:42 +0200
+
+mdadm (3.1.2-1) unstable; urgency=low
+
+ * New upstream release (closes: #567167).
+ * Ignore lintian error about not stopping in runlevel 1.
+ * Include more information about the configuration, initrd, and LVM in
+ bugscript output.
+ * Check active devices against configuration file based on UUID, not device
+ name (closes: #553896).
+ * When preparing the list of devices, treat /dev/mdX and /dev/md/X equally.
+ * Bump Standards-Version to 3.8.4 without having to make changes.
+ * Fix logcheck rule with patch from Frédéric Brière, since Rebuild events
+ are now arbitrary, no longer multiples of 20 (closes: #570315).
+ * checkarray: do not exit non-zero when there are no arrays found (see
+ #582360).
+ * Do not exit checkarray cronjob non-zero when the tests whether to run
+ fail (closes: #580825). This is related to a recent change in behaviour in
+ cron 3.0pl1-110 (see e.g. #581612). Thanks to everyone for their
+ suggestions!
+ * Call MAKEDEV to create device nodes only if MAKEDEV is installed
+ (closes: #569360).
+
+ -- martin f. krafft <madduck@debian.org> Thu, 27 May 2010 09:34:24 +0200
+
+mdadm (3.1.1-1) unstable; urgency=low
+
+ * New upstream release.
+ * Retire fixed/blkid-dev branch.
+ * Reword warning about unbootable system when mdadm is purged
+ (closes: #544558).
+ * Updated FAQ to include s2ram as one of the reasons that can prevent an
+ array from being stopped; thanks to Pascal Hambourg for writing in.
+ * Install udev rules into udeb package (closes: #558823).
+ * Update mdadd.sh (formerly /usr/share/doc/mdadm/examples/newdisk.gz) from
+ Arno's website, refactoring the script into its own branch/patch
+ (closes: #539103).
+ * Do not single-quote homehost in initramfs script (closes: #549083).
+
+ -- martin f. krafft <madduck@debian.org> Wed, 27 Jan 2010 10:14:25 +1300
+
+mdadm (3.0.3-2) unstable; urgency=low
+
+ * Bumped Standards-Version to 3.8.3 without having to make changes.
+ * Fixed init dependencies of mdadm daemon init.d script; thanks Petter
+ Reinholdtsen (closes: #541396).
+ * Switched source package to v3-quilt format.
+
+ -- martin f. krafft <madduck@debian.org> Fri, 06 Nov 2009 10:06:03 +0100
+
+mdadm (3.0.3-1) unstable; urgency=low
+
+ * New upstream release.
+ * Acknowledge 3.0-3.1 NMU by Christian Kujau (patch by Marco d'Itri)
+ (closes: #541884), and add util-linux dependency.
+ * Copy udev rules into initramfs, which udev stopped doing
+ (closes: #549535, #549083, #538843, #538143).
+ * Fix the bug script to write debug information to the correct file
+ descriptor (closes: #537734).
+ * Switch to TopGit and split Debian diff into topic branches; add
+ README.source.
+ * Drop the outdated rootraiddoc.97.html document.
+
+ -- martin f. krafft <madduck@debian.org> Tue, 27 Oct 2009 18:06:13 +0100
+
+mdadm (3.0-3.1) unstable; urgency=medium
+
+ * Non-maintainer upload.
+ * use blkid instead of vold_id in udev-md-raid.rules (closes: #541884)
+
+ -- christian kujau <lists@nerdbynature.de> Mon, 14 Sep 2009 10:15:21 +0200
+
+mdadm (3.0-2) unstable; urgency=low
+
+ * Fixed initramfs script with patch from Steffen Hau: it was still using
+ --auto-update-homehost, which has been removed and replaced by a better
+ heuristic: arrays created for a different "homehost" will now be
+ assembled read-only, rather than shoehorned into the system with
+ --auto-update-homehost (closes: #537820).
+ * Add version stamps to bugscript and mkconf scripts to facilitate
+ debugging.
+
+ -- martin f. krafft <madduck@debian.org> Tue, 21 Jul 2009 10:33:30 +0200
+
+mdadm (3.0-1) unstable; urgency=low
+
+ * New stable upstream release.
+ * Add information about udev and device links in /dev to bugscript output.
+ * Add pointer to FAQ and in particular rootdelay to the bug script
+ pre-subject file, which is displayed by tools like reportbug and thus
+ hopefully reduces the numbers of duplicated bugs.
+ * Patch from Frédéric Brière to make logcheck rules printk_time aware
+ (closes: #537460).
+ * Updated German translation due to typos and old spelling rules; thanks to
+ Helge Kreutzmann for the patch (closes: #534663).
+ * Bumped Standard-Version to 3.8.2; no changes necessary.
+
+ -- martin f. krafft <madduck@debian.org> Mon, 20 Jul 2009 16:12:41 +0200
+
+mdadm (3.0~devel3-43-g2800528-1) experimental; urgency=low
+
+ * Merge tip of upstream's devel-3.0 branch at commit 2800528.
+ * Drop our own udev rules in favour of upstream's. If
+ /etc/udev/rules.d/65_mdadm.vol_id.rules has not been modified (md5sum
+ check), it is automatically removed; else, a warning is emitted.
+ * Add information about udev and device links in /dev to bugscript output.
+
+ -- martin f. krafft <madduck@debian.org> Tue, 05 May 2009 15:10:46 +0200
+
+mdadm (2.6.9-3) unstable; urgency=low
+
+ * Fix the multipath prereq patch (#516605) and make it exit after printing
+ the prerequisites (closes: #526793).
+ * Change my previous recommendation for postfix over to the new virtual
+ package default-mta (see #522300 and #508644).
+ * Enhance bugscript, which now asks to run as root (sudo/su) if invoked by
+ a normal user.
+ * Include MD5 sums of md-related files in initrd in bug reports.
+ * Add grub2 information retrieval to bugscript.
+ * Trap SIGINT and thus prevent ctrl-c from terminating the bugscript
+ prematurely.
+
+ -- martin f. krafft <madduck@debian.org> Tue, 05 May 2009 11:46:22 +0200
+
+mdadm (3.0~devel3-1) experimental; urgency=low
+
+ * Initial release of DEVELOPMENT BRANCH 3.0 to experimental.
+
+ -- martin f. krafft <madduck@debian.org> Thu, 30 Apr 2009 11:51:39 +0200
+
+mdadm (2.6.9-2) unstable; urgency=low
+
+ * Fix the check of whether mdadm.conf defines all devices known to the
+ system; thanks Cristian Ionescu-Idbohrn (closes: #525655).
+ * No longer pass -k to modprobe, which has been deprecated for a long time;
+ thanks to Jan Hudec (closes: #519999).
+ * Remove Mario Joußen from the uploaders list, since his email started
+ bouncing.
+ * Prepare mdadm source to use quilt, with the long-term goal to switch to
+ TopGit, once I find the time.
+ * Cherry-pick caa0f6c & 667e66d from Neil into a quilt patch to fix gcc-4.4
+ compiler issues (closes: #505375).
+
+ -- martin f. krafft <madduck@debian.org> Sun, 26 Apr 2009 16:08:28 +0200
+
+mdadm (2.6.9-1) unstable; urgency=low
+
+ * New upstream release.
+ * Do not set -eu in the bugscript to maximise information output in the case
+ of errors.
+ * Make initramfs script depend on multipath to ensure its script is run
+ before ours (closes: #516605).
+ * Provide an alternative (postfix) for mail-transport-agent (closes:
+ #522300). I chose postfix because that's the only one I could recommend,
+ and since the alternative does not affect people who already have an MTA
+ installed, or have a preference, it won't affect them.
+ * Honour debconf pre-selection of mdadm/initrdstart (closes: #516802).
+ * Incorporate patch from Adrian Bridgett: the initramfs hook now checks to
+ see if all known arrays are listed in mdadm.conf and issues a warning if
+ this is not the case (closes: #519328).
+ * Make checkarray skip over arrays still marked auto-read-only
+ (closes: #510641).
+ * Add cron.daily snippet from Paul Slootman to run one-shot scans every day
+ to ensure that failed arrays don't go unnoticed (closes: #497949).
+ * Bumped Standards-Version to 3.8.1; no changes necessary.
+
+ -- martin f. krafft <madduck@debian.org> Sat, 25 Apr 2009 19:04:47 +0200
+
+mdadm (2.6.8-12-gb47dff6-2) unstable; urgency=low
+
+ * Brown paper bag release: I built from the wrong branch which caused some
+ Debian-specific changes not to get into the package. Thus build fixes it.
+
+ -- martin f. krafft <madduck@debian.org> Mon, 16 Feb 2009 12:15:37 +0100
+
+mdadm (2.6.8-12-gb47dff6-1) unstable; urgency=low
+
+ * New upstream release.
+ - better checks asprintf() return codes, thanks to patch from Dustin
+ Kirkland (closes: #509167).
+ * Fix start/stop runlevels in header of mdadm monitor init.d script
+ (closes: #514923).
+ * Use modprobe -q instead of --syslog from initramfs (closes: #502988).
+
+ -- martin f. krafft <madduck@debian.org> Mon, 16 Feb 2009 11:07:18 +0100
+
+mdadm (2.6.7.2-1) unstable; urgency=low
+
+ * New upstream release, created for Debian lenny:
+ - fixes assembly of arrays that are being reshaped (closes: #512475)
+ - this bug was also responsible for other assembly problems
+ (closes: #498505, #499643, #496334)
+ Again, many thanks to Neil Brown for being such an awesome upstream.
+
+ * Documentation updates:
+ - Actually install David Pashley's blog post added in 2.6.7.1-1, and
+ register it with doc-base.
+ - Update md.txt to version 2.6.26 (the lenny kernel).
+ - Add a dump of a website detailing md superblock formats.
+ - Register FAQ, md.txt, RAID5-vs-RAID10, README.recipes with doc-base
+ - Cherry-picked UID/UUID typo in mdadm.conf(5) manpage fix (commit
+ 0e69da7) (closes: #506245).
+
+ * Added Italian debconf translation; thanks Luca Monducci (closes: #506572).
+
+ -- martin f. krafft <madduck@debian.org> Tue, 03 Feb 2009 21:28:34 +0100
+
+mdadm (2.6.7.1-1) unstable; urgency=low
+
+ * New upstream release, specifically created for Debian lenny to fix the RC
+ bugs, which
+ - fixes typo in forced assembly code (closes: #496334, #499643, #498505).
+ - fixes array component size detection (closes: 500309).
+ Thanks Neil Brown, mdadm upstream: you are spoiling me. :)
+
+ * Minor fixes to documentation:
+ - Add David Pashley's Rebuilding RAID blog post.
+ - Add new (bugfix) version 1.40 of the newdisk script
+ (/usr/share/doc/mdadm/examples/newdisk.gz) (closes: #490955).
+ - Add link to Warren Togami's writeup about remote RAID-1 conversion to
+ README.recipes.
+ - Fix probability of survival in FAQ 4b, since I erroneously labeled the
+ chance of failure as the chance of survival; thanks to Per Olofssen for
+ clarification (closes: #493577).
+ - Cherry-picked 6d6de2e from Neil, which adds HOMEHOST to the manpage and
+ closes: #489257.
+
+ -- martin f. krafft <madduck@debian.org> Wed, 15 Oct 2008 10:27:23 +0200
+
+mdadm (2.6.7-3.1) unstable; urgency=low
+
+ * Non-maintainer upload with permission.
+ * Ask mdadm/initrdstart at medium priority in chrooted environment.
+ (Closes: #493099)
+ * Update Swedish debconf translations. Thanks Martin Ågren.
+ (Closes: #492074)
+
+ -- Jérémy Bobbio <lunar@debian.org> Mon, 25 Aug 2008 22:28:53 +0200
+
+mdadm (2.6.7-3) unstable; urgency=low
+
+ * Correct credits in the NEWS file: Suse authored the udev rules, not Ubuntu
+ (who use the same file without credit).
+
+ -- martin f. krafft <madduck@debian.org> Sat, 05 Jul 2008 12:22:58 +0200
+
+mdadm (2.6.7-2) unstable; urgency=low
+
+ * Remove mdrun completely.
+ * Import udev vol_id handling from Suse, and thus finally export
+ /dev/disk/by-id/* and /dev/disk/by-uuid symlinks (closes: #435983).
+ * Update upstream URLs in copyright and watch file (closes: #488364).
+ * Bump Standards-Version to 3.8.0; no changes required.
+ * Add mdadm homepage link to debian/control.
+
+ -- martin f. krafft <madduck@debian.org> Wed, 02 Jul 2008 11:13:18 +0200
+
+mdadm (2.6.7-1) unstable; urgency=low
+
+ * New upstream version, which
+ - fixes a segfault when reading /proc/mdstat (closes: #462154).
+ - fixes a possible bug with v1 bitmap space allocation (closes: #474548).
+ - supports large files for loop assembly (closes: #463769).
+ * Moved mdadm-raid init.d script to position S60 (from S50) for runlevels
+ 0 and 6, so that arrays get stopped after cryptdisks-early; thanks to
+ J.M.Roth (closes: #486012).
+ * Fixed a typo in checkarray; thanks to Helmut Grohne (closes: #445540).
+ * Updated debconf translations:
+ - Spanish; thanks to Javier Fernández-Sanguino (closes: #477920).
+ - Basque; thanks to Piarres Beobide (closes: #478676).
+ * Updated logcheck rule so that it matches mdadm log entries with and without
+ PID (2.6.5 introduces PIDs in the messages).
+
+ -- martin f. krafft <madduck@debian.org> Wed, 25 Jun 2008 17:31:15 +0200
+
+mdadm (2.6.4-2) unstable; urgency=low
+
+ * Adjusted logcheck rules to follow kernel changes; thanks to Frédéric
+ Brière (closes: #462478).
+ * Debconf templates and debian/control reviewed by the debian-l10n-
+ english team as part of the Smith review project. Closes: #463673
+ * Debconf translation updates (thanks to Christian Perrier for compiling
+ them):
+ * Japanese. Closes: #464438
+ * Galician. Closes: #464454
+ * French. Closes: #465984
+ * Czech. Closes: #466306
+ * Dutch. Closes: #466543
+ * Russian. Closes: #466577
+ * Portuguese. Closes: #466794
+ * German. Closes: #466989
+ * Vietnamese. Closes: #467118
+ * New debconf translations:
+ * Finnish. Closes: #468048
+ * Fixed bashism in mdadm-raid init.d script; thanks to Raphael Geisser
+ (closes: #471874).
+ * Do not output warning when run from cron and no arrays are found
+ (closes: #474542).
+ * Add doc-base registration file; thanks to Roberto C. Sanchez
+ (closes: #451684).
+ * Reschedule "mdadm Sunday" to 00:57 instead of 01:06 to prevent double
+ invocation on DST change (closes: #449244).
+ * Bump DH compatibility level to 6; no changes required.
+
+ -- martin f. krafft <madduck@debian.org> Fri, 11 Apr 2008 10:48:45 +0200
+
+mdadm (2.6.4-1) unstable; urgency=low
+
+ * New upstream release.
+ * Apply patch by Petter Reinholdtsen to fix dependency loop in
+ init.d script (closes: #460256).
+ * Bump Standards-Version to 3.7.3; no changes needed.
+
+ -- martin f. krafft <madduck@debian.org> Mon, 14 Jan 2008 12:47:14 +0100
+
+mdadm (2.6.3+200709292116+4450e59-3) unstable; urgency=low
+
+ * Patch by Jérémy Bobbio which completes the fix for #444682.
+
+ -- martin f. krafft <madduck@debian.org> Mon, 01 Oct 2007 16:16:19 +0100
+
+mdadm (2.6.3+200709292116+4450e59-2) unstable; urgency=low
+
+ * Patch the routine loading v1 superblocks to fix a segfault on amd64
+ (closes: #444682).
+
+ -- martin f. krafft <madduck@debian.org> Sun, 30 Sep 2007 14:10:41 +0100
+
+mdadm (2.6.3+200709292116+4450e59-1) unstable; urgency=low
+
+ * New merge from upstream @4450e59ffaf75623fa4261e244b0717a7463aa84
+ - makes "--write-mostly" effective when re-adding a device to an array.
+ (closes: #442874).
+ * Do not call update-initramfs -k all, it can be set via
+ /etc/initramfs-tools/update-initramfs.conf (closes: #439334).
+ * Depend on udev|makedev instead of just makedev and invoke /dev/MAKEDEV,
+ not /sbin/MAKEDEV (closes: #436998).
+ * De-escalate the initramfs hook warning about an "emergency procedure" and
+ simply note that this involves initramfs assembling arrays it finds
+ automatically at boot. Also added a FAQ entry on how to turn off the init
+ script warning when no arrays are found (closes: #434934).
+ * Add --scan to the single-device-assembly-codepath in the initramfs
+ local-top script; thanks to Mario 'BitKoenig' Holbe for the patch
+ (closes: #440703).
+ * Use short option in initramfs script mkdir call, so make it klibc-utils
+ compatible; thanks maximilian attems for the patch (closes: #443436).
+ * Handle module name synonyms in initramfs hook script (closes: #432585).
+
+ -- martin f. krafft <madduck@debian.org> Sat, 29 Sep 2007 21:21:25 +0100
+
+mdadm (2.6.2-2) unstable; urgency=low
+
+ * Fix typos in md(4) manpage; thanks Jeroen (closes: #425576).
+ * Make init script not report failure when there are no arrays defined in
+ config file.
+ * Add /usr/share/doc/mdadm/examples/newdisk, a script to integrate
+ a replacement disk into an existing array with minimal effort; will remain
+ in examples/ until I had a chance to really test and understand it. Thanks
+ to Arno van Amersfoort (closes: #427880).
+ * Does some sanity checking for proper format of level= arguments in
+ mdadm.conf and bails if an error is found. Since the RAID levels are used
+ verbatim as module names, a discrepancy might lead to an unusable system.
+ Instead, we thus use the emergency fallback. Thanks to Andrew
+ Sackville-West for spotting this and helping me with the fix.
+
+ -- martin f. krafft <madduck@debian.org> Tue, 10 Jul 2007 09:59:45 +0200
+
+mdadm (2.6.2-1) unstable; urgency=low
+
+ * New upstream release
+ - new options --fail detach and --remove faulty can be used to fail and
+ remove devices that are no longer physically present (closes: #416512).
+ - --help output now goes to stdout (closes: #416653).
+ - plenty of manpage fixes, thanks Peter Samuelson (closes: #414688).
+ * Incorporated patch by Mikko Rasa to fix detecting of raid6 (and raid10)
+ devices with --scan (closes: #421915).
+
+ -- martin f. krafft <madduck@debian.org> Mon, 21 May 2007 14:25:43 +0200
+
+mdadm (2.6.1-1) unstable; urgency=low
+
+ * Release to unstable.
+ * Start arrays read-only in initramfs to prevent syncing and hence enable
+ resuming/freezing. The arrays will automatically sync as soon something
+ writes to it; thanks to Tim Dijkstra, Neil Brown, and Luis Rodrigo
+ Gallardo Cruz (closes: #415441).
+ * mkconf now tries to preserve existing values for DEVICE, CREATE and
+ HOMEHOST (in addition to MAILADDR, which it preserved previously already).
+ PROGRAM is preserved but only added to mdadm.conf if it occured in the
+ previously existing configuration file.
+ * startall is now mdadm-startall and lives in /sbin, thanks to Eduard Bloch.
+ It now can handle existing mdadm.conf files much more gracefully, mostly
+ thanks to the above mkconf enhancements (closes: #415336).
+
+ -- martin f. krafft <madduck@debian.org> Sat, 05 May 2007 16:12:29 +0200
+
+mdadm (2.6.1-1~exp.5) experimental; urgency=low
+
+ * Fix mdadm.conf typo; thanks Tim Phipps (closes: #416626).
+ * Execute udevtrigger after assembly of arrays during initramfs processing;
+ thanks to Michael Prokop (closes: #416658).
+
+ -- martin f. krafft <madduck@debian.org> Sat, 31 Mar 2007 12:12:27 +0200
+
+mdadm (2.6.1-1~exp.4) experimental; urgency=low
+
+ * Incorporate patches by Peter Samuelson fixing several typography as well
+ as typesetting issues in the manpages. Thanks a lot! (closes: #414688)
+
+ -- martin f. krafft <madduck@debian.org> Tue, 13 Mar 2007 19:26:37 +0100
+
+mdadm (2.6.1-1~exp.3) experimental; urgency=low
+
+ * Patch by Jørn V. Christensen to properly handle multiple email addresses
+ for the MAILADDR setting (closes: #413330).
+
+ -- martin f. krafft <madduck@debian.org> Mon, 5 Mar 2007 11:19:18 +0000
+
+mdadm (2.6.1-1~exp.2) experimental; urgency=low
+
+ * Updated debconf translations:
+ - Galician by Jacobo Tarrio (closes: #412203).
+
+ -- martin f. krafft <madduck@debian.org> Sat, 24 Feb 2007 16:41:16 +0100
+
+mdadm (2.6.1-1~exp.1) experimental; urgency=low
+
+ * New upstream release, targeted at experimental until etch is out:
+ - adds --syslog option (closes: #402457).
+ - now can --wait for sync activity to finish (closes: #328197).
+ - for other changes, please see /usr/share/doc/mdadm/changelog.gz
+ * Updated debconf translations:
+ - Portuguese by Rui Branco (closes: #411745).
+
+ -- martin f. krafft <madduck@debian.org> Thu, 22 Feb 2007 16:35:16 +0100
+
+mdadm (2.5.6-9) UNRELEASED; urgency=low
+
+ * More logcheck filters to prevent redundant information logged by mdadm
+ --syslog.
+ * Improved mdadm-raid init script to correctly output status information for
+ drives that are initialising or adding spares.
+
+ -- martin f. krafft <madduck@debian.org> Thu, 11 Jan 2007 16:05:12 +0100
+
+mdadm (2.5.6-8) unstable; urgency=low
+
+ * Hard-code path to /sbin/mdadm binary rather than searching the $PATH. This
+ closes: #403307 and should be a little more robust in the presence of
+ installations of mdadm in /usr/local.
+ * Made the bugscript a little more failure-resilient.
+ * Added more documentation.
+
+ -- martin f. krafft <madduck@debian.org> Mon, 8 Jan 2007 02:04:25 +0100
+
+mdadm (2.5.6-7) unstable; urgency=low
+
+ * Only parse ARRAY lines from configuration file when collecting the array
+ pairs. Thanks to Daniel Dehennin for the bug report and suggested fix
+ (closes: #402106).
+ * Prevent modules from being loaded during initramfs time if no arrays are
+ to be assembled at this stage.
+ * Export DAEMON_OPTIONS to /etc/default/mdadm, which gets passed to the
+ mdadm daemon on startup from the init.d script. The value is set to
+ -y/--syslog by default, and will get incorporated into debconf in a future
+ version; thanks for the idea by Alex Owen (closes: #401696).
+ * Incorporate patch by upstream to fix handling of --syslog long option
+ (closes: #402457).
+ * Added logcheck filters for new syslog entries by mdadm monitoring daemon.
+ * Added Spanish debconf translation by Javier Fernández-Sanguino
+ (closes: #402681).
+
+ -- martin f. krafft <madduck@debian.org> Tue, 12 Dec 2006 11:49:52 +0100
+
+mdadm (2.5.6-6) unstable; urgency=medium
+
+ * Fixed a typo in the debconf control script which would cause failures with
+ a dash shell; thanks to Santiago Garcia Mantinan for reporting this, and
+ Andreas Metzeler for providing a solution (closes: #399315).
+
+ -- martin f. krafft <madduck@debian.org> Mon, 20 Nov 2006 15:02:34 +0800
+
+mdadm (2.5.6-5) unstable; urgency=low
+
+ * Prevent initramfs hook from exiting prematurely when VERBOSE=false.
+ * Moved debconf question about arrays to start by initramfs to high
+ priority.
+
+ -- martin f. krafft <madduck@debian.org> Mon, 13 Nov 2006 11:24:21 +0100
+
+mdadm (2.5.6-4) unstable; urgency=low
+
+ * Actually remove mdadm.conf on purge; previously, the generation of
+ a temporary file for initramfs would screw up the purging; thanks to
+ Fabrice Lorrain for the report (closes: #398088).
+
+ -- martin f. krafft <madduck@debian.org> Sat, 11 Nov 2006 20:07:55 +0100
+
+mdadm (2.5.6-3) unstable; urgency=low
+
+ * Fix a syntax error in mdadm-raid script.
+
+ -- martin f. krafft <madduck@debian.org> Thu, 9 Nov 2006 15:47:51 +0100
+
+mdadm (2.5.6-2) unstable; urgency=low
+
+ * Small fixes to mkconf, now returns 255 instead of -1.
+ * Added /usr/share/mdadm/startall, a helper script to facilitate starting
+ all arrays when booting from rescue/live media. It overrides AUTOSTART in
+ /etc/default/mdadm and starts arrays even if the variable is set to
+ a false value.
+
+ -- martin f. krafft <madduck@debian.org> Thu, 9 Nov 2006 14:44:35 +0100
+
+mdadm (2.5.6-1) unstable; urgency=low
+
+ * New upstream release:
+ - added note to mdadm(8)/--metadata about overriding the default in
+ mdadm.conf (closes: #396914).
+ - fixed problems that could cause infinite loop with auto assemble. Thanks
+ to Dan Pascu for pointing this out (closes: #396582).
+ - fixed problems with bitmap file names lost after reading from
+ configuration file.
+ * Merged patch by Dan Pascu to nicely handle situations where a degraded
+ array only has one drive left nicely by the mdadm-raid script.
+ * Updated Japanese debconf translation; thanks to Hideki Yamane
+ (closes: #396400).
+
+ -- martin f. krafft <madduck@debian.org> Thu, 9 Nov 2006 00:47:45 +0100
+
+mdadm (2.5.5-1) unstable; urgency=low
+
+ * New upstream release:
+ - fixes the build problems on several architectures (closes: #393314) by
+ including the contents of linux/blkpg.h literally, not via #include.
+ - optimises bitmap file use on 64bit systems.
+ - does not error out anymore when trying to assemble an already assembled
+ array without a corresponding /dev device node.
+ - does not report an error if --assemble --scan only finds already running
+ arrays.
+ - fixes several bugs related to RAID10 and the new offset layout.
+ - improves error message when a wrong '--update' option is given.
+ * Added FAQ entries about partitionable arrays.
+ * chroot detection now also works for 2.6.18 and beyond (c.f. kernel commit
+ 778c1144771f0064b6f51bee865cceb0d996f2f9).
+ * Now recommends module-init-tools.
+ * Hides ugly errors during configuration in the absense of module-init-tools
+ or initramfs-tools.
+ * Send udev events for arrays assembled by the mdadm-raid init.d script.
+ This does not close #394193 but it's a good addition anyway. I am not
+ sending these events from the initramfs as well because it would be
+ non-trivial to ensure that an event doesn't get sent twice for a given
+ array.
+ Anyway, this is all a hack until the kernel sends online/offline events to
+ udev. See #394193.
+ * Added more RAID10 information to the FAQ.
+ * Added filters to logcheck for regular events, even by the md driver; also
+ promoted messages about non-fresh components to security events.
+ * Hide informational messages unless VERBOSE is set to a true value in
+ /etc/default/mdadm.
+
+ -- martin f. krafft <madduck@debian.org> Thu, 26 Oct 2006 22:35:24 +0200
+
+mdadm (2.5.4-1) unstable; urgency=low
+
+ * New upstream release:
+ - --examine now reports chunk size also for RAID6 and RAID10
+ - fix endianness issues with v1 superblocks (closes: #385726) and bitmap
+ metadata.
+ - improved message when mdadm detects similar superblocks
+ (closes: #385951).
+ - documents that the automatic update of the super-minor field in the
+ superblock when using a 2.6 kernel only applies to RAID levels 1 and
+ higher. RAID0 array superblocks must be manually updated
+ (closes: #386315, #388172).
+ - removes partition table from any whole device added to an array.
+ - allow --auto=yes to specify a number; if mdadm determines from the
+ device name that you want a partitionable array, this number determines
+ the number of sub-device nodes to create.
+ * Removed patch previously used to fix #385951 because it's not adequate.
+ See the bug log for reasons.
+
+ -- martin f. krafft <madduck@debian.org> Fri, 13 Oct 2006 08:32:20 +0200
+
+mdadm (2.5.3.git200608202239-8) unstable; urgency=low
+
+ * This revision is dedicated to Peter Samuelson for his RAID10 expertise^W
+ educated guess^W^W pure luck. (:
+ * Now writes minimal mdadm.conf file even if the MD subsystem has not been
+ loaded and the scan for arrays thus failed.
+ * Now tries to ensure that the configuration file used for the initramfs
+ actually defines arrays.
+ * Now preserves MAILADDR from an existing mdadm.conf when generating a new
+ one.
+ * Documentation updates.
+ * Updated debconf translations:
+ - German by Mario Joußen.
+ - Vietnamese by Clytie Siddall (closes: #390311).
+ - Dutch by Frans Pop (closes: #390955).
+ - French by Jean-Luc Coulon (closes: #391215).
+
+ -- martin f. krafft <madduck@debian.org> Fri, 6 Oct 2006 15:03:46 +0200
+
+mdadm (2.5.3.git200608202239-7) unstable; urgency=medium
+
+ * Fixed a serious bug in the debconf script which would cause the
+ configuration to exit prematurely in cases when the root could not be
+ determined. Since this is RC, the urgency is set to medium.
+ * Updated the documentation a bit.
+ * Updated debconf translations:
+ - Swedish by Daniel Nylander (closes: #389040).
+ - Czech by Miroslav Kure (closes: #389083).
+ - Russian by Yuri Kozlov (closes: #389086).
+ - Brazilian Portuguese by Felipe Augusto.
+
+ -- martin f. krafft <madduck@debian.org> Fri, 29 Sep 2006 16:31:44 +0200
+
+mdadm (2.5.3.git200608202239-6) unstable; urgency=high
+
+ * Bumping urgency to high because previous version has been in unstable for
+ three days and this one really only fixes a stupid segfault:
+ * Reworked the parsing of /proc/partitions and spotted a mean segfault
+ (closes: #388355).
+
+ -- martin f. krafft <madduck@debian.org> Thu, 21 Sep 2006 15:25:21 +0200
+
+mdadm (2.5.3.git200608202239-5) unstable; urgency=medium
+
+ * Keeping medium urgency due to RC bug.
+ * Modified the patch responsible for pruning parent devices so that
+ superblocks at the end of a disk do not get interpreted twice. It now
+ makes less assumptions about the exact output of /proc/partitions and
+ should thus be more robust (now closes: #385951).
+ * Added code that defers mdadm preconfiguration when the debconf backend is
+ too old (and does not provide debconf-escape). Now configuration is
+ postponed until the postinst is run in this case.
+
+ -- martin f. krafft <madduck@debian.org> Thu, 14 Sep 2006 11:16:39 +0200
+
+mdadm (2.5.3.git200608202239-4) unstable; urgency=medium
+
+ * Correct error related to an unbound variable in postinst.
+ * Keeping medium urgency.
+
+ -- martin f. krafft <madduck@debian.org> Wed, 13 Sep 2006 20:49:33 +0200
+
+mdadm (2.5.3.git200608202239-3) unstable; urgency=medium
+
+ * Urgency medium because of RC bugs.
+ * Add versioned dependency to debconf (closes: #385994); temporary fix until
+ we find a proper fix for #386439.
+ * Add patch by Steinar H. Gunderson to ensure mdadm does not interpret
+ a superblock as belonging to a device when it's actually part of
+ a partition on that device (closes: #385951).
+ * Do not override the superblock default version in mdadm.conf to prevent
+ creation of superblocks that the kernel can't handle (closes: #384614).
+ * Added a note to alert people that the warning about arrays not listed in
+ the configuration file is only relevant if the arrays are needed to be
+ brought up by mdadm from initramfs during boot (closes: #385017).
+ * Added bootloader/cmdline info to bugscript so that future bug reports via
+ bug/reportbug include information on how the system is booted with respect
+ to RAID (the root partition).
+ * If mdadm is being configured in a chroot, it now defaults to starting all
+ arrays from the initial ramdisk, rather than trying to figure out the root
+ MD array (we're using /proc information, so it would be the one of the
+ host, not the one of the chroot) (closes: #386468).
+ * Added LSB headers to init scripts.
+ * Reworked the documentation with respect to the use of "MD" and "RAID", and
+ added a FAQ entry on the meaning of "MD". Thanks to Frans Pop for his
+ help!
+ * Updated debconf translations:
+ - Czech by Miroslav Kure (closes: #384754).
+ - French by Florentin Duneau (closes: #385690).
+ - Russian by Yuri Kozlov (closes: #387017).
+
+ -- martin f. krafft <madduck@debian.org> Thu, 7 Sep 2006 14:32:04 +0200
+
+mdadm (2.5.3.git200608202239-2) unstable; urgency=low
+
+ * Allow ARRAY lines in configuration file to break across lines
+ (closes: #384222).
+ * Improved initramfs hook; now does not rely on initramfs to provide RAID
+ assembly:
+ - if a checked mdadm.conf file is present, use that.
+ - if an unchecked mdadm.conf is present, create a temporary one
+ - if that fails, use the unchecked one iff it contains at least one
+ ARRAY statement. Otherwise rely on auto-generation from the initramfs
+ during the book (and hope for the best).
+ - if no mdadm.conf is found, create one on the fly
+ - if that fails, hope that the auto-generation will work during boot
+ * Improved the messages printed by the initramfs script.
+ * Do not store the debconf answer for whether arrays not listed in the
+ configuration file should be used.
+ * Now asks again for the devices to start (preseeded with 'all') if the user
+ does not want to proceed with devices not listed in the configuration
+ file.
+
+ -- martin f. krafft <madduck@debian.org> Wed, 30 Aug 2006 16:29:07 +0200
+
+mdadm (2.5.3.git200608202239-1) unstable; urgency=low
+
+ * Tracking upstream git releases.
+ - now the --run switch behaves as stated in the manpage. This properly
+ fixes #287415
+ - new version-1 partitionable arrays are now named X instead of _dX (e.g.
+ 0 instead of _d0) for device names like md_dX. I actually think this is
+ a bug and hope upstream will use dX (e.g. d0) instead in a future
+ version.
+ - we specify --symlink=no and thus disable the new feature to create
+ /dev/mdX symlinks to /dev/md/X devices until the entire device node mess
+ is cleared up. No need to introduce yet another complicating factor at
+ this stage.
+ * Instead of trying to do a whole lot of magic with respect to detecting
+ RAID devices to start, mdadm from now on requires a valid mdadm.conf file
+ to be installed. It still tries to do what it can, but there are no
+ heuristics anymore. See /usr/share/doc/mdadm/README.upgrading-2.5.3 .
+ * Removed the zero-superblock warning because we require the user to sign
+ off the configuration file anyway.
+ * This also enables us to use mdadm.conf from the initial ramdisk and thus
+ closes: #381303.
+ * In case the user chooses to assemble all arrays from the initial ramdisk,
+ use the new homehost feature of mdadm (closes: #381057). This will start
+ only those arrays belonging to the local system, unless it is the first
+ run on a system, in which case it will start all arrays and mark them as
+ belonging to the local system.
+ * Improved the debconf control script: integrated error messages into the
+ frontends, and made it a bit smarter. Error messages can now be
+ translated, and the script checks whether the user's choice is listed in
+ the configuration file and only proceeds if it is, or the user chooses to
+ ignore that it is not.
+ * mkconf can now take a generate/force-generate parameter to write directly
+ to /etc/mdadm/mdadm.conf. A second parameter specifies an alternate
+ filename.
+ * mkconf now outputs comments for the settings it suggests.
+ * Removed all udev-related stuff. We must coexist with udev because there
+ are setups that assemble arrays without mdadm, so the device nodes must be
+ created by udev, if that is used.
+ (closes: #382263, #382450, #383688, #383891, #383806, #382480)
+ Staying at low urgency since these (RC) bugs only exist in unstable.
+ * Now installs MD modules and mdadm/mdrun into initial ramdisk regardless of
+ whether the hook script thinks there are devices to start. This was done
+ to enable recovery from the initramfs shell.
+ * Now uses 'MD' instead of 'RAID' consistently in all messages.
+ * Now rebuilds initramfs for all installed kernels.
+ * Now breaks the endless config loop only when the user does not see the
+ question (see #381284, #381007).
+ * Don't fail mdadm-raid when /dev is on a read-only filesystem
+ (closes: #382876).
+ * Updated debconf translations:
+ - French by Florentin Duneau (closes: #382389).
+
+ -- martin f. krafft <madduck@debian.org> Mon, 21 Aug 2006 00:25:22 +0100
+
+mdadm (2.5.2-10) unstable; urgency=low
+
+ * Applied patch by upstream to fix the logic of the --run switch (see
+ #287415). Thus also reverted the mdadm-raid hack used to fix the bug in
+ the 2.5.2-9 upload.
+ * Recognise devfs-style device nodes by fixing a regression bug in the root
+ RAID autodetection code (closes: #381007), which was introduced as part of
+ the fix for #380596 in the 2.5.2-9 upload. The bug is RC, but it only
+ applies to unstable right now, so I am not pumping up the urgency.
+ The autodetection code now doesn't care about the actual name of the array
+ device, but instead only insists that it exists, is a block device, and
+ recognised as an array by mdadm (mdadm --detail).
+ * Added safety net to prevent endless loops in RAID autodetection. Now just
+ falls back to starting all arrays from the initramfs if it fails to
+ determine an acceptable array for the / filesystem in three tries
+ (closes: #381284, also see #381007).
+ * Added udev rules file to prevent udev from ever creating md device nodes,
+ which can get in the way of mdadm (also see next item).
+ * Added a workaround to the initramfs hook to deal with the problem with
+ /dev/md/X device nodes when /dev/mdX is also present and version-0
+ superblocks are in use (closes: #381181).
+ * checkarray: correctly recognise when the kernel is too old for parity
+ checks, or when there are no redundant arrays present (closes: #380746).
+ * checkarray: now supports -s|--status switch to query parity check status
+ for given devices.
+ * checkarray: now supports -x|--cancel switch to cancel running checks.
+ * mkconf: now also outputs 'MAILADDR root' and 'HOMEHOST <system>'.
+ * Added README.checkarray with some information about the check process.
+ * Added /usr/share/doc/mdadm/FAQ to answer some FAQs.
+
+ -- martin f. krafft <madduck@debian.org> Thu, 3 Aug 2006 22:54:04 +0100
+
+mdadm (2.5.2-9) unstable; urgency=low
+
+ * Added logcheck rules for kernel messages generated by checkarray, using
+ logcheck server level.
+ * Added handling of partitionable arrays to root RAID autodetection script
+ (closes: #380596).
+ * Forcing RAID assembly to run the arrays, working around an upstream bug
+ until that's fixed (closes: #287415).
+ * Updated documentation in README.initramfs-transition to include
+ information related to #380089.
+ * Updated debconf translations:
+ - Vietnamese by Clytie Syddall, thanks!
+
+ -- martin f. krafft <madduck@debian.org> Mon, 31 Jul 2006 14:35:38 +0100
+
+mdadm (2.5.2-8) unstable; urgency=low
+
+ * Re-added rootraiddoc.97.html which was mysteriously lost (closes: #378678).
+ * Catching modprobe error in case of absence of the kernel modules, or
+ a non-modular kernel. Thanks to Holger Levsen.
+ * Copy raid456 kernel module into initramfs, if present (closes: #380152).
+ * checkarray: check for presence of active RAID arrays and give an
+ appropriate error if there are none present (closes: #379019).
+ * checkarray: skip sync for non-redundant devices (closes: #379352, #380424).
+ * Fixing cron registration for checkarray. crontab(5) is really stupid and
+ makes me think that they simply documented a bug instead of fixing it, so
+ now I have to hack around it. See the cron.d file (closes: #380425).
+ * Removed the code writing auto-detected devices to /var, which was silly
+ since /var isn't necessarily mounted yet by the time mdadm-raid is called.
+ Thanks to Maurizio Avogadro for pointing this out.
+ * Add reference to BAARF to README.Debian and included the RAID5 vs RAID10
+ article from the BAARF website.
+ * Updated debconf translations:
+ - Japanese by Hideki Yamane, thanks!
+ - French by Florentin Duneau, thanks! (closes: #379511)
+
+ -- martin f. krafft <madduck@debian.org> Thu, 27 Jul 2006 22:49:32 +0100
+
+mdadm (2.5.2-7) unstable; urgency=low
+
+ * Release to unstable.
+
+ -- martin f. krafft <madduck@debian.org> Thu, 20 Jul 2006 17:23:23 +0100
+
+mdadm (2.5.2-6) experimental; urgency=low
+
+ * Adding mdrun to generated udeb. I will only remove mdrun after etch.
+ * Updated debconf translations:
+ - Dutch, thanks to Frans "Franzerl" Pop! (closes: #377412)
+ - French, thanks to Florentin Duneau! (closes: #377968)
+
+ -- martin f. krafft <madduck@debian.org> Thu, 13 Jul 2006 23:11:24 +0200
+
+mdadm (2.5.2-5) UNRELEASED; urgency=low
+
+ * Remove the check for the lvm prereq in the initramfs hook, as #369617 is
+ now fixed. Thus conflicts against initramfs-tools (<< 0.65).
+ * Updated debconf translations:
+ - German, thanks to Mario Joußen!
+ * Added short note about maintenance in SVN to README.Debian.
+
+ -- martin f. krafft <madduck@debian.org> Thu, 13 Jul 2006 23:10:36 +0200
+
+mdadm (2.5.2-4) UNRELEASED; urgency=low
+
+ * The "it takes two to swing" release.
+ * Now does not stop arrays on upgrade or remove. Thanks (and sorry) to
+ Christian Pernegger (and hopefully no others).
+ * Fixed small problem in debconf configuration script related to unbound
+ MAIL_TO variable. Thanks to Christian Pernegger.
+
+ -- martin f. krafft <madduck@debian.org> Fri, 7 Jul 2006 16:59:01 +0200
+
+mdadm (2.5.2-3) UNRELEASED; urgency=low
+
+ * The initramfs now gets all RAID modules installed. It's a lot safer to
+ have them all around, the size difference is negligible, and we still only
+ load the needed ones at boot time.
+ * Added /usr/share/mdadm/checkarray, which can be used to check arrays for
+ parity. Also added a debconf question to let the user choose whether
+ cron should run these checks (closes: #377071).
+ * Only shut down arrays automatically when they've been automatically
+ started (closes: #376009).
+ * Make sure the user has a chance to choose the autostart feature by
+ elevating the debconf priority to high (see #376009). The warning about
+ reuse of RAID components has also been elevated to debconf priority high.
+ * The MAIL_TO setting from /etc/default/mdadm has been removed. Instead, use
+ MAILADDR in /etc/mdadm/mdadm.conf. See mdadm.conf(5). Your setting should
+ be automatically migrated.
+ * Now rewrites /etc/default/mdadm (but preserves settings) instead of trying
+ to patch it with changes.
+ * Added note to README.Debian to ensure users know that only the devices
+ listed in mdadm.conf will be autostarted (see #376009).
+ * Now includes latest md.txt from kernel documentation in
+ /usr/share/doc/mdadm/md.txt.gz.
+ * Added some more recipes to /usr/share/doc/mdadm/README.recipes.gz.
+ * Updated debconf translations:
+ - Swedish, thanks to Daniel Nylander!
+ - Brazilian Portuguese, thanks to Felipe Augusto van de Wiel!
+ - Czech, thanks to Miroslav Kure!
+ - Russian, thanks to Yuri Kozlov (closes: #376181).
+ * Further updates to the debconf templates; I hope the translators aren't
+ going to kill me.
+
+ -- martin f. krafft <madduck@debian.org> Fri, 7 Jul 2006 15:09:40 +0200
+
+mdadm (2.5.2-2) experimental; urgency=low
+
+ * The "if it weren't for Munich's wheat beer, there'd be no" release.
+ * Removed -fno-strict-aliasing from compiler options, after upstream fixed
+ the bug that led to its use (see #369779, #356153). Thanks to Elimar
+ Riesebieter for pointing this out (closes: #375876).
+ * Moved detection of RAID devices from initramfs hook to debconf control
+ file, and added a (low-priority) debconf question as to which devices
+ should be started early in the boot sequence. For the cases where we
+ failed to auto-detect previously (e.g. root on LVM on RAID), it's paranoid
+ and suggests to start them all (closes: #375879). Thanks to Alec Berryman
+ for spotting this.
+ * Fixed a typo in README.experimental, which could lead to an unbootable
+ system with initramfs-tools 0.64 or before. Again, thanks to Alec for
+ spotting this.
+ * Extended bug script to include --examine output for all components (at
+ least if called by root, which hopefully should never happen. Err,
+ wait...)
+ * Disabled deprecation warning in mdrun until the transition is complete.
+ * Reworded the debconf templates due to a new question, and also for
+ readability.
+
+ -- martin f. krafft <madduck@debian.org> Thu, 29 Jun 2006 22:54:47 +0200
+
+mdadm (2.5.2-1) experimental; urgency=low
+
+ * New upstream release.
+ * Implemented checks in the initramfs hooks and scripts for compatibility
+ with initramfs-tools. Now we do not need a conflict anymore because
+ mdadm's hooks and scripts will simply do nothing while the ones provided
+ by initramfs-tools are still present.
+ * Not using /bin/bash for mdrun, which I thought we'd need for read timeout
+ support (for the deprecation warning). Since the -n and -t flags to the
+ read shell builtin are non-POSIX, I dropped them, they were merely
+ cosmetic anyway.
+
+ -- martin f. krafft <madduck@debian.org> Tue, 27 Jun 2006 15:06:55 +0200
+
+mdadm (2.5.1-2) experimental; urgency=low
+
+ * Updating dependency on initramfs-tools, which has not yet adopted to mdadm
+ taking over the hooks.
+
+ -- martin f. krafft <madduck@debian.org> Mon, 26 Jun 2006 22:35:08 +0200
+
+mdadm (2.5.1-1) experimental; urgency=low
+
+ * New upstream release:
+ - Really fixes return status of examine (closes: #367901).
+ - Fixes a memory leak in monitor mode (closes: #372618).
+ - Fixes compiler warnings and errors (closes: #373802, #356153, #369779).
+ - Fix byte swapping issues (closes: #369765).
+ - Now lists devices it stops (closes: #369850). This also leads to
+ beautification of the init.d script's stop action.
+ * Fixed RAID init script to not complain about missing logger command.
+
+ -- martin f. krafft <madduck@debian.org> Mon, 26 Jun 2006 00:58:36 +0200
+
+mdadm (2.5-4) experimental; urgency=low
+
+ * The "would you like fries with your parasite?" release.
+ * Now does not require RAID support from the kernel just for package
+ installation; that was silly of me, sorry (closes: Bug#370115).
+ * Added version to Replaces: initramfs-tools dependency.
+ * Further init.d script improvements.
+ * Recommends mail-transport-agent, or the monitor daemon won't be able to
+ send anything.
+ * Ignores failures from modprobe in postinst when RAID modules are not
+ available (closes: #370582).
+
+ -- martin f. krafft <madduck@debian.org> Tue, 6 Jun 2006 12:45:53 +0200
+
+mdadm (2.5-3) experimental; urgency=low
+
+ * Added /usr/share/doc/mdadm/README.recipes with some common usage examples.
+ * Vastly improved the mdadm-raid init.d script output, and removed bashisms.
+
+ -- martin f. krafft <madduck@debian.org> Fri, 2 Jun 2006 00:45:06 +0200
+
+mdadm (2.5-2) experimental; urgency=low
+
+ * The "on her majesty's secret service" release.
+ * Enabled -DDEBIAN during build, which will take care of default permissions
+ on devices created by mdadm. Together with the CREATE configuration
+ directive in 2.5, this now certainly closes: Bug#310241.
+ * Added a patch (incorporating lib/mm/xlate.h from lvm2) to prevent direct
+ access to kernel headers from userspace (closes: Bug#369765).
+ * Disabled strict aliasing compiler checks until we find a better
+ implementation for linked lists in C (closes: Bug#369779, Bug#356153).
+ * Actually decreased the size of the udeb mdadm binary with -Os
+ -fomit-frame-pointer (as suggested by Joey Hess) (closes: Bug#314370)
+ * Added Replaces: initramfs-tools to communicate that we're not conflicting
+ but replacing instead (see Bug#367567)
+ * Updated conflict with initramfs-tools to (<< 0.63) per suggestion by the
+ maintainers.
+
+ -- martin f. krafft <madduck@debian.org> Thu, 1 Jun 2006 20:15:17 +0200
+
+mdadm (2.5-1) experimental; urgency=low
+
+ * The "show me the way to the next whiskey bar" release.
+ * See /usr/share/doc/mdadm/README.experimental or
+ http://madduck.net/~madduck/scratch/README.experimental
+ * New upstream release:
+ - mails include /proc/mdstat output (closes: Bug#355882)
+ - allows specification of device permissions in config (closes: Bug#310241)
+ * /sbin/mdrun has been deprecated and replaced by calls to /sbin/mdadm;
+ a proper deprecation warning is in place (see NEWS).
+ * Moved initramfs hook and script into the package, and switched it to mdadm
+ (from mdadm. Thanks to Stephen Frost for his help (closes: Bug#354144).
+ This should make sure that the right minor numbers are chosen during boot
+ (mainly because mdadm takes care of it all) (closes: Bug#361408).
+ * Removing mdrun from the udeb (d-i patch submitted to debian-boot mailing
+ list)
+ * Upstream links against openssl for SHA1 support (homehost feature), which
+ is a problem. An internal SHA1 implementation is provided, however, so
+ I just link against that.
+ * Switched init.d scripts to use LSB-compliant output.
+ * Enhanced init.d script output.
+
+ -- martin f. krafft <madduck@debian.org> Thu, 1 Jun 2006 02:20:22 +0200
+
+mdadm (2.4.1-2) unstable; urgency=low
+
+ * The "this took way longer than I thought" release.
+ * Migrating to unstable.
+ * If the init.d script creates the mdadm.conf file, it should remove it on
+ purge. To accomplish this, I create a semaphore in /var/lib/mdadm if it
+ was generated, and only remove the conffile on purge if the semaphore
+ exists.
+ * Added a little helper /usr/share/mdadm/mkconf to aid generation of
+ configuration file.
+ * Added a bug script to collect some important information when the user
+ uses Debian bug reporting tools (such as reportbug).
+ * Added a debian/watch file.
+
+ -- martin f. krafft <madduck@debian.org> Wed, 31 May 2006 23:07:48 +0200
+
+mdadm (2.4.1-1) experimental; urgency=low
+
+ * The "I'll kill that maintainer... uh, wait, it's me" release. Sorry for
+ the delay, here's the long awaited new upstream release (closes:
+ Bug#337903, Bug#363592), which gets rid of a bunch of functionality bugs:
+ - reiserfs size does not overflow anymore (closes: Bug#318230)
+ - fixed typos in manpages (closes: Bug#352798)
+ Oh, and we're moving away from that arch nightmare too. Sorry for the
+ confusion.
+ * Experimental release, because I really don't want to be responsible for
+ data loss. Though I am quite sure that the upgrade is painless, I also
+ don't have access to 18 drive RAID 10 with multipath on s390 or similar
+ arrangements.
+ * We now make the /dev/md* devices in postinst unless /dev/md15 exists (no
+ longer checking for /dev/md0), or unless devfs is in use. If udev is used,
+ /dev/md15 will only exist in complex setups, so the devices will be made
+ in /dev/.static by MAKEDEV, which is not really a concern. I opted against
+ unconditionally calling MAKEDEV until #367407 is fixed so as to preserve
+ custom permissions or owner settings. This also acknowledges the NMU
+ (#299623).
+ closes: Bug#310247, Bug#299623
+ * Patched some of the code to make mdadm honour /etc/mdadm/mdadm.conf over
+ /etc/mdadm.conf (see NEWS).
+ * Fixed a couple of typos in the mdadm(8) manpage; thanks to Reuben Thomas.
+ closes: Bug#345669, Bug#345667
+ * Pushed Standards-Version to 3.7.2; no changes required.
+ * Updated Debconf translations:
+ - Vietnamese by Clytie Siddall (closes: Bug#323950)
+ - Czech by Miroslav Kure (closes: Bug#360290)
+ - Russian by Yuri Kozlov (closes: Bug#361116)
+ - French by Eric Madesclair (closes: Bug#323988)
+ * Added new Debconf translations:
+ - Swedish by Daniel Nylander (closes: Bug#333486)
+ - Dutch by Frans Pop (closes: Bug#344714)
+
+ -- martin f. krafft <madduck@debian.org> Tue, 16 May 2006 18:21:36 -0500
+
+mdadm (1.12.0-1) unstable; urgency=low
+
+ * New upstream release.
+ (obsoletes branches: symlinks)
+ (reduces branches: gcc4signedness, debian, autoscan)
+ * Fixed typo in mdadm.conf(5) manpage (closes: Bug#321152).
+
+ -- martin f. krafft <madduck@debian.org> Sun, 24 Jul 2005 19:20:01 +0200
+
+mdadm (1.9.0-5) unstable; urgency=low
+
+ * martin f. krafft: (the, "look ma', we're maintained in arch now!" release)
+ (no functional differences except for added/updated translations)
+ - Acknowledge NMU by Steve Langasek; thanks! (closes: Bug#299623)
+ - split diff.gz into different arch branches (see debian/arch-branches).
+ - debian/control:
+ - Changed maintainer to pkg-mdadm-devel.
+ - Reworded some of the descriptions (closes: Bug#304170).
+ - Pushed Standards-Version to 3.6.2.1; no changes needed.
+ - fixed po-debconf integration
+ - debian/rules:
+ - fixed po-debconf integration
+ - l10n changes:
+ - Removed amiguity from debconf template (closes: Bug#312754).
+ - Added Vietnamese debconf translation; thanks to Clytie Siddall!
+ (closes: Bug#312753)
+ - Added Czech debconf translation; thanks to Miroslav Kure! (closes: Bug#319626)
+ - Updated German debconf translation; thanks to Jens Seidel! (closes: Bug#313981)
+ - backported upstream's gcc4 signedness fixes from 1.12.0 (gcc4signedness
+ branch) (closes: Bug#319743).
+
+ -- martin f. krafft <madduck@debian.org> Sun, 24 Jul 2005 17:58:46 +0200
+
+mdadm (1.9.0-4.1) unstable; urgency=high
+
+ * Non-maintainer upload.
+ * High-urgency upload for sarge-targetted RC bugfix
+ * Make sure error output from MAKEDEV is sent to stderr, to avoid
+ interfering with debconf; this avoids installation problems on
+ udev-using systems. Thanks to Jonas Smedegaard for the patch.
+ Closes: #299623.
+
+ -- Steve Langasek <vorlon@debian.org> Wed, 1 Jun 2005 03:36:42 -0700
+
+mdadm (1.9.0-4) unstable; urgency=high
+
+ * High-urgency upload for sarge targeted RC bugfix.
+ * mdrun: replaced invocation of /usr/bin/seq with hard-coded sequence
+ (closes: Bug#310671).
+
+ -- martin f. krafft <madduck@debian.org> Wed, 25 May 2005 09:51:41 +0200
+
+mdadm (1.9.0-3) unstable; urgency=high
+
+ * High-urgency upload for sarge targeted RC bugfix.
+ * Applied patch by Peter Samuelson <peter@p12n.org>, which causes mdadm to
+ follow symlinks of device nodes (closes: #274859, #310412, #310492).
+ * Added myself as co-maintainer as per agreement with Mario Joussen.
+
+ -- martin f. krafft <madduck@debian.org> Tue, 24 May 2005 00:03:49 +0200
+
+mdadm (1.9.0-2.3) unstable; urgency=high
+
+ * Non-maintainer upload.
+ * Do not prevent postinst node creation when udev is being used; MAKEDEV
+ puts files into /dev/.static/dev with udev, which is needed so that device
+ nodes will be there even if udev is removed. Sorry for letting this slip
+ my mind and thanks to Steve Langasek for spotting this error.
+ * Leaving urgency at high to make sarge.
+
+ -- martin f. krafft <madduck@debian.org> Sun, 22 May 2005 19:35:04 +0200
+
+mdadm (1.9.0-2.2) unstable; urgency=high
+
+ * Non-maintainer upload.
+ * High-urgency upload for sarge targeted RC bugfix.
+ * Move mdadm-raid back to S25 as it needs to run after modules have been
+ loaded at S20 (see followups to #294404, #301560).
+ * Verified that Steve Langasek's patch to config.c (see item 4 of the
+ 1.9.0-2.1 changelog) is necessary for `mdadm -A -s` to work.
+ (closes: #301560)
+ * Integrated patch by Erik van Konijnenburg to fix mdadm's --auto
+ option in the presence of --scan.
+ (closes: #294404, #273182, #284028, #310126).
+ * Modified mdrun to call mdadm with --auto in assembly mode. Removed code
+ which would auto-create 24 device nodes during system startup when udev
+ was used.
+ * Fixed next_free_md function in mdrun to iterate all 24 nodes instead of
+ using some fragile shell globbing, which did not work anyway.
+ * Prevent postinst node creation when udev is being used.
+ * Added a README.udev file to /usr/share/doc/mdadm.
+
+ -- martin f. krafft <madduck@debian.org> Sun, 22 May 2005 12:57:56 +0200
+
+mdadm (1.9.0-2.1) unstable; urgency=high
+
+ * Non-maintainer upload.
+ * High-urgency upload for sarge targetted RC bugfix.
+ * Start mdadm-raid before udev on boot-up, so that mdadm device node
+ creation is honored, and support changing the init script ordering
+ on upgrades (closes: #294404).
+ * Fix mdadm --scan to prefer the values contained in /proc/partitions,
+ instead of picking up device node names at random from /dev.
+ * Teach mdrun to look at /dev/.static/dev instead of /.dev for udev
+ mounts requiring autostart (closes: #301560).
+
+ -- Steve Langasek <vorlon@debian.org> Sun, 27 Mar 2005 21:59:12 -0800
+
+mdadm (1.9.0-2) unstable; urgency=low
+
+ * Patched is_standard() to accept /dev/md/* names as standard.
+ Thanks to Colin Watson <cjwatson@debian.org>.
+ (closes: Bug#296794)
+ * Added another typecast to make it compilable on amd64 with gcc-4.0.
+ Thanks to Andreas Jochens <aj@andaco.de>.
+ (closes: Bug#294217)
+ * Removed unnecessary second assignment to $BASE in mdrun.
+ Thanks to Colin Watson <cjwatson@debian.org>.
+ (closes: Bug#295433)
+
+ -- Mario Joussen <joussen@debian.org> Sun, 6 Mar 2005 14:22:24 +0100
+
+mdadm (1.9.0-1) unstable; urgency=high
+
+ * New upstream release.
+ Solves problems with same UUID for each array.
+ Again a stable upstream version.
+ (closes: Bug#292282, Bug#293406, Bug#292784, Bug#290363, Bug#292715)
+ * Added some typecasts to make it compilable on amd64 with gcc-4.0.
+ Thanks to Andreas Jochens <aj@andaco.de>.
+ (closes: Bug#287638)
+
+ -- Mario Joussen <joussen@debian.org> Sun, 6 Feb 2005 12:25:03 +0100
+
+mdadm (1.8.1-1) unstable; urgency=low
+
+ * New upstream release.
+ Fixed segfault if no config file present and --scan is used.
+ (closes: Bug#283425, Bug#282604, Bug#284024)
+ * Fixed typo in detailed help of grow mode.
+ (closes: Bug#286980)
+ * Added japanese debconf translation. Thanks to Hideki Yamane
+ <henrich@samba.gr.jp>.
+ (closes: Bug#281073)
+ * Fixed missing variable initialization causing segfaults.
+
+ -- Mario Joussen <joussen@debian.org> Sun, 26 Dec 2004 14:44:31 +0100
+
+mdadm (1.7.0-2) unstable; urgency=high
+
+ * Changed debconf script to save the settings from the config file.
+ Thanks to Fabio Massimo Di Nitto <fabbione@fabbione.net> and
+ Frank Lichtenheld <djpig@debian.org> for the patch.
+ (closes: Bug#274208)
+ * Moved try to load md module inside the AUTOSTART if branch in
+ /etc/init.d/mdadm.
+ * Removed try to load md module from /etc/init.d/mdadm-raid.
+
+ -- Mario Joussen <joussen@debian.org> Sun, 24 Oct 2004 19:48:06 +0200
+
+mdadm (1.7.0-1) unstable; urgency=low
+
+ * New upstream release.
+ (closes: Bug#267814)
+
+ -- Mario Joussen <joussen@debian.org> Sun, 12 Sep 2004 20:48:33 +0200
+
+mdadm (1.6.0-3) unstable; urgency=high
+
+ * Added 'Conflicts: raidtools2 (<< 1.00.3-12.1)' because these packages
+ contain a mdrun.8 man page also.
+ (closes: Bug#268634, Bug#266527)
+ * Updated the french translation.
+ Thanks to Eric <eric-m@wanadoo.fr>
+ (closes: Bug#266251)
+
+ -- Mario Joussen <joussen@debian.org> Sat, 28 Aug 2004 18:23:17 +0200
+
+mdadm (1.6.0-2) unstable; urgency=low
+
+ * Included version 0.97 of "Debian Software Root Raid Documentation".
+ * Now mdrun is only used if no mdadm.conf is present.
+ Thanks to Thomas Prokosch <7nrmi1s02@sneakemail.com>.
+ (closes: Bug#264059)
+ * Added man page for mdrun.
+ Thanks to Robert Collins <robertc@robertcollins.net>.
+ (closes: Bug#265480)
+ * Moved /etc/mdadm/debian.conf to /etc/default/mdadm.
+ (closes: Bug#254922)
+ * Added a little workaround to mdrun to interact better with udev.
+ Thanks to Fabio Massimo Di Nitto <fabbione@fabbione.net>.
+ (closes: Bug#259491)
+ * Updated Brazilian Portuguese translation.
+ Thanks to Andre Luis Lopes <andrelop@debian.org>.
+ (closes: Bug#264220)
+
+ -- Mario Joussen <joussen@debian.org> Mon, 16 Aug 2004 22:10:59 +0200
+
+mdadm (1.6.0-1) unstable; urgency=low
+
+ * New upstream release.
+ Detect degraded arrays in --monitor mode now.
+ (closes: Bug#257357)
+ * Changed default to autostart RAID array.
+ (closes: Bug#250792)
+ * Fixed mdrun problem with kernel 2.6.
+ Thanks to Andre Tomt <andre@tomt.net> and Fabio Massimo Di Nitto
+ <fabbione@fabbione.net>
+ (closes: Bug#231823)
+ * Changed reuse warning to be less misleading.
+ (closes: Bug#253339)
+
+ -- Mario Joussen <joussen@debian.org> Tue, 20 Jul 2004 21:40:33 +0200
+
+mdadm (1.5.0-2) unstable; urgency=low
+
+ * Added french debconf template.
+ Thanks to Eric Madesclair <eric-m@wanadoo.fr>.
+ (closes: Bug#231968)
+
+ -- Mario Joussen <joussen@debian.org> Tue, 4 May 2004 21:29:19 +0200
+
+mdadm (1.5.0-1) unstable; urgency=low
+
+ * New upstream release.
+ * Rewrote debconf templates to avoid referring to debconf interface
+ widgets.
+ (closes: Bug#231221)
+ * Removed manual scan for RAID devices from init script.
+ (closes: Bug#233122, Bug#236762)
+ * Added creation of an udeb package.
+ (closes: Bug#243609)
+ * Added "Debian Software Root Raid Documentation".
+ Thanks to Lucas Albers <albersl@cs.montana.edu>.
+
+ -- Mario Joussen <joussen@debian.org> Sun, 25 Apr 2004 16:16:06 +0200
+
+mdadm (1.4.0-3) unstable; urgency=low
+
+ * Updated to standards version 3.6.1.0 and debhelper 4.
+ * Corrected definition of BLKGETSIZE64 macro to compile with the
+ 2.6 kernel headers.
+ (closes: Bug#223191)
+ * Swichted to po-debconf to provide localized debconf templates.
+ (closes: Bug#225288)
+
+ -- Mario Joussen <joussen@debian.org> Sun, 1 Feb 2004 19:30:53 +0100
+
+mdadm (1.4.0-2) unstable; urgency=low
+
+ * Corrected human readable size calculation.
+ (closes: Bug#225041)
+ * Added a warning about reusing hard disks and using the autostart
+ feature.
+ (closes: Bug#223790)
+
+ -- Mario Joussen <joussen@debian.org> Thu, 25 Dec 2003 19:52:57 +0100
+
+mdadm (1.4.0-1) unstable; urgency=low
+
+ * New upstream release.
+
+ -- Mario Joussen <joussen@debian.org> Sun, 7 Dec 2003 19:39:27 +0100
+
+mdadm (1.3.0-2) unstable; urgency=low
+
+ * Added upstream changelog to package.
+
+ -- Mario Joussen <joussen@debian.org> Tue, 12 Aug 2003 21:51:59 +0200
+
+mdadm (1.3.0-1) unstable; urgency=low
+
+ * New upstream release.
+ (closes: Bug#191561, Bug#200921)
+
+ -- Mario Joussen <joussen@debian.org> Thu, 31 Jul 2003 20:59:20 +0200
+
+mdadm (1.2.0-1) unstable; urgency=low
+
+ * New upstream release. (closes: Bug#183191)
+ * New version of mdrun that works properly with devfs and temporary
+ device directory.
+ (closes: Bug#182035)
+ * Added 'Conflicts: raidtools' because of a name clash with mdrun.
+ (closes: Bug#182960)
+
+ -- Mario Joussen <joussen@debian.org> Sun, 16 Mar 2003 13:32:45 +0100
+
+mdadm (1.0.1-4) unstable; urgency=low
+
+ * Changed mdrun so that it can deal with partition statistics in
+ /proc/partitions.
+ (closes: Bug#174000, Bug#175130)
+ * Added russian (ru) debconf template translation. Thanks to Sergey
+ Spiridonov <sena@hurd.homeunix.org>.
+
+ -- Mario Joussen <joussen@debian.org> Sun, 5 Jan 2003 13:14:45 +0100
+
+mdadm (1.0.1-3) unstable; urgency=low
+
+ * Fixed a bug in mdrun. (closes: Bug#167607)
+
+ -- Mario Joussen <joussen@debian.org> Mon, 11 Nov 2002 07:53:23 +0100
+
+mdadm (1.0.1-2) unstable; urgency=low
+
+ * Fixed typo in help option. (closes: Bug#151533)
+ * Added a script that discovers and assembles all arrays automatically.
+ Thanks to Eduard Bloch <blade@debian.org>.
+ (closes: Bug#161699)
+
+ -- Mario Joussen <joussen@debian.org> Fri, 1 Nov 2002 13:46:47 +0100
+
+mdadm (1.0.1-1) unstable; urgency=low
+
+ * New upstream release.
+
+ -- Mario Joussen <joussen@debian.org> Thu, 30 May 2002 14:01:22 +0200
+
+mdadm (0.8.2-1) unstable; urgency=low
+
+ * New upstream release.
+ * Splitted up mdadm.templates in one file for each language.
+ * Added brazilian portuguese (pt_BR) debconf template translation.
+ Thanks to Andre Luis Lopes <andrelop@ig.com.br>.
+ (closes: Bug#141540)
+
+ -- Mario Joussen <joussen@debian.org> Thu, 18 Apr 2002 19:31:00 +0200
+
+mdadm (0.7.2-1) unstable; urgency=low
+
+ * New upstream release.
+ * 'mdctl' was renamed to 'mdadm' upstream.
+ * Removed question about updating mdctl init script links.
+
+ -- Mario Joussen <joussen@debian.org> Sat, 23 Mar 2002 02:50:51 +0100
+
+mdctl (0.5-4) unstable; urgency=low
+
+ * Added debconf template to ask the user if the init script links
+ should be updated.
+
+ -- Mario Joussen <joussen@debian.org> Mon, 4 Mar 2002 22:53:37 +0100
+
+mdctl (0.5-3) unstable; urgency=low
+
+ * Splitted up init script in two parts. One starts the md array and the
+ other starts the raid monitor daemon.
+ (closes: Bug#136184)
+
+ -- Mario Joussen <joussen@debian.org> Thu, 28 Feb 2002 22:45:57 +0100
+
+mdctl (0.5-2) unstable; urgency=low
+
+ * Included optimization in Makefile
+ (closes: Bug#127687)
+ * Removed Conflicts/Replaces/Provides: mdutils
+ (closes: Bug#127684, Bug#127719)
+ * Added an init script, which can start md arrays and the raid monitor
+ daemon
+ * MD devices are now created under /dev if necessary
+ * Added a sample configuration file
+
+ -- Mario Joussen <mario@joussen.org> Sun, 13 Jan 2002 23:43:40 +0100
+
+mdctl (0.5-1) unstable; urgency=low
+
+ * Initial Release.
+ (closes: Bug#126610)
+
+ -- Mario Joussen <mario@joussen.org> Wed, 26 Dec 2001 17:07:09 +0100
diff --git a/debian/checkarray b/debian/checkarray
new file mode 100644
index 0000000..1fb9735
--- /dev/null
+++ b/debian/checkarray
@@ -0,0 +1,219 @@
+#!/bin/sh
+#
+# checkarray -- initiates a check run of an MD array's redundancy information.
+#
+# Copyright © martin f. krafft <madduck@debian.org>
+# distributed under the terms of the Artistic Licence 2.0
+#
+set -eu
+
+PROGNAME=${0##*/}
+
+about()
+{
+ echo "\
+$PROGNAME -- MD array (RAID) redundancy checker tool
+Copyright © martin f. krafft <madduck@debian.org>
+Released under the terms of the Artistic Licence 2.0"
+}
+
+usage()
+{
+ about
+ echo "
+Usage: $PROGNAME [options] [arrays]
+
+Valid options are:
+ -a|--all check all assembled arrays (ignores arrays in command line).
+ -s|--status print redundancy check status of devices.
+ -x|--cancel queue a request to cancel a running redundancy check.
+ -i|--idle perform check in a lowest scheduling class (idle)
+ -l|--slow perform check in a lower-than-standard scheduling class
+ -f|--fast perform check in higher-than-standard scheduling class
+ --realtime perform check in real-time scheduling class (DANGEROUS!)
+ -c|--cron honour AUTOCHECK setting in /etc/default/mdadm.
+ -q|--quiet suppress informational messages
+ (use twice to suppress error messages too).
+ -h|--help show this output.
+ -V|--version show version information.
+
+Examples:
+ $PROGNAME --all --idle
+ $PROGNAME --quiet /dev/md[123]
+ $PROGNAME -sa
+ $PROGNAME -x --all
+
+Devices can be specified in almost any format. The following are equivalent:
+ /dev/md0, md0, /dev/md/0, /sys/block/md0
+
+You can also control the status of a check with /proc/mdstat file."
+}
+
+SHORTOPTS=achVqQsxilf
+LONGOPTS=all,cron,help,version,quiet,real-quiet,status,cancel,idle,slow,fast,realtime
+
+eval set -- $(getopt -o $SHORTOPTS -l $LONGOPTS -n $PROGNAME -- "$@")
+
+arrays=''
+cron=0
+all=0
+quiet=0
+status=0
+action=check
+ionice=
+
+for opt in $@; do
+ case "$opt" in
+ -a|--all) all=1;;
+ -s|--status) action=status;;
+ -x|--cancel) action=idle;;
+ -i|--idle) ionice=idle;;
+ -l|--slow) ionice=low;;
+ -f|--fast) ionice=high;;
+ --realtime) ionice=realtime;;
+ -c|--cron) cron=1;;
+ -q|--quiet) quiet=$(($quiet+1));;
+ -Q|--real-quiet) quiet=$(($quiet+2));; # for compatibility
+ -h|--help) usage; exit 0;;
+ -V|--version) about; exit 0;;
+ /dev/md/*|md/*) arrays="${arrays:+$arrays }md${opt#*md/}";;
+ /dev/md*|md*) arrays="${arrays:+$arrays }${opt#/dev/}";;
+ /sys/block/md*) arrays="${arrays:+$arrays }${opt#/sys/block/}";;
+ --) :;;
+ *) echo "$PROGNAME: E: invalid option: $opt. Try --help." >&2; exit 1;;
+ esac
+done
+
+is_true()
+{
+ case "${1:-}" in
+ [Yy]es|[Yy]|1|[Tt]rue|[Tt]) return 0;;
+ *) return 1;
+ esac
+}
+
+DEBIANCONFIG=/etc/default/mdadm
+[ -r $DEBIANCONFIG ] && . $DEBIANCONFIG
+if [ $cron = 1 ] && ! is_true ${AUTOCHECK:-false}; then
+ [ $quiet -lt 1 ] && echo "$PROGNAME: I: disabled in $DEBIANCONFIG ." >&2
+ exit 0
+fi
+
+if [ ! -f /proc/mdstat ]; then
+ [ $quiet -lt 2 ] && echo "$PROGNAME: E: MD subsystem not loaded, or /proc unavailable." >&2
+ exit 2
+fi
+
+if [ ! -d /sys/block ]; then
+ [ $quiet -lt 2 ] && echo "$PROGNAME: E: /sys filesystem not available." >&2
+ exit 7
+fi
+
+if [ -z "$(ls /sys/block/md* 2>/dev/null)" ]; then
+ if [ $quiet -lt 2 ] && [ $cron != 1 ]; then
+ echo "$PROGNAME: W: no active MD arrays found." >&2
+ echo "$PROGNAME: W: (maybe uninstall the mdadm package?)" >&2
+ fi
+ exit 0
+fi
+
+if [ -z "$(ls /sys/block/md*/md/level 2>/dev/null)" ]; then
+ [ $quiet -lt 2 ] && echo "$PROGNAME: E: kernel too old, no support for redundancy checks." >&2
+ exit 6
+fi
+
+if ! egrep -q '^raid([1456]|10)$' /sys/block/md*/md/level 2>/dev/null; then
+ [ $quiet -lt 1 ] && echo "$PROGNAME: I: no redundant arrays present; skipping checks..." >&2
+ exit 0
+fi
+
+if [ -z "$(ls /sys/block/md*/md/sync_action 2>/dev/null)" ]; then
+ [ $quiet -lt 2 ] && echo "$PROGNAME: E: no kernel support for redundancy checks." >&2
+ exit 3
+fi
+
+[ $all = 1 ] && arrays="$(ls -d1 /sys/block/md* | cut -d/ -f4)"
+
+for array in $arrays; do
+ MDBASE=/sys/block/$array/md
+
+ if [ ! -e $MDBASE/sync_action ]; then
+ [ $quiet -lt 1 ] && echo "$PROGNAME: I: skipping non-redundant array $array." >&2
+ continue
+ fi
+
+ read cur_status < $MDBASE/sync_action
+
+ if [ $action = status ]; then
+ echo "$array: $cur_status"
+ continue
+ fi
+
+ if [ ! -w $MDBASE/sync_action ]; then
+ [ $quiet -lt 2 ] && echo "$PROGNAME: E: $MDBASE/sync_action not writeable." >&2
+ exit 4
+ fi
+
+ if [ "$(cat $MDBASE/array_state)" = 'read-auto' ]; then
+ [ $quiet -lt 1 ] && echo "$PROGNAME: W: array $array in auto-read-only state, skipping..." >&2
+ continue
+ fi
+
+ case "$action" in
+ idle)
+ echo $action > $MDBASE/sync_action
+ [ $quiet -lt 1 ] && echo "$PROGNAME: I: cancel request queued for array $array." >&2
+ ;;
+
+ check)
+ if [ "$cur_status" != idle ]; then
+ [ $quiet -lt 2 ] && echo "$PROGNAME: W: array $array not idle, skipping..." >&2
+ continue
+ fi
+
+ # check if the array created recently and skip test if it is
+ created=$(mdadm --detail /dev/$array 2>/dev/null |
+ sed -n 's/.*Creation Time *://p' )
+ if [ -n "$created" ]; then
+ created=$(date +%s -d "$created" 2>/dev/null)
+ fi
+ if [ -n "$created" ]; then
+ now=$(date +%s)
+ if [ "$created" -lt "$now" -a \
+ "$created" -gt "$(($now - 14 * 24 * 60 * 60))" ]; then
+ [ $quiet -lt 2 ] && echo "$PROGNAME: I: array $array created recently, skipping..." >&2
+ continue
+ fi
+ fi
+
+ # queue request for the array. The kernel will make sure that these requests
+ # are properly queued so as to not kill one of the array.
+ echo $action > $MDBASE/sync_action
+ [ $quiet -lt 1 ] && echo "$PROGNAME: I: check queued for array $array." >&2
+
+ case "$ionice" in
+ idle) ioarg='-c3'; renice=15;;
+ low) ioarg='-c2 -n7'; renice=5;;
+ high) ioarg='-c2 -n0'; renice=0;;
+ realtime) ioarg='-c1 -n4'; renice=-5;;
+ *) break;;
+ esac
+
+ resync_pid= wait=5
+ while [ $wait -gt 0 ]; do
+ wait=$((wait - 1))
+ resync_pid=$(ps -ef | awk -v dev=$array 'BEGIN { pattern = "^\\[" dev "_resync]$" } $8 ~ pattern { print $2 }')
+ if [ -n "$resync_pid" ]; then
+ [ $quiet -lt 1 ] && echo "$PROGNAME: I: selecting $ionice I/O scheduling class and $renice niceness for resync of $array." >&2
+ ionice -p "$resync_pid" $ioarg 2>/dev/null || :
+ renice -n $renice -p "$resync_pid" 1>/dev/null 2>&1 || :
+ break
+ fi
+ sleep 1
+ done
+ ;;
+ esac
+
+done
+
+exit 0
diff --git a/debian/compat b/debian/compat
new file mode 100644
index 0000000..1e8b314
--- /dev/null
+++ b/debian/compat
@@ -0,0 +1 @@
+6
diff --git a/debian/control b/debian/control
new file mode 100644
index 0000000..96491c6
--- /dev/null
+++ b/debian/control
@@ -0,0 +1,32 @@
+Source: mdadm
+Section: admin
+Priority: optional
+Maintainer: Debian mdadm maintainers <pkg-mdadm-devel@lists.alioth.debian.org>
+Uploaders: Dimitri John Ledkov <xnox@debian.org>
+Build-Depends: debhelper (>= 6.0.7~), po-debconf, groff-base
+Standards-Version: 3.9.7
+Vcs-Git: git://anonscm.debian.org/pkg-mdadm/mdadm.git
+Vcs-Browser: https://anonscm.debian.org/cgit/pkg-mdadm/mdadm.git
+Homepage: http://neil.brown.name/blog/mdadm
+
+Package: mdadm
+Architecture: linux-any
+Depends: ${shlibs:Depends}, udev, ${misc:Depends}, lsb-base, debconf
+Recommends: default-mta | mail-transport-agent, kmod | module-init-tools
+Description: tool to administer Linux MD arrays (software RAID)
+ The mdadm utility can be used to create, manage, and monitor MD
+ (multi-disk) arrays for software RAID or multipath I/O.
+ .
+ This package automatically configures mdadm to assemble arrays during the
+ system startup process. If not needed, this functionality can be disabled.
+
+Package: mdadm-udeb
+Section: debian-installer
+XC-Package-Type: udeb
+Architecture: linux-any
+Depends: ${shlibs:Depends}
+Description: tool to administer Linux MD arrays (software RAID)
+ The mdadm utility can be used to create, manage, and monitor MD
+ (multi-disk) arrays for software RAID or multipath I/O.
+ .
+ This is a minimal package used by the debian-installer.
diff --git a/debian/copyright b/debian/copyright
new file mode 100644
index 0000000..39f1435
--- /dev/null
+++ b/debian/copyright
@@ -0,0 +1,21 @@
+This package was debianized by Mario Jou/3en <joussen@debian.org> on
+Wed, 26 Dec 2001 17:07:09 +0100.
+Martin F. Krafft <madduck@debian.org> took over on
+Tue, 16 May 2006 13:21:06 -0500
+
+The mdadm source was downloaded from
+ http://www.kernel.org/pub/linux/utils/raid/mdadm/
+
+Upstream Author: Neil Brown <neilb@suse.de>
+
+Copyright © 2001-2006 Neil Brown <neilb@suse.de>
+Packaging copyright © 2001-2005 Mario Jou/3en <joussen@debian.org>
+Packaging copyright © 2005-2008 Martin F. Krafft <madduck@debian.org>
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+On Debian GNU/Linux systems, the complete text of the GNU General
+Public License can be found in '/usr/share/common-licenses/GPL-2'.
diff --git a/debian/initramfs/hook b/debian/initramfs/hook
new file mode 100644
index 0000000..ae7d4d1
--- /dev/null
+++ b/debian/initramfs/hook
@@ -0,0 +1,110 @@
+#!/bin/sh
+#
+# Copyright © 2006-2008 Martin F. Krafft <madduck@debian.org>,
+# 2012 Michael Tokarev <mjt@tls.msk.ru>
+# based on the scripts in the initramfs-tools package.
+# released under the terms of the Artistic Licence.
+#
+set -eu
+
+PREREQ="udev"
+prereqs()
+{
+ echo "$PREREQ"
+}
+
+case "${1:-}" in
+ prereqs)
+ prereqs
+ exit 0
+ ;;
+esac
+
+is_true()
+{
+ case "${1:-}" in
+ [Yy]es|[Yy]|1|[Tt]rue|[Tt]) return 0;;
+ *) return 1;;
+ esac
+}
+
+write()
+{
+ local PREFIX; PREFIX=$1; shift
+ echo "${PREFIX}: mdadm: $@" >&2
+}
+
+info()
+{
+ is_true ${VERBOSE:-false} && write I "$@" || :
+}
+
+warn()
+{
+ write W "$@"
+}
+
+. /usr/share/initramfs-tools/hook-functions
+
+# copy the binary as early as possible
+copy_exec /sbin/mdadm /sbin
+copy_exec /sbin/mdmon /sbin
+
+# Copy udev rules, which udev no longer does
+for UDEV_RULE in 63-md-raid-arrays.rules 64-md-raid-assembly.rules; do
+for rules_folder in /lib/udev/rules.d /etc/udev/rules.d; do
+ if [ -f $rules_folder/$UDEV_RULE ]; then
+ mkdir -p $DESTDIR$rules_folder
+ cp $rules_folder/$UDEV_RULE $DESTDIR$rules_folder/$UDEV_RULE
+ fi
+done
+done
+
+# load raid modules in the initramfs
+for module in linear multipath raid0 raid1 raid456 raid5 raid6 raid10; do
+ force_load $module
+done
+
+# copy the mdadm configuration
+CONFIG=/etc/mdadm/mdadm.conf
+ALTCONFIG=/etc/mdadm.conf
+DESTMDADMCONF=$DESTDIR/etc/mdadm/mdadm.conf
+[ ! -f $CONFIG ] && [ -f $ALTCONFIG ] && CONFIG=$ALTCONFIG || :
+mkdir -p ${DESTDIR}/etc/mdadm
+
+if [ ! -f $CONFIG ]; then
+ # there is no configuration file, so let's create one
+ if /usr/share/mdadm/mkconf generate $CONFIG; then
+ # all is well
+ cp -p $CONFIG $DESTMDADMCONF
+ info "auto-generated the mdadm.conf configuration file."
+ else
+ # we failed to auto-generate, so let the emergency procedure take over
+ warn "failed to auto-generate the mdadm.conf file."
+ warn "please read /usr/share/doc/mdadm/README.upgrading-2.5.3.gz ."
+ fi
+else
+ cp -p $CONFIG ${DESTDIR}/etc/mdadm
+ sed -i '/^CREATE/s/^/#/' $DESTMDADMCONF
+ if ! grep -q '^ARRAY' $CONFIG; then
+ tmpfile="${DESTMDADMCONF}.tmp"
+ warn "$CONFIG defines no arrays."
+ if /usr/share/mdadm/mkconf > $tmpfile; then
+ cp -p $tmpfile $DESTMDADMCONF
+ else
+ warn "failed to auto-generate temporary mdadm.conf file."
+ fi
+ else
+ # make sure the configuration file knows about all running devices
+ /sbin/mdadm --detail --scan | while read array device params; do
+ uuid=${params#*UUID=}; uuid=${uuid%% *}
+ if ! grep -q "UUID=$uuid" $DESTMDADMCONF; then
+ warn "the array $device with UUID $uuid"
+ warn "is currently active, but it is not listed in mdadm.conf. if"
+ warn "it is needed for boot, then YOUR SYSTEM IS NOW UNBOOTABLE!"
+ warn "please inspect the output of /usr/share/mdadm/mkconf, compare"
+ warn "it to $CONFIG, and make the necessary changes."
+ fi
+ done
+ fi
+fi
diff --git a/debian/initramfs/script.local-block b/debian/initramfs/script.local-block
new file mode 100644
index 0000000..e9b47c3
--- /dev/null
+++ b/debian/initramfs/script.local-block
@@ -0,0 +1,44 @@
+#!/bin/sh
+
+PREREQ="multipath"
+
+prereqs()
+{
+ echo "$PREREQ"
+}
+
+case $1 in
+# get pre-requisites
+prereqs)
+ prereqs
+ exit 0
+ ;;
+esac
+
+# Poor man's mdadm-last-resort@.timer
+# That kicks in 2/3rds into the ROOTDELAY
+
+if [ ! -f /run/count.mdadm.initrd ]
+then
+ COUNT=0
+else
+ COUNT=$(cat /run/count.mdadm.initrd)
+fi
+COUNT=$((COUNT + 1))
+
+echo $COUNT > /run/count.mdadm.initrd
+
+MAX=30
+if [ ${ROOTDELAY:-0} -gt $MAX ]; then
+ MAX=$ROOTDELAY
+fi
+MAX=$((MAX*2/3))
+
+if [ "$COUNT" = "$MAX" ]
+then
+ # Poor man's mdadm-last-resort@.service
+ mdadm -q --run /dev/md?*
+ rm -f /run/count.mdadm.initrd
+fi
+
+exit 0
diff --git a/debian/initramfs/script.local-bottom b/debian/initramfs/script.local-bottom
new file mode 100644
index 0000000..eda3b17
--- /dev/null
+++ b/debian/initramfs/script.local-bottom
@@ -0,0 +1,3 @@
+#!/bin/sh
+rm -f /run/count.mdadm.initrd
+exit 0 \ No newline at end of file
diff --git a/debian/mdadm-waitidle b/debian/mdadm-waitidle
new file mode 100644
index 0000000..920272c
--- /dev/null
+++ b/debian/mdadm-waitidle
@@ -0,0 +1,56 @@
+#!/bin/sh
+# This script is not used when systemd is running
+### BEGIN INIT INFO
+# Provides: mdadm-waitidle
+# Required-Start:
+# Required-Stop:
+# Should-Stop: halt reboot kexec
+# X-Stop-After: umountroot
+# Default-Start:
+# Default-Stop: 0 6
+# Short-Description: Wait for MD arrays to become idle
+# Description: Waits until all MD arrays are in idle and synced state
+# before halt/reboot.
+### END INIT INFO
+#
+set -eu
+
+MDADM=/sbin/mdadm
+test -x "$MDADM" || exit 0
+test -f /proc/mdstat || exit 0
+
+. /lib/lsb/init-functions
+
+case "${1:-}" in
+
+ start|restart|force-reload)
+ # nothing, the only reason the script is here is to stop arrays
+ ;;
+
+ stop)
+ sync
+ wait=
+ for md in /sys/block/md*/md ; do
+ [ -d "$md" ] || continue
+ [ "$wait" ] || log_action_begin_msg "Waiting for MD arrays to become idle"
+ wait=y
+ [ -w $md/sync_action ] && echo idle > $md/sync_action
+ done
+ if [ "$wait" ]; then
+ # mdadm --wait-clean has a short internal timeout
+ if $MDADM --wait-clean --scan; then
+ log_action_end_msg 0
+ else
+ log_action_end_msg 1
+ sleep 1
+ fi
+ fi
+ ;;
+
+ *)
+ echo "Usage: ${0:-} stop" >&2
+ exit 1;;
+
+esac
+
+exit 0
diff --git a/debian/mdadm.config b/debian/mdadm.config
new file mode 100644
index 0000000..b9d4e24
--- /dev/null
+++ b/debian/mdadm.config
@@ -0,0 +1,43 @@
+#!/bin/sh
+# Copyright © 2001-2004 Mario Jou/3en <joussen@debian.org>
+# Copyright © martin f. krafft <madduck@debian.org>
+# Distributable under the terms of the GNU GPL version 2.
+#
+. /usr/share/debconf/confmodule
+# see #369953 for ordering
+set -eu
+
+CONFIG=/etc/mdadm/mdadm.conf
+ALTCONFIG=/etc/mdadm.conf
+[ ! -f $CONFIG ] && [ -f $ALTCONFIG ] && CONFIG=$ALTCONFIG
+
+DEBIANCONFIG=/etc/default/mdadm
+
+if [ -s $DEBIANCONFIG ] ; then
+ AUTOCHECK=true
+ START_DAEMON=true
+ MAILADDR=root
+
+ [ -f $DEBIANCONFIG ] && . $DEBIANCONFIG
+ if [ -f $CONFIG ]; then
+ MAILADDR=$(sed -rne 's/^MAILADDR[[:space:]]*([^[:space:]]+).*/\1/p' $CONFIG)
+ fi
+
+ [ -n "$AUTOCHECK" ] && db_set mdadm/autocheck "$AUTOCHECK"
+ [ -n "$START_DAEMON" ] && db_set mdadm/start_daemon "$START_DAEMON"
+ [ -n "$MAILADDR" ] && db_set mdadm/mail_to "$MAILADDR"
+fi
+
+db_capb escape
+
+db_input medium mdadm/autocheck || :
+db_go
+
+db_input medium mdadm/start_daemon || :
+db_go
+
+db_get mdadm/start_daemon || :
+if [ "$RET" = true ]; then
+ db_input medium mdadm/mail_to || :
+ db_go
+fi
diff --git a/debian/mdadm.cron.d b/debian/mdadm.cron.d
new file mode 100644
index 0000000..309d180
--- /dev/null
+++ b/debian/mdadm.cron.d
@@ -0,0 +1,12 @@
+#
+# cron.d/mdadm -- schedules periodic redundancy checks of MD devices
+#
+# Copyright © martin f. krafft <madduck@madduck.net>
+# distributed under the terms of the Artistic Licence 2.0
+#
+
+# By default, run at 00:57 on every Sunday, but do nothing unless the day of
+# the month is less than or equal to 7. Thus, only run on the first Sunday of
+# each month. crontab(5) sucks, unfortunately, in this regard; therefore this
+# hack (see #380425).
+57 0 * * 0 root if [ -x /usr/share/mdadm/checkarray ] && [ $(date +\%d) -le 7 ]; then /usr/share/mdadm/checkarray --cron --all --idle --quiet; fi
diff --git a/debian/mdadm.cron.daily b/debian/mdadm.cron.daily
new file mode 100644
index 0000000..d5ac1ae
--- /dev/null
+++ b/debian/mdadm.cron.daily
@@ -0,0 +1,18 @@
+#!/bin/sh
+#
+# cron.daily/mdadm -- daily check that MD devices are functional
+#
+# Copyright © 2008 Paul Slootman <paul@debian.org>
+# distributed under the terms of the Artistic Licence 2.0
+
+# As recommended by the manpage, run
+# mdadm --monitor --scan --oneshot
+# every day to ensure that any degraded MD devices don't go unnoticed.
+# Email will go to the address specified in /etc/mdadm/mdadm.conf .
+#
+set -eu
+
+MDADM=/sbin/mdadm
+[ -x $MDADM ] || exit 0 # package may be removed but not purged
+
+exec $MDADM --monitor --scan --oneshot
diff --git a/debian/mdadm.doc-base.faq b/debian/mdadm.doc-base.faq
new file mode 100644
index 0000000..3fff450
--- /dev/null
+++ b/debian/mdadm.doc-base.faq
@@ -0,0 +1,9 @@
+Document: mdadm-faq
+Title: mdadm Debian FAQ
+Author: martin f. krafft
+Abstract: The document answers frequently asked questions about Debian's mdadm
+Section: System/Administration
+
+Format: text
+Index: /usr/share/doc/mdadm/FAQ.gz
+Files: /usr/share/doc/mdadm/FAQ.gz
diff --git a/debian/mdadm.doc-base.recipes b/debian/mdadm.doc-base.recipes
new file mode 100644
index 0000000..d106968
--- /dev/null
+++ b/debian/mdadm.doc-base.recipes
@@ -0,0 +1,9 @@
+Document: mdadm-readme-recipes
+Title: mdadm Debian recipes
+Author: David Pashley
+Abstract: The document contains some common recipes for mdadm usage on Debian
+Section: System/Administration
+
+Format: text
+Index: /usr/share/doc/mdadm/README.recipes.gz
+Files: /usr/share/doc/mdadm/README.recipes.gz
diff --git a/debian/mdadm.docs b/debian/mdadm.docs
new file mode 100644
index 0000000..830665f
--- /dev/null
+++ b/debian/mdadm.docs
@@ -0,0 +1,7 @@
+TODO
+debian/README.recipes
+debian/README.checkarray
+debian/FAQ
+ANNOUNCE-*
+external-reshape-design.txt
+mdmon-design.txt
diff --git a/debian/mdadm.init b/debian/mdadm.init
new file mode 100644
index 0000000..0a9004f
--- /dev/null
+++ b/debian/mdadm.init
@@ -0,0 +1,100 @@
+#!/bin/sh
+#
+# Start the MD monitor daemon for all active MD arrays if desired.
+# This script is not used under systemd.
+#
+# Copyright © 2001-2005 Mario Jou/3en <joussen@debian.org>
+# Copyright © 2005-2009 Martin F. Krafft <madduck@debian.org>
+# Distributable under the terms of the GNU GPL version 2.
+#
+### BEGIN INIT INFO
+# Provides: mdadm
+# Required-Start: $local_fs $syslog
+# Required-Stop: $local_fs $syslog sendsigs
+# Default-Start: 2 3 4 5
+# Default-Stop: 0 1 6
+# Short-Description: MD monitoring daemon
+# Description: mdadm provides a monitor mode, in which it will scan for
+# problems with the MD devices. If a problem is found, the
+# administrator is alerted via email, or a custom script is
+# run.
+### END INIT INFO
+#
+set -eu
+
+MDADM=/sbin/mdadm
+MDMON=/sbin/mdmon
+RUNDIR=/run/mdadm
+PIDFILE=$RUNDIR/monitor.pid
+DEBIANCONFIG=/etc/default/mdadm
+
+test -x "$MDADM" || exit 0
+
+test -f /proc/mdstat || exit 0
+
+START_DAEMON=true
+test -f $DEBIANCONFIG && . $DEBIANCONFIG
+
+. /lib/lsb/init-functions
+
+is_true()
+{
+ case "${1:-}" in
+ [Yy]es|[Yy]|1|[Tt]|[Tt]rue) return 0;;
+ *) return 1;
+ esac
+}
+
+case "${1:-}" in
+ start)
+ if [ -x /usr/bin/systemd-detect-virt ] && /usr/bin/systemd-detect-virt --quiet --container; then
+ log_daemon_msg "Not starting MD monitoring service in container"
+ log_end_msg 0
+ exit 0
+ fi
+
+ if is_true $START_DAEMON; then
+ log_daemon_msg "Starting MD monitoring service" "mdadm --monitor"
+ mkdir -p $RUNDIR
+ set +e
+ start-stop-daemon -S -p $PIDFILE -x $MDADM -- \
+ --monitor --pid-file $PIDFILE --daemonise --scan ${DAEMON_OPTIONS:-}
+ log_end_msg $?
+ set -e
+ fi
+ if [ "$(echo $RUNDIR/md[0-9]*.pid)" != "$RUNDIR/md[0-9]*.pid" ]; then
+ log_daemon_msg "Restarting MD external metadata monitor" "mdmon --takeover --all"
+ set +e
+ $MDMON --takeover --all
+ log_end_msg $?
+ set -e
+ fi
+ ;;
+ stop)
+ if [ -f $PIDFILE ] ; then
+ log_daemon_msg "Stopping MD monitoring service" "mdadm --monitor"
+ set +e
+ start-stop-daemon -K -p $PIDFILE -x $MDADM
+ rm -f $PIDFILE
+ log_end_msg $?
+ set -e
+ fi
+ for file in $RUNDIR/md[0-9]*.pid ; do
+ [ ! -f "$file" ] && continue
+ ln -sf $file /run/sendsigs.omit.d/mdmon-${file##*/}
+ done
+ ;;
+ status)
+ status_of_proc -p $PIDFILE "$MDADM" "mdadm" && exit 0 || exit $?
+ ;;
+ restart|reload|force-reload)
+ ${0:-} stop
+ ${0:-} start
+ ;;
+ *)
+ echo "Usage: ${0:-} {start|stop|status|restart|reload|force-reload}" >&2
+ exit 1
+ ;;
+esac
+
+exit 0
diff --git a/debian/mdadm.logcheck.ignore.server b/debian/mdadm.logcheck.ignore.server
new file mode 100644
index 0000000..051c473
--- /dev/null
+++ b/debian/mdadm.logcheck.ignore.server
@@ -0,0 +1,23 @@
+^\w{3} [ :0-9]{11} [._[:alnum:]-]+ kernel:( \[ *[[:digit:]]+\.[[:digit:]]+\])? md: md driver [.[:digit:]]+ MAX_MD_DEVS=[[:digit:]]+, MD_SB_DISKS=[[:digit:]]+$
+^\w{3} [ :0-9]{11} [._[:alnum:]-]+ kernel:( \[ *[[:digit:]]+\.[[:digit:]]+\])? md: bitmap version [.[:digit:]]+$
+^\w{3} [ :0-9]{11} [._[:alnum:]-]+ kernel:( \[ *[[:digit:]]+\.[[:digit:]]+\])? md: md[[:digit:]]+ stopped\.$
+^\w{3} [ :0-9]{11} [._[:alnum:]-]+ kernel:( \[ *[[:digit:]]+\.[[:digit:]]+\])? md: md[[:digit:]]+ still in use\.$
+^\w{3} [ :0-9]{11} [._[:alnum:]-]+ kernel:( \[ *[[:digit:]]+\.[[:digit:]]+\])? md: cannot remove active disk [[:alnum:]]+ from md[[:digit:]]+ \.\.\. ?$
+^\w{3} [ :0-9]{11} [._[:alnum:]-]+ kernel:( \[ *[[:digit:]]+\.[[:digit:]]+\])? md: raid([01456]|456|10) personality registered for level ([01456]|10)$
+^\w{3} [ :0-9]{11} [._[:alnum:]-]+ kernel:( \[ *[[:digit:]]+\.[[:digit:]]+\])? md: (data-check|requested-resync|resync|reshape|recovery) of RAID array md[[:digit:]]+$
+^\w{3} [ :0-9]{11} [._[:alnum:]-]+ kernel:( \[ *[[:digit:]]+\.[[:digit:]]+\])? md: resuming (data-check|requested-resync|resync|reshape|recovery) of md[[:digit:]]+ from checkpoint\.$
+^\w{3} [ :0-9]{11} [._[:alnum:]-]+ kernel:( \[ *[[:digit:]]+\.[[:digit:]]+\])? md: md[[:digit:]]+: (data-check|requested-resync|resync|reshape|recovery) done\.$
+^\w{3} [ :0-9]{11} [._[:alnum:]-]+ kernel:( \[ *[[:digit:]]+\.[[:digit:]]+\])? md: minimum _guaranteed_ ?speed: [[:digit:]]+ KB/sec/disk\.$
+^\w{3} [ :0-9]{11} [._[:alnum:]-]+ kernel:( \[ *[[:digit:]]+\.[[:digit:]]+\])? md: using maximum available idle IO bandwidth \(but not more than [[:digit:]]+ KB/sec\) for (data-check|requested-resync|resync|reshape|recovery)\.$
+^\w{3} [ :0-9]{11} [._[:alnum:]-]+ kernel:( \[ *[[:digit:]]+\.[[:digit:]]+\])? md: delaying (data-check|requested-resync|resync|reshape|recovery) of md[[:digit:]]+ until md[[:digit:]]+ has finished \(they share one or more physical units\)$
+^\w{3} [ :0-9]{11} [._[:alnum:]-]+ kernel:( \[ *[[:digit:]]+\.[[:digit:]]+\])? md: using [[:digit:]]+k window, over a total of [[:digit:]]+( blocks|k)\.$
+^\w{3} [ :0-9]{11} [._[:alnum:]-]+ kernel:( \[ *[[:digit:]]+\.[[:digit:]]+\])? md: (un)?bind<[^>]+>$
+^\w{3} [ :0-9]{11} [._[:alnum:]-]+ kernel:( \[ *[[:digit:]]+\.[[:digit:]]+\])? md: export_rdev\([^)]+\)$
+^\w{3} [ :0-9]{11} [._[:alnum:]-]+ kernel:( \[ *[[:digit:]]+\.[[:digit:]]+\])? raid[[:digit:]]+: raid set [[:alnum:]]+ active with [[:digit:]]+ out of [[:digit:]]+ mirrors$
+^\w{3} [ :0-9]{11} [._[:alnum:]-]+ kernel:( \[ *[[:digit:]]+\.[[:digit:]]+\])? RAID([01456]|10) conf printout:$
+^\w{3} [ :0-9]{11} [._[:alnum:]-]+ kernel:( \[ *[[:digit:]]+\.[[:digit:]]+\])?[[:space:]]+---( [wrf]d:[[:digit:]]+){2,3}$
+^\w{3} [ :0-9]{11} [._[:alnum:]-]+ kernel:( \[ *[[:digit:]]+\.[[:digit:]]+\])?[[:space:]]+disk [[:digit:]]+,( wo:[[:digit:]]+,)? o:[[:digit:]]+, dev:[[:alnum:]]+$
+^\w{3} [ :0-9]{11} [._[:alnum:]-]+ mdadm(\[[[:digit:]]+\])?: Rebuild((Start|Finish)ed|[[:digit:]]+) event detected on md device /dev/[-_./[:alnum:]]+$
+^\w{3} [ :0-9]{11} [._[:alnum:]-]+ mdadm(\[[[:digit:]]+\])?: SpareActive event detected on md device /dev/[-_./[:alnum:]]+, component device /dev/[-_./[:alnum:]]+$
+^\w{3} [ :0-9]{11} [._[:alnum:]-]+ mdadm(\[[[:digit:]]+\])?: (New|Degraded)Array event detected on md device /dev/[-_./[:alnum:]]+$
+^\w{3} [ :0-9]{11} [._[:alnum:]-]+ mdadm(\[[[:digit:]]+\])?: DeviceDisappeared event detected on md device /dev/[-_./[:alnum:]]+$
diff --git a/debian/mdadm.logcheck.violations b/debian/mdadm.logcheck.violations
new file mode 100644
index 0000000..ea8cce7
--- /dev/null
+++ b/debian/mdadm.logcheck.violations
@@ -0,0 +1,3 @@
+^\w{3} [ :0-9]{11} [._[:alnum:]-]+ kernel:( \[ *[[:digit:]]+\.[[:digit:]]+\])? md: kicking non-fresh [[:alnum:]]+ from array!$
+^\w{3} [ :0-9]{11} [._[:alnum:]-]+ kernel:( \[ *[[:digit:]]+\.[[:digit:]]+\])? raid[[:digit:]]+: Disk failure on [[:alnum:]]+, disabling device\.$
+^\w{3} [ :0-9]{11} [._[:alnum:]-]+ kernel:( \[ *[[:digit:]]+\.[[:digit:]]+\])?[[:space:]]+Operation continuing on [[:digit:]]+ devices?$
diff --git a/debian/mdadm.maintscript b/debian/mdadm.maintscript
new file mode 100644
index 0000000..1729059
--- /dev/null
+++ b/debian/mdadm.maintscript
@@ -0,0 +1 @@
+rm_conffile /etc/init.d/mdadm-raid 3.4-2~
diff --git a/debian/mdadm.modules b/debian/mdadm.modules
new file mode 100644
index 0000000..5ad1249
--- /dev/null
+++ b/debian/mdadm.modules
@@ -0,0 +1,8 @@
+# mdadm module configuration file
+# set start_ro=1 to make newly assembled arrays read-only initially,
+# to prevent metadata writes. This is needed in order to allow
+# resume-from-disk to work - new boot should not perform writes
+# because it will be done behind the back of the system being
+# resumed. See http://bugs.debian.org/415441 for details.
+
+options md_mod start_ro=1
diff --git a/debian/mdadm.postinst b/debian/mdadm.postinst
new file mode 100644
index 0000000..fbe1f36
--- /dev/null
+++ b/debian/mdadm.postinst
@@ -0,0 +1,107 @@
+#!/bin/sh
+# Copyright © 2001-2005 Mario Jou/3en <joussen@debian.org>
+# Copyright © 2005-2008 Martin F. Krafft <madduck@debian.org>
+# Distributable under the terms of the GNU GPL version 2.
+#
+set -e
+
+. /usr/share/debconf/confmodule
+
+case "${1:-}" in
+ configure|reconfigure)
+
+ if [ ! -f /proc/mdstat ] && [ -x $(command -v modprobe 2>/dev/null) ]; then
+ modprobe md >/dev/null 2>&1 || :
+ fi
+ if [ ! -f /proc/mdstat ]; then
+ echo 'W: mdadm: failed to load MD subsystem.' >&2
+ fi
+
+ DEBIANCONFIG=/etc/default/mdadm
+ CONFIG=/etc/mdadm/mdadm.conf
+ ALTCONFIG=/etc/mdadm.conf
+ MDADM=/sbin/mdadm
+
+ # load current settings, most of which will be overwritten.
+ [ -f $DEBIANCONFIG ] && . $DEBIANCONFIG
+
+ db_get mdadm/mail_to
+ MAILADDR="${RET:-root}"
+
+ [ ! -f $CONFIG ] && [ -f $ALTCONFIG ] && CONFIG=$ALTCONFIG
+ if [ ! -f $CONFIG ]; then
+ echo -n 'Generating mdadm.conf... ' >&2
+ # pass the MAILADDR variable into the script
+ MDADM_MAILADDR__="$MAILADDR"; export MDADM_MAILADDR__
+ if /usr/share/mdadm/mkconf generate $CONFIG 2>/dev/null; then
+ echo done. >&2
+ else
+ echo "done (failed to scan arrays; /proc probably not mounted)." >&2
+ fi
+ fi
+
+ if [ -w $CONFIG ] && [ -z "${MDADM_MAILADDR__:-}" ]; then
+ # if the configuration is writeable but has not been written just
+ # before, then edit it to reflect the MAILADDR preference
+ if grep -q '^MAILADDR' $CONFIG; then
+ sed -i -e "s/^MAILADDR.*/MAILADDR $MAILADDR/" $CONFIG
+ else
+ echo "MAILADDR $MAILADDR" >> $CONFIG
+ fi
+ fi
+ unset MDADM_MAILADDR__
+
+ db_get mdadm/autocheck
+ AUTOCHECK="${RET:-true}"
+ db_get mdadm/start_daemon
+ START_DAEMON="${RET:-true}"
+ #db_get mdadm/daemon_options
+ [ -n "${DAEMON_OPTIONS:-}" ] || DAEMON_OPTIONS='--syslog'
+
+ cat <<_eof > $DEBIANCONFIG
+# mdadm Debian configuration
+#
+# You can run 'dpkg-reconfigure mdadm' to modify the values in this file, if
+# you want. You can also change the values here and changes will be preserved.
+# Do note that only the values are preserved; the rest of the file is
+# rewritten.
+#
+
+# AUTOCHECK:
+# should mdadm run periodic redundancy checks over your arrays? See
+# /etc/cron.d/mdadm.
+AUTOCHECK=$AUTOCHECK
+
+# START_DAEMON:
+# should mdadm start the MD monitoring daemon during boot?
+START_DAEMON=$START_DAEMON
+
+# DAEMON_OPTIONS:
+# additional options to pass to the daemon.
+DAEMON_OPTIONS="$DAEMON_OPTIONS"
+
+# VERBOSE:
+# if this variable is set to true, mdadm will be a little more verbose e.g.
+# when creating the initramfs.
+VERBOSE=${VERBOSE:-false}
+_eof
+
+ db_stop
+
+ # Remove old init script
+ update-rc.d mdadm-raid remove
+
+ command -v update-initramfs >/dev/null 2>&1 && update-initramfs -u
+
+ if dpkg --compare-versions "$2" le 3.3.2-3; then
+ rm -f /var/lib/mdadm/CONF-UNCHECKED /var/lib/mdadm/mdadm.conf-generated
+ if [ -d /var/lib/mdadm ]; then
+ rmdir --ignore-fail-on-non-empty /var/lib/mdadm
+ fi
+ fi
+ ;;
+esac
+
+[ -d /run/systemd/system ] && systemctl --system daemon-reload >/dev/null || :
+
+#DEBHELPER#
diff --git a/debian/mdadm.postrm b/debian/mdadm.postrm
new file mode 100644
index 0000000..eaa62ad
--- /dev/null
+++ b/debian/mdadm.postrm
@@ -0,0 +1,25 @@
+#! /bin/sh
+# Copyright © 2001,2002 Mario Jou/3en <joussen@debian.org>
+# Copyright © 2006-2008 Martin F. Krafft <madduck@debian.org>
+# Distributable under the terms of the GNU GPL version 2.
+#
+set -e
+
+case "${1:-}" in
+ remove)
+ if command -v update-initramfs >/dev/null 2>&1; then
+ echo "W: mdadm: I'll update the initramfs, but if you need MD to boot" >&2
+ echo "W: mdadm: with initramfs, your system may be left unbootable!" >&2
+ update-initramfs -u
+ fi
+ ;;
+
+ purge)
+ rm -f /etc/default/mdadm /etc/mdadm.conf /etc/mdadm/mdadm.conf
+ ;;
+
+esac
+
+[ -d /run/systemd/system ] && systemctl --system daemon-reload >/dev/null || :
+
+#DEBHELPER#
diff --git a/debian/mdadm.templates b/debian/mdadm.templates
new file mode 100644
index 0000000..5a797c5
--- /dev/null
+++ b/debian/mdadm.templates
@@ -0,0 +1,38 @@
+# These templates have been reviewed by the debian-l10n-english
+# team
+#
+# If modifications/additions/rewording are needed, please ask
+# debian-l10n-english@lists.debian.org for advice.
+#
+# Even minor modifications require translation updates and such
+# changes should be coordinated with translators and reviewers.
+
+Template: mdadm/autocheck
+Type: boolean
+Default: true
+_Description: Should mdadm run monthly redundancy checks of the MD arrays?
+ If the kernel supports it (versions greater than 2.6.14), mdadm can periodically check the
+ redundancy of MD arrays (RAIDs). This may be a resource-intensive process,
+ depending on the local setup, but it could help prevent rare cases of data loss.
+ Note that this is a read-only check unless errors are found; if errors are
+ found, mdadm will try to correct them, which may result in write access to
+ the media.
+ .
+ The default, if turned on, is to check on the first Sunday of every
+ month at 01:06.
+
+Template: mdadm/start_daemon
+Type: boolean
+Default: true
+_Description: Do you want to start the MD monitoring daemon?
+ The MD (RAID) monitor daemon sends email notifications in response to
+ important MD events (such as a disk failure).
+ .
+ Enabling this option is recommended.
+
+Template: mdadm/mail_to
+Type: string
+Default: root
+_Description: Recipient for email notifications:
+ Please enter the email address of the user who should get the email
+ notifications for important MD events.
diff --git a/debian/mkconf b/debian/mkconf
new file mode 100644
index 0000000..632c912
--- /dev/null
+++ b/debian/mkconf
@@ -0,0 +1,97 @@
+#!/bin/sh
+#
+# mkconf -- outputs valid mdadm.conf contents for the local system
+#
+# Copyright © martin f. krafft <madduck@madduck.net>
+# distributed under the terms of the Artistic Licence 2.0
+#
+set -eu
+
+ME="${0##*/}"
+MDADM=/sbin/mdadm
+DEBIANCONFIG=/etc/default/mdadm
+CONFIG=/etc/mdadm/mdadm.conf
+
+# initialise config variables in case the environment leaks
+MAILADDR= DEVICE= HOMEHOST= PROGRAM=
+
+test -r $DEBIANCONFIG && . $DEBIANCONFIG
+
+if [ -n "${MDADM_MAILADDR__:-}" ]; then
+ # honour MAILADDR from the environment (from postinst)
+ MAILADDR="$MDADM_MAILADDR__"
+else
+ # preserve existing MAILADDR
+ MAILADDR="$(sed -ne 's/^MAILADDR //p' $CONFIG 2>/dev/null)" || :
+fi
+
+# save existing values as defaults
+if [ -r "$CONFIG" ]; then
+ DEVICE="$(sed -ne 's/^DEVICE //p' $CONFIG)"
+ HOMEHOST="$(sed -ne 's/^HOMEHOST //p' $CONFIG)"
+ PROGRAM="$(sed -ne 's/^PROGRAM //p' $CONFIG)"
+fi
+
+[ "${1:-}" = force-generate ] && rm -f $CONFIG
+case "${1:-}" in
+ generate|force-generate)
+ [ -n "${2:-}" ] && CONFIG=$2
+ # only barf if the config file specifies anything else than MAILADDR
+ if egrep -qv '^(MAILADDR.*|#.*|)$' $CONFIG 2>/dev/null; then
+ echo "E: $ME: $CONFIG already exists." >&2
+ exit 255
+ fi
+
+ mkdir --parent ${CONFIG%/*}
+ exec >$CONFIG
+ ;;
+esac
+
+cat <<_eof
+# mdadm.conf
+#
+# Please refer to mdadm.conf(5) for information about this file.
+#
+
+# by default (built-in), scan all partitions (/proc/partitions) and all
+# containers for MD superblocks. alternatively, specify devices to scan, using
+# wildcards if desired.
+#DEVICE ${DEVICE:-partitions containers}
+
+# automatically tag new arrays as belonging to the local system
+HOMEHOST ${HOMEHOST:-<system>}
+
+# instruct the monitoring daemon where to send mail alerts
+MAILADDR ${MAILADDR:-root}
+
+_eof
+
+if [ -n "${PROGRAM:-}" ]; then
+ cat <<-_eof
+ # program to run when mdadm monitor detects potentially interesting events
+ PROGRAM ${PROGRAM}
+
+ _eof
+fi
+
+error=0
+if [ ! -r /proc/mdstat ]; then
+ echo W: $ME: MD subsystem is not loaded, thus I cannot scan for arrays. >&2
+ error=1
+elif [ ! -r /proc/partitions ]; then
+ echo W: $ME: /proc/partitions cannot be read, thus I cannot scan for arrays. >&2
+ error=2
+else
+ echo "# definitions of existing MD arrays"
+ if ! $MDADM --examine --scan --config=partitions; then
+ error=$(($? + 128))
+ echo W: $ME: failed to scan for partitions. >&2
+ echo "### WARNING: scan failed."
+ else
+ echo
+ fi
+fi
+
+echo "# This configuration was auto-generated on $(date -R) by mkconf"
+
+exit $error
diff --git a/debian/patches/debian-conffile-location.diff b/debian/patches/debian-conffile-location.diff
new file mode 100644
index 0000000..8acc607
--- /dev/null
+++ b/debian/patches/debian-conffile-location.diff
@@ -0,0 +1,115 @@
+From: martin f. krafft <madduck@debian.org>
+Subject: Set /etc/mdadm/mdadm.conf as primary config file location
+
+On Debian, the configuration file resides primarily in /etc/mdadm/mdadm.conf,
+/etc/mdadm.conf is only used as a backup.
+
+This is a Debian-specific patch.
+
+Forwarded: not-needed
+Reviewed-by: martin f. krafft <madduck@debian.org>
+
+---
+ Makefile | 4 ++--
+ ReadMe.c | 2 +-
+ mdadm.8.in | 14 ++++++--------
+ mdadm.conf.5 | 2 +-
+ mdassemble.8 | 2 +-
+ 5 files changed, 11 insertions(+), 13 deletions(-)
+
+--- a/Makefile
++++ b/Makefile
+@@ -61,8 +61,8 @@
+ PKG_CONFIG ?= pkg-config
+
+ SYSCONFDIR = /etc
+-CONFFILE = $(SYSCONFDIR)/mdadm.conf
+-CONFFILE2 = $(SYSCONFDIR)/mdadm/mdadm.conf
++CONFFILE = $(SYSCONFDIR)/mdadm/mdadm.conf
++CONFFILE2 = $(SYSCONFDIR)/mdadm.conf
+ MAILCMD =/usr/sbin/sendmail -t
+ CONFFILEFLAGS = -DCONFFILE=\"$(CONFFILE)\" -DCONFFILE2=\"$(CONFFILE2)\"
+ # Both MAP_DIR and MDMON_DIR should be somewhere that persists across the
+--- a/ReadMe.c
++++ b/ReadMe.c
+@@ -590,7 +590,7 @@
+ ;
+
+ char Help_config[] =
+-"The /etc/mdadm.conf config file:\n\n"
++"The /etc/mdadm/mdadm.conf config file:\n\n"
+ " The config file contains, apart from blank lines and comment lines that\n"
+ " start with a hash(#), array lines, device lines, and various\n"
+ " configuration lines.\n"
+--- a/mdadm.8.in
++++ b/mdadm.8.in
+@@ -264,13 +264,13 @@
+ .TP
+ .BR \-c ", " \-\-config=
+ Specify the config file or directory. Default is to use
+-.B /etc/mdadm.conf
++.B /etc/mdadm/mdadm.conf
+ and
+-.BR /etc/mdadm.conf.d ,
++.BR /etc/mdadm/mdadm.conf.d ,
+ or if those are missing then
+-.B /etc/mdadm/mdadm.conf
++.B /etc/mdadm.conf
+ and
+-.BR /etc/mdadm/mdadm.conf.d .
++.BR /etc/mdadm.conf.d .
+ If the config file given is
+ .B "partitions"
+ then nothing will be read, but
+@@ -1742,9 +1742,9 @@
+ or requested with (a possibly implicit)
+ .BR \-\-scan .
+ In the later case,
+-.B /etc/mdadm.conf
+-or
+ .B /etc/mdadm/mdadm.conf
++or
++.B /etc/mdadm.conf
+ is used.
+
+ If
+@@ -3003,7 +3003,7 @@
+ is given in Misc mode, and to monitor array reconstruction
+ on Monitor mode.
+
+-.SS /etc/mdadm.conf
++.SS /etc/mdadm/mdadm.conf (or /etc/mdadm.conf)
+
+ The config file lists which devices may be scanned to see if
+ they contain MD super block, and gives identifying information
+@@ -3011,7 +3011,7 @@
+ .BR mdadm.conf (5)
+ for more details.
+
+-.SS /etc/mdadm.conf.d
++.SS /etc/mdadm/mdadm.conf.d (or /etc/mdadm.conf.d)
+
+ A directory containing configuration files which are read in lexical
+ order.
+--- a/mdadm.conf.5
++++ b/mdadm.conf.5
+@@ -8,7 +8,7 @@
+ .SH NAME
+ mdadm.conf \- configuration for management of Software RAID with mdadm
+ .SH SYNOPSIS
+-/etc/mdadm.conf
++/etc/mdadm/mdadm.conf
+ .SH DESCRIPTION
+ .PP
+ .I mdadm
+--- a/mdassemble.8
++++ b/mdassemble.8
+@@ -40,7 +40,7 @@
+
+ .SH FILES
+
+-.SS /etc/mdadm.conf
++.SS /etc/mdadm/mdadm.conf
+
+ The config file lists which devices may be scanned to see if
+ they contain MD super block, and gives identifying information
diff --git a/debian/patches/debian-no-Werror.diff b/debian/patches/debian-no-Werror.diff
new file mode 100644
index 0000000..0a427f1
--- /dev/null
+++ b/debian/patches/debian-no-Werror.diff
@@ -0,0 +1,24 @@
+From: martin f. krafft <madduck@debian.org>
+Subject: Remove -Werror from compiler flags
+
+-Werror seems like a bad idea on released/packaged code because a toolchain
+update (introducing new warnings) could break the build. We'll let upstream
+use it to beautify the code, but remove it for out builds.
+
+Signed-off-by: martin f. krafft <madduck@debian.org>
+
+---
+ Makefile | 2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+--- a/Makefile
++++ b/Makefile
+@@ -43,7 +43,7 @@
+
+ CC = $(CROSS_COMPILE)gcc
+ CXFLAGS ?= -ggdb
+-CWFLAGS = -Wall -Werror -Wstrict-prototypes -Wextra -Wno-unused-parameter
++CWFLAGS = -Wall -Wstrict-prototypes -Wextra -Wno-unused-parameter
+ ifdef WARN_UNUSED
+ CWFLAGS += -Wp,-D_FORTIFY_SOURCE=2 -O3
+ endif
diff --git a/debian/patches/mdmonitor-service-simplify.diff b/debian/patches/mdmonitor-service-simplify.diff
new file mode 100644
index 0000000..ea706a6
--- /dev/null
+++ b/debian/patches/mdmonitor-service-simplify.diff
@@ -0,0 +1,20 @@
+Subject: simplify mdmonitor.service
+From: Michael Tokarev <mjt@tls.msk.ru>
+Date: Fri, 14 Nov 2014 19:18:05 +0300
+Bug-Debian: http://bugs.debian.org/764647
+Forwarded: no
+
+There isn't much for customization for mdadm --monitor.
+it'll just do what it's supposed to do, so just run it.
+
+--- a/systemd/mdmonitor.service
++++ b/systemd/mdmonitor.service
+@@ -10,7 +10,4 @@ Description=MD array monitor
+ DefaultDependencies=no
+
+ [Service]
+-Environment= MDADM_MONITOR_ARGS=--scan
+-EnvironmentFile=-/run/sysconfig/mdadm
+-ExecStartPre=-/usr/lib/systemd/scripts/mdadm_env.sh
+-ExecStart=BINDIR/mdadm --monitor $MDADM_MONITOR_ARGS
++ExecStart=BINDIR/mdadm --monitor --scan
diff --git a/debian/patches/readlink-path.patch b/debian/patches/readlink-path.patch
new file mode 100644
index 0000000..8654459
--- /dev/null
+++ b/debian/patches/readlink-path.patch
@@ -0,0 +1,15 @@
+From: Michael Tokarev <mjt@tls.msk.ru>
+Subject: readlink is in /bin not /usr/bin on debian
+Date: Fri, 14 Nov 2014 19:11:51 +0300
+Bug-Debian: http://bugs.debian.org/766416
+Forwarded: no
+
+This is a debian-specific change, upstream ships
+the rule to use /usr/bin/readlink while on debian
+it is /bin/readlink
+
+--- a/udev-md-raid-arrays.rules
++++ b/udev-md-raid-arrays.rules
+@@ -38 +38 @@ ENV{MD_LEVEL}=="raid[1-9]*", ENV{SYSTEMD_WANTS}+="mdmonitor.service"
+-ENV{MD_LEVEL}=="raid[1-9]*", ENV{MD_CONTAINER}=="?*", PROGRAM="/usr/bin/readlink $env{MD_CONTAINER}", ENV{MD_MON_THIS}="%c"
++ENV{MD_LEVEL}=="raid[1-9]*", ENV{MD_CONTAINER}=="?*", PROGRAM="/bin/readlink $env{MD_CONTAINER}", ENV{MD_MON_THIS}="%c"
diff --git a/debian/patches/series b/debian/patches/series
new file mode 100644
index 0000000..728fabf
--- /dev/null
+++ b/debian/patches/series
@@ -0,0 +1,5 @@
+debian-conffile-location.diff
+debian-no-Werror.diff
+sha1-includes.diff
+readlink-path.patch
+mdmonitor-service-simplify.diff
diff --git a/debian/patches/sha1-includes.diff b/debian/patches/sha1-includes.diff
new file mode 100644
index 0000000..0dfd7da
--- /dev/null
+++ b/debian/patches/sha1-includes.diff
@@ -0,0 +1,40 @@
+From: Michael Tokarev <mjt@tls.msk.ru>
+Subject: do not #include ansidecl.h from sha1.h, use system headers
+
+In 3.2.5 version of mdadm, new sha1 implementation has been included
+which tries to include ansidecl.h header which is internal to some
+other project. But this #include isn't really necessary, since this
+implementation does not actually use any defines from ansidecl.h. So
+just remove the #include, instead of adding a new external dependency.
+
+References: http://www.spinics.net/lists/raid/msg38859.html
+
+While at it, unconditionally include system headers like limits.h and
+stdint.h, since on a Linux system these headers are available, and
+these contains definitive information about real system types than
+any guesses.
+
+--- a/sha1.h
++++ b/sha1.h
+@@ -22,7 +22,7 @@
+
+ #include <stdio.h>
+
+-#if defined HAVE_LIMITS_H || _LIBC
++#if 1 /* defined HAVE_LIMITS_H || _LIBC */
+ # include <limits.h>
+ #endif
+
+@@ -33,9 +33,9 @@
+ the resulting executable. Locally running cross-compiled executables
+ is usually not possible. */
+
+-#ifdef _LIBC
+-# include <sys/types.h>
+-typedef u_int32_t sha1_uint32;
++#if 1 /* def _LIBC */
++# include <stdint.h>
++typedef uint32_t sha1_uint32;
+ typedef uintptr_t sha1_uintptr;
+ #else
+ # define INT_MAX_32_BITS 2147483647
diff --git a/debian/po/POTFILES.in b/debian/po/POTFILES.in
new file mode 100644
index 0000000..0492238
--- /dev/null
+++ b/debian/po/POTFILES.in
@@ -0,0 +1 @@
+[type: gettext/rfc822deb] mdadm.templates
diff --git a/debian/po/ca.po b/debian/po/ca.po
new file mode 100644
index 0000000..a58c3ff
--- /dev/null
+++ b/debian/po/ca.po
@@ -0,0 +1,184 @@
+# mdadm Catalan translation.
+# Copyright (C) 2004-2006 Software in the Public Interest
+# This file is distributed under the same license as the squid package.
+# Innocent De Marchi <tangram.peces@gmail.com>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: 3.1.4-1+8efb9d1\n"
+"Report-Msgid-Bugs-To: mdadm@packages.debian.org\n"
+"POT-Creation-Date: 2016-07-05 14:12+0200\n"
+"PO-Revision-Date: 2011-05-17 16:54+0100\n"
+"Last-Translator: Innocent De Marchi <tangram.peces@gmail.com>\n"
+"Language-Team: Catalan <debian-l10n-catalan@lists.debian.org>\n"
+"Language: ca\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Poedit-Language: Catalan\n"
+"X-Poedit-Country: SPAIN\n"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid "Should mdadm run monthly redundancy checks of the MD arrays?"
+msgstr ""
+"Voleu que «mdadm» executi comprovacions de redundància mensuals de les "
+"matrius MD?"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid ""
+"If the kernel supports it (versions greater than 2.6.14), mdadm can "
+"periodically check the redundancy of MD arrays (RAIDs). This may be a "
+"resource-intensive process, depending on the local setup, but it could help "
+"prevent rare cases of data loss. Note that this is a read-only check unless "
+"errors are found; if errors are found, mdadm will try to correct them, which "
+"may result in write access to the media."
+msgstr ""
+"Si el nucli ho accepta (versions superiors a la 2.6.14), «mdadm» pot fer "
+"comprovacions periòdiques de la redundància de les matrius MD (RAIDs). Pot "
+"ésser que aquest procés consumeixi molts recursos del sistema, depenent de "
+"la configuració, però pot ajudar a prevenir casos poc freqüents de pèrdua de "
+"dades. Teniu present que aquestes comprovacions es fan en mode lectura "
+"llevat que es detectin errors: si hi ha errors, «mdadm» els corregirà i per "
+"això, caldrà que tengui accés d'escriptura als mitjans físics. "
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid ""
+"The default, if turned on, is to check on the first Sunday of every month at "
+"01:06."
+msgstr ""
+"El valor predeterminat, si s'activa, es fer la comprovació el primer "
+"diumenge de cada mes a les 01:06 am."
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid "Do you want to start the MD monitoring daemon?"
+msgstr "Desitjau arrencar el dimoni monitor MD?"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid ""
+"The MD (RAID) monitor daemon sends email notifications in response to "
+"important MD events (such as a disk failure)."
+msgstr ""
+"El dimoni monitor de MD (RAID) envia notificacions per correu electrònic "
+"quan es produeixen esdeveniments importants en els dispositius MD (com un "
+"error de disc)."
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid "Enabling this option is recommended."
+msgstr "Es recomana l'activació d'aquesta opció."
+
+#. Type: string
+#. Description
+#: ../mdadm.templates:4001
+msgid "Recipient for email notifications:"
+msgstr "Destinatari de les notificacions de correu electrònic:"
+
+#. Type: string
+#. Description
+#: ../mdadm.templates:4001
+msgid ""
+"Please enter the email address of the user who should get the email "
+"notifications for important MD events."
+msgstr ""
+"Introduïu l'adreça de correu electrònic de l'usuari que ha de rebre les "
+"notificacions de correu electrònic per a esdeveniments MD rellevants."
+
+#~ msgid "MD arrays needed for the root file system:"
+#~ msgstr "Les matrius MD necessaris per al sistema de fitxers arrel:"
+
+#~ msgid ""
+#~ "Please enter 'all', 'none', or a space-separated list of devices such as "
+#~ "'md0 md1' or 'md/1 md/d0' (the leading '/dev/' can be omitted)."
+#~ msgstr ""
+#~ "Escriviu «all» (tots), «none» (cap) o una llista separada per espais dels "
+#~ "dispositius com «md0 md1» o «md/1 md/d0» (podeu ometre el «/dev/» "
+#~ "inicial)."
+
+#~ msgid "for internal use - only the long description is needed."
+#~ msgstr "per a ús intern, només és necessària la descripció llarga. "
+
+#~ msgid ""
+#~ "If the system's root file system is located on an MD array (RAID), it "
+#~ "needs to be started early during the boot sequence. If it is located on a "
+#~ "logical volume (LVM), which is on MD, all constituent arrays need to be "
+#~ "started."
+#~ msgstr ""
+#~ "Si el sistema de fitxers arrel del sistema està en un conjunt MD (RAID), "
+#~ "cal que s'iniciï al principi de la seqüència d'arrencada. Si està en un "
+#~ "volum lògic (LVM), que està definit sobre un MD, cal iniciar totes les "
+#~ "matrius que el constitueixen."
+
+#~ msgid ""
+#~ "If you know exactly which arrays are needed to bring up the root file "
+#~ "system, and you want to postpone starting all other arrays to a later "
+#~ "point in the boot sequence, enter the arrays to start here. "
+#~ "Alternatively, enter 'all' to simply start all available arrays."
+#~ msgstr ""
+#~ "Si sabeu exactament quines matrius són necessàries per arrencar el "
+#~ "sistema de fitxers arrel, i vol ajornar l'arrencada de la resta de "
+#~ "conjunts a un punt posterior de la seqüència d'arrencada, Introduïu aquí "
+#~ "els conjunts que voleu arrencar. També podeu seleccionar «all» per, "
+#~ "simplement, arrencar tots els disponibles."
+
+#~ msgid ""
+#~ "If you do not need or want to start any arrays for the root file system, "
+#~ "leave the answer blank (or enter 'none'). This may be the case if you are "
+#~ "using kernel autostart or do not need any arrays to boot."
+#~ msgstr ""
+#~ "Si no necessita o vol arrencar qualsevol matriu per al sistema de fitxers "
+#~ "arrel, deixau en blanc la resposta (o escriviu «none»). Pot ésser el seu "
+#~ "cas si fa servir l'auto-arrencada del nucli o no necessiteu cap matriu en "
+#~ "l'arrencada."
+
+#~ msgid "An error occurred: device node does not exist"
+#~ msgstr "S'ha produït un error: el node de dispositiu no existeix."
+
+#~ msgid "An error occurred: not a block device"
+#~ msgstr "S'ha produït un error: no és un dispositiu de blocs."
+
+#~ msgid "An error occurred: not an MD array"
+#~ msgstr "S'ha produït un error: no és un conjunt («array») MD."
+
+#~ msgid "An error occurred: array not listed in mdadm.conf file"
+#~ msgstr ""
+#~ "S'ha produït un error: la matriu («array») no apareix llistada en el "
+#~ "fitxer de configuració «mdadm.conf»."
+
+#~ msgid "Start arrays not listed in mdadm.conf?"
+#~ msgstr "Voleu arrencar les matrius no llistats en el fitxer «mdadm.conf»?"
+
+#~ msgid ""
+#~ "The specified array (${array}) is not listed in the configuration file "
+#~ "(${config}). Therefore, it cannot be started during boot, unless you "
+#~ "correct the configuration file and recreate the initial ramdisk."
+#~ msgstr ""
+#~ "La matriu («array») especificada (${array}) no apareix llistada en el "
+#~ "fitxer de configuració (${config}). Per tant, no es pot iniciar la matriu "
+#~ "durant l'arrencada del sistema, llevat que corregeixi el fitxer de "
+#~ "configuració i regenereu el disc RAM inicial."
+
+#~ msgid ""
+#~ "This warning is only relevant if you need arrays to be started from the "
+#~ "initial ramdisk to be able to boot. If you use kernel autostarting, or do "
+#~ "not need any arrays to be started as early as the initial ramdisk is "
+#~ "loaded, you can simply continue. Alternatively, choose not to continue "
+#~ "and enter 'none' when prompted which arrays to start from the initial "
+#~ "ramdisk."
+#~ msgstr ""
+#~ "Aquest avís només és important si necessiteu que les matrius s'arrenquin "
+#~ "en el disc RAM inicial per poder arrencar el sistema. Si feu servir "
+#~ "l'arrencada automàtica del nucli o no necessiteu que les matrius "
+#~ "estiguin arrencats quan es carregui el disc RAM, podeu continuar. També "
+#~ "podeu decidir no continuar i introduir «none» quan se li demani quines "
+#~ "matrius cal iniciar del disc RAM inicial."
diff --git a/debian/po/cs.po b/debian/po/cs.po
new file mode 100644
index 0000000..d44601d
--- /dev/null
+++ b/debian/po/cs.po
@@ -0,0 +1,228 @@
+#
+# Translators, if you are not familiar with the PO format, gettext
+# documentation is worth reading, especially sections dedicated to
+# this format, e.g. by running:
+# info -n '(gettext)PO Files'
+# info -n '(gettext)Header Entry'
+#
+# Some information specific to po-debconf are available at
+# /usr/share/doc/po-debconf/README-trans
+# or http://www.debian.org/intl/l10n/po-debconf/README-trans
+#
+# Developers do not need to manually edit POT or PO files.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: mdadm\n"
+"Report-Msgid-Bugs-To: mdadm@packages.debian.org\n"
+"POT-Creation-Date: 2016-07-05 14:12+0200\n"
+"PO-Revision-Date: 2008-02-17 21:10+0100\n"
+"Last-Translator: Miroslav Kure <kurem@debian.cz>\n"
+"Language-Team: Czech <debian-l10n-czech@lists.debian.org>\n"
+"Language: cs\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid "Should mdadm run monthly redundancy checks of the MD arrays?"
+msgstr "Má mdadm spouštět měsíční kontroly redundance MD polí?"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid ""
+"If the kernel supports it (versions greater than 2.6.14), mdadm can "
+"periodically check the redundancy of MD arrays (RAIDs). This may be a "
+"resource-intensive process, depending on the local setup, but it could help "
+"prevent rare cases of data loss. Note that this is a read-only check unless "
+"errors are found; if errors are found, mdadm will try to correct them, which "
+"may result in write access to the media."
+msgstr ""
+"Pokud to vaše jádro podporuje (verze větší než 2.6.14), může mdadm "
+"pravidelně kontrolovat redundanci MD polí (RAIDů). Podle konfigurace "
+"počítače to může být proces velmi náročný na prostředky, ovšem může předejít "
+"vzácným případům ztráty dat. Pokud nejsou nalezeny chyby, používá tato "
+"kontrola v zásadě jen čtecí operace. Při nalezení chyb se je mdadm pokusí "
+"opravit, což může znamenat zápis na médium."
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid ""
+"The default, if turned on, is to check on the first Sunday of every month at "
+"01:06."
+msgstr ""
+"Pokud kontrolu povolíte, bude se dle výchozího nastavení spouštět každou "
+"první neděli v měsíci v 01:06 ráno."
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid "Do you want to start the MD monitoring daemon?"
+msgstr "Chcete spustit daemon pro monitorování MD?"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid ""
+"The MD (RAID) monitor daemon sends email notifications in response to "
+"important MD events (such as a disk failure)."
+msgstr ""
+"Daemon pro monitorování MD (RAIDu) zasílá emailová upozornění na významné MD "
+"události, jako je selhání disku."
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid "Enabling this option is recommended."
+msgstr "Povolení této možnosti je doporučeno."
+
+#. Type: string
+#. Description
+#: ../mdadm.templates:4001
+msgid "Recipient for email notifications:"
+msgstr "Příjemce emailových upozornění:"
+
+#. Type: string
+#. Description
+#: ../mdadm.templates:4001
+msgid ""
+"Please enter the email address of the user who should get the email "
+"notifications for important MD events."
+msgstr ""
+"Zadejte prosím emailovou adresu uživatele, který má dostávat emailová "
+"upozornění při výskytu významných MD událostí."
+
+#~ msgid "MD arrays needed for the root file system:"
+#~ msgstr "MD pole vyžadovaná pro kořenový souborový systém:"
+
+#~ msgid ""
+#~ "Please enter 'all', 'none', or a space-separated list of devices such as "
+#~ "'md0 md1' or 'md/1 md/d0' (the leading '/dev/' can be omitted)."
+#~ msgstr ""
+#~ "Zadejte prosím mezerami oddělený seznam zařízení, případně „all“ nebo "
+#~ "„none“. Počáteční „/dev/“ můžete vynechat a zadat jen např. „md0 md1“ "
+#~ "nebo „md/1 md/d0“."
+
+#~ msgid "for internal use - only the long description is needed."
+#~ msgstr "pro vnitřní použití - pouze kvůli zobrazení dlouhého popisu."
+
+#~ msgid ""
+#~ "If the system's root file system is located on an MD array (RAID), it "
+#~ "needs to be started early during the boot sequence. If it is located on a "
+#~ "logical volume (LVM), which is on MD, all constituent arrays need to be "
+#~ "started."
+#~ msgstr ""
+#~ "Pokud je kořenový souborový systém umístěn na MD (RAID) svazku, musí být "
+#~ "tento spuštěn během zavádění systému co nejdříve. Pokud se kořenový "
+#~ "souborový systém nachází na logickém svazku LVM, který je vytvořen nad MD "
+#~ "polem, musí se spustit všechna související pole."
+
+#~ msgid ""
+#~ "If you know exactly which arrays are needed to bring up the root file "
+#~ "system, and you want to postpone starting all other arrays to a later "
+#~ "point in the boot sequence, enter the arrays to start here. "
+#~ "Alternatively, enter 'all' to simply start all available arrays."
+#~ msgstr ""
+#~ "Jestliže přesně víte, která pole jsou potřeba pro připojení kořenového "
+#~ "souborového systému a zároveň chcete pozdržet spuštění ostatních polí na "
+#~ "pozdější dobu, zadejte zde prosím pole, která se mají spustit. Chcete-li "
+#~ "spustit všechna dostupná pole, můžete zadat „all“."
+
+#~ msgid ""
+#~ "If you do not need or want to start any arrays for the root file system, "
+#~ "leave the answer blank (or enter 'none'). This may be the case if you are "
+#~ "using kernel autostart or do not need any arrays to boot."
+#~ msgstr ""
+#~ "Nepotřebujete-li nebo nechcete-li spouštět pole pro kořenový souborový "
+#~ "systém, ponechte odpověď prázdnou, případně zadejte „none“. To může "
+#~ "nastat třeba v případě, že používáte automatický start přímo v jádře, "
+#~ "nebo pokud k zavedení systému žádná pole nepotřebujete."
+
+#~ msgid "An error occurred: device node does not exist"
+#~ msgstr "Vyskytla se chyba: uzel zařízení neexistuje"
+
+#~ msgid "An error occurred: not a block device"
+#~ msgstr "Vyskytla se chyba: není blokovým zařízením"
+
+#~ msgid "An error occurred: not an MD array"
+#~ msgstr "Vyskytla se chyba: není MD polem"
+
+#~ msgid "An error occurred: array not listed in mdadm.conf file"
+#~ msgstr "Vyskytla se chyba: pole není uvedeno v souboru mdadm.conf"
+
+#~ msgid "Start arrays not listed in mdadm.conf?"
+#~ msgstr "Spustit pole neuvedená v mdadm.conf?"
+
+#~ msgid ""
+#~ "The specified array (${array}) is not listed in the configuration file "
+#~ "(${config}). Therefore, it cannot be started during boot, unless you "
+#~ "correct the configuration file and recreate the initial ramdisk."
+#~ msgstr ""
+#~ "Zadané pole (${array}) není uvedeno v konfiguračním souboru ${config} a "
+#~ "tím pádem nemůže být spuštěno při zavádění systému. Napravit to můžete "
+#~ "opravou konfiguračního souboru a znovuvytvořením počátečního ramdisku."
+
+#~ msgid ""
+#~ "This warning is only relevant if you need arrays to be started from the "
+#~ "initial ramdisk to be able to boot. If you use kernel autostarting, or do "
+#~ "not need any arrays to be started as early as the initial ramdisk is "
+#~ "loaded, you can simply continue. Alternatively, choose not to continue "
+#~ "and enter 'none' when prompted which arrays to start from the initial "
+#~ "ramdisk."
+#~ msgstr ""
+#~ "Toto varování je relevantní pouze pokud k zavedení systému potřebujete, "
+#~ "aby se pole spustila z počátečního ramdisku. Používáte-li automatické "
+#~ "spouštění přímo v jádře, nebo pokud nepotřebujete pouštět žádná pole "
+#~ "ještě z počátečního ramdisku, můžete jednoduše pokračovat. Jinou možností "
+#~ "je nepokračovat dále a při dotazu na seznam polí, která se mají spouštět "
+#~ "z počátečního ramdisku, zadat 'none'."
+
+#~ msgid "Initialise the superblock if you reuse hard disks"
+#~ msgstr "Při znovupoužití starších disků inicializujte superblok"
+
+#~ msgid ""
+#~ "WARNING! If you are using hard disks which have RAID superblocks from "
+#~ "earlier installations in different RAID arrays, you MUST zero each "
+#~ "superblock *before* activating the autostart feature."
+#~ msgstr ""
+#~ "VAROVÁNÍ! Používáte-li pevné disky, které obsahují RAID superbloky z "
+#~ "dřívější instalace v jiném RAID poli, MUSÍTE všechny superbloky před "
+#~ "použitím automatického spouštění vynulovat."
+
+#~ msgid ""
+#~ "To do this, do not start the RAID devices automatically. First, zero the "
+#~ "superblock (mdadm --zero-superblock /dev/mdX). Next, use `dpkg-"
+#~ "reconfigure mdadm` to reactivate the autostart feature."
+#~ msgstr ""
+#~ "Chcete-li to provést, nespouštějte RAID zařízení automaticky. Nejprve "
+#~ "vynulujte superblok příkazem 'mdadm --zero-superblock /dev/mdX' a teprve "
+#~ "poté můžete povolit automatické spouštění RAIDu příkazem 'dpkg-"
+#~ "reconfigure mdadm'."
+
+#~ msgid ""
+#~ "You have the option to start all other arrays (those not needed for the "
+#~ "root filesystem) later in the boot sequence. Doing so will give you "
+#~ "greater control over the arrays with the mdadm configuration file. "
+#~ "Starting all arrays at boot-time may be safer though."
+#~ msgstr ""
+#~ "Všechna ostatní pole (ta, která nejsou potřeba pro kořenový souborový "
+#~ "systém) můžete spustit později. Pokud tak učiníte, budete mít v "
+#~ "konfiguračním souboru mdadm nad poli větší kontrolu. Na druhou stranu je "
+#~ "spouštění všech polí hned na začátku zavádění o něco jistější volbou."
+
+#~ msgid ""
+#~ "If RAID devices are started automatically, all RAID devices are "
+#~ "discovered and assembled automatically at system startup. This option "
+#~ "should only be used if the md driver is compiled as a module. If it is "
+#~ "compiled into your kernel, the automatic startup will be performed at "
+#~ "boot time by the kernel and therefore you should not choose this option."
+#~ msgstr ""
+#~ "Jestliže jsou RAID zařízení spouštěna automaticky, jsou všechna RAID "
+#~ "zařízení rozpoznána a poskládána automaticky při zavádění systému. Tuto "
+#~ "volbu byste měli použít pouze v případě, že jste ovladač md zakompilovali "
+#~ "jako modul. Pokud jste jej zakompilovali přímo do jádra, o automatické "
+#~ "spuštění se postará samotné jádro a tedy tuto možnost nepotřebujete."
diff --git a/debian/po/da.po b/debian/po/da.po
new file mode 100644
index 0000000..c6bdffe
--- /dev/null
+++ b/debian/po/da.po
@@ -0,0 +1,175 @@
+# Danish translation mdadm.
+# Copyright (C) 2011 mdadm & nedenstående oversættere.
+# This file is distributed under the same license as the mdadm package.
+# Joe Hansen <joedalton2@yahoo.dk>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: mdadm\n"
+"Report-Msgid-Bugs-To: mdadm@packages.debian.org\n"
+"POT-Creation-Date: 2016-07-05 14:12+0200\n"
+"PO-Revision-Date: 2011-04-03 17:30+01:00\n"
+"Last-Translator: Joe Hansen <joedalton2@yahoo.dk>\n"
+"Language-Team: Danish <debian-l10n-danish@lists.debian.org> \n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid "Should mdadm run monthly redundancy checks of the MD arrays?"
+msgstr "Skal mdadm køre månedlig redundanskontrol af MD arrays?"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid ""
+"If the kernel supports it (versions greater than 2.6.14), mdadm can "
+"periodically check the redundancy of MD arrays (RAIDs). This may be a "
+"resource-intensive process, depending on the local setup, but it could help "
+"prevent rare cases of data loss. Note that this is a read-only check unless "
+"errors are found; if errors are found, mdadm will try to correct them, which "
+"may result in write access to the media."
+msgstr ""
+"Hvis kernen understøtter det (versioner større end 2.6.14), kan mdadm "
+"periodisk kontrollere redundansen på MD arrays (RAID'er). Det kan være en "
+"ressourcekrævende proces, afhængig af den lokale opsætning, men det kan "
+"hjælpe med at forhindre at du i sjældne tilfælde får datatab. Bemærk at "
+"dette er en skrivebeskyttet kontrol med mindre at der findes fejl; hvis der "
+"registreres fejl vil mdadm forsøge at rette dem, hvilket kan medføre "
+"skriveadgang til mediet."
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid ""
+"The default, if turned on, is to check on the first Sunday of every month at "
+"01:06."
+msgstr ""
+"Standarden - hvis aktiveret - er at kontrollere på den første søndag i hver "
+"måned klokken 01:06."
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid "Do you want to start the MD monitoring daemon?"
+msgstr "Ønsker du at starte MD-overvågningsdæmonen?"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid ""
+"The MD (RAID) monitor daemon sends email notifications in response to "
+"important MD events (such as a disk failure)."
+msgstr ""
+"MD-overvågningsdæmonem (RAID) sender e-post-påmindelser udløst af vigtige MD-"
+"hændelser (såsom en diskfejl)."
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid "Enabling this option is recommended."
+msgstr "Aktivering af denne indstilling anbefales."
+
+#. Type: string
+#. Description
+#: ../mdadm.templates:4001
+msgid "Recipient for email notifications:"
+msgstr "Modtager af e-post-påmindelser:"
+
+#. Type: string
+#. Description
+#: ../mdadm.templates:4001
+msgid ""
+"Please enter the email address of the user who should get the email "
+"notifications for important MD events."
+msgstr ""
+"Indtast venligst e-post-adressen på brugeren, som skal modtage e-post-"
+"påmindelser for vigtige MD-hændelser."
+
+#~ msgid "MD arrays needed for the root file system:"
+#~ msgstr "MD arrays krævet for rodfilsystemet:"
+
+#~ msgid ""
+#~ "Please enter 'all', 'none', or a space-separated list of devices such as "
+#~ "'md0 md1' or 'md/1 md/d0' (the leading '/dev/' can be omitted)."
+#~ msgstr ""
+#~ "Indtast venligst »all«, »none« eller en mellemrumsadskilt liste af "
+#~ "enheder såsom »md0 md1« eller »md/1 md/d0« (det foranstillede »/dev/« kan "
+#~ "udelades)."
+
+#~ msgid "for internal use - only the long description is needed."
+#~ msgstr "for intern brug - kun den lange beskrivelse er krævet."
+
+#~ msgid ""
+#~ "If the system's root file system is located on an MD array (RAID), it "
+#~ "needs to be started early during the boot sequence. If it is located on a "
+#~ "logical volume (LVM), which is on MD, all constituent arrays need to be "
+#~ "started."
+#~ msgstr ""
+#~ "Hvis systemets rodfilsystem er placeret på en MD-array (RAID), skal det "
+#~ "startes tidligt under opstartssekvensen. Hvis den er placeret på en "
+#~ "logisk diskenhed (LVM), som er på MD, skal alle indgående arrays startes."
+
+#~ msgid ""
+#~ "If you know exactly which arrays are needed to bring up the root file "
+#~ "system, and you want to postpone starting all other arrays to a later "
+#~ "point in the boot sequence, enter the arrays to start here. "
+#~ "Alternatively, enter 'all' to simply start all available arrays."
+#~ msgstr ""
+#~ "Hvis du ved præcis hvilke arrays som er krævet, for at få rodfilsystemet "
+#~ "op, og du ønsker at udsætte start af alle andre arrays til et senere "
+#~ "tidspunkt i opstartssekvensen, så indtast her de arrays som skal startes. "
+#~ "Alternativt kan du indtaste »all« for at starte alle tilgængelige arrays."
+
+#~ msgid ""
+#~ "If you do not need or want to start any arrays for the root file system, "
+#~ "leave the answer blank (or enter 'none'). This may be the case if you are "
+#~ "using kernel autostart or do not need any arrays to boot."
+#~ msgstr ""
+#~ "Hvis du ikke har brug for eller ønsker at starte nogen arrays for "
+#~ "rodfilsystemet, så efterlad svaret tomt (eller indtast »none«). Dette kan "
+#~ "være tilfældet, hvis du bruger automatisk start af kernen eller ikke skal "
+#~ "bruge arrays til at starte op med."
+
+#~ msgid "An error occurred: device node does not exist"
+#~ msgstr "Der opstod en fejl: Enhedsknude findes ikke"
+
+#~ msgid "An error occurred: not a block device"
+#~ msgstr "Der opstod en fejl: Ikke en blokenhed"
+
+#~ msgid "An error occurred: not an MD array"
+#~ msgstr "Der opstod en fejl: Ikke en MD array"
+
+#~ msgid "An error occurred: array not listed in mdadm.conf file"
+#~ msgstr "Der opstod en fejl: Array er ikke anført i mdadm.conf-filen"
+
+#~ msgid "Start arrays not listed in mdadm.conf?"
+#~ msgstr "Start arrays er ikke anført i mdadm.conf?"
+
+#~ msgid ""
+#~ "The specified array (${array}) is not listed in the configuration file "
+#~ "(${config}). Therefore, it cannot be started during boot, unless you "
+#~ "correct the configuration file and recreate the initial ramdisk."
+#~ msgstr ""
+#~ "Den angivne array (${array}) er ikke anført i konfigurationsfilen "
+#~ "(${config}). Den kan derfor ikke startes under opstarten, med mindre du "
+#~ "retter i konfigurationsfilen og gendanner den oprindleige ramdisk."
+
+#~ msgid ""
+#~ "This warning is only relevant if you need arrays to be started from the "
+#~ "initial ramdisk to be able to boot. If you use kernel autostarting, or do "
+#~ "not need any arrays to be started as early as the initial ramdisk is "
+#~ "loaded, you can simply continue. Alternatively, choose not to continue "
+#~ "and enter 'none' when prompted which arrays to start from the initial "
+#~ "ramdisk."
+#~ msgstr ""
+#~ "Denne advarsel er kun relevant hvis du skal have arrays til at blive "
+#~ "startet fra den oprindelige ramdisk for at kunne starte op. Hvis du "
+#~ "bruger den automatiske opstart i kernen, eller ikke skal bruge at arrays "
+#~ "startes så tidligt som den oprindelige ramdisk indlæses, så kan du bare "
+#~ "fortsætte. Alternativt så vælg at fortsætte og indtaste »none« når du "
+#~ "bliver spurgt om hvilke arrays, der skal startes fra den oprindelige "
+#~ "ramdisk."
diff --git a/debian/po/de.po b/debian/po/de.po
new file mode 100644
index 0000000..140cc0b
--- /dev/null
+++ b/debian/po/de.po
@@ -0,0 +1,249 @@
+# Translators, if you are not familiar with the PO format, gettext
+# documentation is worth reading, especially sections dedicated to
+# this format, e.g. by running:
+# info -n '(gettext)PO Files'
+# info -n '(gettext)Header Entry'
+# Some information specific to po-debconf are available at
+# /usr/share/doc/po-debconf/README-trans
+# or http://www.debian.org/intl/l10n/po-debconf/README-trans
+# Developers do not need to manually edit POT or PO files.
+#
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: mdadm 2.6.9-3\n"
+"Report-Msgid-Bugs-To: mdadm@packages.debian.org\n"
+"POT-Creation-Date: 2016-07-05 14:12+0200\n"
+"PO-Revision-Date: 2009-06-24 17:35+0200\n"
+"Last-Translator: Mario Joussen <joussen@debian.org>\n"
+"Language-Team: German <debian-l10n-german@lists.debian.org>\n"
+"Language: de\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=ISO-8859-1\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid "Should mdadm run monthly redundancy checks of the MD arrays?"
+msgstr ""
+"Soll mdadm monatlich die Redundanzberprfung auf den RAID-Verbnden "
+"ausfhren?"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid ""
+"If the kernel supports it (versions greater than 2.6.14), mdadm can "
+"periodically check the redundancy of MD arrays (RAIDs). This may be a "
+"resource-intensive process, depending on the local setup, but it could help "
+"prevent rare cases of data loss. Note that this is a read-only check unless "
+"errors are found; if errors are found, mdadm will try to correct them, which "
+"may result in write access to the media."
+msgstr ""
+"Falls Ihr Kernel es untersttzt (Versionen grer als 2.6.14) kann mdadm "
+"regelmig die Redundanz Ihrer MD-Verbnde (RAID) berprfen. Dies kann "
+"abhngig von Ihrer Installation ein resourcenintensiver Vorgang sein, der "
+"aber helfen kann, seltene Flle von Datenverlust zu vermeiden. Bitte "
+"beachten Sie, dass diese berprfung nur lesend erfolgt, solange keine "
+"Fehler gefunden werden. Falls Fehler gefunden werden, wird mdadm versuchen, "
+"diese zu beheben, was zu schreibendem Zugriff auf das Medium fhren kann."
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid ""
+"The default, if turned on, is to check on the first Sunday of every month at "
+"01:06."
+msgstr ""
+"Die Voreinstellung ist, falls eingeschaltet, die berprfung am ersten "
+"Sonntag jedes Monats um 01:06 Uhr durchzufhren."
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid "Do you want to start the MD monitoring daemon?"
+msgstr "Mchten Sie den RAID-berwachungsdmon starten?"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid ""
+"The MD (RAID) monitor daemon sends email notifications in response to "
+"important MD events (such as a disk failure)."
+msgstr ""
+"Der MD- (RAID-)berwachungsdmon verschickt Benachrichtigungen als Reaktion "
+"auf wichtige RAID-Ereignisse (wie zum Beispiel Festplattenfehler)."
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid "Enabling this option is recommended."
+msgstr "Das Aktivieren dieser Option ist empfohlen."
+
+#. Type: string
+#. Description
+#: ../mdadm.templates:4001
+msgid "Recipient for email notifications:"
+msgstr "Empfnger der E-Mail-Benachrichtungen:"
+
+#. Type: string
+#. Description
+#: ../mdadm.templates:4001
+msgid ""
+"Please enter the email address of the user who should get the email "
+"notifications for important MD events."
+msgstr ""
+"Geben Sie bitte die E-Mail-Adresse des Benutzers an, der die E-Mail-"
+"Benachrichtigung fr wichtigen MD-Ereignisse erhalten soll."
+
+#~ msgid "MD arrays needed for the root file system:"
+#~ msgstr "Fr das Wurzeldateisystem bentigte MD folgende Verbnde:"
+
+#~ msgid ""
+#~ "Please enter 'all', 'none', or a space-separated list of devices such as "
+#~ "'md0 md1' or 'md/1 md/d0' (the leading '/dev/' can be omitted)."
+#~ msgstr ""
+#~ "Bitte geben Sie all, none oder eine leerzeichenseparierte Gerteliste "
+#~ "wie zum Beispiel md0 md1 oder md/1 md/d0 ein (das fhrende /dev "
+#~ "kann weggelassen werden)."
+
+#~ msgid "for internal use - only the long description is needed."
+#~ msgstr ""
+#~ "fr internen Gebrauch - es wird nur die ausfhrliche Beschreibung "
+#~ "bentigt."
+
+#~ msgid ""
+#~ "If the system's root file system is located on an MD array (RAID), it "
+#~ "needs to be started early during the boot sequence. If it is located on a "
+#~ "logical volume (LVM), which is on MD, all constituent arrays need to be "
+#~ "started."
+#~ msgstr ""
+#~ "Wenn das Wurzeldateisystem Ihres Systems auf einem MD-Verbund (RAID) "
+#~ "liegt, muss es frhzeitig whrend des Bootvorgangs gestartet werden. Wenn "
+#~ "sich Ihr Wurzeldateisystem auf einem logischen Laufwerk (LVM) befindet, "
+#~ "das sich wiederum auf einem MD Verbund befindet, mssen alle zugehrigen "
+#~ "Verbnde gestartet werden."
+
+#~ msgid ""
+#~ "If you know exactly which arrays are needed to bring up the root file "
+#~ "system, and you want to postpone starting all other arrays to a later "
+#~ "point in the boot sequence, enter the arrays to start here. "
+#~ "Alternatively, enter 'all' to simply start all available arrays."
+#~ msgstr ""
+#~ "Wenn Sie genau wissen, welche Verbnde bentigt werden, um das "
+#~ "Wurzeldateisystem zu starten, und Sie den Start der anderen Verbnde auf "
+#~ "einen spteren Zeitpunkt in der Bootreihenfolge verschieben wollen, geben "
+#~ "Sie die zu startenden Verbnde hier ein. Alternativ geben Sie all ein, "
+#~ "um alle verfgbaren Verbnde zu starten."
+
+#~ msgid ""
+#~ "If you do not need or want to start any arrays for the root file system, "
+#~ "leave the answer blank (or enter 'none'). This may be the case if you are "
+#~ "using kernel autostart or do not need any arrays to boot."
+#~ msgstr ""
+#~ "Falls Sie keine RAID-Verbnde fr das Wurzeldateisystem bentigen oder "
+#~ "starten wollen, lassen Sie die Antwort leer (oder geben none ein). Dies "
+#~ "knnte der Fall sein, wenn Sie entweder die Autostartfunktion des Kernels "
+#~ "verwenden oder keine Verbnde zum Booten bentigen."
+
+#~ msgid "An error occurred: device node does not exist"
+#~ msgstr "Ein Fehler ist aufgetreten: Gerteknoten existiert nicht"
+
+#~ msgid "An error occurred: not a block device"
+#~ msgstr "Ein Fehler ist aufgetreten: kein Blockgert"
+
+#~ msgid "An error occurred: not an MD array"
+#~ msgstr "Ein Fehler ist aufgetreten: kein RAID-Verbund"
+
+#~ msgid "An error occurred: array not listed in mdadm.conf file"
+#~ msgstr ""
+#~ "Ein Fehler ist aufgetreten: Verbund nicht in der Datei mdadm.conf "
+#~ "aufgefhrt"
+
+#~ msgid "Start arrays not listed in mdadm.conf?"
+#~ msgstr "Nicht in mdadm.conf aufgefhrte Verbnde starten?"
+
+#~ msgid ""
+#~ "The specified array (${array}) is not listed in the configuration file "
+#~ "(${config}). Therefore, it cannot be started during boot, unless you "
+#~ "correct the configuration file and recreate the initial ramdisk."
+#~ msgstr ""
+#~ "Der angegebene Verbund (${array}) ist in der Konfigurationsdatei "
+#~ "${config} nicht aufgefhrt. Deshalb kann er whrend des Bootvorgangs "
+#~ "nicht gestartet werden, es sei denn, Sie korrigieren die "
+#~ "Konfigurationsdatei und erzeugen die initiale Ramdisk neu."
+
+#~ msgid ""
+#~ "This warning is only relevant if you need arrays to be started from the "
+#~ "initial ramdisk to be able to boot. If you use kernel autostarting, or do "
+#~ "not need any arrays to be started as early as the initial ramdisk is "
+#~ "loaded, you can simply continue. Alternatively, choose not to continue "
+#~ "and enter 'none' when prompted which arrays to start from the initial "
+#~ "ramdisk."
+#~ msgstr ""
+#~ "Diese Warnung ist nur von Bedeutung, wenn Sie RAID-Verbnde, die von der "
+#~ "initialen Ramdisk gestartet werden, bentigen, um booten zu knnen. Falls "
+#~ "Sie die Autostartfunktion des Kernels verwenden oder kein RAID-Verbund "
+#~ "zum frhen Zeitpunkt des Ladens der initialen Ramdisk gestartet werden "
+#~ "muss, knnen Sie einfach fortfahren. Alternativ whlen Sie, nicht "
+#~ "fortzufahren und geben none ein, wenn Sie gefragt werden, welche RAID-"
+#~ "Verbnde von der initialen Ramdisk gestartet werden sollen."
+
+#~ msgid "Initialise the superblock if you reuse hard disks"
+#~ msgstr ""
+#~ "Initialisieren Sie den Superblock, wenn Sie Festplatten wieder verwenden."
+
+#~ msgid ""
+#~ "WARNING! If you are using hard disks which have RAID superblocks from "
+#~ "earlier installations in different RAID arrays, you MUST zero each "
+#~ "superblock *before* activating the autostart feature."
+#~ msgstr ""
+#~ "WARNUNG! Wenn Sie Festplatten verwenden, die bereits einen md-Superblock "
+#~ "von einer vorherigen Installation in einem anderen RAID-Verbund besitzen, "
+#~ "so MSSEN Sie diesen lschen, *bevor* Sie die Autostart-Funktion "
+#~ "aktivieren."
+
+#~ msgid ""
+#~ "To do this, do not start the RAID devices automatically. First, zero the "
+#~ "superblock (mdadm --zero-superblock /dev/mdX). Next, use `dpkg-"
+#~ "reconfigure mdadm` to reactivate the autostart feature."
+#~ msgstr ""
+#~ "Dazu starten Sie die RAID-Laufwerke nicht automatisch und lschen dann "
+#~ "erst den Superblock (mdadm --zero-superblock /dev/mdX). Danach knnen Sie "
+#~ "mit dpkg-reconfigure mdadm die Autostart-Funktion aktivieren."
+
+#~ msgid ""
+#~ "You have the option to start all other arrays (those not needed for the "
+#~ "root filesystem) later in the boot sequence. Doing so will give you "
+#~ "greater control over the arrays with the mdadm configuration file. "
+#~ "Starting all arrays at boot-time may be safer though."
+#~ msgstr ""
+#~ "Sie haben die Option, alle anderen Verbnde (diese die nicht fr das "
+#~ "Wurzeldateisystem bentigt werden) spter whrend des Bootvorgangs zu "
+#~ "starten. Damit haben Sie grere Kontrolle ber die Verbnde mit Hilfe "
+#~ "der mdadm-Konfigurationsdatei. Es ist jedoch sicherer, alle Verbnde beim "
+#~ "Booten zu starten."
+
+#~ msgid ""
+#~ "If RAID devices are started automatically, all RAID devices are "
+#~ "discovered and assembled automatically at system startup. This option "
+#~ "should only be used if the md driver is compiled as a module. If it is "
+#~ "compiled into your kernel, the automatic startup will be performed at "
+#~ "boot time by the kernel and therefore you should not choose this option."
+#~ msgstr ""
+#~ "Wenn die RAID-Laufwerke automatisch gestartet werden, werden alle RAID-"
+#~ "Laufwerke beim Systemstart automatisch gefunden und gestartet. Diese "
+#~ "Option sollte nur benutzt werden, falls der md-Treiber als Modul "
+#~ "kompiliert wurde. Falls er in den Kernel einkompiliert wurde, fhrt der "
+#~ "Kernel den automatischen Start beim Booten durch und Sie sollten diese "
+#~ "Option deshalb nicht auswhlen."
+
+#~ msgid ""
+#~ "When the RAID monitor daemon runs, email notifications are sent when a "
+#~ "disk belonging to a RAID array fails or changes its status for some "
+#~ "reason."
+#~ msgstr ""
+#~ "Wird der RAID-berwachungsdaemon gestartet, so werden E-Mail-"
+#~ "Benachrichtigungen verschickt, falls ein zum RAID gehrendes Laufwerk "
+#~ "ausfllt oder den Status ndert."
diff --git a/debian/po/es.po b/debian/po/es.po
new file mode 100644
index 0000000..626b144
--- /dev/null
+++ b/debian/po/es.po
@@ -0,0 +1,218 @@
+# mdadm po-debconf translation to spanish
+# Copyright (C) 2006 Software in the Public Interest, SPI Inc.
+# This file is distributed under the same license as the mdadm package.
+#
+# Changes:
+# - Initial translation
+# Javier Fernndez-Sanguino , 2006
+# - Revision
+# Fernando Cerezal
+#
+#
+# Traductores, si no conoce el formato PO, merece la pena leer la
+# documentacin de gettext, especialmente las secciones dedicadas a este
+# formato, por ejemplo ejecutando:
+# info -n '(gettext)PO Files'
+# info -n '(gettext)Header Entry'
+#
+# Equipo de traduccin al espaol, por favor lean antes de traducir
+# los siguientes documentos:
+#
+# - El proyecto de traduccin de Debian al espaol
+# http://www.debian.org/intl/spanish/
+# especialmente las notas y normas de traduccin en
+# http://www.debian.org/intl/spanish/notas
+#
+# - La gua de traduccin de po's de debconf:
+# /usr/share/doc/po-debconf/README-trans
+# o http://www.debian.org/intl/l10n/po-debconf/README-trans
+#
+# Si tiene dudas o consultas sobre esta traduccin consulte con el ltimo
+# traductor (campo Last-Translator) y ponga en copia a la lista de
+# traduccin de Debian al espaol (<debian-l10n-spanish@lists.debian.org>)
+#
+# Notas:
+# - 'array' no est traducido an. La traduccin como 'arreglo' suena
+# fatal (y es poco conocida) [ cambiar cuando se cambie en d-i ]
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: mdadm 2.5.6-6\n"
+"Report-Msgid-Bugs-To: mdadm@packages.debian.org\n"
+"POT-Creation-Date: 2016-07-05 14:12+0200\n"
+"PO-Revision-Date: 2008-04-25 17:47+0200\n"
+"Last-Translator: Javier Fernndez-Sanguino <jfs@debian.org>\n"
+"Language-Team: Debian Spanish <debian-l10n-spanish@lists.debian.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=ISO-8859-15\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid "Should mdadm run monthly redundancy checks of the MD arrays?"
+msgstr ""
+"Debera mdadm ejecutar comprobaciones de redundancia mensuales de los "
+"arrays MD?"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid ""
+"If the kernel supports it (versions greater than 2.6.14), mdadm can "
+"periodically check the redundancy of MD arrays (RAIDs). This may be a "
+"resource-intensive process, depending on the local setup, but it could help "
+"prevent rare cases of data loss. Note that this is a read-only check unless "
+"errors are found; if errors are found, mdadm will try to correct them, which "
+"may result in write access to the media."
+msgstr ""
+"Mdadm puede comprobar de forma peridica la redundancia de sus arrays MD "
+"(RAIDs) si el ncleo lo soporta (si su versin es superior a la 2.6.14). "
+"Esto puede ser un proceso que consuma muchos recursos, dependiendo de su "
+"configuracin, pero podra ayudar a prevenir casos raros de prdida de "
+"datos. Tenga en cuenta que estas comprobaciones se hacen en modo lectura "
+"salvo que se detecten errores, en cuyo caso mdadm necesitar corregirlos, lo "
+"que significa que ser necesario tener acceso de escritura a los medios "
+"fsicos."
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid ""
+"The default, if turned on, is to check on the first Sunday of every month at "
+"01:06."
+msgstr ""
+"El valor por omisio, si se activa, es comprobar el primer Domingo de cada "
+"mes a las 01:06 am."
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid "Do you want to start the MD monitoring daemon?"
+msgstr "Desea arrancar el demonio de monitorizacin MD?"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid ""
+"The MD (RAID) monitor daemon sends email notifications in response to "
+"important MD events (such as a disk failure)."
+msgstr ""
+"El demonio de monitorizacin MD (RAID) enva notificaciones por correo "
+"electrnico cuando se producen eventos importantes en los dispositivos MD "
+"(como pueda ser el caso de un fallo de un disco)."
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid "Enabling this option is recommended."
+msgstr "Es opcional habilitar esta opcin."
+
+#. Type: string
+#. Description
+#: ../mdadm.templates:4001
+msgid "Recipient for email notifications:"
+msgstr "Destinatario de las notificaciones por correo:"
+
+#. Type: string
+#. Description
+#: ../mdadm.templates:4001
+msgid ""
+"Please enter the email address of the user who should get the email "
+"notifications for important MD events."
+msgstr ""
+"Introduzca la direccin de correo electrnico del usuario que debera "
+"recibir las notificaciones por correo de eventos relevantes en los "
+"dispositivos MD."
+
+#~ msgid "MD arrays needed for the root file system:"
+#~ msgstr "Arrays MD necesarios para el sistema de ficheros raz:"
+
+# No se traduce all y none porque no aparecen en la plantilla para traducir los elementos individuales
+#~ msgid ""
+#~ "Please enter 'all', 'none', or a space-separated list of devices such as "
+#~ "'md0 md1' or 'md/1 md/d0' (the leading '/dev/' can be omitted)."
+#~ msgstr ""
+#~ "Introduzca all (todos), none (ninguno) o una lista de dispositivos "
+#~ "separados por espacios como por ejemplo puede slo introducir md0 md1 o "
+#~ "md/1 md/d0 (no tiene que preceder los nombres de dispositivos con /"
+#~ "dev)."
+
+#~ msgid "for internal use - only the long description is needed."
+#~ msgstr "para uso interno. Slo se utiliza la descripcin larga."
+
+#~ msgid ""
+#~ "If the system's root file system is located on an MD array (RAID), it "
+#~ "needs to be started early during the boot sequence. If it is located on a "
+#~ "logical volume (LVM), which is on MD, all constituent arrays need to be "
+#~ "started."
+#~ msgstr ""
+#~ "Si el sistema de ficheros raz de su sistema est en un array MD (RAID) "
+#~ "tiene que inicializarse antes durante de la secuencia de arranque. Si "
+#~ "est en un volumen lgico (LVM), que est definido sobre un MD, todos los "
+#~ "arrays que lo forman tienen que haberse inicializado."
+
+#~ msgid ""
+#~ "If you know exactly which arrays are needed to bring up the root file "
+#~ "system, and you want to postpone starting all other arrays to a later "
+#~ "point in the boot sequence, enter the arrays to start here. "
+#~ "Alternatively, enter 'all' to simply start all available arrays."
+#~ msgstr ""
+#~ "Introduzca los arrays a iniciar aqu, si sabe con exactitud cules son "
+#~ "necesarios para arrancar el sistema de ficheros raz y quiere posponer el "
+#~ "arranque de todos los dems arrays a un punto posterior de la secuencia "
+#~ "de arranque. Tambin puede introducir all (todos) para, sencillamente, "
+#~ "iniciar todos los arrays disponibles."
+
+#~ msgid ""
+#~ "If you do not need or want to start any arrays for the root file system, "
+#~ "leave the answer blank (or enter 'none'). This may be the case if you are "
+#~ "using kernel autostart or do not need any arrays to boot."
+#~ msgstr ""
+#~ "Puede dejar la respuesta en blanco (o introducir none) si no necesita o "
+#~ "desea arrancar los arrays para el sistema de ficheros raz. Este puede "
+#~ "ser su caso si est utilizando el autoarranque del ncleo o no necesita "
+#~ "ningn array para el arranque."
+
+#~ msgid "An error occurred: device node does not exist"
+#~ msgstr "Se produjo un error: el nodo de dispositivo no existe"
+
+#~ msgid "An error occurred: not a block device"
+#~ msgstr "Se produjo un error: no es un dispositivo de bloques"
+
+#~ msgid "An error occurred: not an MD array"
+#~ msgstr "Se produjo un error: no es un array MD"
+
+#~ msgid "An error occurred: array not listed in mdadm.conf file"
+#~ msgstr ""
+#~ "Se produjo un error: el array no est en la lista definida en el archivo "
+#~ "mdadm.conf"
+
+#~ msgid "Start arrays not listed in mdadm.conf?"
+#~ msgstr "Desea arrancar los arrays no listados en mdadm.conf?"
+
+#~ msgid ""
+#~ "The specified array (${array}) is not listed in the configuration file "
+#~ "(${config}). Therefore, it cannot be started during boot, unless you "
+#~ "correct the configuration file and recreate the initial ramdisk."
+#~ msgstr ""
+#~ "El array que ha especificado (${array}) no est listado en el fichero de "
+#~ "configuracin ${config}. Este array no podr iniciarse durante el "
+#~ "arranque del sistema a no ser que corrija el fichero de configuracin y "
+#~ "regenere el disco de ram inicial."
+
+#~ msgid ""
+#~ "This warning is only relevant if you need arrays to be started from the "
+#~ "initial ramdisk to be able to boot. If you use kernel autostarting, or do "
+#~ "not need any arrays to be started as early as the initial ramdisk is "
+#~ "loaded, you can simply continue. Alternatively, choose not to continue "
+#~ "and enter 'none' when prompted which arrays to start from the initial "
+#~ "ramdisk."
+#~ msgstr ""
+#~ "Este aviso slo es relevante si necesita que los arrays se inicien en el "
+#~ "disco de RAM inicial para poder arrancar el sistema. Si utiliza el "
+#~ "autoarranque del ncleo o no necesita que los arrays estn arrancados tan "
+#~ "pronto como se cargue el disco de RAM, puede continuar simplemente. "
+#~ "Tambin puede decidir no continuar e introducir none cuando se le "
+#~ "pregunte qu arrays deberan arrancarse del disco de RAM inicial."
diff --git a/debian/po/eu.po b/debian/po/eu.po
new file mode 100644
index 0000000..259dce2
--- /dev/null
+++ b/debian/po/eu.po
@@ -0,0 +1,176 @@
+# mdadm debconf templates basque translation
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# Piarres Beobide <pi@beobide.net>, 2008.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: mdadm-debconf\n"
+"Report-Msgid-Bugs-To: mdadm@packages.debian.org\n"
+"POT-Creation-Date: 2016-07-05 14:12+0200\n"
+"PO-Revision-Date: Y2008-04-30 11:00+0100\n"
+"Last-Translator: Piarres Beobide <pi@beobide.net>\n"
+"Language-Team: Euskara <debian-l10n-basque@lists.debian.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid "Should mdadm run monthly redundancy checks of the MD arrays?"
+msgstr ""
+"Mdadm-ek hilabetero egin behar al du MD array-en erredundantzia egiaztapena?"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid ""
+"If the kernel supports it (versions greater than 2.6.14), mdadm can "
+"periodically check the redundancy of MD arrays (RAIDs). This may be a "
+"resource-intensive process, depending on the local setup, but it could help "
+"prevent rare cases of data loss. Note that this is a read-only check unless "
+"errors are found; if errors are found, mdadm will try to correct them, which "
+"may result in write access to the media."
+msgstr ""
+"Kernelak onartzen badu (2.6.14 baino bertsio berriagoak), mdadm-ek aldiro MD "
+"array-en (RAID-en) erredundantzia aldiro egiazta dezake. Hau errekurtso-"
+"behar handiko prozesu bat izan daiteke, konfigurazio lokalaren arabera, "
+"baina datu galera kasuak saihesten lagundu dezake. Kontutan izan errorerik "
+"aurkitzen ez bada irakurketa-soileko egiaztapen bat dela; errorerik "
+"arukituko balitz mdadm konpontzen saiatuko da, honetarako euskarrian idaztea "
+"beharrezko izan daitekeelarik."
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid ""
+"The default, if turned on, is to check on the first Sunday of every month at "
+"01:06."
+msgstr ""
+"Lehenespen bezala gaiturik dago, egiaztapena hilabete bakoitzeko lehenengo "
+"asteleheneko 01:06-etan egingo da."
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid "Do you want to start the MD monitoring daemon?"
+msgstr "MD monitorizazio deabrua abiarazi nahi al duzu?"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid ""
+"The MD (RAID) monitor daemon sends email notifications in response to "
+"important MD events (such as a disk failure)."
+msgstr ""
+"MD (RAID) monitore deabruak eposta bidezko berri-emateak bidaltzen ditu "
+"gertaera garrantzitsuetan (disko erroreen antzerakoetan)."
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid "Enabling this option is recommended."
+msgstr "Aukera hau gaitzea gomendagarria da."
+
+#. Type: string
+#. Description
+#: ../mdadm.templates:4001
+msgid "Recipient for email notifications:"
+msgstr "Eposta berri-emateen hartzailea:"
+
+#. Type: string
+#. Description
+#: ../mdadm.templates:4001
+msgid ""
+"Please enter the email address of the user who should get the email "
+"notifications for important MD events."
+msgstr ""
+"Mesedez idatzi MD gertaera garrantzitsuen berri emate mezuak jaso behar "
+"dituen erabiltzailearen eposta helbidea."
+
+#~ msgid "MD arrays needed for the root file system:"
+#~ msgstr "Erro fitxategi-sistemarentzat beharrezko MD array-ak:"
+
+#~ msgid ""
+#~ "Please enter 'all', 'none', or a space-separated list of devices such as "
+#~ "'md0 md1' or 'md/1 md/d0' (the leading '/dev/' can be omitted)."
+#~ msgstr ""
+#~ "Mesedez idatzi 'denak', 'batez', edo zuriunez bereziriko gailuen "
+#~ "zerrenda, adibidez 'md0 md1' edo 'md/1 md/d0' (hasierako '/dev/' baztertu "
+#~ "daiteke)."
+
+#~ msgid "for internal use - only the long description is needed."
+#~ msgstr "barne erabilerako - deskribapen luzea bakarrik behar da."
+
+#~ msgid ""
+#~ "If the system's root file system is located on an MD array (RAID), it "
+#~ "needs to be started early during the boot sequence. If it is located on a "
+#~ "logical volume (LVM), which is on MD, all constituent arrays need to be "
+#~ "started."
+#~ msgstr ""
+#~ "Sistemaren erro fitxategi-sistema MD array (RAID) batetan kokaturik "
+#~ "badago, berau abio sekuentziaren hasieran abiarazi behar da. MD batetan "
+#~ "kokaturiko bolumen logiko (LVM) batetan badago osatzen duten array "
+#~ "guztiak abiarazi behar dira."
+
+#~ msgid ""
+#~ "If you know exactly which arrays are needed to bring up the root file "
+#~ "system, and you want to postpone starting all other arrays to a later "
+#~ "point in the boot sequence, enter the arrays to start here. "
+#~ "Alternatively, enter 'all' to simply start all available arrays."
+#~ msgstr ""
+#~ "Erro fitxategi-sistema erabiltzeko beharrezkoak diren arrayak zehazki "
+#~ "jakin eta beste array-en abiaraztea abioaren beranduagoko puntu batetara "
+#~ "atzeratu nahi baduzu, idatzi abiarazi beharreko array-ak hemen. Bestela "
+#~ "idatzi 'denak' array erabilgarri guztiak abiarazteko."
+
+#~ msgid ""
+#~ "If you do not need or want to start any arrays for the root file system, "
+#~ "leave the answer blank (or enter 'none'). This may be the case if you are "
+#~ "using kernel autostart or do not need any arrays to boot."
+#~ msgstr ""
+#~ "Ez baduzu erro fitxategi sistemarako array-rik abiarazi behar, hutsik "
+#~ "utzi ezazu (edo 'batez' idatzi). Hau abioan array-rik behar ez duzulako "
+#~ "edo kernel auto-abioa erabiltzen duzulako izan daiteke."
+
+#~ msgid "An error occurred: device node does not exist"
+#~ msgstr "Errore bat gertatu da: gailu nodoa ez dago"
+
+#~ msgid "An error occurred: not a block device"
+#~ msgstr "Errore bat gertatu da: ez da bloke gailu bat"
+
+#~ msgid "An error occurred: not an MD array"
+#~ msgstr "Errore bat gertatu da: ez da MD array bat"
+
+#~ msgid "An error occurred: array not listed in mdadm.conf file"
+#~ msgstr ""
+#~ "Errore bat gertatu da: array-a ez dago mdadm.conf fitxategian "
+#~ "zerrendaturik"
+
+#~ msgid "Start arrays not listed in mdadm.conf?"
+#~ msgstr "Abiarazi mdadm.conf fitxategian ez dauden array-ak?"
+
+#~ msgid ""
+#~ "The specified array (${array}) is not listed in the configuration file "
+#~ "(${config}). Therefore, it cannot be started during boot, unless you "
+#~ "correct the configuration file and recreate the initial ramdisk."
+#~ msgstr ""
+#~ "Zehazturiko (${array}) array-a ez dago (${config}) konfigurazio "
+#~ "fitxategian zerrendaturiko. Horregatik ezin da abioan abiarazi zuk "
+#~ "konfigurazio fitxategia konpondu eta abio ramdiskoa bersortu arte."
+
+#~ msgid ""
+#~ "This warning is only relevant if you need arrays to be started from the "
+#~ "initial ramdisk to be able to boot. If you use kernel autostarting, or do "
+#~ "not need any arrays to be started as early as the initial ramdisk is "
+#~ "loaded, you can simply continue. Alternatively, choose not to continue "
+#~ "and enter 'none' when prompted which arrays to start from the initial "
+#~ "ramdisk."
+#~ msgstr ""
+#~ "Abisu hau abiarazi ahal izateko ramdisk.etik array-ak baiaraztea behar "
+#~ "baduzu bakarrik da garrantzitsua. Kernel auto-abioa erabiltzen baduzu edo "
+#~ "ez baduzu ramdisk-etik hasieran array-rik kargatzea behar aurrera "
+#~ "jarraitu dezakezu. Bestela ez jarraitzea hautatu eta 'batez' idatzi "
+#~ "hasierako ramdisk-etik kargatu beharreko array-ez galdetzean."
diff --git a/debian/po/fi.po b/debian/po/fi.po
new file mode 100644
index 0000000..759d3b3
--- /dev/null
+++ b/debian/po/fi.po
@@ -0,0 +1,173 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: mdadm\n"
+"Report-Msgid-Bugs-To: mdadm@packages.debian.org\n"
+"POT-Creation-Date: 2016-07-05 14:12+0200\n"
+"PO-Revision-Date: 2008-02-14 11:24+0200\n"
+"Last-Translator: Esko Arajärvi <edu@iki.fi>\n"
+"Language-Team: Finnish <debian-l10n-finnish@lists.debian.org>\n"
+"Language: fi\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Poedit-Language: Finnish\n"
+"X-Poedit-Country: FINLAND\n"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid "Should mdadm run monthly redundancy checks of the MD arrays?"
+msgstr "Tulisiko mdadm:n tarkistaa kuukausittain MD-pakkojen eheys?"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid ""
+"If the kernel supports it (versions greater than 2.6.14), mdadm can "
+"periodically check the redundancy of MD arrays (RAIDs). This may be a "
+"resource-intensive process, depending on the local setup, but it could help "
+"prevent rare cases of data loss. Note that this is a read-only check unless "
+"errors are found; if errors are found, mdadm will try to correct them, which "
+"may result in write access to the media."
+msgstr ""
+"Ohjelma mdadm voi säännöllisesti tarkistaa MD-pakkojen (RAIDien) tietojen "
+"monistuksen, jos ydin tukee tätä (versiosta 2.6.14 eteenpäin). Tämä prosessi "
+"voi paikallisesta kokoonpanosta riippuen kuluttaa paljon resursseja, mutta "
+"saattaa ehkäistä tietojen menetyksiä tietyissä harvinaisissa tapauksissa. "
+"Tarkistus vaatii vain tietojen lukemista, jos virheitä ei löyty. Jos "
+"virheitä löytyy, mdadm yrittää korjata ne, jolloin levylle saatetaan myös "
+"kirjoittaa."
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid ""
+"The default, if turned on, is to check on the first Sunday of every month at "
+"01:06."
+msgstr ""
+"Oletuksena, jos tarkistus on käytössä, se tehdään kuukauden ensimmäisenä "
+"sunnuntaina kello 01.06."
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid "Do you want to start the MD monitoring daemon?"
+msgstr "Haluatko käynnistää MD-seurannan?"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid ""
+"The MD (RAID) monitor daemon sends email notifications in response to "
+"important MD events (such as a disk failure)."
+msgstr ""
+"MD-pakkoja (RAIDeja) seuraava taustaohjelma lähettää tietoja sähköpostiin "
+"tärkeiden MD-tapahtumien (kuten levyrikon) sattuessa."
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid "Enabling this option is recommended."
+msgstr "Tämän valitseminen on suositeltavaa."
+
+#. Type: string
+#. Description
+#: ../mdadm.templates:4001
+msgid "Recipient for email notifications:"
+msgstr "Sähköpostiviestien vastaanottaja:"
+
+#. Type: string
+#. Description
+#: ../mdadm.templates:4001
+msgid ""
+"Please enter the email address of the user who should get the email "
+"notifications for important MD events."
+msgstr ""
+"Anna sähköpostiosoite, johon sähköpostitiedotteet tärkeistä MD-tapahtumista "
+"lähetetään."
+
+#~ msgid "MD arrays needed for the root file system:"
+#~ msgstr "Juuritiedostojärjestelmän tarvitsemat MD-pakat:"
+
+#~ msgid ""
+#~ "Please enter 'all', 'none', or a space-separated list of devices such as "
+#~ "'md0 md1' or 'md/1 md/d0' (the leading '/dev/' can be omitted)."
+#~ msgstr ""
+#~ "Syötä ”all” (kaikki), ”none” (ei mitään) tai välilyönnein eroteltu lista "
+#~ "laitteista, esimerkiksi ”md0 md1” tai ”md/1 md/d0” (edeltävä /dev/ "
+#~ "voidaan jättää pois)."
+
+#~ msgid "for internal use - only the long description is needed."
+#~ msgstr "vain sisäiseen käyttöön - vain pitkä kuvaus on tarpeellinen."
+
+#~ msgid ""
+#~ "If the system's root file system is located on an MD array (RAID), it "
+#~ "needs to be started early during the boot sequence. If it is located on a "
+#~ "logical volume (LVM), which is on MD, all constituent arrays need to be "
+#~ "started."
+#~ msgstr ""
+#~ "Jos järjestelmän juuritiedostojärjestelmä sijaitsee MD-levypakassa "
+#~ "(RAID), pakka tulee käynnistää aikaisessa vaiheessa käynnistettäessä "
+#~ "järjestelmää. Jos se sijaitsee loogisella taltiolla (LVM), joka on MD-"
+#~ "pakassa, kaikki taltioon liittyvät pakat tulee käynnistää."
+
+#~ msgid ""
+#~ "If you know exactly which arrays are needed to bring up the root file "
+#~ "system, and you want to postpone starting all other arrays to a later "
+#~ "point in the boot sequence, enter the arrays to start here. "
+#~ "Alternatively, enter 'all' to simply start all available arrays."
+#~ msgstr ""
+#~ "Jos tiedät tarkalleen mitä pakkoja tarvitaan juuritiedostojärjestelmän "
+#~ "käynnistämiseen ja haluat viivästyttää muiden pakkojen käynnistystä, "
+#~ "syötä käynnistettävät pakat tähän. Vaihtoehtoisesti voit käynnistää "
+#~ "kaikki pakat syöttämällä ”all”."
+
+#~ msgid ""
+#~ "If you do not need or want to start any arrays for the root file system, "
+#~ "leave the answer blank (or enter 'none'). This may be the case if you are "
+#~ "using kernel autostart or do not need any arrays to boot."
+#~ msgstr ""
+#~ "Jos mitään pakkoja ei tarvitse käynnistää juuritiedostojärjestelmän "
+#~ "käyttämiseksi, jätä kenttä tyhjäksi (tai syötä ”none”). Tämä voi olla "
+#~ "tilanne, jos käytät ytimen autokäynnistystä tai et tarvitse mitään "
+#~ "pakkoja käynnistykseen."
+
+#~ msgid "An error occurred: device node does not exist"
+#~ msgstr "Tapahtui virhe: laitetiedostoa ei ole olemassa"
+
+#~ msgid "An error occurred: not a block device"
+#~ msgstr "Tapahtui virhe: ei lohkolaite"
+
+#~ msgid "An error occurred: not an MD array"
+#~ msgstr "Tapahtui virhe: ei MD-pakka"
+
+#~ msgid "An error occurred: array not listed in mdadm.conf file"
+#~ msgstr "Tapahtui virhe: pakkaa ei ole listattu tiedostossa mdadm.conf"
+
+#~ msgid "Start arrays not listed in mdadm.conf?"
+#~ msgstr ""
+#~ "Käynnistetäänkö pakat, joita ei ole listattu tiedostossa mdadm.conf?"
+
+#~ msgid ""
+#~ "The specified array (${array}) is not listed in the configuration file "
+#~ "(${config}). Therefore, it cannot be started during boot, unless you "
+#~ "correct the configuration file and recreate the initial ramdisk."
+#~ msgstr ""
+#~ "Annettua pakkaa (${array}) ei ole listattu asetustiedostossa (${config}). "
+#~ "Niinpä sitä ei voida käynnistää käynnistettäessä järjestelmä, ellei "
+#~ "asetustiedostoa korjata ja käynnistysmuistilevyä (initrd) luoda uudelleen."
+
+#~ msgid ""
+#~ "This warning is only relevant if you need arrays to be started from the "
+#~ "initial ramdisk to be able to boot. If you use kernel autostarting, or do "
+#~ "not need any arrays to be started as early as the initial ramdisk is "
+#~ "loaded, you can simply continue. Alternatively, choose not to continue "
+#~ "and enter 'none' when prompted which arrays to start from the initial "
+#~ "ramdisk."
+#~ msgstr ""
+#~ "Tämä varoitus on aiheellinen vain, jos järjestelmän käynnistäminen vaatii "
+#~ "pakkojen käynnistämistä käynnistysmuistilevyltä. Jos ytimen "
+#~ "autokäynnistys on käytössä tai pakkoja ei tarvita siinä vaiheessa, kun "
+#~ "käynnistysmuistilevy ladataan, voit jatkaa. Vaihtoehtoisesti voit olla "
+#~ "jatkamatta ja syöttää ”none” kysyttäessä käynnistysmuistilevyltä "
+#~ "käynnistettäviä pakkoja."
diff --git a/debian/po/fr.po b/debian/po/fr.po
new file mode 100644
index 0000000..df033b3
--- /dev/null
+++ b/debian/po/fr.po
@@ -0,0 +1,186 @@
+# Translation of mdadm debconf templates to French
+# Copyright (C) 2008 Florentin Duneau <fduneau@gmail.com>
+# This file is distributed under the same license as the lurker package.
+#
+#
+# Éric Madesclair <eric-m@wanadoo.fr>, 2005, 2006.
+# Jean-Luc Coulon (f5ibh) <jean-luc.coulon@wanadoo.fr>, 2006.
+# Florentin Duneau <fduneau@gmail.com>, 2006, 2007, 2008.
+msgid ""
+msgstr ""
+"Project-Id-Version: mdadm\n"
+"Report-Msgid-Bugs-To: mdadm@packages.debian.org\n"
+"POT-Creation-Date: 2016-07-05 14:12+0200\n"
+"PO-Revision-Date: 2008-02-15 20:42+0100\n"
+"Last-Translator: Florentin Duneau <fduneau@gmail.com>\n"
+"Language-Team: French <debian-l10n-french@lists.debian.org>\n"
+"Language: fr\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
+"X-Generator: KBabel 1.11.4\n"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid "Should mdadm run monthly redundancy checks of the MD arrays?"
+msgstr "Faut-il vérifier chaque mois la redondance des ensembles RAID ?"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid ""
+"If the kernel supports it (versions greater than 2.6.14), mdadm can "
+"periodically check the redundancy of MD arrays (RAIDs). This may be a "
+"resource-intensive process, depending on the local setup, but it could help "
+"prevent rare cases of data loss. Note that this is a read-only check unless "
+"errors are found; if errors are found, mdadm will try to correct them, which "
+"may result in write access to the media."
+msgstr ""
+"Si le noyau le gère (à partir de la version 2.6.14), mdadm peut vérifier "
+"périodiquement la redondance des ensembles RAID. Cette action peut demander "
+"beaucoup de ressources selon la configuration, mais cela aide à prévenir les "
+"rares cas de pertes de données. Notez que ce test est réalisé en lecture "
+"seule à moins que des erreurs ne soient rencontrées. Si des erreurs sont "
+"détectées, mdadm essayera de les corriger, ce qui entraînera des écritures "
+"sur le média."
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid ""
+"The default, if turned on, is to check on the first Sunday of every month at "
+"01:06."
+msgstr ""
+"Par défaut, la vérification s'effectuera tous les premiers dimanche du mois "
+"à 01 h 06."
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid "Do you want to start the MD monitoring daemon?"
+msgstr "Faut-il démarrer le démon de surveillance MD ?"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid ""
+"The MD (RAID) monitor daemon sends email notifications in response to "
+"important MD events (such as a disk failure)."
+msgstr ""
+"Le démon de surveillance MD envoie des notifications par courriel lors "
+"d'importants événements MD (comme une panne de disque dur)."
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid "Enabling this option is recommended."
+msgstr "Il est recommandé d'activer cette option."
+
+#. Type: string
+#. Description
+#: ../mdadm.templates:4001
+msgid "Recipient for email notifications:"
+msgstr "Destinataire des notifications par courriel :"
+
+#. Type: string
+#. Description
+#: ../mdadm.templates:4001
+msgid ""
+"Please enter the email address of the user who should get the email "
+"notifications for important MD events."
+msgstr ""
+"Veuillez indiquer l'adresse électronique de l'utilisateur qui doit recevoir "
+"les notifications lors d'importants événements MD."
+
+#~ msgid "MD arrays needed for the root file system:"
+#~ msgstr "Ensembles MD requis par le système de fichiers racine :"
+
+#~ msgid ""
+#~ "Please enter 'all', 'none', or a space-separated list of devices such as "
+#~ "'md0 md1' or 'md/1 md/d0' (the leading '/dev/' can be omitted)."
+#~ msgstr ""
+#~ "Veuillez indiquer « all », « none » ou une liste de périphériques, "
+#~ "séparés par des espaces, par exemple, « md0 md1 » ou « md/1 md/d0 » (vous "
+#~ "pouvez omettre « /dev/ »)."
+
+#~ msgid "for internal use - only the long description is needed."
+#~ msgstr ""
+#~ "Pour une utilisation interne - seule la description longue est nécessaire"
+
+#~ msgid ""
+#~ "If the system's root file system is located on an MD array (RAID), it "
+#~ "needs to be started early during the boot sequence. If it is located on a "
+#~ "logical volume (LVM), which is on MD, all constituent arrays need to be "
+#~ "started."
+#~ msgstr ""
+#~ "Si le système de fichiers racine se trouve sur un ensemble MD (RAID), il "
+#~ "doit être lancé au début de la procédure de démarrage. Si le système de "
+#~ "fichiers racine se trouve sur un volume logique (« LVM »), qui se trouve "
+#~ "aussi sur un volume MD, tous les composants de l'ensemble doivent être "
+#~ "démarrés."
+
+#~ msgid ""
+#~ "If you know exactly which arrays are needed to bring up the root file "
+#~ "system, and you want to postpone starting all other arrays to a later "
+#~ "point in the boot sequence, enter the arrays to start here. "
+#~ "Alternatively, enter 'all' to simply start all available arrays."
+#~ msgstr ""
+#~ "Si vous savez exactement quels sont les ensembles RAID nécessaires au "
+#~ "démarrage du système de fichiers racine et si vous souhaitez différer le "
+#~ "démarrage de tous les autres ensembles, veuillez les indiquer ici. Vous "
+#~ "pouvez aussi indiquer « all » pour démarrer tous les ensembles existants."
+
+#~ msgid ""
+#~ "If you do not need or want to start any arrays for the root file system, "
+#~ "leave the answer blank (or enter 'none'). This may be the case if you are "
+#~ "using kernel autostart or do not need any arrays to boot."
+#~ msgstr ""
+#~ "Si vous n'avez pas besoin ou ne souhaitez pas démarrer d'ensemble RAID "
+#~ "pour le système de fichiers racine, veuillez laissez l'entrée vide (ou "
+#~ "entrez « none »). Ceci peut être le cas si vous utilisez l'option de "
+#~ "démarrage automatique (« autostart ») du noyau ou si vous n'avez besoin "
+#~ "d'aucun ensemble pour démarrer."
+
+#~ msgid "An error occurred: device node does not exist"
+#~ msgstr "Erreur : périphérique inconnu"
+
+#~ msgid "An error occurred: not a block device"
+#~ msgstr "Erreur : ce n'est pas un périphérique en mode bloc"
+
+#~ msgid "An error occurred: not an MD array"
+#~ msgstr "Erreur : ce n'est pas un ensemble RAID"
+
+#~ msgid "An error occurred: array not listed in mdadm.conf file"
+#~ msgstr "Erreur : ensemble non mentionné dans le fichier mdadm.conf"
+
+#~ msgid "Start arrays not listed in mdadm.conf?"
+#~ msgstr ""
+#~ "Faut-il démarrer les ensembles RAID non mentionnés dans mdadm.conf ?"
+
+#~ msgid ""
+#~ "The specified array (${array}) is not listed in the configuration file "
+#~ "(${config}). Therefore, it cannot be started during boot, unless you "
+#~ "correct the configuration file and recreate the initial ramdisk."
+#~ msgstr ""
+#~ "L'ensemble (${array}) que vous avez spécifié n'est pas mentionné dans le "
+#~ "fichier de configuration ${config}. Il ne sera donc pas démarré à moins "
+#~ "que vous corrigiez le fichier de configuration et que vous génériez de "
+#~ "nouveau le disque mémoire initial (« ramdisk »)."
+
+#~ msgid ""
+#~ "This warning is only relevant if you need arrays to be started from the "
+#~ "initial ramdisk to be able to boot. If you use kernel autostarting, or do "
+#~ "not need any arrays to be started as early as the initial ramdisk is "
+#~ "loaded, you can simply continue. Alternatively, choose not to continue "
+#~ "and enter 'none' when prompted which arrays to start from the initial "
+#~ "ramdisk."
+#~ msgstr ""
+#~ "Cet avertissement n'a de signification que si des ensembles RAID doivent "
+#~ "être lancés à partir du disque mémoire initial afin de pouvoir démarrer "
+#~ "le système. Si vous utilisez le démarrage automatique par le noyau, ou si "
+#~ "vous n'avez pas besoin de lancer d'ensemble RAID depuis le disque mémoire "
+#~ "initial, vous pouvez simplement poursuivre. Vous pouvez aussi choisir de "
+#~ "ne pas poursuivre et entrer « none » lorsqu'il vous sera demandé le nom "
+#~ "des ensembles RAID à démarrer à partir du disque mémoire initial."
diff --git a/debian/po/gl.po b/debian/po/gl.po
new file mode 100644
index 0000000..85e76e3
--- /dev/null
+++ b/debian/po/gl.po
@@ -0,0 +1,177 @@
+# Galician translation of mdadm's debconf templates
+# This file is distributed under the same license as the mdadm package.
+# Jacobo Tarrio <jtarrio@debian.org>, 2007, 2008.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: mdadm\n"
+"Report-Msgid-Bugs-To: mdadm@packages.debian.org\n"
+"POT-Creation-Date: 2016-07-05 14:12+0200\n"
+"PO-Revision-Date: 2008-02-06 23:45+0000\n"
+"Last-Translator: Jacobo Tarrio <jtarrio@debian.org>\n"
+"Language-Team: Galician <proxecto@trasno.net>\n"
+"Language: gl\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid "Should mdadm run monthly redundancy checks of the MD arrays?"
+msgstr ""
+"¿Debería mdadm facer comprobacións mensuais de redundancia dos arrays MD?"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid ""
+"If the kernel supports it (versions greater than 2.6.14), mdadm can "
+"periodically check the redundancy of MD arrays (RAIDs). This may be a "
+"resource-intensive process, depending on the local setup, but it could help "
+"prevent rare cases of data loss. Note that this is a read-only check unless "
+"errors are found; if errors are found, mdadm will try to correct them, which "
+"may result in write access to the media."
+msgstr ""
+"Se o núcleo ten soporte para iso (en versións superiores á 2.6.14), mdadm "
+"pode facer comprobacións periódicas de redundancia dos arrays MD (RAIDs). "
+"Este pode ser un proceso intensivo en recursos, dependendo da configuración "
+"local, pero pode axudar a evitar algúns casos raros de perdas de datos. Teña "
+"en conta que esta é unha comprobación de só lectura a menos que se atopen "
+"erros; se se atopan erros, mdadm ha tratar de os arranxar, o que pode "
+"producir accesos de escritura aos soportes."
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid ""
+"The default, if turned on, is to check on the first Sunday of every month at "
+"01:06."
+msgstr ""
+"A opción por defecto, se se activa, é facer as comprobacións o primeiro "
+"domingo de cada mes ás 01:16."
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid "Do you want to start the MD monitoring daemon?"
+msgstr "¿Quere iniciar o servizo de monitorización de MD?"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid ""
+"The MD (RAID) monitor daemon sends email notifications in response to "
+"important MD events (such as a disk failure)."
+msgstr ""
+"O servizo de monitorización de MD (RAID) envía avisos por email en resposta "
+"a eventos importantes de MD (coma fallos nos discos)."
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid "Enabling this option is recommended."
+msgstr "Recoméndase activar esta opción."
+
+#. Type: string
+#. Description
+#: ../mdadm.templates:4001
+msgid "Recipient for email notifications:"
+msgstr "Destinatario para os avisos por email:"
+
+#. Type: string
+#. Description
+#: ../mdadm.templates:4001
+msgid ""
+"Please enter the email address of the user who should get the email "
+"notifications for important MD events."
+msgstr ""
+"Introduza o enderezo de email do usuario que debe recibir os avisos por "
+"email de eventos importantes de MD."
+
+#~ msgid "MD arrays needed for the root file system:"
+#~ msgstr "Arrays MD necesarios para o sistema de ficheiros raíz"
+
+#~ msgid ""
+#~ "Please enter 'all', 'none', or a space-separated list of devices such as "
+#~ "'md0 md1' or 'md/1 md/d0' (the leading '/dev/' can be omitted)."
+#~ msgstr ""
+#~ "Introduza \"all\" (todos), \"none\" (ningún) ou unha lista de "
+#~ "dispositivos separados por espazos, tales coma \"md0 md1\" ou \"md/1 "
+#~ "md/0\" (pódese omitir o \"/dev/\" do principio)."
+
+#~ msgid "for internal use - only the long description is needed."
+#~ msgstr "para uso interno - só se precisa da descrición longa."
+
+#~ msgid ""
+#~ "If the system's root file system is located on an MD array (RAID), it "
+#~ "needs to be started early during the boot sequence. If it is located on a "
+#~ "logical volume (LVM), which is on MD, all constituent arrays need to be "
+#~ "started."
+#~ msgstr ""
+#~ "Se o sistema de ficheiros raíz do sistema está ubicado nun array MD "
+#~ "(RAID), hai que o iniciar no principio da secuencia de inicio. Se está "
+#~ "ubicado nun volume lóxico (LVM) que está nun MD, hai que iniciar os "
+#~ "arrays constituíntes."
+
+#~ msgid ""
+#~ "If you know exactly which arrays are needed to bring up the root file "
+#~ "system, and you want to postpone starting all other arrays to a later "
+#~ "point in the boot sequence, enter the arrays to start here. "
+#~ "Alternatively, enter 'all' to simply start all available arrays."
+#~ msgstr ""
+#~ "Se sabe exactamente que arrays son necesarios para erguer o sistema de "
+#~ "ficheiros raíz, e se quere pospor o inicio dos demáis arrays ata un punto "
+#~ "posterior da secuencia de inicio, introduza aquí os arrays a iniciar. "
+#~ "Alternativamente, introduza \"all\" para iniciar tódolos arrays "
+#~ "dispoñibles."
+
+#~ msgid ""
+#~ "If you do not need or want to start any arrays for the root file system, "
+#~ "leave the answer blank (or enter 'none'). This may be the case if you are "
+#~ "using kernel autostart or do not need any arrays to boot."
+#~ msgstr ""
+#~ "Se non quere ou precisa de iniciar ningún array para o sistema de "
+#~ "ficheiros raíz, deixe a resposta en branco (ou introduza \"none\"). Este "
+#~ "pode ser o caso se está a empregar o autoinicio do núcleo ou non precisa "
+#~ "de ningún array para o inicio."
+
+#~ msgid "An error occurred: device node does not exist"
+#~ msgstr "Houbo un erro: o nodo do dispositivo non existe"
+
+#~ msgid "An error occurred: not a block device"
+#~ msgstr "Houbo un erro: non é un dispositivo de bloques"
+
+#~ msgid "An error occurred: not an MD array"
+#~ msgstr "Houbo un erro: non é un array MD"
+
+#~ msgid "An error occurred: array not listed in mdadm.conf file"
+#~ msgstr "Houbo un erro: o array non figura no ficheiro mdadm.conf"
+
+#~ msgid "Start arrays not listed in mdadm.conf?"
+#~ msgstr "¿Iniciar os arrays que non figuran en mdadm.conf?"
+
+#~ msgid ""
+#~ "The specified array (${array}) is not listed in the configuration file "
+#~ "(${config}). Therefore, it cannot be started during boot, unless you "
+#~ "correct the configuration file and recreate the initial ramdisk."
+#~ msgstr ""
+#~ "O array indicado (${array}) non figura no ficheiro de configuración "
+#~ "(${config}). Polo tanto, non se pode arrincar no inicio do sistema, a "
+#~ "menos que corrixa o ficheiro de configuración e volva crear o disco RAM "
+#~ "inicial."
+
+#~ msgid ""
+#~ "This warning is only relevant if you need arrays to be started from the "
+#~ "initial ramdisk to be able to boot. If you use kernel autostarting, or do "
+#~ "not need any arrays to be started as early as the initial ramdisk is "
+#~ "loaded, you can simply continue. Alternatively, choose not to continue "
+#~ "and enter 'none' when prompted which arrays to start from the initial "
+#~ "ramdisk."
+#~ msgstr ""
+#~ "Este aviso só é relevante se precisa de iniciar arrays desde o disco RAM "
+#~ "inicial para poder iniciar o sistema. Se emprega autoinicio do núcleo ou "
+#~ "non precisa de iniciar arrays tan pronto como se cargue o disco RAM "
+#~ "inicial, pode continuar. De xeito alternativo, escolla non continuar e "
+#~ "introduza \"none\" cando se lle pregunte que arrays quere iniciar do "
+#~ "disco RAM inicial."
diff --git a/debian/po/it.po b/debian/po/it.po
new file mode 100644
index 0000000..62d6cf0
--- /dev/null
+++ b/debian/po/it.po
@@ -0,0 +1,177 @@
+# Italian (it) translation of debconf templates for mdadm
+# Copyright (C) 2008 Software in the Public Interest
+# This file is distributed under the same license as the mdadm package.
+# Luca Monducci <luca.mo@tiscali.it>, 2008.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: mdadm italian debconf\n"
+"Report-Msgid-Bugs-To: mdadm@packages.debian.org\n"
+"POT-Creation-Date: 2016-07-05 14:12+0200\n"
+"PO-Revision-Date: 2008-11-19 11:02+0100\n"
+"Last-Translator: Luca Monducci <luca.mo@tiscali.it>\n"
+"Language-Team: Italian <debian-l10n-italian@lists.debian.org>\n"
+"Language: it\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid "Should mdadm run monthly redundancy checks of the MD arrays?"
+msgstr "Far eseguire a mdadm i controlli mensili di ridondanza sugli array MD?"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid ""
+"If the kernel supports it (versions greater than 2.6.14), mdadm can "
+"periodically check the redundancy of MD arrays (RAIDs). This may be a "
+"resource-intensive process, depending on the local setup, but it could help "
+"prevent rare cases of data loss. Note that this is a read-only check unless "
+"errors are found; if errors are found, mdadm will try to correct them, which "
+"may result in write access to the media."
+msgstr ""
+"Se il kernel lo supporta (tutte le versioni successive la 2.6.14), mdadm può "
+"effettuare delle verifiche periodiche sulla ridondanza degli array MD "
+"(RAID). Questo è un processo che potrebbe richiedere molte risorse, in base "
+"alle impostazioni locali, ma può prevenire i rari casi di perdita di dati. "
+"Notare che questa verifica è di sola-lettura tranne quando riscontra degli "
+"errori; quando ci sono errori, mdadm prova a correggerli e potrebbe accedere "
+"in scrittura al supporto."
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid ""
+"The default, if turned on, is to check on the first Sunday of every month at "
+"01:06."
+msgstr ""
+"Se attivo, la configurazione predefinita prevede che il controllo sia "
+"eseguito la prima domenica di ogni mese alle 01.06."
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid "Do you want to start the MD monitoring daemon?"
+msgstr "Avviare il demone di monitoraggio MD?"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid ""
+"The MD (RAID) monitor daemon sends email notifications in response to "
+"important MD events (such as a disk failure)."
+msgstr ""
+"Il demone di monitoraggio MD (RAID) invia delle notifiche via email quando "
+"si verificano eventi importanti (come la rottura di un disco)."
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid "Enabling this option is recommended."
+msgstr "Si raccomanda l'attivazione di questa funzione."
+
+#. Type: string
+#. Description
+#: ../mdadm.templates:4001
+msgid "Recipient for email notifications:"
+msgstr "Destinatario delle email di notifica:"
+
+#. Type: string
+#. Description
+#: ../mdadm.templates:4001
+msgid ""
+"Please enter the email address of the user who should get the email "
+"notifications for important MD events."
+msgstr ""
+"Inserire l'indirizzo email dell'utente che deve ricevere le notifiche di "
+"eventi importanti legati al MD."
+
+#~ msgid "MD arrays needed for the root file system:"
+#~ msgstr "Array MD necessari per il file system di root:"
+
+#~ msgid ""
+#~ "Please enter 'all', 'none', or a space-separated list of devices such as "
+#~ "'md0 md1' or 'md/1 md/d0' (the leading '/dev/' can be omitted)."
+#~ msgstr ""
+#~ "Inserire \"all\", \"none\" oppure un elenco dei device separati da uno "
+#~ "spazio, per esempio \"md0 md1\" o \"md/1 md/d0\" (il \"/dev/\" iniziale "
+#~ "può essere omesso)."
+
+#~ msgid "for internal use - only the long description is needed."
+#~ msgstr "uso interno - è necessaria solo la descrizione lunga."
+
+#~ msgid ""
+#~ "If the system's root file system is located on an MD array (RAID), it "
+#~ "needs to be started early during the boot sequence. If it is located on a "
+#~ "logical volume (LVM), which is on MD, all constituent arrays need to be "
+#~ "started."
+#~ msgstr ""
+#~ "Se il file system di root è su un array MD (RAID), è necessario attivare "
+#~ "tale array all'inizio della sequenza d'avvio. Se è su un volume logico "
+#~ "(LVM), il quale è su un MD, è necessario attivare tutti gli array che "
+#~ "costituiscono il volume."
+
+#~ msgid ""
+#~ "If you know exactly which arrays are needed to bring up the root file "
+#~ "system, and you want to postpone starting all other arrays to a later "
+#~ "point in the boot sequence, enter the arrays to start here. "
+#~ "Alternatively, enter 'all' to simply start all available arrays."
+#~ msgstr ""
+#~ "Se si conoscono esattamente quali sono gli array da attivare per il file "
+#~ "system di root e si vuole rimandare l'attivazione di tutti gli altri "
+#~ "array a una fase successiva della sequenza d'avvio, inserire adesso gli "
+#~ "array da attivare. In alternativa, inserire \"all\" per attivare tutti "
+#~ "gli array disponibili."
+
+#~ msgid ""
+#~ "If you do not need or want to start any arrays for the root file system, "
+#~ "leave the answer blank (or enter 'none'). This may be the case if you are "
+#~ "using kernel autostart or do not need any arrays to boot."
+#~ msgstr ""
+#~ "Se non si ha bisogno o non si vuole attivare nessun array per il file "
+#~ "system di root, lasciare la risposta in bianco (oppure inserire \"none"
+#~ "\"). Questo potrebbe essere il caso se si utilizza l'attivazione "
+#~ "automatica da kernel oppure se non si ha bisogno di alcun array per "
+#~ "l'avvio."
+
+#~ msgid "An error occurred: device node does not exist"
+#~ msgstr "Errore: il nodo del device non esiste"
+
+#~ msgid "An error occurred: not a block device"
+#~ msgstr "Errore: non è un device a blocchi"
+
+#~ msgid "An error occurred: not an MD array"
+#~ msgstr "Errore: non è un array MD"
+
+#~ msgid "An error occurred: array not listed in mdadm.conf file"
+#~ msgstr "Errore: array non elencato nel file mdadm.conf"
+
+#~ msgid "Start arrays not listed in mdadm.conf?"
+#~ msgstr "Avviare gli array non elencati in mdadm.conf?"
+
+#~ msgid ""
+#~ "The specified array (${array}) is not listed in the configuration file "
+#~ "(${config}). Therefore, it cannot be started during boot, unless you "
+#~ "correct the configuration file and recreate the initial ramdisk."
+#~ msgstr ""
+#~ "L'array specificato (${array}) non è presente nel file di configurazione "
+#~ "(${config}): quindi non può essere attivato durante l'avvio senza "
+#~ "correggere il file di configurazione e ricreare il ramdisk iniziale."
+
+#~ msgid ""
+#~ "This warning is only relevant if you need arrays to be started from the "
+#~ "initial ramdisk to be able to boot. If you use kernel autostarting, or do "
+#~ "not need any arrays to be started as early as the initial ramdisk is "
+#~ "loaded, you can simply continue. Alternatively, choose not to continue "
+#~ "and enter 'none' when prompted which arrays to start from the initial "
+#~ "ramdisk."
+#~ msgstr ""
+#~ "Questo avviso è pertinente solo se è necessario attivare gli array dal "
+#~ "ramdisk iniziale per permettere l'avvio. Con l'avvio automatico da kernel "
+#~ "o se non è necessario attivare gli array così presto come al caricamento "
+#~ "del ramdisk iniziale, si può proseguire. In alternativa, scegliere di non "
+#~ "continuare e inserire \"none\" quando viene chiesto quali array attivare "
+#~ "dal ramdisk iniziale."
diff --git a/debian/po/ja.po b/debian/po/ja.po
new file mode 100644
index 0000000..7f9c4fb
--- /dev/null
+++ b/debian/po/ja.po
@@ -0,0 +1,233 @@
+#
+# Translators, if you are not familiar with the PO format, gettext
+# documentation is worth reading, especially sections dedicated to
+# this format, e.g. by running:
+# info -n '(gettext)PO Files'
+# info -n '(gettext)Header Entry'
+#
+# Some information specific to po-debconf are available at
+# /usr/share/doc/po-debconf/README-trans
+# or http://www.debian.org/intl/l10n/po-debconf/README-trans
+#
+# Developers do not need to manually edit POT or PO files.
+#
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: mdadm 2.6.3+200709292116+4450e59-4\n"
+"Report-Msgid-Bugs-To: mdadm@packages.debian.org\n"
+"POT-Creation-Date: 2016-07-05 14:12+0200\n"
+"PO-Revision-Date: 2008-02-07 05:52+0900\n"
+"Last-Translator: Hideki Yamane (Debian-JP) <henrich@debian.or.jp>\n"
+"Language-Team: Japanese <debian-japanese@lists.debian.org>\n"
+"Language: ja\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid "Should mdadm run monthly redundancy checks of the MD arrays?"
+msgstr "mdadm は、毎月 MD アレイの冗長性チェックを行いますか?"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid ""
+"If the kernel supports it (versions greater than 2.6.14), mdadm can "
+"periodically check the redundancy of MD arrays (RAIDs). This may be a "
+"resource-intensive process, depending on the local setup, but it could help "
+"prevent rare cases of data loss. Note that this is a read-only check unless "
+"errors are found; if errors are found, mdadm will try to correct them, which "
+"may result in write access to the media."
+msgstr ""
+"カーネルがサポートしている場合 (バージョン 2.6.14 以降)、mdadm は定期的に MD "
+"アレイ (RAID) の冗長性チェックをすることが可能です。これは、設定に依存します"
+"がリソースを集中的に使用する動作です。しかし、稀なデータ消失をあらかじめ避け"
+"るのに役立つでしょう。これは、エラーが見つからない限りは読み込みチェックのみ"
+"であるのに注意してください。エラーが発見された場合、mdadm は修正しようとし"
+"て、結果的にメディアへ書き込みを行います。"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid ""
+"The default, if turned on, is to check on the first Sunday of every month at "
+"01:06."
+msgstr ""
+"有効にした場合、デフォルトでは毎月第一日曜 01:06 にチェックが実行されます。"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid "Do you want to start the MD monitoring daemon?"
+msgstr "MD 監視デーモンを起動しますか?"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid ""
+"The MD (RAID) monitor daemon sends email notifications in response to "
+"important MD events (such as a disk failure)."
+msgstr ""
+"MD (RAID) 監視デーモンは、重大な MD 関連のイベント (ディスク障害など) に対し"
+"てメールで通知を送ります。"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid "Enabling this option is recommended."
+msgstr "この機能を有効にするのをお勧めします。"
+
+#. Type: string
+#. Description
+#: ../mdadm.templates:4001
+msgid "Recipient for email notifications:"
+msgstr "メール通知の宛先:"
+
+#. Type: string
+#. Description
+#: ../mdadm.templates:4001
+msgid ""
+"Please enter the email address of the user who should get the email "
+"notifications for important MD events."
+msgstr ""
+"MD 関連の重大なイベントが発生した際、メールでの通知を受け取る必要があるユーザ"
+"のメールアドレスを入力してください。"
+
+#~ msgid "MD arrays needed for the root file system:"
+#~ msgstr "ルートファイルシステムに必要な MD アレイ:"
+
+#~ msgid ""
+#~ "Please enter 'all', 'none', or a space-separated list of devices such as "
+#~ "'md0 md1' or 'md/1 md/d0' (the leading '/dev/' can be omitted)."
+#~ msgstr ""
+#~ "'all' または 'none'、あるいはデバイスのリストを 'md0 md1' や 'md/1 md/d0' "
+#~ "のようにスペースで区切って入力してください (前に付く '/dev/' は省略可能で"
+#~ "す)。"
+
+#~ msgid "for internal use - only the long description is needed."
+#~ msgstr "内部での利用について - でも、長い説明が必要です。"
+
+#~ msgid ""
+#~ "If the system's root file system is located on an MD array (RAID), it "
+#~ "needs to be started early during the boot sequence. If it is located on a "
+#~ "logical volume (LVM), which is on MD, all constituent arrays need to be "
+#~ "started."
+#~ msgstr ""
+#~ "あなたのシステムのルートファイルシステムが MD アレイ (RAID) 上に配置されて"
+#~ "いるならば、ブートシーケンスの初期段階で MD アレイを開始する必要がありま"
+#~ "す。ルートファイルシステムが MD のような論理ボリューム (LVM) 上にある場合"
+#~ "は、構成しているアレイ全ての開始が必要です。"
+
+#~ msgid ""
+#~ "If you know exactly which arrays are needed to bring up the root file "
+#~ "system, and you want to postpone starting all other arrays to a later "
+#~ "point in the boot sequence, enter the arrays to start here. "
+#~ "Alternatively, enter 'all' to simply start all available arrays."
+#~ msgstr ""
+#~ "どのアレイがルートファイルシステムの立ち上げに必要かを正確に知っており、"
+#~ "ブートシーケンスの後の時点まで意図しているもの以外全てのアレイ起動を遅らせ"
+#~ "たい場合、ここで最初に起動するアレイを入力してください。そうでない場"
+#~ "合、'all' と入力して単に全ての利用可能なアレイを最初に立ち上げてください。"
+
+#~ msgid ""
+#~ "If you do not need or want to start any arrays for the root file system, "
+#~ "leave the answer blank (or enter 'none'). This may be the case if you are "
+#~ "using kernel autostart or do not need any arrays to boot."
+#~ msgstr ""
+#~ "ルートファイルシステムのために、どのアレイも必要ない、あるいはどのアレイも"
+#~ "起動したくは無いという場合は、空白のままに (あるいは 'none' と入力) してく"
+#~ "ださい。これは、カーネルで自動的に起動される場合や起動時にはアレイは不要で"
+#~ "あるという場合です。"
+
+#~ msgid "An error occurred: device node does not exist"
+#~ msgstr "エラーが発生しました: デバイスノードが存在しません"
+
+#~ msgid "An error occurred: not a block device"
+#~ msgstr "エラーが発生しました: ブロックデバイスではありません"
+
+#~ msgid "An error occurred: not an MD array"
+#~ msgstr "エラーが発生しました: MD アレイではありません"
+
+#~ msgid "An error occurred: array not listed in mdadm.conf file"
+#~ msgstr ""
+#~ "エラーが発生しました: mdadm.conf ファイルに記述されていないアレイです"
+
+#~ msgid "Start arrays not listed in mdadm.conf?"
+#~ msgstr "mdadm.conf に記述されていないアレイを起動しますか?"
+
+#~ msgid ""
+#~ "The specified array (${array}) is not listed in the configuration file "
+#~ "(${config}). Therefore, it cannot be started during boot, unless you "
+#~ "correct the configuration file and recreate the initial ramdisk."
+#~ msgstr ""
+#~ "指定したアレイ (${array}) は設定ファイル (${config}) に記述されていませ"
+#~ "ん。そのため、設定ファイルを修正して initrd を再生成しなければブート時に起"
+#~ "動できません。"
+
+#~ msgid ""
+#~ "This warning is only relevant if you need arrays to be started from the "
+#~ "initial ramdisk to be able to boot. If you use kernel autostarting, or do "
+#~ "not need any arrays to be started as early as the initial ramdisk is "
+#~ "loaded, you can simply continue. Alternatively, choose not to continue "
+#~ "and enter 'none' when prompted which arrays to start from the initial "
+#~ "ramdisk."
+#~ msgstr ""
+#~ "この警告は、ブートできるようにアレイを initrd から起動する必要がある場合だ"
+#~ "け関係します。カーネルで自動的にアレイを起動するようにしている場合、あるい"
+#~ "は initrd がロードされる程早い段階でどのアレイも起動したくはない場合はその"
+#~ "まま続行できます。他の選択肢としては、起動の続行を中止し、どのアレイを "
+#~ "initrd から起動するかを尋ねられた際に 'none' と入力します。"
+
+#~ msgid ""
+#~ "WARNING! If you are using hard disks which have RAID superblocks from "
+#~ "earlier installations in different RAID arrays, you MUST zero each "
+#~ "superblock *before* activating the autostart feature."
+#~ msgstr ""
+#~ "警告! 以前のインストールによって他の RAID アレイに対する RAID superblock "
+#~ "を保持しているハードディスクを使っている場合、自動起動機能を有効にする"
+#~ "「前」に、その superblock をゼロで上書きすることが「必要」です。"
+
+#~ msgid ""
+#~ "To do this, do not start the RAID devices automatically. First, zero the "
+#~ "superblock (mdadm --zero-superblock /dev/mdX). Next, use `dpkg-"
+#~ "reconfigure mdadm` to reactivate the autostart feature."
+#~ msgstr ""
+#~ "これを行うには、RAID デバイスを自動的に起動してはいけません。まず、 "
+#~ "superblock をゼロで上書きします (mdadm --zero-superblock /dev/xxx)。 そし"
+#~ "て、自動起動機能を有効にするため、'dpkg-reconfigure mdadm' コマンドを実行"
+#~ "します。"
+
+#~ msgid ""
+#~ "You have the option to start all other arrays (those not needed for the "
+#~ "root filesystem) later in the boot sequence. Doing so will give you "
+#~ "greater control over the arrays with the mdadm configuration file. "
+#~ "Starting all arrays at boot-time may be safer though."
+#~ msgstr ""
+#~ "ブートシーケンスの後ろの方で (root ファイルシステムには必要ない) 他のアレ"
+#~ "イ全てを起動するという選択肢もあります。これを選べば、mdadm の設定ファイル"
+#~ "を使って、アレイについて様々な設定が出来るようになるでしょう。もっとも、起"
+#~ "動時に全てのアレイを起動するほうが安全ではあります。"
+
+#~ msgid ""
+#~ "If RAID devices are started automatically, all RAID devices are "
+#~ "discovered and assembled automatically at system startup. This option "
+#~ "should only be used if the md driver is compiled as a module. If it is "
+#~ "compiled into your kernel, the automatic startup will be performed at "
+#~ "boot time by the kernel and therefore you should not choose this option."
+#~ msgstr ""
+#~ "RAID デバイスが自動的に起動するようにすると、システム起動時に全ての RAID "
+#~ "デバイスが検出され、自動的に構成されます。このオプションは md ドライバがモ"
+#~ "ジュールとしてコンパイルされている場合のみに利用します。カーネルに組み込ん"
+#~ "でコンパイルしていた場合、システム起動時にカーネルによって自動起動が実行さ"
+#~ "れるので、このオプションでの選択はできません。"
+
+#~ msgid ""
+#~ "When the RAID monitor daemon runs, email notifications are sent when a "
+#~ "disk belonging to a RAID array fails or changes its status for some "
+#~ "reason."
+#~ msgstr ""
+#~ "RAID 監視デーモンが動作している場合、RAID アレイに属しているディスクが故障"
+#~ "するか何らかの理由で変化した際にメールで通知が送られます。"
diff --git a/debian/po/nl.po b/debian/po/nl.po
new file mode 100644
index 0000000..34f473e
--- /dev/null
+++ b/debian/po/nl.po
@@ -0,0 +1,188 @@
+# translation of mdadm_2.6.3+200709292116+4450e59-4.po to Dutch
+#
+# Translators, if you are not familiar with the PO format, gettext
+# documentation is worth reading, especially sections dedicated to
+# this format, e.g. by running:
+# info -n '(gettext)PO Files'
+# info -n '(gettext)Header Entry'
+# Some information specific to po-debconf are available at
+# /usr/share/doc/po-debconf/README-trans
+# or http://www.debian.org/intl/l10n/po-debconf/README-trans#
+# Developers do not need to manually edit POT or PO files.
+#
+# Frans Pop <aragorn@tiscali.nl>, 2005, 2006.
+# Frans Pop <elendil@planet.nl>, 2008.
+msgid ""
+msgstr ""
+"Project-Id-Version: mdadm_2.6.3+200709292116+4450e59-4\n"
+"Report-Msgid-Bugs-To: mdadm@packages.debian.org\n"
+"POT-Creation-Date: 2016-07-05 14:12+0200\n"
+"PO-Revision-Date: 2008-02-19 14:04+0100\n"
+"Last-Translator: Frans Pop <elendil@planet.nl>\n"
+"Language-Team: Dutch <debian-l10n-dutch@lists.debian.org>\n"
+"Language: nl\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid "Should mdadm run monthly redundancy checks of the MD arrays?"
+msgstr "Maandelijkse redundantiecontrole van RAID-reeksen uitvoeren?"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid ""
+"If the kernel supports it (versions greater than 2.6.14), mdadm can "
+"periodically check the redundancy of MD arrays (RAIDs). This may be a "
+"resource-intensive process, depending on the local setup, but it could help "
+"prevent rare cases of data loss. Note that this is a read-only check unless "
+"errors are found; if errors are found, mdadm will try to correct them, which "
+"may result in write access to the media."
+msgstr ""
+"Als uw kernel dit ondersteunt (versies groter dan 2.6.14), kan mdadm "
+"periodiek de redundantie van uw RAID reeksen controleren. Afhankelijk van uw "
+"configuratie kan dit een intensief proces zijn, maar het kan wel helpen om "
+"uitzonderlijke gevallen van gegevensverlies te voorkomen. Zolang geen fouten "
+"worden gevonden, zal het proces alleen gegevens lezen; als echter wel fouten "
+"worden gevonden zal mdadm deze proberen te corrigeren."
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid ""
+"The default, if turned on, is to check on the first Sunday of every month at "
+"01:06."
+msgstr ""
+"Standaard wordt de controle, indien geactiveerd, uitgevoerd om 01:06 op elke "
+"eerste zondag van de maand."
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid "Do you want to start the MD monitoring daemon?"
+msgstr "Wilt u de achtergronddienst voor de RAID-monitor starten?"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid ""
+"The MD (RAID) monitor daemon sends email notifications in response to "
+"important MD events (such as a disk failure)."
+msgstr ""
+"De achtergronddienst voor de RAID-monitor stuurt per e-mail berichten bij "
+"belangrijke gebeurtenissen die betrekking hebben op RAID (zoals een falende "
+"harde schijf)."
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid "Enabling this option is recommended."
+msgstr "Gebruik van deze optie wordt aanbevolen."
+
+#. Type: string
+#. Description
+#: ../mdadm.templates:4001
+msgid "Recipient for email notifications:"
+msgstr "Adres voor e-mailberichten:"
+
+#. Type: string
+#. Description
+#: ../mdadm.templates:4001
+msgid ""
+"Please enter the email address of the user who should get the email "
+"notifications for important MD events."
+msgstr ""
+"Wat is het e-mailadres van de gebruiker die de e-mailberichten voor "
+"belangrijke gebeurtenissen met betrekking tot RAID dient te ontvangen."
+
+#~ msgid "MD arrays needed for the root file system:"
+#~ msgstr "Voor het basisbestandssysteem benodigde RAID-reeksen:"
+
+#~ msgid ""
+#~ "Please enter 'all', 'none', or a space-separated list of devices such as "
+#~ "'md0 md1' or 'md/1 md/d0' (the leading '/dev/' can be omitted)."
+#~ msgstr ""
+#~ "Geef in 'all' (alle), 'none' (geen) of één of meerdere apparaatbestanden "
+#~ "(gescheiden door spaties), bijvoorbeeld \"md0 md1\" of \"md/1 md/d0\" (de "
+#~ "prefix '/dev/' kan dus worden weggelaten)."
+
+#~ msgid "for internal use - only the long description is needed."
+#~ msgstr "Voor intern gebruik - alleen de lange omschrijving wordt gebruikt."
+
+#~ msgid ""
+#~ "If the system's root file system is located on an MD array (RAID), it "
+#~ "needs to be started early during the boot sequence. If it is located on a "
+#~ "logical volume (LVM), which is on MD, all constituent arrays need to be "
+#~ "started."
+#~ msgstr ""
+#~ "Als het basisbestandssysteem van uw systeem zich op een RAID-volume "
+#~ "bevindt, dient dit vroeg in de opstartcyclus geactiveerd te worden. Als "
+#~ "het zich op een logisch volume (LVM) op RAID bevindt, dienen alle "
+#~ "betrokken reeksen geactiveerd te worden."
+
+#~ msgid ""
+#~ "If you know exactly which arrays are needed to bring up the root file "
+#~ "system, and you want to postpone starting all other arrays to a later "
+#~ "point in the boot sequence, enter the arrays to start here. "
+#~ "Alternatively, enter 'all' to simply start all available arrays."
+#~ msgstr ""
+#~ "Als u precies weet welke reeksen benodigd zijn voor het "
+#~ "basisbestandssysteem en u het activeren van alle overige reeksen wilt "
+#~ "uitstellen tot later in de opstartprocedure, geef dan hier de te "
+#~ "activeren reeksen in. Anders kunt u 'all' ingeven om alle beschikbare "
+#~ "reeksen te activeren."
+
+#~ msgid ""
+#~ "If you do not need or want to start any arrays for the root file system, "
+#~ "leave the answer blank (or enter 'none'). This may be the case if you are "
+#~ "using kernel autostart or do not need any arrays to boot."
+#~ msgstr ""
+#~ "Als u geen reeksen hoeft of wenst te activeren voor het "
+#~ "basisbestandssysteem, laat dan het antwoord leeg (of geef 'none' in). Dit "
+#~ "kan het geval zijn als u \"kernel autostart\" gebruikt of geen reeksen "
+#~ "nodig heeft om uw systeem op te starten."
+
+#~ msgid "An error occurred: device node does not exist"
+#~ msgstr "Er is een fout opgetreden: apparaatbestand bestaat niet"
+
+#~ msgid "An error occurred: not a block device"
+#~ msgstr "Er is een fout opgetreden: geen blokapparaat"
+
+#~ msgid "An error occurred: not an MD array"
+#~ msgstr "Er is een fout opgetreden: geen RAID reeks"
+
+#~ msgid "An error occurred: array not listed in mdadm.conf file"
+#~ msgstr ""
+#~ "Er is een fout opgetreden: reeks komt niet voor in bestand mdadm.conf"
+
+#~ msgid "Start arrays not listed in mdadm.conf?"
+#~ msgstr "Reeksen activeren die niet in mdadm.conf voorkomen?"
+
+#~ msgid ""
+#~ "The specified array (${array}) is not listed in the configuration file "
+#~ "(${config}). Therefore, it cannot be started during boot, unless you "
+#~ "correct the configuration file and recreate the initial ramdisk."
+#~ msgstr ""
+#~ "De reeks die u heeft opgegeven (${array}) komt niet voor in het "
+#~ "configuratiebestand (${config}). Tenzij u het configuratiebestand "
+#~ "corrigeert en de initiële ramdisk opnieuw aanmaakt, kan deze reeks "
+#~ "tijdens het opstarten van het systeem niet worden geactiveerd."
+
+#~ msgid ""
+#~ "This warning is only relevant if you need arrays to be started from the "
+#~ "initial ramdisk to be able to boot. If you use kernel autostarting, or do "
+#~ "not need any arrays to be started as early as the initial ramdisk is "
+#~ "loaded, you can simply continue. Alternatively, choose not to continue "
+#~ "and enter 'none' when prompted which arrays to start from the initial "
+#~ "ramdisk."
+#~ msgstr ""
+#~ "Deze waarschuwing is alleen relevant als de reeksen geactiveerd moeten "
+#~ "worden vanuit een initiële ramdisk om het systeem te kunnen opstarten. "
+#~ "Als u \"kernel autostart\" gebruikt of er geen reeksen zijn die vanuit de "
+#~ "initiële ramdisk gestart moeten worden, kunt u gewoon doorgaan. Kies "
+#~ "anders nu om niet door te gaan en geef 'none' in bij de vraag welke "
+#~ "reeksen vanuit de initiële ramdisk gestart moeten worden."
diff --git a/debian/po/pt.po b/debian/po/pt.po
new file mode 100644
index 0000000..2b549e9
--- /dev/null
+++ b/debian/po/pt.po
@@ -0,0 +1,179 @@
+# Portuguese translation for mdadm debconf messages.
+# Copyright (C) 2008 Pedro Ribeiro <p.m42.ribeiro@gmail.com>
+# This file is distributed under the same license as the mdadm package.
+# Pedro Ribeiro <p.m42.ribeiro@gmail.com>, 2008
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: mdadm 2.6.3+200709292116+4450e59-4\n"
+"Report-Msgid-Bugs-To: mdadm@packages.debian.org\n"
+"POT-Creation-Date: 2016-07-05 14:12+0200\n"
+"PO-Revision-Date: 2008-02-21 00:15+0000\n"
+"Last-Translator: Pedro Ribeiro <p.m42.ribeiro@gmail.com>\n"
+"Language-Team: Portuguese <traduz@debianpt.org>\n"
+"Language: pt\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid "Should mdadm run monthly redundancy checks of the MD arrays?"
+msgstr ""
+"O mdadm deve correr verificações de redundância nos grupos MD mensalmente?"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid ""
+"If the kernel supports it (versions greater than 2.6.14), mdadm can "
+"periodically check the redundancy of MD arrays (RAIDs). This may be a "
+"resource-intensive process, depending on the local setup, but it could help "
+"prevent rare cases of data loss. Note that this is a read-only check unless "
+"errors are found; if errors are found, mdadm will try to correct them, which "
+"may result in write access to the media."
+msgstr ""
+"Se o kernel suportar (versões mais recentes que 2.6.14) o mdadm pode "
+"verificar periodicamente a redundância dos grupos MD (RAIDs). Isto pode ser "
+"um processo que requer muitos recursos, dependendo da sua configuração, mas "
+"pode prevenir casos raros de perda de dados. Notar que esta verificação é "
+"feita em modo de leitura a não ser que sejam encontrados erros; se forem "
+"encontrados erros, o mdadm tenta corrigi-los, o que pode resultar em "
+"acessosde escrita aos discos."
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid ""
+"The default, if turned on, is to check on the first Sunday of every month at "
+"01:06."
+msgstr ""
+"O pré-definido, se ligado, é os testes serem executados no primeiro Domingo "
+"de cada mês às 01:06."
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid "Do you want to start the MD monitoring daemon?"
+msgstr "Quer iniciar o deamon de monitorização do MD?"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid ""
+"The MD (RAID) monitor daemon sends email notifications in response to "
+"important MD events (such as a disk failure)."
+msgstr ""
+"O daemon monitor MD(RAID) envia notificações por email no caso de eventos "
+"importantes (tais como falha de um disco). Provavelmente quer activar esta "
+"opção."
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid "Enabling this option is recommended."
+msgstr "É recomendado activar esta opção."
+
+#. Type: string
+#. Description
+#: ../mdadm.templates:4001
+msgid "Recipient for email notifications:"
+msgstr "Destinatário de email para notificações:"
+
+#. Type: string
+#. Description
+#: ../mdadm.templates:4001
+msgid ""
+"Please enter the email address of the user who should get the email "
+"notifications for important MD events."
+msgstr ""
+"Por favor, introduza o endereço de email do utilizador que deve receber as "
+"notificações de eventos MD importantes."
+
+#~ msgid "MD arrays needed for the root file system:"
+#~ msgstr "Grupos MD necessários para o sistema de ficheiros raiz:"
+
+#~ msgid ""
+#~ "Please enter 'all', 'none', or a space-separated list of devices such as "
+#~ "'md0 md1' or 'md/1 md/d0' (the leading '/dev/' can be omitted)."
+#~ msgstr ""
+#~ "Por favor, introduza 'all', 'none', ou uma lista de dispositivos "
+#~ "separados por espaços, tais como 'md0 md1' ou 'md/1 md/d0' (o '/dev/' "
+#~ "inicial pode ser omitido)."
+
+#~ msgid "for internal use - only the long description is needed."
+#~ msgstr "para uso interno - apenas a descrição longa é necessária"
+
+#~ msgid ""
+#~ "If the system's root file system is located on an MD array (RAID), it "
+#~ "needs to be started early during the boot sequence. If it is located on a "
+#~ "logical volume (LVM), which is on MD, all constituent arrays need to be "
+#~ "started."
+#~ msgstr ""
+#~ "Se o sistema de ficheiros de raiz do sistema estiver num grupo MD (RAID), "
+#~ "necessita de ser iniciado mais cedo na sequência de arranque. Se o seu "
+#~ "sistema de ficheiros de raiz estiver num volume lógico (LVM) que está no "
+#~ "MD, todos os grupos constituintes necessitam de ser iniciados."
+
+#~ msgid ""
+#~ "If you know exactly which arrays are needed to bring up the root file "
+#~ "system, and you want to postpone starting all other arrays to a later "
+#~ "point in the boot sequence, enter the arrays to start here. "
+#~ "Alternatively, enter 'all' to simply start all available arrays."
+#~ msgstr ""
+#~ "Se souber exactamente que grupos são necessários para iniciar o sistema "
+#~ "de ficheiros raiz, e quiser adiar o inicio de todos os outros grupos para "
+#~ "mais tarde no processo de arranque, introduza os grupos aqui. "
+#~ "Alternativamente, introduza 'all' para iniciar todos os grupos "
+#~ "disponíveis."
+
+#~ msgid ""
+#~ "If you do not need or want to start any arrays for the root file system, "
+#~ "leave the answer blank (or enter 'none'). This may be the case if you are "
+#~ "using kernel autostart or do not need any arrays to boot."
+#~ msgstr ""
+#~ "Se não necessita ou deseja iniciar grupos para o sistema de ficheiros "
+#~ "raiz, deixe a resposta em branco (ou introduza 'none'). Isto vale no caso "
+#~ "de usar o auto-arranque do kernel ou não necessitar de grupos para o "
+#~ "arranque do sistema."
+
+#~ msgid "An error occurred: device node does not exist"
+#~ msgstr "Ocorreu um erro: o nó do dispositivo não existe"
+
+#~ msgid "An error occurred: not a block device"
+#~ msgstr "Ocorreu um erro: não é um dispositivo de bloco"
+
+#~ msgid "An error occurred: not an MD array"
+#~ msgstr "Ocorreu um erro: não é um grupo MD"
+
+#~ msgid "An error occurred: array not listed in mdadm.conf file"
+#~ msgstr "Ocorreu um erro: o grupo não está listado no ficheiro mdadm.conf"
+
+#~ msgid "Start arrays not listed in mdadm.conf?"
+#~ msgstr "Iniciar grupos não listados no mdadm.conf?"
+
+#~ msgid ""
+#~ "The specified array (${array}) is not listed in the configuration file "
+#~ "(${config}). Therefore, it cannot be started during boot, unless you "
+#~ "correct the configuration file and recreate the initial ramdisk."
+#~ msgstr ""
+#~ "O grupo especificado (${array}) não está listado no ficheiro de "
+#~ "configuração (${config}). Portanto, não pode ser iniciado durante o "
+#~ "processo de arranque, a não ser que corrija o ficheiro de configuração e "
+#~ "recrie o ramdisk inicial."
+
+#~ msgid ""
+#~ "This warning is only relevant if you need arrays to be started from the "
+#~ "initial ramdisk to be able to boot. If you use kernel autostarting, or do "
+#~ "not need any arrays to be started as early as the initial ramdisk is "
+#~ "loaded, you can simply continue. Alternatively, choose not to continue "
+#~ "and enter 'none' when prompted which arrays to start from the initial "
+#~ "ramdisk."
+#~ msgstr ""
+#~ "Este aviso só é relevante se houver necessidade de iniciar grupos a "
+#~ "partir do ramdisk durante o arranque do sistema. Se usar o auto-arranque "
+#~ "do kernel, ou não necessitar de iniciar os grupos tão cedo no processo de "
+#~ "arranque do sistema, pode simplesmente continuar. Em alternativa, escolha "
+#~ "não continuar e introduza 'none' quando perguntado sobre quais grupos "
+#~ "iniciar a partir do ramdisk inicial."
diff --git a/debian/po/pt_BR.po b/debian/po/pt_BR.po
new file mode 100644
index 0000000..3f6df2f
--- /dev/null
+++ b/debian/po/pt_BR.po
@@ -0,0 +1,304 @@
+#
+# Translators, if you are not familiar with the PO format, gettext
+# documentation is worth reading, especially sections dedicated to
+# this format, e.g. by running:
+# info -n '(gettext)PO Files'
+# info -n '(gettext)Header Entry'
+#
+# Some information specific to po-debconf are available at
+# /usr/share/doc/po-debconf/README-trans
+# or http://www.debian.org/intl/l10n/po-debconf/README-trans
+#
+# Developers do not need to manually edit POT or PO files.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: mdadm\n"
+"Report-Msgid-Bugs-To: mdadm@packages.debian.org\n"
+"POT-Creation-Date: 2016-07-05 14:12+0200\n"
+"PO-Revision-Date: 2006-09-24 19:22-0300\n"
+"Last-Translator: Felipe Augusto van de Wiel (faw) <faw@cathedrallabs.org>\n"
+"Language-Team: l10n portuguese <debian-l10n-portuguese@lists.debian.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"pt_BR utf-8\n"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid "Should mdadm run monthly redundancy checks of the MD arrays?"
+msgstr ""
+"O mdadm deve, mensalmente, executar checagens de redundância dos "
+"dispositivos MD?"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+#, fuzzy
+#| msgid ""
+#| "If your kernel supports it (>> 2.6.14), mdadm can periodically check the "
+#| "redundancy of your MD arrays (RAIDs). This may be a resource-intensive "
+#| "process, depending on your setup, but it could help prevent rare cases of "
+#| "data loss. Note that this is a read-only check unless errors are found; "
+#| "if errors are found, mdadm will try to correct them, which may result in "
+#| "write access to the media."
+msgid ""
+"If the kernel supports it (versions greater than 2.6.14), mdadm can "
+"periodically check the redundancy of MD arrays (RAIDs). This may be a "
+"resource-intensive process, depending on the local setup, but it could help "
+"prevent rare cases of data loss. Note that this is a read-only check unless "
+"errors are found; if errors are found, mdadm will try to correct them, which "
+"may result in write access to the media."
+msgstr ""
+"Se o seu kernel suporta isto (>> 2.6.14), mdadm pode periodicamente checar a "
+"redundância dos seus dispositivos MD (RAIDs). Isto pode ser um processo com "
+"uso intensivo dos recursos, dependendo da sua configuração, mas pode ajudar "
+"a previnir casos raros de perdas de dados. Note que esta é uma checagem "
+"somente-leitura a menos que erros sejam encontrados; se erros são "
+"encontrados, mdadm tentará corrigí-los, o que poderá resultar em acesso de "
+"escrita na mídia."
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+#, fuzzy
+#| msgid ""
+#| "The default, if turned on, is to run the checks on the first Sunday of "
+#| "every month at 01:06 o'clock."
+msgid ""
+"The default, if turned on, is to check on the first Sunday of every month at "
+"01:06."
+msgstr ""
+"O padrão, se ativado, é executar checagens no primeiro Domingo de cada mês "
+"às 01:06 em ponto."
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid "Do you want to start the MD monitoring daemon?"
+msgstr "Você deseja iniciar o \"daemon\" de monitoramento MD?"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+#, fuzzy
+#| msgid ""
+#| "The MD (RAID) monitor daemon sends email notifications in response to "
+#| "important MD events (such as a disk failure). You probably want to enable "
+#| "it."
+msgid ""
+"The MD (RAID) monitor daemon sends email notifications in response to "
+"important MD events (such as a disk failure)."
+msgstr ""
+"O \"daemon\" de monitoramento MD (RAID) envia e-mails de notificações em "
+"resposta a eventos MD importantes (como uma falha de disco). Você "
+"provavelmente quer habilitar esta opção."
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid "Enabling this option is recommended."
+msgstr ""
+
+#. Type: string
+#. Description
+#: ../mdadm.templates:4001
+msgid "Recipient for email notifications:"
+msgstr "Destinatário para os e-mails de notificações:"
+
+#. Type: string
+#. Description
+#: ../mdadm.templates:4001
+#, fuzzy
+#| msgid ""
+#| "Please enter the email address of the user who should get the email "
+#| "notification for important MD events."
+msgid ""
+"Please enter the email address of the user who should get the email "
+"notifications for important MD events."
+msgstr ""
+"Por favor, informe o endereço de e-mail do usuário que deverá receber os e-"
+"mails de notificações para estes eventos MD importantes."
+
+#, fuzzy
+#~| msgid "MD arrays needed for the root filesystem:"
+#~ msgid "MD arrays needed for the root file system:"
+#~ msgstr "Dispositivos MD necessários para o sistema de arquivos raiz:"
+
+#, fuzzy
+#~| msgid ""
+#~| "Please enter a space-separated list of devices, 'all', or 'none'. You "
+#~| "may omit the leading '/dev/' and just enter e.g. \"md0 md1\", or \"md/1 "
+#~| "md/d0\"."
+#~ msgid ""
+#~ "Please enter 'all', 'none', or a space-separated list of devices such as "
+#~ "'md0 md1' or 'md/1 md/d0' (the leading '/dev/' can be omitted)."
+#~ msgstr ""
+#~ "Por favor, informe uma lista separada por espaços dos dispositivos, 'all' "
+#~ "ou 'none'. Você pode omitir a parte inicial '/dev/' e apenas informar, "
+#~ "por exemplo, \"md0 md1\", ou \"md/1 md/d0\"."
+
+#~ msgid "for internal use - only the long description is needed."
+#~ msgstr "para uso interno - apenas a descrição longa é necessária."
+
+#, fuzzy
+#~| msgid ""
+#~| "If your system has its root filesystem on an MD array (RAID), it needs "
+#~| "to be started early during the boot sequence. If your root filesystem is "
+#~| "on a logical volume (LVM), which is on MD, all constituent arrays need "
+#~| "to be started."
+#~ msgid ""
+#~ "If the system's root file system is located on an MD array (RAID), it "
+#~ "needs to be started early during the boot sequence. If it is located on a "
+#~ "logical volume (LVM), which is on MD, all constituent arrays need to be "
+#~ "started."
+#~ msgstr ""
+#~ "Se o seu sistema tem o sistema de arquivos raiz em um dispositivo MD "
+#~ "(RAID), este precisa ser iniciado mais cedo durante a seqüência de "
+#~ "inicialização. Se o sistema de arquivos raiz está em um volume lógico "
+#~ "(LVM), que está em um MD, todos os dispositivos que o constituem precisam "
+#~ "ser iniciados."
+
+#, fuzzy
+#~| msgid ""
+#~| "If you know exactly which arrays are needed to bring up the root "
+#~| "filesystem, and you want to postpone starting all other arrays to a "
+#~| "later point in the boot sequence, enter the arrays to start here. "
+#~| "Alternatively, enter 'all' to simply start all available arrays."
+#~ msgid ""
+#~ "If you know exactly which arrays are needed to bring up the root file "
+#~ "system, and you want to postpone starting all other arrays to a later "
+#~ "point in the boot sequence, enter the arrays to start here. "
+#~ "Alternatively, enter 'all' to simply start all available arrays."
+#~ msgstr ""
+#~ "Se você sabe exatamente quais dispositivos são necessários para ativar o "
+#~ "sistema de arquivos raiz, e você deseja adiar o início de todos os outros "
+#~ "dispositivos para um ponto posterior na seqüência de inicialização, "
+#~ "informe os dispositivos a serem iniciados aqui. Como alternativa, informe "
+#~ "'all' para simplesmente iniciar todos os dispositivos disponíveis."
+
+#, fuzzy
+#~| msgid ""
+#~| "If you do not need or want to start any arrays for the root filesystem, "
+#~| "leave the answer blank (or enter 'none'). This may be the case if you "
+#~| "are using kernel autostart or do not need any arrays to boot."
+#~ msgid ""
+#~ "If you do not need or want to start any arrays for the root file system, "
+#~ "leave the answer blank (or enter 'none'). This may be the case if you are "
+#~ "using kernel autostart or do not need any arrays to boot."
+#~ msgstr ""
+#~ "Se você não precisa ou não quer iniciar quaisquer dispositivos para o "
+#~ "sistema de arquivos raiz, deixe a resposta em branco (ou informe 'none'). "
+#~ "Este pode ser o caso se você está usando \"kernel autostart\" ou não "
+#~ "precisa de quaisquer dispositivos para a inicialização."
+
+#~ msgid "An error occurred: device node does not exist"
+#~ msgstr "Um erro ocorreu: o dispositivo (\"device node\") não existe"
+
+#~ msgid "An error occurred: not a block device"
+#~ msgstr "Um erro ocorreu: não é um dispositivo de blocos"
+
+#~ msgid "An error occurred: not an MD array"
+#~ msgstr "Um erro ocorreu: não é um dispositivo MD"
+
+#~ msgid "An error occurred: array not listed in mdadm.conf file"
+#~ msgstr "Um erro ocorreu: dispositivo não listado no arquivo mdadm.conf"
+
+#, fuzzy
+#~| msgid "Proceed with starting arrays not listed in mdadm.conf?"
+#~ msgid "Start arrays not listed in mdadm.conf?"
+#~ msgstr "Continuar com o início de dispositivos não listados no mdadm.conf?"
+
+#, fuzzy
+#~| msgid ""
+#~| "The array you have specified (${array}) is not listed in the "
+#~| "configuration file ${config}. Therefore it cannot be started during "
+#~| "boot, unless you correct the configuration file and recreate the initial "
+#~| "ramdisk."
+#~ msgid ""
+#~ "The specified array (${array}) is not listed in the configuration file "
+#~ "(${config}). Therefore, it cannot be started during boot, unless you "
+#~ "correct the configuration file and recreate the initial ramdisk."
+#~ msgstr ""
+#~ "O dispositivo que você especificou (${array}) não está listado no arquivo "
+#~ "de configuração ${config}. Portanto não pode ser iniciado durante a "
+#~ "inicialização, a menos que você corrija o arquivo de configuração e "
+#~ "recrie o \"ramdisk\" inicial."
+
+#~ msgid ""
+#~ "This warning is only relevant if you need arrays to be started from the "
+#~ "initial ramdisk to be able to boot. If you use kernel autostarting, or do "
+#~ "not need any arrays to be started as early as the initial ramdisk is "
+#~ "loaded, you can simply continue. Alternatively, choose not to continue "
+#~ "and enter 'none' when prompted which arrays to start from the initial "
+#~ "ramdisk."
+#~ msgstr ""
+#~ "Este aviso só é relevante se você precisa de dispositivos que sejam "
+#~ "iniciados a partir do \"ramdisk\" inicial para que seja possível "
+#~ "inicializar o computador. Se você usa \"kernel autostarting\", ou não "
+#~ "precisa de quaisquer dispositivos sendo iniciados tão logo o \"ramdisk\" "
+#~ "inicial seja carregado, você pode simplesmente continuar. "
+#~ "Alternativamente, escolha não continuar e informe 'none' quando "
+#~ "perguntado quais dispositivos iniciar a partir do \"ramdisk\" inicial."
+
+#~ msgid "Initialise the superblock if you reuse hard disks"
+#~ msgstr "Inicialize o superbloco caso você reutilize discos rígidos"
+
+#~ msgid ""
+#~ "WARNING! If you are using hard disks which have RAID superblocks from "
+#~ "earlier installations in different RAID arrays, you MUST zero each "
+#~ "superblock *before* activating the autostart feature."
+#~ msgstr ""
+#~ "AVISO! Se você estiver usando discos rígidos que já contêm superblocos "
+#~ "RAID de instalações anteriores em \"arrays\" RAID diferentes, você DEVE "
+#~ "zerar o superbloco *antes* de ativar o recurso de \"autostart\"."
+
+#~ msgid ""
+#~ "To do this, do not start the RAID devices automatically. First, zero the "
+#~ "superblock (mdadm --zero-superblock /dev/mdX). Next, use `dpkg-"
+#~ "reconfigure mdadm` to reactivate the autostart feature."
+#~ msgstr ""
+#~ "Para fazê-lo, não inicie os dispositivos RAID automaticamente. Primeiro, "
+#~ "zere os superblocos (mdadm --zero-superblock /dev/mdX). Em seguida, use "
+#~ "`dpkg-reconfigure mdadm` para reativar o recurso de \"autostart\"."
+
+#~ msgid ""
+#~ "You have the option to start all other arrays (those not needed for the "
+#~ "root filesystem) later in the boot sequence. Doing so will give you "
+#~ "greater control over the arrays with the mdadm configuration file. "
+#~ "Starting all arrays at boot-time may be safer though."
+#~ msgstr ""
+#~ "Você tem a opção de iniciar todos os \"arrays\" (aqueles que não são "
+#~ "necessários pelo sistema de arquivos raiz) posteriormente na seqüência de "
+#~ "inicialização. Fazendo isto, você terá um controle maior sobre os \"arrays"
+#~ "\" com o arquivo de configuração mdadm. No entanto, iniciar todos os "
+#~ "\"arrays\" durante a inicialização pode ser mais seguro."
+
+#~ msgid ""
+#~ "If RAID devices are started automatically, all RAID devices are "
+#~ "discovered and assembled automatically at system startup. This option "
+#~ "should only be used if the md driver is compiled as a module. If it is "
+#~ "compiled into your kernel, the automatic startup will be performed at "
+#~ "boot time by the kernel and therefore you should not choose this option."
+#~ msgstr ""
+#~ "Caso os dispositivos RAID sejam iniciados automaticamente, todos os "
+#~ "dispositivos RAID serão detectados e montados automaticamente na "
+#~ "inicialização do sistema operacional. Esta opção deverá ser usada somente "
+#~ "caso o driver md esteja compilado como módulo. Caso o mesmo esteja "
+#~ "compilado embutido em seu kernel, a inicialização automática será "
+#~ "executada em tempo de inicialização pelo próprio kernel e, portanto, você "
+#~ "não deverá e nem precisará escolher esta opção."
+
+#~ msgid ""
+#~ "When the RAID monitor daemon runs, email notifications are sent when a "
+#~ "disk belonging to a RAID array fails or changes its status for some "
+#~ "reason."
+#~ msgstr ""
+#~ "Quando o daemon monitorador RAID é executado, notificações via e-mail são "
+#~ "enviadas quando um disco pertencente a uma array RAID falha ou muda seu "
+#~ "status por qualquer razão."
+
+#~ msgid "Which user should get the email notification?"
+#~ msgstr "Qual usuário deve receber o e-mail de notificação ?"
diff --git a/debian/po/ru.po b/debian/po/ru.po
new file mode 100644
index 0000000..8bf8c5c
--- /dev/null
+++ b/debian/po/ru.po
@@ -0,0 +1,189 @@
+# translation of ru.po to Russian
+#
+# Translators, if you are not familiar with the PO format, gettext
+# documentation is worth reading, especially sections dedicated to
+# this format, e.g. by running:
+# info -n '(gettext)PO Files'
+# info -n '(gettext)Header Entry'
+# Some information specific to po-debconf are available at
+# /usr/share/doc/po-debconf/README-trans
+# or http://www.debian.org/intl/l10n/po-debconf/README-trans#
+# Developers do not need to manually edit POT or PO files.
+#
+# Yuri Kozlov <kozlov.y@gmail.com>, 2006, 2008.
+msgid ""
+msgstr ""
+"Project-Id-Version: 2.6.3+200709292116+4450e59-4\n"
+"Report-Msgid-Bugs-To: mdadm@packages.debian.org\n"
+"POT-Creation-Date: 2016-07-05 14:12+0200\n"
+"PO-Revision-Date: 2008-02-07 21:02+0300\n"
+"Last-Translator: Yuri Kozlov <kozlov.y@gmail.com>\n"
+"Language-Team: Russian <debian-l10n-russian@lists.debian.org>\n"
+"Language: ru\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
+"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid "Should mdadm run monthly redundancy checks of the MD arrays?"
+msgstr ""
+"Должен ли mdadm запускать ежемесячную проверку избыточности на MD-массивах?"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid ""
+"If the kernel supports it (versions greater than 2.6.14), mdadm can "
+"periodically check the redundancy of MD arrays (RAIDs). This may be a "
+"resource-intensive process, depending on the local setup, but it could help "
+"prevent rare cases of data loss. Note that this is a read-only check unless "
+"errors are found; if errors are found, mdadm will try to correct them, which "
+"may result in write access to the media."
+msgstr ""
+"Если это поддерживается ядром (>> 2.6.14), mdadm может периодически "
+"проверять избыточность MD массивов (RAID-ов). Это может стать ресурсоёмким "
+"процессом в зависимости от настройки, но он может помочь предотвратить "
+"редкие случаи потери данных. Заметим, что пока не обнаружено ошибок, работа "
+"ведётся в режиме только чтение; если обнаруживается ошибка, mdadm попытается "
+"исправить её, что может потребовать прав записи на носитель."
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid ""
+"The default, if turned on, is to check on the first Sunday of every month at "
+"01:06."
+msgstr ""
+"Если ответить утвердительно, то по умолчанию проверка выполняется в первое "
+"воскресенье каждого месяца в 01:06."
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid "Do you want to start the MD monitoring daemon?"
+msgstr "Запускать демон-монитор MD?"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid ""
+"The MD (RAID) monitor daemon sends email notifications in response to "
+"important MD events (such as a disk failure)."
+msgstr ""
+"Демон-монитор MD (RAID) посылает почтовые уведомления в случае возникновения "
+"важных событий с MD (таких как отказ диска)."
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid "Enabling this option is recommended."
+msgstr "Рекомендуется ответить утвердительно."
+
+#. Type: string
+#. Description
+#: ../mdadm.templates:4001
+msgid "Recipient for email notifications:"
+msgstr "Получатель уведомительных писем:"
+
+#. Type: string
+#. Description
+#: ../mdadm.templates:4001
+msgid ""
+"Please enter the email address of the user who should get the email "
+"notifications for important MD events."
+msgstr ""
+"Введите адрес электронной почты пользователя, который будет получать "
+"почтовые уведомления о важных изменениях в состоянии MD."
+
+#~ msgid "MD arrays needed for the root file system:"
+#~ msgstr "MD-массивы, необходимые для корневой файловой системы:"
+
+#~ msgid ""
+#~ "Please enter 'all', 'none', or a space-separated list of devices such as "
+#~ "'md0 md1' or 'md/1 md/d0' (the leading '/dev/' can be omitted)."
+#~ msgstr ""
+#~ "Введите список устройств через пробел, слово 'all' или 'none'. Вы можете "
+#~ "не указывать начальную часть пути типа '/dev/', а просто вводить имена "
+#~ "устройств, например 'md0 md1' или 'md/1 md/d0'."
+
+#~ msgid "for internal use - only the long description is needed."
+#~ msgstr ""
+#~ "для внутреннего пользования - нужно использовать только длинное описание."
+
+#~ msgid ""
+#~ "If the system's root file system is located on an MD array (RAID), it "
+#~ "needs to be started early during the boot sequence. If it is located on a "
+#~ "logical volume (LVM), which is on MD, all constituent arrays need to be "
+#~ "started."
+#~ msgstr ""
+#~ "Если в системе корневая файловая система расположена на MD-массиве "
+#~ "(RAID), он должен быть запущен в самом начале процесса загрузки. Если "
+#~ "корневая файловая система расположена на логическом томе (LVM), который "
+#~ "расположен на MD, то должны быть запущены все составляющие массивы."
+
+#~ msgid ""
+#~ "If you know exactly which arrays are needed to bring up the root file "
+#~ "system, and you want to postpone starting all other arrays to a later "
+#~ "point in the boot sequence, enter the arrays to start here. "
+#~ "Alternatively, enter 'all' to simply start all available arrays."
+#~ msgstr ""
+#~ "Если вы точно знаете, какие массивы требуются для получения "
+#~ "работоспособной корневой файловой системы и хотите отложить запуск "
+#~ "остальных массивов на более поздний момент в процессе загрузки, то "
+#~ "введите их здесь. Иначе, введите слово 'all', чтобы просто запустить все "
+#~ "доступные массивы."
+
+#~ msgid ""
+#~ "If you do not need or want to start any arrays for the root file system, "
+#~ "leave the answer blank (or enter 'none'). This may be the case if you are "
+#~ "using kernel autostart or do not need any arrays to boot."
+#~ msgstr ""
+#~ "Если вам это не нужно, или вы хотите запускать все массивы для корневой "
+#~ "файловой системы, оставьте это поле пустым (или введите слово 'none'). "
+#~ "Этот вариант подходит, если вы используете автоматический запуск из ядра "
+#~ "или если для загрузки массивы ненужны."
+
+#~ msgid "An error occurred: device node does not exist"
+#~ msgstr "Произошла ошибка: нода устройства не существует"
+
+#~ msgid "An error occurred: not a block device"
+#~ msgstr "Произошла ошибка: устройство не является блочным"
+
+#~ msgid "An error occurred: not an MD array"
+#~ msgstr "Произошла ошибка: это не MD-массив"
+
+#~ msgid "An error occurred: array not listed in mdadm.conf file"
+#~ msgstr "Произошла ошибка: массив не описан в файле mdadm.conf"
+
+#~ msgid "Start arrays not listed in mdadm.conf?"
+#~ msgstr "Запустить массивы, неописанные в mdadm.conf?"
+
+#~ msgid ""
+#~ "The specified array (${array}) is not listed in the configuration file "
+#~ "(${config}). Therefore, it cannot be started during boot, unless you "
+#~ "correct the configuration file and recreate the initial ramdisk."
+#~ msgstr ""
+#~ "Указанный вами массив (${array}) не описан в конфигурационном файле "
+#~ "(${config}). Поэтому он не может быть запущен при старте машины, пока вы "
+#~ "не исправите конфигурационный файл и не пересоздадите первоначальный "
+#~ "ramdisk."
+
+#~ msgid ""
+#~ "This warning is only relevant if you need arrays to be started from the "
+#~ "initial ramdisk to be able to boot. If you use kernel autostarting, or do "
+#~ "not need any arrays to be started as early as the initial ramdisk is "
+#~ "loaded, you can simply continue. Alternatively, choose not to continue "
+#~ "and enter 'none' when prompted which arrays to start from the initial "
+#~ "ramdisk."
+#~ msgstr ""
+#~ "Данное предупреждение уместно только, если вам требуется запускать "
+#~ "массивы из первоначального ramdisk для загрузки машины. Если вы "
+#~ "используете автоматический запуск из ядра или вам не нужны массивы для "
+#~ "загрузки на этапе загрузки первоначального ramdisk, вы можете просто "
+#~ "продолжить. Иначе, выберите не продолжать и введите 'none', когда вам "
+#~ "предложат выбрать массивы для запуска из первоначального ramdisk."
diff --git a/debian/po/sk.po b/debian/po/sk.po
new file mode 100644
index 0000000..c84247b
--- /dev/null
+++ b/debian/po/sk.po
@@ -0,0 +1,176 @@
+# Slovak translations for mdadm package
+# Slovenské preklady pre balík mdadm.
+# Copyright (C) 2011 THE mdadm'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the mdadm package.
+# Automatically generated, 2011.
+# Slavko <linux@slavino.sk>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: mdadm 3.2.2-1\n"
+"Report-Msgid-Bugs-To: mdadm@packages.debian.org\n"
+"POT-Creation-Date: 2016-07-05 14:12+0200\n"
+"PO-Revision-Date: 2011-09-18 11:22+0200\n"
+"Last-Translator: Slavko <linux@slavino.sk>\n"
+"Language-Team: Slovak <debian-l10n-slovak@lists.debian.org>\n"
+"Language: sk\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid "Should mdadm run monthly redundancy checks of the MD arrays?"
+msgstr "Má mdadm spúšťať mesačnú kontrolu redundancie polí MD?"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid ""
+"If the kernel supports it (versions greater than 2.6.14), mdadm can "
+"periodically check the redundancy of MD arrays (RAIDs). This may be a "
+"resource-intensive process, depending on the local setup, but it could help "
+"prevent rare cases of data loss. Note that this is a read-only check unless "
+"errors are found; if errors are found, mdadm will try to correct them, which "
+"may result in write access to the media."
+msgstr ""
+"Ak to jadro podporuje (verzie novšie ako 2.6.14), mdadm môže periodicky "
+"kontrolovať redundanciu polí MD (RAIDov). Tento proces môže byť (v "
+"závislosti od lokálneho nastavenia) náročný na zdroje systému, ale môže "
+"pomôcť pri predchádzaní vzácnym prípadom straty dát. Pamätajte, že, pokiaľ "
+"nie sú nájdené chyby, je to kontrola read-only, až keď sú nájdené chyby, "
+"pokúsi sa ich mdadm opraviť, čo môže mať za následok zápis na médium."
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid ""
+"The default, if turned on, is to check on the first Sunday of every month at "
+"01:06."
+msgstr ""
+"Predvolene je vypnuté, ak túto možnosť zapnete, bude kontrola vykonávaná "
+"každú prvú nedeľu mesiaca o 01:06."
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid "Do you want to start the MD monitoring daemon?"
+msgstr "Chcete spustiť démona monitorovania MD?"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid ""
+"The MD (RAID) monitor daemon sends email notifications in response to "
+"important MD events (such as a disk failure)."
+msgstr ""
+"Monitorovací démon MD (RAID) posiela upozornenia emailom, ako reakcie na "
+"dôležité udalosti MD (napr. zlyhanie disku)."
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid "Enabling this option is recommended."
+msgstr "Povolenie tejto možnosti je odporúčané."
+
+#. Type: string
+#. Description
+#: ../mdadm.templates:4001
+msgid "Recipient for email notifications:"
+msgstr "Príjemca emailových upozornení:"
+
+#. Type: string
+#. Description
+#: ../mdadm.templates:4001
+msgid ""
+"Please enter the email address of the user who should get the email "
+"notifications for important MD events."
+msgstr ""
+"Prosím, zadajte emailovú adresu používateľa, ktorý má dostávať emailové "
+"upozornenia na dôležité udalosti MD."
+
+#~ msgid "MD arrays needed for the root file system:"
+#~ msgstr "Polia MD, potrebné pre koreň súborového systému:"
+
+#~ msgid ""
+#~ "Please enter 'all', 'none', or a space-separated list of devices such as "
+#~ "'md0 md1' or 'md/1 md/d0' (the leading '/dev/' can be omitted)."
+#~ msgstr ""
+#~ "Prosím, zadajte „all”, „none” alebo medzerou oddelený zoznam zariadení, "
+#~ "napr. „md0 md1” alebo „md/1 md/d0” (počiatočné „/dev/” môže byť "
+#~ "vynechané)."
+
+#~ msgid "for internal use - only the long description is needed."
+#~ msgstr "na interné použitie – potrebný je len dlhý popis."
+
+#~ msgid ""
+#~ "If the system's root file system is located on an MD array (RAID), it "
+#~ "needs to be started early during the boot sequence. If it is located on a "
+#~ "logical volume (LVM), which is on MD, all constituent arrays need to be "
+#~ "started."
+#~ msgstr ""
+#~ "Ak je koreň súborového systému umiestnený na poli MD (RAID), musí byť "
+#~ "spustený počas zavádzania systému. Ak je koreň umiestnený na logickom "
+#~ "zväzku (LVM), ktorý je na MD, musia byť spustené všetky súvisiace polia."
+
+#~ msgid ""
+#~ "If you know exactly which arrays are needed to bring up the root file "
+#~ "system, and you want to postpone starting all other arrays to a later "
+#~ "point in the boot sequence, enter the arrays to start here. "
+#~ "Alternatively, enter 'all' to simply start all available arrays."
+#~ msgstr ""
+#~ "Ak viete presne, ktoré polia sú potrebné na pripojenie koreňa súborového "
+#~ "systému a chcete odložiť štart všetkých ostatných polí na neskorší okamih "
+#~ "zavádzania, zadajte tu polia, ktoré majú byť spustené. Alebo zadajte "
+#~ "„all”, čím budú jednoducho spustené všetky dostupné polia."
+
+#~ msgid ""
+#~ "If you do not need or want to start any arrays for the root file system, "
+#~ "leave the answer blank (or enter 'none'). This may be the case if you are "
+#~ "using kernel autostart or do not need any arrays to boot."
+#~ msgstr ""
+#~ "Ak pre koreň súborového systému nepotrebujete alebo nechcete spúšťať "
+#~ "žiadne polia, nechajte odpoveď prázdnu (alebo zadajte „none”). Tento "
+#~ "prípad môže nastať, ak používate automatický štart polí priamo v jadre "
+#~ "alebo nepotrebujete pri zavádzaní žiadne polia."
+
+#~ msgid "An error occurred: device node does not exist"
+#~ msgstr "Nastala chyba: uzol zariadenia neexistuje"
+
+#~ msgid "An error occurred: not a block device"
+#~ msgstr "Nastala chyba: nie je blokové zariadenie"
+
+#~ msgid "An error occurred: not an MD array"
+#~ msgstr "Nastala chyba: nie je pole MD"
+
+#~ msgid "An error occurred: array not listed in mdadm.conf file"
+#~ msgstr "Nastala chyba: pole nie je uvedené v súbore mdadm.conf"
+
+#~ msgid "Start arrays not listed in mdadm.conf?"
+#~ msgstr "Spustiť polia, ktoré nie sú uvedené v mdadm.conf?"
+
+#~ msgid ""
+#~ "The specified array (${array}) is not listed in the configuration file "
+#~ "(${config}). Therefore, it cannot be started during boot, unless you "
+#~ "correct the configuration file and recreate the initial ramdisk."
+#~ msgstr ""
+#~ "Zadané pole (${array}) nie je uvedené v konfiguračnom súbore (${config}), "
+#~ "a preto nemôže byť spustené počas zavádzania, až kým neopravíte "
+#~ "konfiguračný súbor a nevytvoríte nový počiatočný ramdisk (initrd)."
+
+#~ msgid ""
+#~ "This warning is only relevant if you need arrays to be started from the "
+#~ "initial ramdisk to be able to boot. If you use kernel autostarting, or do "
+#~ "not need any arrays to be started as early as the initial ramdisk is "
+#~ "loaded, you can simply continue. Alternatively, choose not to continue "
+#~ "and enter 'none' when prompted which arrays to start from the initial "
+#~ "ramdisk."
+#~ msgstr ""
+#~ "Toto varovanie je dôležité, len ak potrebujete aby boli polia spúšťané z "
+#~ "počiatočného ramdisku, aby boli dostupné počas zavádzania. Ak používate "
+#~ "automatické spúšťanie polí priamo z jadra, alebo ak nepotrebujte aby boli "
+#~ "polia spúšťané tak skoro (z počiatočného ramdisku), môžete prosto "
+#~ "pokračovať. Alebo môžete zvoliť nepokračovať a odpovedať „none” na "
+#~ "otázku, ktoré polia majú byť spúšťané z počiatočného ramdisku."
diff --git a/debian/po/sv.po b/debian/po/sv.po
new file mode 100644
index 0000000..ed9f1f2
--- /dev/null
+++ b/debian/po/sv.po
@@ -0,0 +1,186 @@
+# translation of mdadm_2.6.7-3_sv.po to Swedish
+# Translators, if you are not familiar with the PO format, gettext
+# documentation is worth reading, especially sections dedicated to
+# this format, e.g. by running:
+# info -n '(gettext)PO Files'
+# info -n '(gettext)Header Entry'
+# Some information specific to po-debconf are available at
+# /usr/share/doc/po-debconf/README-trans
+# or http://www.debian.org/intl/l10n/po-debconf/README-trans
+# Developers do not need to manually edit POT or PO files.
+#
+# Martin gren <martin.agren@gmail.com>, 2008.
+msgid ""
+msgstr ""
+"Project-Id-Version: mdadm_2.6.7-3_sv\n"
+"Report-Msgid-Bugs-To: mdadm@packages.debian.org\n"
+"POT-Creation-Date: 2016-07-05 14:12+0200\n"
+"PO-Revision-Date: 2008-07-23 18:34+0200\n"
+"Last-Translator: Martin gren <martin.agren@gmail.com>\n"
+"Language-Team: Swedish <debian-l10n-swedish@lists.debian.org>\n"
+"Language: sv\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=ISO-8859-1\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid "Should mdadm run monthly redundancy checks of the MD arrays?"
+msgstr "Ska mdadm kra mnatliga redundanskontroller av MD-kedjorna?"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid ""
+"If the kernel supports it (versions greater than 2.6.14), mdadm can "
+"periodically check the redundancy of MD arrays (RAIDs). This may be a "
+"resource-intensive process, depending on the local setup, but it could help "
+"prevent rare cases of data loss. Note that this is a read-only check unless "
+"errors are found; if errors are found, mdadm will try to correct them, which "
+"may result in write access to the media."
+msgstr ""
+"Om din krna har std fr det (versioner senare n 2.6.14), kan mdadm "
+"periodvis kontrollera redundansen fr dina MD-kedjor (RAID). Det hr kan "
+"vara en resurskrvande process, beroende p din konfiguration, men den kan "
+"hjlpa till att frhindra ovanliga fall av datafrluster. Observera att det "
+"r en skrivskyddad kontroll svida inte fel ptrffas; om fel hittas kommer "
+"mdadm frska att rtta till dem, vilket kan leda till skrivtkomst till "
+"mediet."
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid ""
+"The default, if turned on, is to check on the first Sunday of every month at "
+"01:06."
+msgstr ""
+"Standardvrdet, om pslagen, r att kontrollera p den frsta sndagen i "
+"varje mnad klockan 01.06."
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid "Do you want to start the MD monitoring daemon?"
+msgstr "Vill du starta MD-vervakningsdemonen?"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid ""
+"The MD (RAID) monitor daemon sends email notifications in response to "
+"important MD events (such as a disk failure)."
+msgstr ""
+"MD-vervakningsdemonen (RAID) skickar e-postnotifieringar fr viktiga MD-"
+"hndelser (ssom ett diskfel)."
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid "Enabling this option is recommended."
+msgstr "Att aktivera denna funktion rekommenderas."
+
+#. Type: string
+#. Description
+#: ../mdadm.templates:4001
+msgid "Recipient for email notifications:"
+msgstr "Mottagare av e-postnotifieringar:"
+
+#. Type: string
+#. Description
+#: ../mdadm.templates:4001
+msgid ""
+"Please enter the email address of the user who should get the email "
+"notifications for important MD events."
+msgstr ""
+"Ange e-postadressen till den anvndare som ska ta emot e-postnotifieringar "
+"fr dessa viktiga MD-hndelser."
+
+#~ msgid "MD arrays needed for the root file system:"
+#~ msgstr "MD-kedjor som behvs fr rotfilsystemet:"
+
+#~ msgid ""
+#~ "Please enter 'all', 'none', or a space-separated list of devices such as "
+#~ "'md0 md1' or 'md/1 md/d0' (the leading '/dev/' can be omitted)."
+#~ msgstr ""
+#~ "Ange \"all\", \"none\" eller en blankstegsseparerad lista p enheter, "
+#~ "ssom \"md0 md1\" eller \"md/1 md/0\" (det inledande \"/dev\" kan "
+#~ "uteslutas)."
+
+#~ msgid "for internal use - only the long description is needed."
+#~ msgstr "fr intern anvndning - endast den lnga beskrivningen behvs."
+
+#~ msgid ""
+#~ "If the system's root file system is located on an MD array (RAID), it "
+#~ "needs to be started early during the boot sequence. If it is located on a "
+#~ "logical volume (LVM), which is on MD, all constituent arrays need to be "
+#~ "started."
+#~ msgstr ""
+#~ "Om ditt system har sitt rotfilsystem p en MD-kedja (RAID) behver den "
+#~ "startas upp tidigt under uppstartssekvensen. Om ditt rotfilsystem finns "
+#~ "p en logisk volym (LVM), vilket r p MD, behver alla bestende kedjor "
+#~ "startas."
+
+#~ msgid ""
+#~ "If you know exactly which arrays are needed to bring up the root file "
+#~ "system, and you want to postpone starting all other arrays to a later "
+#~ "point in the boot sequence, enter the arrays to start here. "
+#~ "Alternatively, enter 'all' to simply start all available arrays."
+#~ msgstr ""
+#~ "Om du vet exakt vilka kedjor som behvs fr att ta upp rotfilsystemet, "
+#~ "och du vill skjuta upp uppstarten fr alla andra kedjor till en senare "
+#~ "tidspunkt i uppstartssekvensen, ange vilka kedjor som ska starta hr. "
+#~ "Alternativt, ange \"all\" fr att helt enkelt starta alla tillgngliga "
+#~ "kedjor."
+
+#~ msgid ""
+#~ "If you do not need or want to start any arrays for the root file system, "
+#~ "leave the answer blank (or enter 'none'). This may be the case if you are "
+#~ "using kernel autostart or do not need any arrays to boot."
+#~ msgstr ""
+#~ "Om du inte behver eller vill starta ngra kedjor fr rotfilsystemet, "
+#~ "lmna svaret blankt (eller ange \"none\"). Detta kan vara fallet om du "
+#~ "anvnder krnans automatstart eller inte behver ngra kedjor fr att "
+#~ "starta upp."
+
+#~ msgid "An error occurred: device node does not exist"
+#~ msgstr "Ett fel intrffade: enhetsnoden finns inte"
+
+#~ msgid "An error occurred: not a block device"
+#~ msgstr "Ett fel intrffade: inte en blockenhet"
+
+#~ msgid "An error occurred: not an MD array"
+#~ msgstr "Ett fel intrffade: inte en MD-kedja"
+
+#~ msgid "An error occurred: array not listed in mdadm.conf file"
+#~ msgstr "Ett fel intrffade: kedjan r inte listad i filen mdadm.conf"
+
+#~ msgid "Start arrays not listed in mdadm.conf?"
+#~ msgstr "Starta kedjor som inte r listade i mdadm.conf?"
+
+#~ msgid ""
+#~ "The specified array (${array}) is not listed in the configuration file "
+#~ "(${config}). Therefore, it cannot be started during boot, unless you "
+#~ "correct the configuration file and recreate the initial ramdisk."
+#~ msgstr ""
+#~ "Kedjan du har angivit (${array}) r inte listad i konfigurationsfilen "
+#~ "(${config}). Drfr kan den inte startas under systemets uppstart, svida "
+#~ "du inte rttar till konfigurationsfilen och terskapar den initiala "
+#~ "ramdisken."
+
+#~ msgid ""
+#~ "This warning is only relevant if you need arrays to be started from the "
+#~ "initial ramdisk to be able to boot. If you use kernel autostarting, or do "
+#~ "not need any arrays to be started as early as the initial ramdisk is "
+#~ "loaded, you can simply continue. Alternatively, choose not to continue "
+#~ "and enter 'none' when prompted which arrays to start from the initial "
+#~ "ramdisk."
+#~ msgstr ""
+#~ "Den hr varningen r endast relevant om du behver kedjor som ska startas "
+#~ "frn den initiala ramdisken fr att kunna starta upp systemet. Om du "
+#~ "anvnder krnans automatstart, eller inte behver starta ngra kedjor s "
+#~ "tidigt som nr de initiala ramdisken lses in, kan du helt enkelt "
+#~ "fortstta. Alternativt, vlj att inte fortstta och ange \"none\" nr "
+#~ "frgan om vilka kedjor som ska startas frn den initiala ramdisken stlls."
diff --git a/debian/po/templates.pot b/debian/po/templates.pot
new file mode 100644
index 0000000..3860e90
--- /dev/null
+++ b/debian/po/templates.pot
@@ -0,0 +1,78 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the mdadm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: mdadm\n"
+"Report-Msgid-Bugs-To: mdadm@packages.debian.org\n"
+"POT-Creation-Date: 2016-07-05 14:12+0200\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid "Should mdadm run monthly redundancy checks of the MD arrays?"
+msgstr ""
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid ""
+"If the kernel supports it (versions greater than 2.6.14), mdadm can "
+"periodically check the redundancy of MD arrays (RAIDs). This may be a "
+"resource-intensive process, depending on the local setup, but it could help "
+"prevent rare cases of data loss. Note that this is a read-only check unless "
+"errors are found; if errors are found, mdadm will try to correct them, which "
+"may result in write access to the media."
+msgstr ""
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid ""
+"The default, if turned on, is to check on the first Sunday of every month at "
+"01:06."
+msgstr ""
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid "Do you want to start the MD monitoring daemon?"
+msgstr ""
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid ""
+"The MD (RAID) monitor daemon sends email notifications in response to "
+"important MD events (such as a disk failure)."
+msgstr ""
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid "Enabling this option is recommended."
+msgstr ""
+
+#. Type: string
+#. Description
+#: ../mdadm.templates:4001
+msgid "Recipient for email notifications:"
+msgstr ""
+
+#. Type: string
+#. Description
+#: ../mdadm.templates:4001
+msgid ""
+"Please enter the email address of the user who should get the email "
+"notifications for important MD events."
+msgstr ""
diff --git a/debian/po/vi.po b/debian/po/vi.po
new file mode 100644
index 0000000..cf6c4b1
--- /dev/null
+++ b/debian/po/vi.po
@@ -0,0 +1,179 @@
+# Vietnamese Translation for mdadm.
+# Copyright © 2008 Free Software Foundation, Inc.
+# Clytie Siddall <clytie@riverland.net.au>, 2005-2008.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: mdadm 2.6.3+200709292116+4450e59-4\n"
+"Report-Msgid-Bugs-To: mdadm@packages.debian.org\n"
+"POT-Creation-Date: 2016-07-05 14:12+0200\n"
+"PO-Revision-Date: 2008-02-23 17:40+1030\n"
+"Last-Translator: Clytie Siddall <clytie@riverland.net.au>\n"
+"Language-Team: Vietnamese <vi-VN@googlegroups.com>\n"
+"Language: vi\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"X-Generator: LocFactoryEditor 1.7b3\n"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid "Should mdadm run monthly redundancy checks of the MD arrays?"
+msgstr ""
+"mdadm có nên chạy việc kiểm tra thừa hàng tháng trên những mảng MD không?"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid ""
+"If the kernel supports it (versions greater than 2.6.14), mdadm can "
+"periodically check the redundancy of MD arrays (RAIDs). This may be a "
+"resource-intensive process, depending on the local setup, but it could help "
+"prevent rare cases of data loss. Note that this is a read-only check unless "
+"errors are found; if errors are found, mdadm will try to correct them, which "
+"may result in write access to the media."
+msgstr ""
+"Nếu hạt nhân có phải hỗ trợ (các phiên bản sau 2.6.14) thì mdadm có thể kiểm "
+"tra theo chu kỳ tình thừa của các mảng MD (RAID). Tiến trình này có thể "
+"chiếm nhiều tài nguyên hệ thống, phụ thuộc vào thiết lập cục bộ, nhưng nó có "
+"thể giúp ngăn cản trường hợp mất dữ liệu (ít có). Ghi chú rằng việc kiểm tra "
+"này là chỉ đọc: gặp lỗi thì mdadm sẽ thử sửa chữa, mà có thể gây ra truy cập "
+"ghi vào vật chứa."
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:2001
+msgid ""
+"The default, if turned on, is to check on the first Sunday of every month at "
+"01:06."
+msgstr ""
+"Giá trị mặc định, nếu được bật, là chạy những việc kiểm tra vào ngày hôm Chủ "
+"Nhật thứ nhất của mỗi tháng, vào lúc 01:06 giờ (giờ ti)."
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid "Do you want to start the MD monitoring daemon?"
+msgstr "Bạn có muốn khởi chạy trình nền theo dõi MD không?"
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid ""
+"The MD (RAID) monitor daemon sends email notifications in response to "
+"important MD events (such as a disk failure)."
+msgstr ""
+"Trình nền theo dõi MD (RAID) gửi thư thông báo hưởng ứng dữ kiện MD quan "
+"trọng (v.d. đĩa bị hỏng)."
+
+#. Type: boolean
+#. Description
+#: ../mdadm.templates:3001
+msgid "Enabling this option is recommended."
+msgstr "Khuyên bạn hiệu lực tùy chọn này."
+
+#. Type: string
+#. Description
+#: ../mdadm.templates:4001
+msgid "Recipient for email notifications:"
+msgstr "Người nhận thư thông báo :"
+
+#. Type: string
+#. Description
+#: ../mdadm.templates:4001
+msgid ""
+"Please enter the email address of the user who should get the email "
+"notifications for important MD events."
+msgstr ""
+"Hãy nhập địa chỉ thư của người dùng nên nhận thư thông báo về dữ kiện MD "
+"quan trọng."
+
+#~ msgid "MD arrays needed for the root file system:"
+#~ msgstr "Các mảng MD cần thiết cho hệ thống tập tin gốc:"
+
+#~ msgid ""
+#~ "Please enter 'all', 'none', or a space-separated list of devices such as "
+#~ "'md0 md1' or 'md/1 md/d0' (the leading '/dev/' can be omitted)."
+#~ msgstr ""
+#~ "Hãy nhập « all » (tất cả), « none » (không có), hoặc một danh sách các "
+#~ "thiết bị định giới bằng dấu cách như « md0 md1 » hoặc « md/1 md/d0 » (có "
+#~ "thể bỏ sót phần « /dev/ » đi trước)."
+
+#~ msgid "for internal use - only the long description is needed."
+#~ msgstr "để sử dụng nội bộ — chỉ cần thiết mô tả dài."
+
+#~ msgid ""
+#~ "If the system's root file system is located on an MD array (RAID), it "
+#~ "needs to be started early during the boot sequence. If it is located on a "
+#~ "logical volume (LVM), which is on MD, all constituent arrays need to be "
+#~ "started."
+#~ msgstr ""
+#~ "Nếu hệ thống tập tin gốc của hệ thống nằm trên một mảng MD (RAID) thì cần "
+#~ "phải khởi chạy nó sớm trong tiến trình khởi động. Nếu nó nằm trên một "
+#~ "khối tin hợp lý (LVM) mà lần lượt nằm trên một MD thì cần phải khởi chạy "
+#~ "tất cả các mảng thành phần."
+
+#~ msgid ""
+#~ "If you know exactly which arrays are needed to bring up the root file "
+#~ "system, and you want to postpone starting all other arrays to a later "
+#~ "point in the boot sequence, enter the arrays to start here. "
+#~ "Alternatively, enter 'all' to simply start all available arrays."
+#~ msgstr ""
+#~ "Nếu bạn biết chính xác những mảng nào cần thiết để kích hoạt hệ thống tập "
+#~ "tin gốc, và bạn muốn hoãn việc khởi chạy các mảng khác tới một điểm sau "
+#~ "trong dãy khởi động, hãy nhập vào đây các mảng cần khởi chạy. Hoặc nhập « "
+#~ "all » (tất cả) để khởi chạy đơn giản tất cả các mảng sẵn sàng. "
+
+#~ msgid ""
+#~ "If you do not need or want to start any arrays for the root file system, "
+#~ "leave the answer blank (or enter 'none'). This may be the case if you are "
+#~ "using kernel autostart or do not need any arrays to boot."
+#~ msgstr ""
+#~ "Nếu bạn không cần hoặc muốn khởi chạy mảng nào cho hệ thống tập tin gốc, "
+#~ "hãy bỏ trống câu trả lời này (hoặc nhập « none » [không có]). Trường hợp "
+#~ "này có thể xảy ra nếu bạn sử dụng khả năng tự động khởi động hạt nhân "
+#~ "(kernel autostart), hoặc không cần mảng nào để khởi động máy tính."
+
+#~ msgid "An error occurred: device node does not exist"
+#~ msgstr "Gặp lỗi: nút thiết bị không tồn tại"
+
+#~ msgid "An error occurred: not a block device"
+#~ msgstr "Gặp lỗi: không phải là một thiết bị khối"
+
+#~ msgid "An error occurred: not an MD array"
+#~ msgstr "Gặp lỗi: không phải là một mảng MD"
+
+#~ msgid "An error occurred: array not listed in mdadm.conf file"
+#~ msgstr ""
+#~ "Gặp lỗi: mảng không được liệt kê trong tập tin cấu hình « mdadm.conf »"
+
+#~ msgid "Start arrays not listed in mdadm.conf?"
+#~ msgstr ""
+#~ "Khởi chạy các mảng không được liệt kê trong tập tin cấu hình « mdadm.conf "
+#~ "» không?"
+
+#~ msgid ""
+#~ "The specified array (${array}) is not listed in the configuration file "
+#~ "(${config}). Therefore, it cannot be started during boot, unless you "
+#~ "correct the configuration file and recreate the initial ramdisk."
+#~ msgstr ""
+#~ "Mảng bạn đã xác định (${array}) không được liệt kê trong tập tin cấu hình "
+#~ "${config}. Vì vậy nó không thể được khởi chạy trong khi khởi động, nếu "
+#~ "bạn không sửa tập tin cấu hình và tạo lại đĩa RAM đầu tiên."
+
+#~ msgid ""
+#~ "This warning is only relevant if you need arrays to be started from the "
+#~ "initial ramdisk to be able to boot. If you use kernel autostarting, or do "
+#~ "not need any arrays to be started as early as the initial ramdisk is "
+#~ "loaded, you can simply continue. Alternatively, choose not to continue "
+#~ "and enter 'none' when prompted which arrays to start from the initial "
+#~ "ramdisk."
+#~ msgstr ""
+#~ "Cảnh báo này chỉ là thích hợp nếu bạn cần thiết mảng được khởi chạy từ "
+#~ "đĩa RAM đầu tiên, để có thể khởi động được. Nếu bạn sử dụng khả năng tự "
+#~ "động khởi chạy hạt nhân (kernel autostart), hoặc không cần mảng nào được "
+#~ "khởi chạy một khi nạp đĩa RAM đầu tiên, bạn đơn giản có thể tiếp tục lại. "
+#~ "Hoặc chọn không tiếp tục, và nhập « none » (không có) khi được nhắc nhập "
+#~ "những mảng nào cần khởi chạy từ đĩa RAM đầu tiên."
diff --git a/debian/presubj b/debian/presubj
new file mode 100644
index 0000000..103208d
--- /dev/null
+++ b/debian/presubj
@@ -0,0 +1,32 @@
+Reporting bugs against mdadm
+============================
+Before reporting bugs against mdadm, please read the README documents, as well
+as the FAQ in /usr/share/doc/mdadm . Most issues that are reported against the
+mdadm package are adequately answered therein.
+
+In particular, please do not file bugs about mdadm assembling arrays too
+early, e.g. when the driver is not yet ready and device nodes do not exist.
+Check FAQ item 27 about use of the rootdelay parameter instead.
+
+Also, please check out http://bugs.debian.org/mdadm and make sure that the
+issue you are facing has not already been reported.
+
+If you are not sure that the answer you are seeking is in those files, or you
+are not sure that you are facing a genuine bug, please approach
+debian-user@lists.debian.org or linux-raid@vger.kernel.org with your
+question(s).
+
+Gathering information relevant to mdadm as root
+===============================================
+If you are not reporting bugs as root (which you should not), you will be
+prompted to give permission to run a script to collect relevant information
+from your system as the root user. Only the root user has access to some
+information that might be relevant to the bug report you are about to file.
+
+** Please give permission to run the script as root when asked momentarily.
+
+If you would rather obtain the same information manually, you can run
+ /usr/share/bug/mdadm/script 3>&1
+as root and include or attach the output.
+
+ -- martin f. krafft <madduck@debian.org> Mon, 20 Jul 2009 15:02:48 +0200
diff --git a/debian/rules b/debian/rules
new file mode 100755
index 0000000..3a1b5a6
--- /dev/null
+++ b/debian/rules
@@ -0,0 +1,103 @@
+#!/usr/bin/make -f
+# Copyright © 2001-2005 Mario Jou/3en <joussen@debian.org>
+# Copyright © 2005-2008 Martin F. Krafft <madduck@debian.org>
+# Distributable under the terms of the GNU GPL version 2.
+#
+
+#export DH_VERBOSE=1
+
+export CROSS_COMPILE=$(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)-
+LDFLAGS = $(shell dpkg-buildflags --get LDFLAGS)
+CXFLAGS = $(shell dpkg-buildflags --get CFLAGS) \
+ $(shell dpkg-buildflags --get CPPFLAGS)
+BUILDFLAGS = CXFLAGS="$(CXFLAGS)" LDFLAGS="$(LDFLAGS)" DEBIAN=yes
+DESTDIR = $(CURDIR)/debian/mdadm
+DESTDIR_UDEB = $(DESTDIR)-udeb
+
+build-arch: build-stamp
+
+build-stamp:
+ dh_testdir
+ $(MAKE) all $(BUILDFLAGS) CONFFILE=/etc/mdadm/mdadm.conf CONFFILE2=/etc/mdadm.conf
+ touch $@
+
+# udeb rules should go, the only diff is the conffile location,
+# and d-i specifies path explicitly when needed
+
+udeb/dir-stamp:
+ rm -rf udeb
+ mkdir udeb
+ ln *.[ch] Makefile udeb/
+ touch $@
+
+build-arch: udeb/build-stamp
+
+udeb/build-stamp: udeb/dir-stamp
+ dh_testdir
+ $(MAKE) -C udeb mdadm mdmon $(BUILDFLAGS) CONFFILE=/tmp/mdadm.conf
+ touch $@
+
+clean:
+ dh_testdir
+ rm -f build-stamp
+ $(MAKE) clean
+ rm -rf udeb
+ dh_clean
+
+install-arch: build-arch
+ dh_testdir
+ dh_prep
+ dh_installdirs
+
+ $(MAKE) install install-systemd DESTDIR=$(DESTDIR)
+
+ mkdir -p $(DESTDIR)/etc/mdadm
+ install -Dm0755 debian/initramfs/hook \
+ $(DESTDIR)/usr/share/initramfs-tools/hooks/mdadm
+ install -Dm0755 debian/initramfs/script.local-block \
+ $(DESTDIR)/usr/share/initramfs-tools/scripts/local-block/mdadm
+ install -Dm0755 debian/initramfs/script.local-bottom \
+ $(DESTDIR)/usr/share/initramfs-tools/scripts/local-bottom/mdadm
+ install -Dm0644 debian/mdadm.modules \
+ $(DESTDIR)/etc/modprobe.d/mdadm.conf
+
+ install -Dm0755 debian/mkconf $(DESTDIR)/usr/share/mdadm/mkconf
+ install -Dm0755 debian/checkarray $(DESTDIR)/usr/share/mdadm/checkarray
+ install -Dm0755 debian/bugscript $(DESTDIR)/usr/share/bug/mdadm/script
+ install -Dm0644 debian/presubj $(DESTDIR)/usr/share/bug/mdadm/presubj
+
+ install -Dm0755 udeb/mdadm $(DESTDIR_UDEB)/sbin/mdadm
+ install -Dm0755 udeb/mdmon $(DESTDIR_UDEB)/sbin/mdmon
+ install -Dm0644 udev-md-raid-arrays.rules $(DESTDIR_UDEB)/lib/udev/rules.d/63-md-raid-arrays.rules
+
+binary-arch: install-arch
+ dh_testdir
+ dh_testroot
+ dh_installdebconf
+ dh_installdocs
+ dh_installexamples -pmdadm mdadm.conf-example misc/syslog-events
+ dh_installinit --init-script=mdadm-waitidle --no-start -- stop 98 0 6 .
+ dh_link -pmdadm /dev/null /lib/systemd/system/mdadm-waitidle.service
+ dh_installinit -- defaults 25
+ dh_link -pmdadm /dev/null /lib/systemd/system/mdadm.service
+ dh_installman
+ dh_installcron
+ dh_installchangelogs ChangeLog
+ dh_installlogcheck
+ dh_link
+ dh_strip
+ dh_compress
+ dh_fixperms
+ dh_installdeb
+ dh_shlibdeps
+ dh_gencontrol
+ dh_md5sums
+ dh_builddeb
+
+build: build-arch
+install: install-arch
+binary: binary-arch
+build-indep:
+install-indep:
+binary-indep:
+.PHONY: clean build build-indep build-arch binary binary-indep binary-arch install install-indep install-arch
diff --git a/debian/source/format b/debian/source/format
new file mode 100644
index 0000000..163aaf8
--- /dev/null
+++ b/debian/source/format
@@ -0,0 +1 @@
+3.0 (quilt)
diff --git a/debian/watch b/debian/watch
new file mode 100644
index 0000000..1b1172a
--- /dev/null
+++ b/debian/watch
@@ -0,0 +1,2 @@
+version=3
+http://www.kernel.org/pub/linux/utils/raid/mdadm/mdadm-([.[:digit:]]+).tar.gz