An Improved unRAID web-interface, extensible, and easy to install


Recommended Posts

I was looking through some pages on hard disk performance and noticed some tests for performance and was wondering if there is a way to put in one of the disk performance test scenarios in either the mymain performance tab or in the disk management page?

 

Thx!

 

I currently have a button in the "User-Scripts" page that does an hdparm -tT for all the disks.  adding a per-disk button on the disk-management page can certainly be done.  Is that what you are thinking of?

 

Joe L.

Link to comment
  • Replies 552
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

Posted Images

I was looking through some pages on hard disk performance and noticed some tests for performance and was wondering if there is a way to put in one of the disk performance test scenarios in either the mymain performance tab or in the disk management page?

 

Thx!

 

I currently have a button in the "User-Scripts" page that does an hdparm -tT for all the disks.  adding a per-disk button on the disk-management page can certainly be done.  Is that what you are thinking of?

 

Joe L.

 

I was looking for per-disk as you indicated, but also something that tested the write performance of the per-disk as well.

 

Link to comment

I was looking through some pages on hard disk performance and noticed some tests for performance and was wondering if there is a way to put in one of the disk performance test scenarios in either the mymain performance tab or in the disk management page?

 

Thx!

 

I currently have a button in the "User-Scripts" page that does an hdparm -tT for all the disks.  adding a per-disk button on the disk-management page can certainly be done.  Is that what you are thinking of?

 

Joe L.

 

I was looking for per-disk as you indicated, but also something that tested the write performance of the per-disk as well.

 

Write performance is a bit hard to test on demand, since it involves writing to the disks... (duh)

 

However, it is easy to monitor both read and write performance as you use your server.

 

I wrote a new plug-in just for disk performance of disks in your array.  It is attached.  It shows the average I/O per disk.

 

Un-zip the file in the same folder as the other unMENU files.  You will need to re-start unMENU for it to see the new plug-in.  (there is a button on the user-scripts page that will re-start it.  Re-start it, and then click on any other page, and the new menu choice should appear)

 

The new plug-in is a shell script.  It uses bwm-ng to collect its statistics.

 

The new page looks like this:

2je9yec.jpg

 

Have fun.  The bulk of the plug-in is a "css" style sheet to format the output, and a set of lines to parse the names of the assigned disks from the output of the mdcmd status command.  The actual command to get the disk performance is just a few lines as bwm-ng outputs an html table.

 

I started a parity check to give the disks some activity.  Before you ask, I have NO idea why the unRAID estimate of the I/O speed is double that shown by any individual disk.  Perhaps it is adding up the speed of a single disk with that of the parity drive.    The total I/O on my older IDE based array seems in line with my predictions.  I am limited in speed by the old PCI bus.

 

The new plug-in page self-refreshes every second.  You can sit and watch activity on your server. 

 

Now, this same data is all on the "performance" page in myMain, but it does not self-refresh, and it may not be as easy to modify if you want to make local changes to the plug-in script.

 

Joe L.

Link to comment

I'm running unRaid Pro 4.5 and unMENU 1.2

 

I'm attempting to install PHP as per the unMENU user script directive for the SMART History Report.

 

After downloading and installing the the PHP package using the unMENU package manager I see the below message

 

  Installed, but version is different.Current version='libssl.so.0.9.8' expected '5.2.8'

 

After creating a boot/smarthistory subdirectory and placing all the the files there from http://www.tcpatools.com/bubba/smarthistory.zip and clicking the unMENU user scripts SMART History Report button I get the below message.

 

  php: error while loading shared libraries: libxml2.so.2: cannot open shared object file: No such file or directory

 

I presume I need some newer version 'lib' related file(s)?

 

thanks!

 

--Don

Link to comment

 

I wrote a new plug-in just for disk performance of disks in your array.   It is attached.  It shows the average I/O per disk.

 

Un-zip the file in the same folder as the other unMENU files.  You will need to re-start unMENU for it to see the new plug-in.  (there is a button on the user-scripts page that will re-start it.  Re-start it, and then click on any other page, and the new menu choice should appear)

 

The new plug-in is a shell script.  It uses bwm-ng to collect its statistics.

Joe L.

 

So all I have to do is unzip into the unmenu fodler and unmenu will automatically find and include the plug-in?  Just want to make sure.  I'll add this little function tonight.... still fighting with s3 sleep script as well.  Thanks for all your work with this Joe (and your help for me in other threads as well!)

Link to comment

 

  php: error while loading shared libraries: libxml2.so.2: cannot open shared object file: No such file or directory

 

I presume I need some newer version 'lib' related file(s)?

 

thanks!

 

--Don

Exactly as it says...  You need to install libxml2
Link to comment

Exactly as it says...  You need to install libxml2

 

thanks.

 

now I'm seeing

 

./50-unmenu_user_script_smarthist-graph: line 8: php: command not found

 

am reading http://lime-technology.com/forum/index.php?topic=2708.msg36304#msg36304

 

below is some output

 

root@raid_01:~# echo $PATH

/usr/local/sbin:/usr/sbin:/sbin:./:/usr/local/bin:/usr/bin:/bin

root@raid_01:~#

root@raid_01:~# cd /boot/smarthistory

root@raid_01:/boot/smarthistory# which smarthistory

/boot/smarthistory/smarthistory

 

root@raid_01:/boot/smarthistory# ls -l

total 10504

-rwxrwxrwx 1 root root    23897 Jan 26  2009 flatfile.php*

-rwxrwxrwx 1 root root     3131 Jan 26  2009 flatfile_utils.php*

-rwxrwxrwx 1 root root 10673484 Jan 28  2009 smarthistory*

-rwxrwxrwx 1 root root    26480 Jan 28  2009 smarthistory.php*

-rwxrwxrwx 1 root root     2503 Jan 27  2009 smarthistory.program.conf.sample*

-rwxrwxrwx 1 root root     1841 Jan 27  2009 smarthistory.token.conf*

 

root@raid_01:/boot/smarthistory# smarthistory

No alerts from Smarthistory.

8 device(s) active, 0 sleeping, 1 did not return SMART data.

Link to comment

Exactly as it says...  You need to install libxml2

 

thanks.

 

now I'm seeing

 

./50-unmenu_user_script_smarthist-graph: line 8: php: command not found

 

am reading http://lime-technology.com/forum/index.php?topic=2708.msg36304#msg36304

 

below is some output

 

root@raid_01:~# echo $PATH

/usr/local/sbin:/usr/sbin:/sbin:./:/usr/local/bin:/usr/bin:/bin

root@raid_01:~#

root@raid_01:~# cd /boot/smarthistory

root@raid_01:/boot/smarthistory# which smarthistory

/boot/smarthistory/smarthistory

 

root@raid_01:/boot/smarthistory# ls -l

total 10504

-rwxrwxrwx 1 root root    23897 Jan 26  2009 flatfile.php*

-rwxrwxrwx 1 root root     3131 Jan 26  2009 flatfile_utils.php*

-rwxrwxrwx 1 root root 10673484 Jan 28  2009 smarthistory*

-rwxrwxrwx 1 root root    26480 Jan 28  2009 smarthistory.php*

-rwxrwxrwx 1 root root     2503 Jan 27  2009 smarthistory.program.conf.sample*

-rwxrwxrwx 1 root root     1841 Jan 27  2009 smarthistory.token.conf*

 

root@raid_01:/boot/smarthistory# smarthistory

No alerts from Smarthistory.

8 device(s) active, 0 sleeping, 1 did not return SMART data.

Apparently, you need to install php.  Have you installed it?
Link to comment

Joe L,

 

I want to append some logging to the syslog from my scripts. What key words are needed in the line to be colored when viewing the syslog with unMenu? Thanks.

Create a file named

syslog_user_match.conf

and put it in the same folder as all the other unmenu files.

 

In it, you can put locally defined patterns for coloring lines in the syslog.   The normal coloring patterns are in syslog_match.conf.  You can look there for examples. Those are appended to by the ones in the local file, if the local file exists.

 

Use an editor that puts newlines at the ends of lines (Not CR/NL pairs as MS-Dos editors do)

This post describes the basics... http://lime-technology.com/forum/index.php?topic=4757.msg43594#msg43594

 

The FIRST "regular expression" rule matched is the one that is used, so to override an existing colored line, (or to force one colored to be black) your rule must be in the syslog_match.conf file before the existing one.   To add a rule for a line not yet matched, it can be in your own local syslog_user_match.conf file.   In the post listed in the above thread, I described how to force a line to "black" that was showing as an error (and was not) by matching more of the specific text, and still allowing the more general rule to exist.

 

You can match as much of a line or as little as you like.  If you were foolish enough to make the pattern

any_case||a||brown

then any line with the letter "a" anywhere in it, in lower or upper case, would match and be colored brown. (not too useful)

 

If you add

match_case||WDC WD10EACS-00ZJB0||#C0C0C0

then only that specific model disk drive would be colored dark red (#C0C0C0), and only if the letters were all caps, as in the line in the match file.

 

You can use any "colors" you like...  The value you put in the "third" field on the line can be a color recognized in html, (red, green, brown, blue, etc)  or a hex value preceded with a pound sign(example: #C0C0C0 ) as it is just put into the resulting html output to the browser.

 

Some sample colors are here: http://www.htmlgoodies.com/tutorials/colors/article.php/3478961

 

Joe L.

Link to comment

I have a question on one of the user scripts in unmenu.

 

I was previously manually entering commands that Joe L. had given in order to allow files to be visible via ftp:

 

find /mnt/user -type d -exec chmod 755 {} \;

find /mnt/user -type f -exec chmod 700 {} \;

 

I see this entry:

 

Set SAMBA file Permissions which says it will "Sets SAMBA file creation permissions to 0644 and directory creation permissions to 0755"

 

Will using this script set all of my files like the manual commands do and also allow me to see items in ftp?

 

I don't really understand the differences in permissions, etc. between 0644 and 700 and what it really means in actual usage.

 

Thx!

 

Link to comment

I have a question on one of the user scripts in unmenu.

 

I was previously manually entering commands that Joe L. had given in order to allow files to be visible via ftp:

 

find /mnt/user -type d -exec chmod 755 {} \;

find /mnt/user -type f -exec chmod 700 {} \;

 

I see this entry:

 

Set SAMBA file Permissions which says it will "Sets SAMBA file creation permissions to 0644 and directory creation permissions to 0755"

 

Will using this script set all of my files like the manual commands do and also allow me to see items in ftp?

 

I don't really understand the differences in permissions, etc. between 0644 and 700 and what it really means in actual usage.

 

Thx!

 

You can look at the manual page for the "chmod" command, but basically unix permissions are granted in three levels.

 

1. Permissions for the owner of the files

2. Permissions for those in the same "group" as the owner of the files

3. Permissions for others (not the owner, not in the same group)

 

Each of the 3 numbers in the argument to the chmod command represent the octal values of the "bits" for Owner, Group, and Other.  The bits themselves (for files) indicate the permission to read a file, to write to the file, and to execute the file as a program.

 

So a file with permissions of 700  = the owner can read it, write to it, and execute it.  everybody other than the owner has zero permissions.

 

the unMENU script sets file permissions to 644 = the owner can read and write it.  Everybody else can read it only.  Nobody can "execute" any file, since they are not programs to be executed, it is not necessary to set that bit for music or movies.

 

the unMENU script sets directory permissions to 755.  Each number represents owner, others in same group as owner, and others.

The bits represent ability to read a directory (to get a file listing) to write to a directory (to create a new file OR delete an existing file, OR rename an existing file) and lastly the permission to use the directory as part of a pathname to get to a subdirectory or file in a subdirectory.

 

To answer your questions...  Yes, very likely pressing the button will do as your manual entry of the two commands.  And... since the button itself is just a "script" you can edit it to change it, or create a new user-script button with your exact commands.

Link to comment
  • 5 weeks later...

Am I just missing it somewhere obvious....but where does it tell me what version of unRAID I am currently running? The only place I found this was in the unRAID Main?

How about this...  A "button script" you can add

 

Create a file named

100-unmenu_user_script_unraid_version

 

In it, put these three lines

#define USER_SCRIPT_LABEL unRAID Version

#define USER_SCRIPT_DESCR Print the current unRAID Version.

strings /usr/local/sbin/emhttp | sed -n "s/^version=\(.*\)/unRAID Version: \1/p"

 

Put the file in the same folder as all the other unMENU files (usually /boot/unmenu).

When you next visit the user-scripts plug-in page you will see  a new button labeled "unRAID Version"

Pressing it you will see the current unRAID version.

 

It is that easy to create a new "button" for unmenu.

 

You will need to use an editor that does not put carriage returns at the ends of the lines... or after creating the file

run the following command on the file to get rid of the carriage returns at the ends of the lines.

sed  -i  "s/\\r$//"  /boot/unmenu/100-unmenu_user_script_unraid_version

 

Joe L.

Link to comment

Another way to create the file is to cut and paste the lines from here in at a telnet session (or type them at a console prompt):

 

cd /boot/unmenu

cat <<EOF >100-unmenu_user_script_unraid_version

#define USER_SCRIPT_LABEL unRAID Version

#define USER_SCRIPT_DESCR Print the current unRAID Version.

strings /usr/local/sbin/emhttp | sed -n "s/^version=\(.*\)/unRAID Version: \1/p"

EOF

 

Have fun...

 

Joe L.

Link to comment
  • 2 weeks later...

this looks awesome and I want to give it a try... specifically because i want to be able to use an APC UPS to shut down the system if it goes on battery.

 

with that said, i am not very fluent with linux and it is unclear how exactly to get started here.  i see on the first page it points to 3 files on google code...  so i download those 3 zip files and put them on my flash share?  i'm sorry for all you linux guys i probably sound like an idiot but are there detailed (for dummies) instructions on how to install unMenu?

Link to comment

this looks awesome and I want to give it a try... specifically because i want to be able to use an APC UPS to shut down the system if it goes on battery.

 

with that said, i am not very fluent with linux and it is unclear how exactly to get started here.  i see on the first page it points to 3 files on google code...  so i download those 3 zip files and put them on my flash share?  i'm sorry for all you linux guys i probably sound like an idiot but are there detailed (for dummies) instructions on how to install unMenu?

 

It's  really easy.  I needed the "dummies" book too and managed it.

http://lime-technology.com/forum/index.php?topic=2595.msg23943#msg23943

and/or

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

 

 

Link to comment

thanks...

I read through that and my first point of confusion is where exactly to put the files.  Do I put them on the flash share?  it says /boot/unmenu is suggested... is that referring to the file structure on the flash drive/share?  or is that the physical path on the unraid system?  if its the latter then a) how do i get the files to that path and b) how do I unzip them once i get them there?

 

sorry - i told you i really needed the "Dummies" version) :)

Link to comment

thanks...

I read through that and my first point of confusion is where exactly to put the files.  Do I put them on the flash share?  it says /boot/unmenu is suggested... is that referring to the file structure on the flash drive/share?  or is that the physical path on the unraid system?  if its the latter then a) how do i get the files to that path and b) how do I unzip them once i get them there?

 

sorry - i told you i really needed the "Dummies" version) :)

 

It's easiest to do if your unRAID server is running and you can access it.

  • Browse to the flash directory on your server (example: \\tower\flash)
  • Create a directory called "unmenu" right on the root of \\tower\flash
  • Download the three zip files and unzip them to the new unmenu folder you just created
  • open the config folder at the root of \\tower\flash
  • edit the file called "go". Notepad will do
  • add "/boot/unmenu/uu" to the end of the file and save it

 

Next time you boot the server you can access it using http://tower:8080

 

Link to comment
  • Squid locked this topic
Guest
This topic is now closed to further replies.