Pages:
Author

Topic: LinuxCoin A lightweight Debian based OS with everything ready to go. - page 52. (Read 285117 times)

sr. member
Activity: 308
Merit: 251
I just read that the new version of the linux Catalyst drivers, the 1.6, lets you overdrive the cards over the bios limits. I dont know if they are included already in Linuxcoin, but if they are not it would be a nice addition since it removes the need to flash the bios of the cards.

EDIT: For reference: http://forum.bitcoin.org/index.php?topic=19776.msg258398#msg258398

Thanks for the info Cheesy A risky one !! Most if the hardware testing had been done with 11.4 I'm testing 11.6 as we speak Wink if I think it's stable enough I'll add it as an option via the package manager.
legendary
Activity: 1148
Merit: 1001
Radix-The Decentralized Finance Protocol
I just read that the new version of the linux Catalyst drivers, the 1.6, lets you overdrive the cards over the bios limits. I dont know if they are included already in Linuxcoin, but if they are not it would be a nice addition since it removes the need to flash the bios of the cards.

EDIT: For reference: http://forum.bitcoin.org/index.php?topic=19776.msg258398#msg258398
sr. member
Activity: 308
Merit: 251
Just wanted to bump this I'm getting to the end of the bug fixes and everything is looking good Wink But if anybody would like anything else included please let me know now or it won't be included.  

What we have so far

miners updated.
fixed spelling errors
fixed filemanager
added user requests ntp, java, screen etc
new look
shinny new kernel 2.6.39-2
tftpd, apache2 @ dnsmasq for running linuxcoin as a pxe server.
wireless server setup script
easy home folder encryption (migration supported only a couple of commands to complete)

SCREENSHOTS:

     
legendary
Activity: 1855
Merit: 1016
sr. member
Activity: 308
Merit: 251
legendary
Activity: 1855
Merit: 1016
Complete? you added java?
sr. member
Activity: 308
Merit: 251
I tried to run Diablo miner, but get error java not found.
how to add java or give path to where java is?
It will be helpful as Diablo miner runs only one instance of miner for all cards. Its a great feature which is not mentioned directly or i didn't saw it.

About diablo's miner, it has a feature which all other miners lack for now.

In other miners, you select device from 0, poclbm its -d0, phoenix its -DEVICE=0, but in diablo device start from 1.

Just try this & u will see one miner mining in all cards u installed with only one worker.

Code:
./DiabloMiner-linux.sh -o api.bitcoin.cz -r 8332 -u YOURUSERNAME WITH WORKER -p PASSWORD OF WORKER -v 2 -w 128 -f 1

You can see, their is no where device mentioned. If you want to mention particular device then use -D 1 (capital D, small d is for debugging)
If you want to use all devices, then don't use -D at all.
Its a great feature not known to many as DiabloD3 not published so far directly in 1st post.
His miner sends data to pool from one miner only instead of 8, which may reduce pool data receiving & bandwidth.
With his miner you don't need to run 4 miners for 4 cards, just one miner is enough for 4 cards.





Please tell how to enable java.



EDIT: Complete Wink
legendary
Activity: 1855
Merit: 1016
I tried to run Diablo miner, but get error java not found.
how to add java or give path to where java is?
It will be helpful as Diablo miner runs only one instance of miner for all cards. Its a great feature which is not mentioned directly or i didn't saw it.

About diablo's miner, it has a feature which all other miners lack for now.

In other miners, you select device from 0, poclbm its -d0, phoenix its -DEVICE=0, but in diablo device start from 1.

Just try this & u will see one miner mining in all cards u installed with only one worker.

Code:
./DiabloMiner-linux.sh -o api.bitcoin.cz -r 8332 -u YOURUSERNAME WITH WORKER -p PASSWORD OF WORKER -v 2 -w 128 -f 1

You can see, their is no where device mentioned. If you want to mention particular device then use -D 1 (capital D, small d is for debugging)
If you want to use all devices, then don't use -D at all.
Its a great feature not known to many as DiabloD3 not published so far directly in 1st post.
His miner sends data to pool from one miner only instead of 8, which may reduce pool data receiving & bandwidth.
With his miner you don't need to run 4 miners for 4 cards, just one miner is enough for 4 cards.





Please tell how to enable java.

full member
Activity: 154
Merit: 100
A little update. As I'm going to be busy for a while sorting my real life out I've decided to patch up linuxcoin 0.2a for now and release it as 0.2b. There are so many posts in this tread its hard to keep up with everything so if you would like something included please inbox me as soon as possible.

So far on the list.

Software update (complete)
add screen & ntp (complete)
fix pcmanfm (complete)
update license agreement script (in progress)
spelling errors etc. (complete)
More elegant way to initialize the ATI GPGPU's (in progress)

Added apache2, tftp, dnsmasq for booting the filesystem via network. I'll write a guide when uploading so you can use linuxcoin as a pxe server and distribute linuxcoin over a network.


Change the default background lxterminal color from transparent to black, as transparent is just unusable.

Have it use a blank screensaver by default instead of a random screensaver (this can suck away a lot of MHash/s if it randomly chooses a graphically intensive screensaver).

Great work on everything by the way!
hero member
Activity: 490
Merit: 500


3.  Phoenix wouldn't mine even though all of the CLinfo and aticonfig diagnostics indicated that OpenCL was functioning properly.  I was getting the dreaded "FATAL kernel error: Failed to load OpenCL kernel!" error.  The solution ended up being deleting the version of Phoenix that came on the Linuxcoin stick and grabbing the latest trunk from Phoenix's Subversion.  The Phoenix that ships on Linuxcoin is just borked for some reason; go get it on the web like you would if your distro didn't already come with it, and that should fix it.

Did you run aticonfig --adapter=all --initial and logout / log back in? I had to do this and then all was well (even with the loaded Phoenix)

sr. member
Activity: 308
Merit: 251
A little update. As I'm going to be busy for a while sorting my real life out I've decided to patch up linuxcoin 0.2a for now and release it as 0.2b. There are so many posts in this tread its hard to keep up with everything so if you would like something included please inbox me as soon as possible.

So far on the list.

Software update (complete)
add screen & ntp (complete)
fix pcmanfm (complete)
update license agreement script (moved to system settings)
spelling errors etc. (complete)
More elegant way to initialize the ATI GPGPU's (complete)

Added apache2, tftp, dnsmasq for booting the filesystem via network. I'll write a guide when uploading so you can use linuxcoin as a pxe server and distribute linuxcoin over a network.
full member
Activity: 154
Merit: 100
Yes, I have two other computers that are running Ubuntu booting off a hard drive in a more normal configuration.  Neither of them were trouble-free installation experiences either.  Linuxcoin was actually about on par in terms of time spent getting it set up, and I didn't have to buy another hard drive and optical drive.  Plus, if I had just figured out that damn Gigabyte USB boot incompatibility earlier (or gotten a different mobo), it would've taken much less time.
member
Activity: 112
Merit: 10
Ride or Die
All right guys, I got Linuxcoin up and running last night after several hours of messing around with it.  I ran into three main problems.  Hopefully my solutions will be helpful to others (and if they are, a token amount to 19hVUo1jEYmo9LW82VcqitwbqLG8o9hReB would be appreciated).

1.  I had to format my USB stick on a Windows computer.  I tried just about everything under the Sun to get it working from my GNU/Linux computer, but all I ever got was "Boot error" when attempting to load the OS on my mining rig.  Incidentally the USB stick booted fine on other computers.  Then I finally came across the following post that resolved my issue: http://www.tomshardware.com/forum/237445-30-boot-external

Apparently the BIOS on Gigabyte motherboards kind of sucks, and it doesn't handle boot partitions that aren't in some extremely Windows-specific format, so if you have a Gigabyte motherboard and you're getting "Boot Error", here's what to do.  Stick the USB stick in a GNU/Linux computer and use fdisk to delete all the partitions (yes, you can't use Disk Manager in Windows 7 to do this, although other better partitioning programs probably can).

Then stick it in a Windows computer and use Disk Manager to create a new FAT partition 1 GiB in size.  Then remove the flash stick from the Windows computer, stick it back in your Linux computer, and create a new partition in the remaining space for your persistence volume and format that as ext4.

After all that rigamarole, I loaded the Linuxcoin to the FAT partition using unetbootin on my Linux computer and it finally was able to boot on the Gigabyte motherboard.

2.  Secondly, I got an error after Linuxcoin booted up but before it got to the desktop.  I'm sorry I forget the error now, but it was something about how it couldn't find the live something or other.  The solution was to plug the USB stick into a different port on the motherboard, and then it worked.

3.  Phoenix wouldn't mine even though all of the CLinfo and aticonfig diagnostics indicated that OpenCL was functioning properly.  I was getting the dreaded "FATAL kernel error: Failed to load OpenCL kernel!" error.  The solution ended up being deleting the version of Phoenix that came on the Linuxcoin stick and grabbing the latest trunk from Phoenix's Subversion.  The Phoenix that ships on Linuxcoin is just borked for some reason; go get it on the web like you would if your distro didn't already come with it, and that should fix it.

Have you tried a standard HDD install of Ubuntu following the guides for opencl/python/phoenix (or diablo) install? That could save people 5-6hrs from linuxcoin/usb drives in general.
Although I love the concept, I think debian/lxfce just doesn't have the support for it right now. . .
Using XFCE desktop on Xubuntu I get pretty good hash speeds and minimal cpu use.
full member
Activity: 154
Merit: 100
All right guys, I got Linuxcoin up and running last night after several hours of messing around with it.  I ran into three main problems.  Hopefully my solutions will be helpful to others (and if they are, a token amount to 19hVUo1jEYmo9LW82VcqitwbqLG8o9hReB would be appreciated).

1.  I had to format my USB stick on a Windows computer.  I tried just about everything under the Sun to get it working from my GNU/Linux computer, but all I ever got was "Boot error" when attempting to load the OS on my mining rig.  Incidentally the USB stick booted fine on other computers.  Then I finally came across the following post that resolved my issue: http://www.tomshardware.com/forum/237445-30-boot-external

Apparently the BIOS on Gigabyte motherboards kind of sucks, and it doesn't handle boot partitions that aren't in some extremely Windows-specific format, so if you have a Gigabyte motherboard and you're getting "Boot Error", here's what to do.  Stick the USB stick in a GNU/Linux computer and use fdisk to delete all the partitions (yes, you can't use Disk Manager in Windows 7 to do this, although other better partitioning programs probably can).

Then stick it in a Windows computer and use Disk Manager to create a new FAT partition 1 GiB in size.  Then remove the flash stick from the Windows computer, stick it back in your Linux computer, and create a new partition in the remaining space for your persistence volume and format that as ext4.

After all that rigamarole, I loaded the Linuxcoin to the FAT partition using unetbootin on my Linux computer and it finally was able to boot on the Gigabyte motherboard.

2.  Secondly, I got an error after Linuxcoin booted up but before it got to the desktop.  I'm sorry I forget the error now, but it was something about how it couldn't find the live something or other.  The solution was to plug the USB stick into a different port on the motherboard, and then it worked.

3.  Phoenix wouldn't mine even though all of the CLinfo and aticonfig diagnostics indicated that OpenCL was functioning properly.  I was getting the dreaded "FATAL kernel error: Failed to load OpenCL kernel!" error.  The solution ended up being deleting the version of Phoenix that came on the Linuxcoin stick and grabbing the latest trunk from Phoenix's Subversion.  The Phoenix that ships on Linuxcoin is just borked for some reason; go get it on the web like you would if your distro didn't already come with it, and that should fix it.
newbie
Activity: 54
Merit: 0
Is there a problem with installing LinuxCoin in one computer with a determined hardware and then move it to a computer with different hardware?

Yea..It probably saved the settings from your test system. Try booting without persistence and formatting the persistence partition and then rebooting with persistence on your mining rig.
legendary
Activity: 1148
Merit: 1001
Radix-The Decentralized Finance Protocol
Ok. So I finally got things working with LinuxCoin with persistance in my test computer. But when I rebooted my mining rig into LinuxCoin it started to load it and then hang with a black screen.

Is there a problem with installing LinuxCoin in one computer with a determined hardware and then move it to a computer with different hardware?
donator
Activity: 392
Merit: 252
This is really great stuff kjj, thanks so much for saving me the time.  On wednesday night I should be able to implement this.  Can you explain to me the last code? the crontab -e

the restart script just kills the terminal and restarts it if the cpu load falls a certain amount?

have you found a way to monitor them remotely?

crontab -e is the command to edit the user crontab.  You need to run that command, which starts an editor, so you can add that line.  Must be done while logged in as user not as root, as in use LXTerminal from the Accessories menu, not Root Terminal.

The restart script checks for two possible error conditions.  First, if the script named miner1.sh (or miner2.sh, or minerX.sh) is no longer running.  Second, if the load on the appropriate GPU is too low, which usually means that the script is hung and no longer asking for work, but still running.  If either condition is true, it attempts to kill the script if still running, and then starts it in a way that it pops up on the display and has access to X.

For remote monitoring, I'm using some custom mods to cdhowie's flexible mining proxy.  My proxy box has a cron script that pulls the database every few minutes, and if any miner hasn't requested work in a certain amount of time, a command is sent to a networked power strip to cut power for a few seconds, rebooting the box regardless of how badly crashed it is.

These scripts are still pretty crude, but they work great for me.  Hopefully you and others will find them useful as well.

I'm planning two improvements, but I probably won't get around to them until late in the week.  First, I want to create config files to simplify setup, particularly for people that don't already know how to customize these bash scripts.  And once that is done, I want to set it up to download the config files from a webserver so that I can just clone the USB stick to plug into a new box and have automatic provisioning.

Impressive work, kjj. An initial setup screen is a great idea. Perhaps an even better idea is to over-simplify and create a distro specific to an optimized hardware build i.e. motherboard, processor and graphics best practice. Have a very simple cpanel for the box, with functionality that would include assigning pool to GPU, pool credentials, external wallet address(es).

Bounty?
kjj
legendary
Activity: 1302
Merit: 1026
This is really great stuff kjj, thanks so much for saving me the time.  On wednesday night I should be able to implement this.  Can you explain to me the last code? the crontab -e

the restart script just kills the terminal and restarts it if the cpu load falls a certain amount?

have you found a way to monitor them remotely?

crontab -e is the command to edit the user crontab.  You need to run that command, which starts an editor, so you can add that line.  Must be done while logged in as user not as root, as in use LXTerminal from the Accessories menu, not Root Terminal.

The restart script checks for two possible error conditions.  First, if the script named miner1.sh (or miner2.sh, or minerX.sh) is no longer running.  Second, if the load on the appropriate GPU is too low, which usually means that the script is hung and no longer asking for work, but still running.  If either condition is true, it attempts to kill the script if still running, and then starts it in a way that it pops up on the display and has access to X.

For remote monitoring, I'm using some custom mods to cdhowie's flexible mining proxy.  My proxy box has a cron script that pulls the database every few minutes, and if any miner hasn't requested work in a certain amount of time, a command is sent to a networked power strip to cut power for a few seconds, rebooting the box regardless of how badly crashed it is.

These scripts are still pretty crude, but they work great for me.  Hopefully you and others will find them useful as well.

I'm planning two improvements, but I probably won't get around to them until late in the week.  First, I want to create config files to simplify setup, particularly for people that don't already know how to customize these bash scripts.  And once that is done, I want to set it up to download the config files from a webserver so that I can just clone the USB stick to plug into a new box and have automatic provisioning.
sr. member
Activity: 406
Merit: 250
Nifty progress today.

Code: (/home/user/.config/autostart/auto.desktop)
[Desktop Entry]
Encoding=UTF-8
Name=coin
Exec=lxterminal --command "/home/user/start.sh"
Terminal=true

Code: (/home/user/start.sh)
#!/bin/bash
xhost +
echo $DISPLAY > /home/user/.display
lxterminal --title miner1_start --command "/home/user/miner1.sh"
lxterminal --title miner2_start --command "/home/user/miner2.sh"

Code: (/home/user/miner1.sh)
#!/bin/bash
cd /opt/miners/phoenix
./phoenix.py -u http://__USER__:__PASSWORD__@__PROXY/POOL__:__PORT__/ -k phatk BFI_INT VECTORS FASTLOOP=false AGGRESSION=11 DEVICE=0

Code: (/home/user/miner2.sh)
#!/bin/bash
cd /opt/miners/phoenix
./phoenix.py -u http://__USER__:__PASSWORD__@__PROXY/POOL__:__PORT__/ -k phatk BFI_INT VECTORS FASTLOOP=false AGGRESSION=11 DEVICE=1

Code: (/home/user/restart.sh)
#!/bin/bash
export DISPLAY=`cat /home/user/.display`
pc=`ps waxuf | grep miner1.sh -c`
ld=`aticonfig --odgc --adapter=0 | grep "GPU load" | cut -c 30-35 | cut -d % -f 1`
if [[ $pc -lt 2 ||  $ld -lt 50 ]] ; then
 killall -KILL miner1.sh
 nohup lxterminal --title miner1 --command /home/user/miner1.sh &
fi
pc=`ps waxuf | grep miner2.sh -c`
ld=`aticonfig --odgc --adapter=1 | grep "GPU load" | cut -c 30-35 | cut -d % -f 1`
if [[ $pc -lt 2 ||  $ld -lt 50 ]] ; then
 killall -KILL miner2.sh
 nohup lxterminal --title miner2 --command /home/user/miner2.sh &
fi

Code: (crontab -e)
1,11,21,31,41,51 * * * * /home/user/restart.sh

miner1.sh and miner2.sh are owned by root.root, and are setuid/setgid (mode 6755) while the others are owned by user.user and are mode 0755.

Very simple to extend this to multiple miners, and it will restart any that are crashed or hung.

This is really great stuff kjj, thanks so much for saving me the time.  On wednesday night I should be able to implement this.  Can you explain to me the last code? the crontab -e

the restart script just kills the terminal and restarts it if the cpu load falls a certain amount? Do you think this will work well enough to prevent from having multiple pools?  I guess not if it work queue goes empty or pool servers go down.  So perhaps its still best to use 2-3 pools for redundancy?

have you found a way to monitor them remotely?
kjj
legendary
Activity: 1302
Merit: 1026
It has been mentioned before in this thread, but if you are using unetbootin to write the ISO to the flash drive, you need to edit the syslinux.cfg file in the root directory and add "persistent" to the first append line.  Unetbootin overrules the boot configuration in the ISO and uses its own.

The step by step sequence that I've been using is:

1) plug new flash drive into a linux box (an existing one, or write the linuxcoin ISO to a CD and boot that for this step)
2) find the device name, and unmount it if it automounted.
3) use fdisk to create 2 partitions.  Partition 1 is 1GB, type "b" or "c", active.  Partition 2 is all remaining space, type 83, not active.
4) use mkfs.ext4 to create a filesystem on partition 2 (probably /dev/sda2 or /dev/sdb2)
5) plug the drive into a windows box
6) go to disk management, format partition 1.
7) use unetbootin to write the ISO
8 ) edit syslinux.cfg
9) remove the flash drive from windows, boot the new box with the drive.

Optional steps if you are doing a lot of boxes:

10) accept the AMD license
11) install ntp
12) copy over my startup and restart scripts (generic versions with CHANGEME as the worker name)
13) shut down, boot from the CD again, and use dd to clone this prepared drive onto other drives

Why do you need to format from windows? Why not use unetbootin from linux also?

The ISO was sitting on a SMB share that was easier for me to get to from my workstation, and I find just about everything about Ubuntu to be obnoxious, particularly the GUI, so I try not to spend any more time with it than necessary.  So, it was just easier for me to do everything on the Linux command line and in Windows.

The format was done in Windows because back in the 90s bootable FAT filesystems made under Linux were unreliable in Windows, and I was using unetbootin from Windows.  Presumably mkfs has been fixed, but old habits die hard.

My steps worked for me the six times that I did it.  I'm sure there are many other ways to get this working, but I can't offer to help with any of them.
Pages:
Jump to: