unMENU 1.5 ... now available for download.


Recommended Posts

I got this and preclear installed last night.  I am currently clearing a 1TB drive now.  When it is done what should I be looking for, something about allocated sectors?

 

1.  I want to install the APC and mail scripts, to do this I just click on the links in unmenu and it does its thing.  I should also select install on reboot.  Anything else?  Can I use my own email with the email script or does it have to be gmail?

 

2.  What other scripts would you recommend I install?  What is the SMART REPORT script I think I saw?

 

thanks

 

Link to comment
  • Replies 1.3k
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

Posted Images

I got this and preclear installed last night.  I am currently clearing a 1TB drive now.  When it is done what should I be looking for, something about allocated sectors?

Re-allocated sectors, and sectors pending re-allocation.  There is plenty to read about in the preclear thread.  No need to put it here too.

1.  I want to install the APC and mail scripts, to do this I just click on the links in unmenu and it does its thing.  I should also select install on reboot.  Anything else?

You must also install the "powerdown" package for the UPS to be able to cleanly stop your array, yes, press the buttons on each to re-install on reboot.
 Can I use my own email with the email script or does it have to be gmail?
Yes, you can use your own.  You'll need to figure out the correct  settings for the fields on the form for your provider.

 

2.  What other scripts would you recommend I install?  What is the SMART REPORT script I think I saw?

 

thanks

 

I think you need to do some reading.  Most people need very little besides e-mail notification of errors and UPS support.  I'd install the monthly parity check and the powerdown script. (both available in the package manager in unMENU) 

 

The other various utilities and scripts are mostly listed in the wiki, here:

http://lime-technology.com/wiki/index.php?title=UnRAID_Add_Ons

Link to comment

I can't get mail ssmtp to install, any idea?  Does it require something else?

 

The output it gives tells you what else needs to be installed for it to work and why the package failed to install.

 

You will need to install the gcc package so the smtp package can be compiled.

Link to comment

I've submitted an issue on the google site concerning a problem with ssmtp on my install. The install scripts writes

 

AuthLogin=

AuthPassword=

 

when no mail id/password is given. With these tags in ssmtp.conf, the ssmtp process still send a AUTH LOGIN command to the mail server, and as this fails, mail was not working for me.

 

When I removed these tags, everything is running perfectly. I have since modified the auto_install scripts to not write these tags (suggestiong on the google code site were not persistent when rebooting)

Link to comment

I can't get mail ssmtp to install, any idea?  Does it require something else?

 

The output it gives tells you what else needs to be installed for it to work and why the package failed to install.

 

You will need to install the gcc package so the smtp package can be compiled.

 

Do I need to have gcc install on reboot also?

Link to comment

I've submitted an issue on the google site concerning a problem with ssmtp on my install. The install scripts writes

 

AuthLogin=

AuthPassword=

 

when no mail id/password is given. With these tags in ssmtp.conf, the ssmtp process still send a AUTH LOGIN command to the mail server, and as this fails, mail was not working for me.

 

When I removed these tags, everything is running perfectly. I have since modified the auto_install scripts to not write these tags (suggestiong on the google code site were not persistent when rebooting)

I can fix that easily enough...

 

I think if I modify the script like below it will do it.

These two lines in the .conf package:

PACKAGE_INSTALLATION  echo "AuthUser=${vAUTH_USER}" >>${PACKAGE_DIRECTORY}/ssmtp.conf

PACKAGE_INSTALLATION  echo "AuthPass=${vAUTH_PASS}" >>${PACKAGE_DIRECTORY}/ssmtp.conf

 

Are replaced with the following six lines:

PACKAGE_INSTALLATION if [ "${vAUTH_USER}" != "" ]; then

PACKAGE_INSTALLATION  echo "AuthUser=${vAUTH_USER}" >>${PACKAGE_DIRECTORY}/ssmtp.conf

PACKAGE_INSTALLATION fi

PACKAGE_INSTALLATION if [ "${vAUTH_PASS}" != "" ]; then

PACKAGE_INSTALLATION  echo "AuthPass=${vAUTH_PASS}" >>${PACKAGE_DIRECTORY}/ssmtp.conf

PACKAGE_INSTALLATION fi

 

Give it a try and let me know if it works for you.  If it does I'll make the change on the google.code download .conf file.

 

And thanks... for the feedback.

 

Joe L.

Link to comment

I can't get mail ssmtp to install, any idea?  Does it require something else?

 

The output it gives tells you what else needs to be installed for it to work and why the package failed to install.

 

You will need to install the gcc package so the smtp package can be compiled.

 

Do I need to have gcc install on reboot also?

No, it is only needed for the initial compile of ssmtp.
Link to comment
I've submitted an issue on the google site concerning a problem with ssmtp on my install. The install scripts writes

 

AuthLogin=

AuthPassword=

 

when no mail id/password is given. With these tags in ssmtp.conf, the ssmtp process still send a AUTH LOGIN command to the mail server, and as this fails, mail was not working for me.

 

When I removed these tags, everything is running perfectly. I have since modified the auto_install scripts to not write these tags (suggestiong on the google code site were not persistent when rebooting)

Thanks again for the report and the fix.

 

I fixed the version on google.code based on your feedback.

 

If you click on the "Check for Updates" button in unMENU, you'll be able to download the new version of the ssmtp package.conf file.  

It will need to be configured with your parameters for your e-mail host, but it should work now for you.

 

If you want to keep your existing edited mail-ssmtp-unmenu-package.conf file, you can add a line to it to specify you do not want it auto-updated.

That line is a special comment

#AUTO_UPDATE = NO

 

You can cut and paste the following command to add it:

echo "#AUTO_UPDATE = NO" >>/boot/packages/mail-ssmtp-unmenu-package.conf

 

Once that line is added, future updates to that .conf file will result in a message stating the new file was downloaded in a temp directory, and how to copy it into place if desired.

 

This applies to everybody who has already configured their ssmtp mail and has it working.  The update will replace their edited file with the new, and revert back to the un-configured fields.  Unless the #AUTO_UPDATE line is added, everybody will need to reset the configured values.

 

Joe L.

Link to comment

To troubleshoot your problem telnet to your server (I use putty). Run :

 

echo "This is a test e-mail to 'root' from `hostname`" | mail -s -v "This is a test mail" root

 

This is the same script as the unMenu test mail but with a -v parameter to see exactly what's going on with the communication between ssmtp and your mailserver.

 

@Joe: Maybe the testscript should include the -v parameter as well ?

Link to comment

To troubleshoot your problem telnet to your server (I use putty). Run :

 

echo "This is a test e-mail to 'root' from `hostname`" | mail -s -v "This is a test mail" root

 

This is the same script as the unMenu test mail but with a -v parameter to see exactly what's going on with the communication between ssmtp and your mailserver.

 

@Joe: Maybe the testscript should include the -v parameter as well ?

I don't think that will work as well as you might need, since we actually need more detail to from ssmtp, the program that actually communicates with your mail host.

 

You can easily test it though, but with a slightly different command. 

 

You can try typing this line, to run ssmtp in a debugging mode (it uses "-d") to see more of the interaction between it an your mail host:

echo -e "Subject: a test\n\nThis is the email body." | ssmtp -d root

 

Joe L.

Link to comment
  • 2 weeks later...

All of a sudden I'm unable to connect to the unRAID server with unMENU.  It was working a couple of days ago and now I can't establish a connection on my Mac with Safari and Firefox.  Am I missing something?  I bookmarked it and it has always worked.  The address is "http://unraid:8080/".  I tried it with the direct IP number too and no luck.  But it's connecting fine with the regular unRAID http interface.  So when I go to "http://unraid/main.htm", no problem.  I assume it's something to do with the 8080 port?

Syslog_8_01_10.rtf.zip

Link to comment

Ah, I think I figured it out.  I rebooted the server and didn't start unMENU again.  I started it up via telnet and it's functioning properly. I noticed in the wiki it suggests adding a line to the go script so it will start up with every reboot.  So now the go script looks like this:

 

#!/bin/bash

# Start the Management Utility

/usr/local/sbin/emhttp &

/boot/unmenu/uu

 

 

Is that right?

Link to comment

Joe, I've found that the annoying "HDIO_GET_IDENTITY" syslog error when using the Supermicro AOC-SASLP-MV8 is caused by a call incompatibility between hdparm and the mvsas driver, mainly from "hdparm -C dev" syntax. Looking at the unmenu source, I discovered that the above command is executed by the "GetDiskTemperature" function to get the disk power state, so every disk in standby state probed by unmenu in the main page generates the syslog message.

 

There is a way to extract the drive state from the mdcmd process, by looking at the "rdevLastIO.N" parameter. If the disk is active or idle, the parameter shows the UNIX time from the last IO access, but if the disk is in standby, the parameter value is '0'.

 

So, in my logic, we can search the 'cat' result from /proc/mdcmd with regex. In python I should do that this way:

#!/usr/bin/python

from subprocess import Popen, PIPE
import re

device="/dev/sdc"
p = Popen("echo status > /proc/mdcmd && cat /proc/mdcmd", shell=1, stdout=PIPE, stderr=PIPE)
output = p.communicate()[0] # stdout from the shell

device = device.split('/')[2] # retrieving me only the "sdc" part

disk_num = re.findall("rdevName.(.)="+device,output)[0]
disk_state_raw = re.findall("rdevLastIO."+disk_num+"=(.*)" ,output)[0]

if int(disk_state_raw):
        standby="no"
else:
        standby="yes"

print "standby: "+standby

 

This can be a workaround until the mvsas driver gets mature.

 

 

Link to comment

Joe, I've found that the annoying "HDIO_GET_IDENTITY" syslog error when using the Supermicro AOC-SASLP-MV8 is caused by a call incompatibility between hdparm and the mvsas driver, mainly from "hdparm -C dev" syntax. Looking at the unmenu source, I discovered that the above command is executed by the "GetDiskTemperature" function to get the disk power state, so every disk in standby state probed by unmenu in the main page generates the syslog message.

I like your idea...

 

Look for it later tonight.  

 

Joe L.

The change is in place for the main unMENU page.    It will not help with the probe of the spin status on the cache drive or on any drive not yet assigned to the array, since they have no corresponding entry in the output of the mdcmd status command.

 

Let me know if it slows/stops the annoying "HDIO_GET_IDENTITY" error messages written to the syslog.  (You'll still get them for the cache drive and any connected drive not yet assigned to the array.)

 

Joe L.

Link to comment

Hi Joe,

 

The above fix seems to have worked perfectly fine for stopping that driver spam (I have two cards, so it was rather annoying)... thanks! :-)

 

Another quick question - I'm guessing UNMENU is working fine with the 5.0 beta 1 build?  I was extremely wary to try it, as I'm using UNMENU on a daily basis and wouldn't like to lose that functionality.

 

Cheers,

 

-jj-

 

 

Link to comment

Hi Joe,

 

The above fix seems to have worked perfectly fine for stopping that driver spam (I have two cards, so it was rather annoying)... thanks! :-)

 

Another quick question - I'm guessing UNMENU is working fine with the 5.0 beta 1 build?  I was extremely wary to try it, as I'm using UNMENU on a daily basis and wouldn't like to lose that functionality.

 

Cheers,

 

-jj-

 

 

It works perfectly fine, I have it running here on a test server on 5.0-beat1.  I too use its features daily.

 

I've already made some tiny fixes to unMENU to make it more compatible with the 5.0 unRAID. 

 

Obviously, much of unMENU's functionality will eventually be migrated to plug-ins into the new 5.X architecture once it is better defined, as developers create "php" equivalents.    I don't think it will be replaced by the 5.0 plugins, especially since it is so easy to use it as a prototyping environment.  It would be fine if it does, but I think it will be around for quite a while.

 

If you think unMENU's helpful, wait until we can get the use of a full ".php" language and development environment in unRAID 5.  I foresee lots of helpful tools and add-ons.  The fun is just beginning.

 

Remember, the whole reason I created unMENU was to explore ways to improve the unRAID user-interface.  It looks like it has done its job pretty well.

 

Joe L.

Link to comment

Joe, I'm using a nice script to update a DynDNS address, can I transform it into a unmenu package? Is there any use for it in unmenu?

Could be... you  can send it in a PM or attach it here if you like.  I'll be happy to take a look.

 

Does it run via cron?  or does it do its own timing?  Does it detach itself from the controlling terminal as a daemon process?

 

All those will determine how it fits into the package manager.    I've included almost all packages that have been written... who knows, you might become famous by it...  ;D

 

If you need hints on how to put it in an unMENU  package, ask away.  You can try a first version and I'll tweak it if needed.

Link to comment

Joe, I use cron to launch it, since I was using inadyn and sometimes the daemon was killed; many times I was unable to establish a VPN to my unRAID due to wrong IP configuration. With cron, if something goes wrong, 5 minutes after the script is launched again.

 

I will look some packages as models, and try to make something that worth publishing.

 

There other issues that I've found:

 

a) the unraid-status-email script continues to use the "hdparm -C dev" sintax, and hourly it triggers some mvsas syslog messages;

b) the apcupsd-1.14.8 package assumes that the apcupsd.conf still uses "UPSCABLE smart" as default, but instead it uses "UPSCABLE usb". It points the device too, in "DEVICE /dev/usb/hiddev0", avoiding autodetection and killing the apcupsd if other usb HID device is connected.

 

Edit:

 

I've tried to do my best:

 

PACKAGE_NAME DynDNS - a cron based update script for DynDNS addresses
PACKAGE_DESCR 
PACKAGE_INSTALLED /usr/bin/dyndns
PACKAGE_FILE dyndns
PACKAGE_URL none
PACKAGE_DEPENDENCIES none
PACKAGE_VARIABLE DynDNS Address:||vADDRESS=||User's DynDNS dynamic address.
PACKAGE_VARIABLE DynDNS User:||vUSERNAME=||User's DynDNS login.
PACKAGE_VARIABLE DynDNS Password:||vPASSWORD=||User's DynDNS login.
PACKAGE_VARIABLE Update interval(minutes)|vUPTIME=5||Update interval in minutes.
PACKAGE_INSTALLATION DYNDNS="USERNAME=\"$vUSERNAME\"\n"
PACKAGE_INSTALLATION DYNDNS+="PASSWORD=\"$vPASSWORD\"\n"
PACKAGE_INSTALLATION DYNDNS+="HOSTNAME=\"$vADDRESS\"\n"
PACKAGE_INSTALLATION DYNDNS+="UPTIME=\"$vUPTIME\"\n"
PACKAGE_INSTALLATION DYNDNS+="LASTIP=\$(ping -c 1 \$HOSTNAME | grep PING | cut -d'(' -f2 | cut -d')' -f1)\n"
PACKAGE_INSTALLATION DYNDNS+="IP=\$(curl -s http://checkip.dyndns.org/ | cut -d' ' -f6 | cut -d'<' -f1)\n"
PACKAGE_INSTALLATION DYNDNS+="if [ \"\$IP\" != \"\$LASTIP\" ]; then\n"
PACKAGE_INSTALLATION DYNDNS+="	URL=\"https://\$USERNAME:\[email protected]/nic/update?hostname=\$HOSTNAME"
PACKAGE_INSTALLATION DYNDNS+="&myip=\$IP&wildcard=NOCHG&mx=NOCHG&backmx=NOCHG\"\n"
PACKAGE_INSTALLATION DYNDNS+="	RESPONSE=\$(curl -s \$URL | cut -d' ' -f1)\n"
PACKAGE_INSTALLATION DYNDNS+="	if [ \$RESPONSE = \"good\" ]; then\n"
PACKAGE_INSTALLATION DYNDNS+="		MSG=\"External IP address change detected! \$HOSTNAME updated to \$IP.\"\n"
PACKAGE_INSTALLATION DYNDNS+="		/usr/bin/logger \$MSG\n"
PACKAGE_INSTALLATION DYNDNS+="	fi\n"
PACKAGE_INSTALLATION DYNDNS+="fi\n"
PACKAGE_INSTALLATION echo -e $DYNDNS > /usr/bin/dyndns
PACKAGE_INSTALLATION crontab -l | sed -e '/dyndns/d' >/tmp/crontab
PACKAGE_INSTALLATION echo "# Updates dyndns each $vUPTIME minutes." >>/tmp/crontab
PACKAGE_INSTALLATION echo "*/$vUPTIME * * * * /usr/bin/dyndns 1>/dev/null 2>&1" >>/tmp/crontab
PACKAGE_INSTALLATION crontab /tmp/crontab
PACKAGE_INSTALLATION rm /tmp/crontab
PACKAGE_INSTALLATION echo "Version: 1.0" > /var/log/dyndns
PACKAGE_VERSION_TEST grep "Version:" /var/log/dyndns  | awk '{print $2}'
PACKAGE_VERSION_STRING 1.0
PACKAGE_MEMORY_USAGE small

 

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.