moose

Members
  • Posts

    226
  • Joined

  • Last visited

Everything posted by moose

  1. Thanks. Will check connections and re-seat drive, then monitor.
  2. Yes, I precleared with 3 full cycles. I've attached the diagnostics zip file. artoo-detoo-diagnostics-20151005-2021.zip
  3. One of my data disks (disk #1) indicates disk read errors, (6 read errors today). I ran a SMART short self-test which completed successfully, no errors. Disk #1 is relatively new ~ 6 months old. Syslog is attached. I can re-seat the disk....haven't done that yet. Haven't checked cabling either. Is there anything to worry about or any action to take? Do I ignore for the moment and monitor? Any risk of data loss? artoo-detoo-syslog-20151005-1915.zip
  4. Worked. Although in my case, the plugin was actually there and on checking for updates, there was one. I updated (somewhat tentatively) but everything went smoothly. Current version is 2015.08.01c. This command worked for me too and I had the same results as Frank1940. Thanks bonienl! All is fixed now and I'm on 2015.08.01c
  5. I'm also having the problem but cannot uninstall because I don't have access to the installed plugins. See screenshot. Any thoughts? Can you clear your browser cache (CTRL-F5) and reload the page ? I cleared the browser cache (CTRL-F5) and no change. I still have the "Please wait, retrieving plugin information ..." message.
  6. I'm also having the problem but cannot uninstall because I don't have access to the installed plugins. See screenshot. Any thoughts?
  7. Yes it's a BetaQuasi VMDK file, which was the reason the partition was ~ 100 MB and the reason that the upgrade script and v6 OS update don't work in this setup. BetaQuasi's VMDKs split the base unRAID files and config files between a virtual hard drive and USB device. I believe this was done for quicker booting. BetaQuasi VMDKs have been reliable and served well but since this architecture doesn't work with unRAID v6, I'll switch to PLOP and follow your suggestions. Thanks Ice_Black! Update: I kept the VMDK format given that a v6.01 VMDK was posted. Plop seems to have a much slower boot and the "USB reset" quirk vs VMDK for ESXi configurations (like mine). Limetech recommends bare metal only, so I may eventually migrate to bare metal, but I'll have to migrate/recreate all my ESXi VMs to KVM. (on the list to research) v6 is awesome! Good job to Limetech and the community! unRAID totally blows away the competition!!
  8. Thanks Squid! I do run unRAID on a VMDK but have the key, config, etc on a USB flash drive that the VM uses. I think you nailed it and only the USB flash was upgraded. I'm checking now to see if this resolves it. Edit: This does appear what happened, the USB flash was upgraded but not the VMDK file. But I'm having a space problem with the VMDK. The VMDK is provisioned with 8GB space as think lazy zeroed, but only showing 93MB of disk space capacity. Not enough space to copy over unRAID 6.01...but really wondering what happened to the VMDK to lose all the space. Seeing if there is a way to reclaim the space or I might create a new VMDK file.
  9. I'm using method #1 and it seems the upgrade download and install completed successfully but each time I reboot unRAID I still boot into v5.06. (I rebooted multiple times.) The telnet output of the upgrade process is attached. I'm running in a VM on ESXi but that doesn't matter, correct? Edit: also attached syslog.txt upgrade_v5.06tov6.01_telnet_output.txt syslog.txt
  10. Thanks itimpi. After reading your response and more thought of my sequences, I believe I never did "un-assign" the failed data disk before stopping the array and initiating a clean shutdown. I tried reinserting the failed data disk but all I get is a lot of beeping from the disk, unRAID is unable to see the failed data disk even when its plugged into a hot swap bay, the failed disk is totally dead. Like you said, I think the problem is unRAID never was told the failed data disk was being taken out of the array. With Disk 1 (failed data disk slot) unassigned, I saw this message on the Array Status page (screenshot attached) "Start will disable the missing disk then bring the array online. The disks data will be available, but the array will be unprotected; install a new data disk as soon as possible." I clicked "yes I want to do this" check box and started the array. The missing (failed) data disk was then disabled (forced the "missing" state). I was able to then stop the array, assign the new data disk (with a blue ball) and start the array to begin the data disk rebuild process. Thank you for your assistance!!
  11. I had a failed data disk. I purchased a new replacement disk, ran 3 successful preclear cycles, swapped disks. Now I am getting a red ball and "disk wrong" instead of an expected blue ball. detailed sequence of my steps: 1. data disk failed. 2. powered down unRAID Server and purchased new replacement disk. 3. with unRAID Server powered down, I unplugged all existing disks in the 5-in-3 hot swap bays (pulled out an inch) to keep them from spinning during the preclear cycles for the new disk. 4. plugged in new data disk to 5-in-3 bay (new data disk was only disk connected to motherboard). 5. powered up unRAID Server and ran 3 successful preclear cycles on new data disk. 6. powered down unRAID Server and plugged in (re-seated) all disks, with new data disk in place of the previously failed disk. 7. powered up unRAID server. I expected to be able to select the new data disk (as Disk 1) and get a blue ball. Screenshots and syslog attached. What would be the next step? syslog-2015-06-21_b.zip
  12. Superb video! Professional, comprehensive and concise.
  13. Thanks trurl and bjp999! I was able to rebuild the disk on a new drive. I did not have any data loss. Fortunately no one was writing to the disk when it became disabled. I'll look at creating MD5s to validate integrity going forward.
  14. Thank you trurl. The monthly parity check was set to NOCORRECT, so regardless if a data disk failed at the start or during parity check process, parity would not be overwritten, correct? If so then parity is still valid and I can insert a new disk in place of the failed data disk and rebuild the failed data disk, correct? If someone more knowledgeable than me can check the syslog and look at the timestamps starting at midnight on 5/1, I'm curious if the syslog indicates the parity check was aborted before it ever started.
  15. Sorry for the NOOB questions. From the syslog, it appears the data disk redballed at 12:01 am on 5/1/15, the very beginning of the monthly parity check (starts at 12am). I did not manually stop or abort the parity check process. Can the syslog tell me if the parity check completed or was automatically aborted when the data disk redballed? The other question I have is what about user data that was written to another good data disk (~ 7am on 5/1) before I was alerted to the redball disk (~12pm on 5/1)? What happens to the parity disk when a user writes to a good data disk in the array when there is already a disabled data disk? I'm guessing the parity disk gets updated with each write to the array (even with a disabled disk). (FYI - we still have a another copy of the user data that was written to the array after the redball disk.) Basically this is the sequence: 1. 12am on 5/1 - monthly parity check (NOCORRECT) starts. 2. ~ 12:01am - disk 4 shows errors and is subsequently disabled. (as best I can tell from the syslog) 3. 7am - I see wife is writing data to the array at when I leave for work. 4. 12pm - I check my unRAID server alerts from work and see I have a disabled data disk. I call wife and tell her not to write to array and confirm she still has a local copy of everything she wrote to array at 7am.
  16. Follow up question. See two attached screenshots and attached syslog. I have unMenu and Dynamix installed. unMenu indicates parity is valid and Dynamix indicates parity is invalid, which is correct? From the syslog it appears disk 4 failed at the start of the parity check process. I'm not sure if the parity check was aborted before overwriting any previous valid parity. In other words can I simply replace disk 4 with a new disk then rebuild disk 4 contents from the parity data I have? With respect to the user data written to the array after disk 4 failure, would that corrupt parity to rebuild disk 4? If so am I better off attempting to copy contents from the bad disk 4 to a new disk and rebuild parity with the bad disk removed from the array? syslog-20150502-074403.zip
  17. I had a data disk failure (today) at the start of the monthly parity check cycle, then another user wrote data to a disk/array early this morning before I saw the failure notification. I have a new, blank precleared disk I can insert into the array. however the parity disk is indicating array parity is invalid; The user still has the original data (written to disk/array) on a local PC. Not sure what the next best step would be? Attempt to recover data from the failed disk since parity is invalid (due to timing of simultaneous data disk failure at monthly parity check interval)? update: Monthly parity check was set to NOCORRECT, so regardless if a data disk failed at start or during parity check process, parity would not be overwritten, correct? If so then parity is still valid and I can insert a new disk in place of the failed data disk and rebuild the failed data disk, correct? Can someone please confirm? Please check the syslog and look at the timestamps at midnight on 5/1. Curious if the syslog indicates the parity check was aborted before it ever started. Thanks for any advice. (syslog in my next post)
  18. Thanks trurl. I'll leave the server off and purchase a new disk equivalent to the current parity disk (4TB) and rebuild with the new disk. Update: I installed a new 4TB disk, rebuild missing disk then performed parity check, zero errors/data loss.
  19. I've searched but cannot find any clear concise instruction to remove a failed data disk from the array and allow remaining good data disks to rewrite the data from the failed disk. I received alerts that disk6 was overheating (63°C) two days ago but still passed a smart test. I stopped the array and rebooted unRAID, array is still stopped. Disk6 is disabled. Do I physically remove disk6, start the array and run a parity check to rebuild disk6 data to the remaining data disks?
  20. I run pfSense VM and several Win7 VMs performing utility functions in the same box that runs my unRAID server. I've been happy with pfSense as a firewall/router/DHCP server. I've been running it this way for several years with no issues. (Johnm's Atlas thread inspired me to virtualize: http://lime-technology.com/forum/index.php?topic=14695.0)
  21. Feature request to create rule(s) to limit user(s) access to shares by time of day. Users - define whether or not share access time limit rule applies to each user. Time of day - defined (access/no access) by hh:mm definitions. Day of week - define if a rule is enforced by each day of week. Shares - define shares included in each rule. Example for this feature: I've created a kid safe share (movies/music/pictures/etc) for my kids by creating a distinct share and distinct user (give kids their own username and password). I want to limit their access to that share by time of day and day of week (so they aren't tempted to stay up too late). This feature would accomplish this task. Another way to accomplish this task might be to limit IP access by a firewall rule, such as set static IPs for each kids device and define time limits to the unRAID server access (I think might be possible in pfSense by setting IP address to IP address time limits).
  22. Thanks again BetaQuasi for the excellent guide! I thought I'd post what I did to upgrade my bios & firmware with a Linux installer, following your guide: To upgrade M1015 card (already flashed/changed to a LSI9211-8i card) bios and firmware: 1. Download "9211-8i_Package_P19_IR_IT_Firmware_BIOS_for_MSDOS_Windows" (in firmware section) at: http://www.lsi.com/products/host-bus-adapters/pages/lsi-sas-9211-8i.aspx 2. Download "Installer_P19_for_Linux" (in firmware section) at: http://www.lsi.com/products/host-bus-adapters/pages/lsi-sas-9211-8i.aspx 3. Unzip both files downloaded from the LSI website. Copy "sas2flash", "2118it.bin" and "mptsas2.rom" from the 2 unzipped archives to a temporary folder on your unraid flash drive. I created a temporary directory called "linux" at /boot/linux 4. (Note: To copy the 3 files to /boot/linux I used WinSCP to create a FTP session between my local PC and the unRAID server.) 5. Use PuTTY to telnet to the unraid server. Navigate to the /boot/linux folder. 6. Execute this command to perform the firmware and bios upgrade: "sas2flash -o -f 2118it.bin -b mptsas2.rom" 7. (Note the Linux installer is called "sas2flash" instead of the UEFI installer "sas2flsh") 8. See output of my upgrade process below. Artoo-Detoo login: root Password: Linux 3.9.11p-unRAID. root@Artoo-Detoo:~# cd /boot/linux root@Artoo-Detoo:/boot/linux# ls 2118it.bin* mptsas2.rom* sas2flash* root@Artoo-Detoo:/boot/linux# sas2flash -o -f 2118it.bin -b mptsas2.rom LSI Corporation SAS2 Flash Utility Version 19.00.00.00 (2014.03.17) Copyright (c) 2008-2014 LSI Corporation. All rights reserved Advanced Mode Set Adapter Selected is a LSI SAS: SAS2008(B2) Executing Operation: Flash Firmware Image Firmware Image has a Valid Checksum. Firmware Version 19.00.00.00 Firmware Image compatible with Controller. Valid NVDATA Image found. NVDATA Version 11.00.00.00 Checking for a compatible NVData image... NVDATA Device ID and Chip Revision match verified. NVDATA Versions Compatible. Valid Initialization Image verified. Valid BootLoader Image verified. Beginning Firmware Download... Firmware Download Successful. Verifying Download... Firmware Flash Successful. Resetting Adapter... Adapter Successfully Reset. Executing Operation: Flash BIOS Image Validating BIOS Image... BIOS Header Signature is Valid BIOS Image has a Valid Checksum. BIOS PCI Structure Signature Valid. BIOS Image Compatible with the SAS Controller. Attempting to Flash BIOS Image... Verifying Download... Flash BIOS Image Successful. Updated BIOS Version in BIOS Page 3. Finished Processing Commands Successfully. Exiting SAS2Flash. root@Artoo-Detoo:/boot/linux#
  23. HGST 4TB Deskstar Coolspin 3.5" SATA III Internal Desktop Hard Drive (0S03359) for $149 + free shipping http://www.bhphotovideo.com/c/product/835055-REG/Hitachi_0S03359_4TB_Internal_Hard_Drive.html
  24. Can someone recommend which VPN Service Provider they use/recommend? Better to go with a paid service? Any recommendations for Astrill?
  25. Thanks archedraft for starting this thread. I've had the same thought in my head since migrating to the 5.x series (including betas). I'm not sure exactly how to fix this but I think this unMenu package needs to be modified - "/boot/packages/mail_status-unmenu-package.conf" starting somewhere after the line "PACKAGE_INSTALLATION M# RESYNC MESSAGES" Maybe Joe L. or someone else knows what needs to be updated in this cron script with the 5.x series... #UNMENU_RELEASE $Revision: 129 $ $Date: 2010-07-21 12:07:03 -0400 (Wed, 21 Jul 2010) $ PACKAGE_NAME unRAID Status Alert sent hourly by e-mail PACKAGE_DESCR This package will install a cron script to send hourly e-mail status alerts when an abnormal status is detected.<br> PACKAGE_DESCR You may also elect to get hourly notifications when the status is OK. PACKAGE_DESCR <br><br>The script is created in /etc/cron.hourly and is named smtp_status.sh<br> PACKAGE_DESCR It will run hourly, at 47 minutes past the hour, and report on the status of the unRAID array as appropriate.<br> PACKAGE_DESCR <b>To use this script you must have installed and configured a "mail" command on your unRAID server. PACKAGE_URL none PACKAGE_FILE unraid-status-email PACKAGE_INSTALLED /etc/cron.hourly/smtp_status.sh PACKAGE_DEPENDENCIES mail PACKAGE_VARIABLE Send status mail to||vEMAIL_ADDR=root||Send the status e-mail to this address. (typically "root" is already forwarded to an appropriate email) PACKAGE_VARIABLE Include mdcmd status?(YES/NO)||vMDCMD_OUT=YES|| If set to YES, the output of the <b>mdcmd status</b> command will be included in the mail. PACKAGE_VARIABLE Include disk space usage summary?(YES/NO)||vDF_OUT=YES|| If set to YES, the output of the <b>df</b> command will be included in the mail. PACKAGE_VARIABLE Send mail even if status is normal?(YES/NO/NN)||vHOURLY_OK=01 03 05 07 09 11 13 15 17 19 21 23|| If set to YES, an e-mail will be sent hourly stating status is OK, if NO, no OK status will be sent, if set to a numeric string, OK status will be sent only on those hours. <b>06</b> will send an OK status at 6:47 AM, <b>08 16 00</b> will send an OK status 3 times a day, at 08:47, 16:47, and 00:47. PACKAGE_VARIABLE Disk Temperature Warning Threshold||vTEMP_WARNING=40|| If an unRAID disk goes over this threshold (degrees C), a warning e-mail will be sent. PACKAGE_VERSION_TEST grep "Version:" /var/log/unRAID-status-email | awk '{print $2}' PACKAGE_VERSION_STRING 1.3 PACKAGE_MEMORY_USAGE Small PACKAGE_INSTALLATION [ ! -f /usr/bin/mail -a ! -f /bin/mail ] && echo "Error: You must first install 'mail' before this package can send a status report via e-mail" PACKAGE_INSTALLATION [ ! -f /usr/bin/mail -a ! -f /bin/mail ] && exit PACKAGE_INSTALLATION echo "Version: 1.3" > /var/log/unRAID-status-email PACKAGE_INSTALLATION echo "vEMAIL_ADDR=\"${vEMAIL_ADDR-root}\"" >/etc/cron.hourly/smtp_status.sh PACKAGE_INSTALLATION echo "vHOURLY_OK=\"${vHOURLY_OK-NO}\";" >>/etc/cron.hourly/smtp_status.sh PACKAGE_INSTALLATION echo "vMDCMD_OUT=\"${vMDCMD_OUT-NO}\"" >>/etc/cron.hourly/smtp_status.sh PACKAGE_INSTALLATION echo "vDF_OUT=\"${vDF_OUT-NO}\"" >>/etc/cron.hourly/smtp_status.sh PACKAGE_INSTALLATION echo "vTEMP_WARNING=\"${vTEMP_WARNING-40}\"" >>/etc/cron.hourly/smtp_status.sh PACKAGE_INSTALLATION cat >>/etc/cron.hourly/smtp_status.sh << 'THE_END_OF_SCRIPT' # For those trying to figure out what I've done here... # the leading "M" in each of the following lines in the "here" document is needed to preserve indentation. # They are removed by a "sed" command at the end of this script PACKAGE_INSTALLATION M# The email subject PACKAGE_INSTALLATION MsSubject="unRaid Status" PACKAGE_INSTALLATION M PACKAGE_INSTALLATION M# Choose to include the contents of /proc/mdcmd in your status PACKAGE_INSTALLATION MbIncludeMdcmd="False" PACKAGE_INSTALLATION Mif [ "${vMDCMD_OUT-NO}" = "YES" ]; then PACKAGE_INSTALLATION M bIncludeMdcmd="True" PACKAGE_INSTALLATION Mfi PACKAGE_INSTALLATION M PACKAGE_INSTALLATION M# initialize the error message to an empty string if no hourly OK message is desired PACKAGE_INSTALLATION Memsg="" PACKAGE_INSTALLATION Mif [ "${vHOURLY_OK-NO}" = "YES" ]; then PACKAGE_INSTALLATION M emsg="unRaid is OK" PACKAGE_INSTALLATION M sSubject="unRaid Status OK" PACKAGE_INSTALLATION Mfi PACKAGE_INSTALLATION Mif [ "${vHOURLY_OK}" != "" ]; then PACKAGE_INSTALLATION M hr=`date +%H` PACKAGE_INSTALLATION M for i in ${vHOURLY_OK} PACKAGE_INSTALLATION M do PACKAGE_INSTALLATION M if [ "$i" = "$hr" ]; then PACKAGE_INSTALLATION M emsg="unRaid is OK" PACKAGE_INSTALLATION M sSubject="unRaid Status OK" PACKAGE_INSTALLATION M break PACKAGE_INSTALLATION M fi PACKAGE_INSTALLATION M done PACKAGE_INSTALLATION Mfi PACKAGE_INSTALLATION M PACKAGE_INSTALLATION M/root/mdcmd status | strings >/tmp/array_status PACKAGE_INSTALLATION Mgrep "mdState=STARTED" /tmp/array_status >/dev/null 2>&1 PACKAGE_INSTALLATION Mif [ $? != 0 ] PACKAGE_INSTALLATION Mthen PACKAGE_INSTALLATION M emsg="\n\nWARNING - unRAID Array NOT STARTED\n\n" PACKAGE_INSTALLATION M sSubject="unRaid Status WARNING - Array Not Started" PACKAGE_INSTALLATION M bIncludeMdcmd="True" PACKAGE_INSTALLATION Mfi PACKAGE_INSTALLATION M PACKAGE_INSTALLATION Megrep "=DISK_INVALID|=DISK_DSBL" /tmp/array_status >/tmp/disk_not_normal 2>&1 PACKAGE_INSTALLATION Mif [ $? = 0 ] PACKAGE_INSTALLATION Mthen PACKAGE_INSTALLATION M sSubject="unRaid Failure Notification - One or more disks are disabled or invalid." PACKAGE_INSTALLATION M emsg="\n\nERROR: The unRaid array needs attention. One or more disks are disabled or invalid.\n\n" PACKAGE_INSTALLATION M emsg+="\n`cat /tmp/disk_not_normal | sed 's/rdevStatus./Disk /'`" PACKAGE_INSTALLATION M bIncludeMdcmd="True" PACKAGE_INSTALLATION Mfi PACKAGE_INSTALLATION M PACKAGE_INSTALLATION M# RESYNC MESSAGES PACKAGE_INSTALLATION MRESYNC=`egrep "^mdResync" /tmp/array_status | cut -d "=" -f2 | sed 1q` PACKAGE_INSTALLATION Mif [ "$RESYNC" != "0" -a "$RESYNC" != "" ]; then PACKAGE_INSTALLATION M RESYNCPERCENT=`egrep "^mdResyncPrcnt" /tmp/array_status | cut -d "=" -f2` PACKAGE_INSTALLATION M RESYNCFINISH=`egrep "^mdResyncFinish" /tmp/array_status | cut -d "=" -f2` PACKAGE_INSTALLATION M RESYNCSPEED=`egrep "^mdResyncSpeed" /tmp/array_status | cut -d "=" -f2` PACKAGE_INSTALLATION M NL=`echo "\n"` PACKAGE_INSTALLATION M sSubject="unRaid Resync Notification" PACKAGE_INSTALLATION M emsg="The unRaid array is resync/rebuilding parity.${NL}${NL}" PACKAGE_INSTALLATION M if [ ! -z "${RESYNCPERCENT}" ]; then PACKAGE_INSTALLATION M emsg="${emsg}Parity CHECK/RESYNC in progress, " PACKAGE_INSTALLATION M emsg="${emsg} ${RESYNCPERCENT}% complete, " PACKAGE_INSTALLATION M emsg="${emsg} est. finish in $RESYNCFINISH minutes." PACKAGE_INSTALLATION M emsg="${emsg} Speed: ${RESYNCSPEED} kb/s." PACKAGE_INSTALLATION M fi PACKAGE_INSTALLATION M bIncludeMdcmd="False" PACKAGE_INSTALLATION Mfi PACKAGE_INSTALLATION Mdisks=`ls --time-style='+%Y-%m-%d %I:%M%p' /dev/disk/by-id/* -Hl | grep -v plugdev | grep -v "by-id/usb" | grep -v '\-part[1-9]$' | awk '{print $9}'` PACKAGE_INSTALLATION Mfor i in $disks PACKAGE_INSTALLATION Mdo PACKAGE_INSTALLATION M hdparm -C $i 2>/dev/null | egrep "standby|unknown" >/dev/null PACKAGE_INSTALLATION M if [ "$?" != 0 ]; then PACKAGE_INSTALLATION M temp=`smartctl -d ata -A $i | grep -i temperature | sed 1q | awk '{ print $10 }'` PACKAGE_INSTALLATION M if [ "$temp" != "" ] PACKAGE_INSTALLATION M then PACKAGE_INSTALLATION M if [ "$temp" -gt "${vTEMP_WARNING-40}" ];then PACKAGE_INSTALLATION M emsg="WARNING disk $i temperature is ${temp}C\n$emsg" PACKAGE_INSTALLATION M sSubject="unRaid Disk Temperature Notification" PACKAGE_INSTALLATION M fi PACKAGE_INSTALLATION M fi PACKAGE_INSTALLATION M fi PACKAGE_INSTALLATION Mdone PACKAGE_INSTALLATION M PACKAGE_INSTALLATION Mif [ "$emsg" != "" ] PACKAGE_INSTALLATION Mthen PACKAGE_INSTALLATION M # Message Subject PACKAGE_INSTALLATION M sEcho+="Subject:$sSubject\n" PACKAGE_INSTALLATION M PACKAGE_INSTALLATION M # Message Body (You can change this to look how you want. Just PACKAGE_INSTALLATION M # to include \n at the end of each line.) PACKAGE_INSTALLATION M sEcho+="Status update for unRAID $HOSTNAME\n" PACKAGE_INSTALLATION M sEcho+="- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \n" PACKAGE_INSTALLATION M sEcho+="Status: $emsg\n" PACKAGE_INSTALLATION M sEcho+="Server Name: $HOSTNAME\n" PACKAGE_INSTALLATION M sEcho+="Server IP: `ifconfig | grep 'inet addr:'| grep -v '127.0.0.1' | cut -d: -f2 | awk '{ print $1}'`\n" PACKAGE_INSTALLATION M sEcho+="Date: " PACKAGE_INSTALLATION M sEcho+=`date 2>/dev/null` PACKAGE_INSTALLATION M sEcho+="\n" PACKAGE_INSTALLATION M PACKAGE_INSTALLATION M # Add the contents of "df" if elected by the user PACKAGE_INSTALLATION M if [ "${vDF_OUT-NO}" = "YES" ]; then PACKAGE_INSTALLATION M sEcho+=`df` PACKAGE_INSTALLATION M sEcho+="\n" PACKAGE_INSTALLATION M fi PACKAGE_INSTALLATION M PACKAGE_INSTALLATION M # Add the contents of /proc/mdcmd if elected by the user PACKAGE_INSTALLATION M if [ "$bIncludeMdcmd" = "True" ] PACKAGE_INSTALLATION M then PACKAGE_INSTALLATION M sEcho+="\n" PACKAGE_INSTALLATION M sEcho+="Output of /proc/mdcmd:\n" PACKAGE_INSTALLATION M sEcho+="- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \n" PACKAGE_INSTALLATION M PACKAGE_INSTALLATION M sEcho+=`/root/mdcmd status|strings` PACKAGE_INSTALLATION M sEcho+="\n" PACKAGE_INSTALLATION M fi PACKAGE_INSTALLATION M PACKAGE_INSTALLATION M echo -e "$sEcho"|mail -s "$sSubject" ${vEMAIL_ADDR-root} PACKAGE_INSTALLATION Mfi PACKAGE_INSTALLATION THE_END_OF_SCRIPT PACKAGE_INSTALLATION sed -i "s/^M//" /etc/cron.hourly/smtp_status.sh PACKAGE_INSTALLATION chmod +x /etc/cron.hourly/smtp_status.sh