sonicos

Members
  • Posts

    17
  • Joined

  • Last visited

About sonicos

  • Birthday 11/09/1983

Converted

  • Gender
    Male
  • Location
    Orlando, Florida
  • YIM
    dj_neo_sonic
  • MSN Messenger
  • Personal Text
    VB / PHP Developer

sonicos's Achievements

Noob

Noob (1/14)

0

Reputation

  1. That will be inherent in the build. I am not going to have the same bzimage / bzroot format. The USB drive will have an actual linux filesystem. My releases will be an image file that you will need to "DD" onto your drive. I think I may do two releases. One that has build utilities and extra libraries (for intermediate users to install thier own stuff), and one for typical end users (which will fit on smaller chips). Primarily, I'm going to be releasing the same platform I build on, so there may be extra stuff laying around in some of the earlier builds (log files and whatnot) out of the box. I hope this is what you meant when you said "open". I assumed this meant easier to make perpetual changes, etc. The way I'm trying to accomplish this is by mounting the USB drive as nosync, and then running sync once an hour (configurable), on configuration changes, on UPS messages, on user intervention, and other trigger events. Off topic, but I just remembered, I'm going to put a firewall on there as well, but its going to be completely disabled by default.
  2. I mostly kept working on my control panel. Essentially my previous build is going to be perma-scrapped, since the older kernel is pretty useless, and has limited support for many of the functions I wanted to use. I will be rebuilding this project based on the 4.x release. Keeping in mind that my plan is not to fix flaws, but to add functionality, heres what I have planned for the latest build: Easier to use (and secured) web interface SSH Apache (w/PHP) ProFTPD MySQL (for use with media servers) TwonkyMedia SlimServer UPS support Defragger (maybe) Hardware Monitoring Server (maybe) If anyone can think of anything else they'd like to see or wants to help out in any way, please let me know.
  3. I have found most of the commands I needed by asking other people, and looking at the disassembly of the emhttpd server. I have a SHELL of a control panel working, its VERY basic, and unprotected. It will start and stop the different services that are installed. This is the development system, and everything fits nicely on a 1 GB flash. Once I strip it down to just the user core, I'm HOPING that everythign will be able to fit on a 512 meg card, if not a 256. I'll keep you posted. If you can think of anythign else you would like to see included, let me know.
  4. how many beeps does the system speaker make upon bootup? Check the amount of beeps agaist the motherboard manual. If everything sits there after it passes POST, and hange with a flashing cursor in the upper left, the PC may be trying to boot, but cant find an OS to load. You may want to make sure the .sys file exists on the flash drive (its a hidden file, and I believe its system and read only as well) Make sure your boot order in bios loads the USB first. Try removing and reinstalling RAM modules. Beyond that, use your motherboard guide to try to troubleshoot. If the system is passing POST, its likely a problem with the Flash drive.
  5. only SATA. I really havent payed attention to performance to be honest. I havent noticed anything that APPEARS to be problematic though.
  6. I had considered storing it on a drive, however if the said drive fails, then you are kinda screwed, since there wont be an OS to load data from. Theres ways to remedy this, like copying the OS to every drive, and mirroring the data, but thats too complicated, and would prevent the drives from spinning down etc. That said, it seems most logical (and simple) to mount the USB drive as nosync, and do a sync command once every hour or so, on configuration changes, upon the user telling it to sync, and shutdown and reboots. This should minimize the accesses to the flash drive. Just to clarify, my main focus is still as a file server, however I'm going to add some extra functionality to it. I am NOT recommending that MySQL be used as a corporate type MySQL server, but for things like slimserver that make use of the mysql server. The new control panel I'm working on is going to be PHP based, and I'm familiar with apache. SSH is more secure than telnet, etc. All non-essential programs will be off by default. Basically SSH, apache, and samba are on by default. Everything else would be off. I am considering UPS to be one of my prioritys. I may even start a new project from scratch, to try to further minimize the footprint, include a broader driverset, better ACPI support, possible performance increases, and just kinda have a fresh start and streamlined platform. Still deciding whether or not to do this, since doing that would almost be like a completely different development rather than improving on an existing one. Anyway, if I start from scratch, I'll know exactly how every aspect of the platform operates, instead of just kinda guessing at it. I'll keep everyone informed. Anyway if there are any other suggestions / advice, let me know
  7. hmm... I wasnt aware. I'll have to take that into consideration. Thanks for the heads up. I may mount it as nosync and cron sync every hour by default (and included in shutdown, reboot, and array commands). The cron would be adjustable. That may be able to satify that problem. Think it would? At even 10,000 cycles it should last at least 10 years
  8. I am corrently working on making this work with myyet to be released unraid-dev. Stay tuned.
  9. I am working on implementing this into my unraid-dev platform. More information to follow.
  10. ya. I prolly didnt need to do all that if the only changes were drivers, but I onyl needed the one Plus I dont like the word beta
  11. I agree. I have been able to implement SSHD, apache, php, mysql and a few other utilities and working stabily. I am not using the initrd (bzroot) however. What I DID do is fdisk my usb drive to be native ext2, set it for bootable, and installed LILO. This allows me a perpetual filesystem rather than a ramdisk, that upon rebooting, is lost. While this would not be for the average non linux seasoned user, there are additional options. For instance, you could make a similar setup with 2 partitions. Partition 1 could be FAT16(LBA) similar to what is used now, and partition 2 (EXT2) could be / (root). What this does is allow the user to edit the configuration files like normal, while preserving the actual filesystem of linux, allowing for other programs to be installed. This could be distributed as an image file for 256M, 512M, 1GB, or 2GB flash drives (Theres no way to install all the extra stuff from my modification onto a 128 meg flash). I would imagine distributing a single 256M image would suffice, as the command resize2fs would be sifficient in resizing the ext2FS partition to its full potential. This would keep it relatively simple and easily customizable for the normal users (by providing the same FAT16 filesystem for editing minor configuration files), while enabling the user to have a perpetual filesystem, for utilities like mysql. I'm still checking out the capability and configuration for that streaming server everyone wants, but for right now i'm still working on tweaking everything and stripping the "Release" image to as little as possible (removing all unnecessary files like build utilities). If anyone is interested in the exact steps involved to making a good build platform, let me know and I'll post back exactly how to do it. P.S. Most of my instructions arent going to be for the faint of heart, but I'll do my best to walk you through
  12. THIS WILL NOT SECURE THE CONTROL PANEL. ONLY THE ROOT SHELL I currently have enabled password protection on my root account. Its quite simple if you have the tools (or a linux box at your disposal). Basically, you take the base unraid files, extract the bzroot file, extract the files from initrd (using dd), replace the /etc/shadow with your own, repack the partition (using dd), gzip the NEW initrd into a file called bzroot, put it on your USB, and voila, password protection for root (via telnet). Now I'll be more detailed on how I did it (theres sure to be a significantly easier way). You can leave your server on during this whole time. The trick is, that your changes to the ramdisk wont take effect until you reboot, but you will be password protecting it during these steps, so its not REALLY necessary to reboot. These steps just make sure its password protected when it IS rebooted. Requirements: USB key (at least 128 megs I'd assume, but I had 256's at my disposal) Windows DD 0.3 (http://www.chrysocome.net/download) (extract the files to your windows\system32 or a known "PATH") EXT2IFS (http://www.fs-driver.org/) Windows GZIP (http://gnuwin32.sourceforge.net/packages/gzip.htm) WinRAR (or compression utility you know your way around) (http://www.rarlabs.com) unraid server (flavor of your own chioce) Patience First we need to set a password and get the hash: 1. telnet into your box and log in 2. type passwd 3. Follow the directions to set a password for root 4. Once you have set the password, you will need the hash 5. Copy the /etc/shadow to the flash drive cp /etc/shadow /mnt/flash 6. CHMOD the shadow to be visible chmod 700 /mnt/shadow 6a. (optional) copy the shadow to your hard drive somewhere 7. Open the shadow file with your favorite text editor (if you dont have one, use wordpad and NOT notepad) 8. Copy the first line to the clipboard, or leave the file open for future use Now on to the fun (and time taking part) (to make things easier I'll assume you've downloaded your copy of unraid server to c:\unraid and also that you've installed all the necessary tools listed above) 1. Navigate to c:\unraid 2. Double click bzroot -> Select WinRAR from the list. 3. You will see initrd in the list. Select it and extract. The default extract point will be c:\unraid\bzroot~. Click OK 4. Insert your USB Flash drive, and note the drive letter assigned to it 5. open a command prompt and move to c:\unraid (start -> run -> cmd -> click OK ---> in the box type cd \unraid\bzroot~ 6. Now we put the image on the flashdrive. In the command prompt window type the following dd if=initrd of=\\.\g: --progress where g: is your flash drive. ALL DATA ON THE SELECTED DRIVE WILL BE LOST. No trailing slash. Wait till you have a command prompt again before going further; Should see this (or something similar): C:\unraid\bzroot~>dd if=initrd of=\\.\g: --progress rawwrite dd for windows version 0.3. Written by John Newbigin <[email protected]> This program is covered by the GPL. See copying.txt for details 122,880,000 240000+0 records in 240000+0 records out C:\unraid\bzroot~> 7. Windows SHOULD be able to read the flash drive as native EXT2 now. 8. Navigate to the flash drive's /etc folder. 9. Open the shadow file with your favorite text editor (again, dont use notepad) 10. Overwrite the first line (root) with your OTHER line. (if you dont understand, just clear THIS shadow, and paste the entire contents of the shadow you downloaded earlier into this file). Save the file 11. The reason I say do not simply copy the file over, is because I'm not EXACTLY sure what this impact would be with different file permissions. This is why I say paste data into the existing copy, because it will retain its original permissions) 12a. If you are an experienced user, I'm sure you can think of other things to do at this step. I.E. adding other utilities, etc. 12b. If you are NOT an experienced user, ignore the previous statement 13. Time to repack our image. (hopefully you still have that command prompt open. If not start -> run -> cmd ---> ok cd \unraid\bzroot~ 14. dd if=\\.\g: of=initrd --progress again where g: is your USB drive. AGAIN, no trailing slash. 15. When that is done, gzip initrd 16. You will have initrd.gz now. we need to rename this file rename initrd.gz bzroot 17. You now have a shiny new bzroot file. Now we should put it on the UNRAID flash drive. (either plugging the USB stick into our PC and copying the file (overwriting the original), or by copying this file to the flash share. (keep in mind, our NEW file is located in c:\unraid\bzroot~\) 18 (optional) reboot the server. Again this is unnecessary since the server is password protected (assuming you havent rebooted since making the shadow file). The server will have a password protected root account at the next reboot. The only drawback is that the only way to change the password (again) is to go through this process again. Anyway, there you have it. I hope I was descriptive enough. If you have any other questions Please let me know. I am currently working on adding other utilities to my unraid. SSH, a new web interface using php and apache, maybe even a print server (I believe each user would have to customize thier image for that though), things of that nature. I am currently working on these things on a separate box. (basically I took an unraid server image, extracted it a hard drive, resized the partition, set the partition as /, and started downloading the extra packages for development and whatnot onto it. It is essentially my personal unraid 'utilites' build platform. For obvious reasons, it is not a good platform to actually RUN any compiled software on (since the dev platform has extra stuff) so I have another flash drive that I actually TEST the compiled software on. It isnt a very productive development envionment, however, it is probably the best way to emulate the true behavior of the unraid system) By no means am I a linux programmer (I dont know anything about C), I'm a VB developer, with enough knowledge about PHP to be dangerous / useful depending on the circumstances. Anyone who would like to help me in any way, please let me know. It would be nice to have some PHP developers, web designers, assorted linux gurus, and anyone who knows the commands to deal with raid, etc. If you are a C developer and you think you can write a program that would be useful here, let me know. If you can think of other applications / utilities that would be useful, let me know. Keep in mind, when the server reboots, the data will be lost, so things like mysql will not work. (well it could work, but I'm not going to try to make the necessary changes) I think unraid is a great utility, and I think we can expand on its functionality. Any suggestions are welcome, and I hope that I have provided at least a little bit of decent information Other things I may implement into my builds: Some kind of media streaming server (everyone seems to want slimserver) ftpd (maybe. If theres an interest / need) nfs (again subject to user input) I am not responsilbe if you break your unraid server, PC, nerves, fingers, neck (while bashing your head into the screen), etc. I cannot guarantee that this will work for you, even if you do things letter for letter. It works for me as of the 3.0 Final basic implementation.
  13. Working. Took some effort though. I had to dd extract the initrd from the beta to get the compiled network module. I then added it (and the other modules.dep files and such) to the FINAL 3.0 image's initrd, repacked and works like a charm I'll be happy to host the modified initrd (if allowed) and if anyone needs it.