Overclock.net › Forums › Software, Programming and Coding › Operating Systems › Linux, Unix › The #1 reason I keep having to run back to Windows...
New Posts  All Forums:Forum Nav:

The #1 reason I keep having to run back to Windows... - Page 5

post #41 of 47
all the apache servers i've seen are /var/www/localhost/htdocs

so where do you propose we put them instead? does it really matter? no..

That article the other day about /bin and /usr/bin being in reality a very stupid thing only as a result of the lack of disk space in the 70s is a good example. The unix file system convention is really NONSENSE but people praise it like it's some beautiful thing of academia (like many other parts of unix are) ... when the file system it is far from it and needs a seriously good rework.
stable again
(25 items)
 
  
CPUCPUMotherboardGraphics
E5-2687W E5-2687W ASUS Z9PED8-WS EVGA GTX 570 (Linux host) 
GraphicsRAMHard DriveHard Drive
EVGA GTX 970 FTW (win7 guest) 64GB G.SKILL 2133 2x Crucial M4 256GB raid1 4x 3TB raid 10 
CoolingCoolingCoolingCooling
2x Apogee HD  2x RX 480 2x MCP 655 RP-452x2 rev2 (new) 
CoolingCoolingOSOS
16x Cougar Turbine CFT12SB4 (new) EK FC 580 Gentoo (host) Gentoo (x23 guests) 
OSMonitorMonitorPower
windows 7 (guest w/ vfio-pci) Viewsonic 23" 1080P Viewsonic 19" Antec HCP Platinum 1000 (new) 
CaseOtherOther
Case Labs TH10 (still the best ever) 2x Lamptron FC-5 IOGEAR 2 way DVI KVM Switch 
  hide details  
Reply
stable again
(25 items)
 
  
CPUCPUMotherboardGraphics
E5-2687W E5-2687W ASUS Z9PED8-WS EVGA GTX 570 (Linux host) 
GraphicsRAMHard DriveHard Drive
EVGA GTX 970 FTW (win7 guest) 64GB G.SKILL 2133 2x Crucial M4 256GB raid1 4x 3TB raid 10 
CoolingCoolingCoolingCooling
2x Apogee HD  2x RX 480 2x MCP 655 RP-452x2 rev2 (new) 
CoolingCoolingOSOS
16x Cougar Turbine CFT12SB4 (new) EK FC 580 Gentoo (host) Gentoo (x23 guests) 
OSMonitorMonitorPower
windows 7 (guest w/ vfio-pci) Viewsonic 23" 1080P Viewsonic 19" Antec HCP Platinum 1000 (new) 
CaseOtherOther
Case Labs TH10 (still the best ever) 2x Lamptron FC-5 IOGEAR 2 way DVI KVM Switch 
  hide details  
Reply
post #42 of 47
Quote:
Originally Posted by lloyd mcclendon View Post

all the apache servers i've seen are /var/www/localhost/htdocs
so where do you propose we put them instead?
I put them in /srv/http, but that's just my preferece.
Quote:
Originally Posted by lloyd mcclendon View Post

does it really matter? no..
Well that was entirely my point wink.gif
Quote:
Originally Posted by lloyd mcclendon View Post

That article the other day about /bin and /usr/bin being in reality a very stupid thing only as a result of the lack of disk space in the 70s is a good example. The unix file system convention is really NONSENSE but people praise it like it's some beautiful thing of academia (like many other parts of unix are) ... when the file system it is far from it and needs a seriously good rework.
I read something similar on OSNews (possibly same article?)

It's all completely arbitrary these days - i mean it's not as if you need to know which bin directory xyz is when you can just `which xyz`
post #43 of 47
Quote:
Originally Posted by lloyd mcclendon View Post

all the apache servers i've seen are /var/www/localhost/htdocs
so where do you propose we put them instead? does it really matter? no..
That article the other day about /bin and /usr/bin being in reality a very stupid thing only as a result of the lack of disk space in the 70s is a good example. The unix file system convention is really NONSENSE but people praise it like it's some beautiful thing of academia (like many other parts of unix are) ... when the file system it is far from it and needs a seriously good rework.

It depends on what your building the server for. I guess if it was just a server and you weren't doing sub domains and crap, sure use it. Just generally I try to do as much stuff in user space as possible.
Current Rig
(14 items)
 
  
CPUMotherboardGraphicsRAM
FX-8350 4.6GHz@1.44v GA-990FXA-UD3 R4.0 HD 7950 (1100/1450) 8G Muskin DDR3 1866@8CLS 
Hard DriveOptical DriveOSMonitor
1TB WD LiteOn DVD-RW DL Linux/Windows 19" Phillips TV 1080p 
PowerCaseMouseMouse Pad
OCZ 600W Generic Junk Logitech MX400 Generic Junk 
Audio
SBL 5.1 
  hide details  
Reply
Current Rig
(14 items)
 
  
CPUMotherboardGraphicsRAM
FX-8350 4.6GHz@1.44v GA-990FXA-UD3 R4.0 HD 7950 (1100/1450) 8G Muskin DDR3 1866@8CLS 
Hard DriveOptical DriveOSMonitor
1TB WD LiteOn DVD-RW DL Linux/Windows 19" Phillips TV 1080p 
PowerCaseMouseMouse Pad
OCZ 600W Generic Junk Logitech MX400 Generic Junk 
Audio
SBL 5.1 
  hide details  
Reply
post #44 of 47
Quote:
Originally Posted by Quasimojo View Post

Ok, first off, I didn't mean to ruffle feathers so. I was simply venting, though I guess I can see how people would take it as pure criticism. Like I said, I love the idea of Linux. Linux just appears to have a fairly steep learning curve with few clear road maps through it, despite the huge amount of information available on the web. There are always a number of "gotchas" that aren't addressed specifically by the information at my disposal - even when sticking to the specific distro around which the information was written.
The Windows registry and straightforward setup programs aren't a "Windows thing" but a usability thing. They provide a user experience that should be what application developers strive for, regardless of the OS. This is where Linux's grassroots nature become a liability. There is just not enough consistency and standardization in the Linux community. The /etc directory is great, but different philosophies over the years have left much of the rest of the core directory tree a bit cluttered. /opt, /var, /proc, /usr...every time I think I have a handle on the purpose of each, a program comes along that was written using a different philosophy and makes its own rules.

Windows is just as hard to use from a beginner, but you've been using Windows before so you know all the ins and outs of it by now. If I told my Grandma to download Thunderbird, she'd have no idea what to do on Linux, OS X or Windows and would probably end up with a virus by the end of it.

Generally with Linux, you check the file repos first (And search their site to see if they have you add their repo, for example) and if that fails, you google the application name, and your distro (With version) and see if there's information on it, then you try a forum post. If all else fails, then you try to do the manual install preferably with help on forums or IRC. That's the process I use (Repos including the AUR for me) anyway.
My system
(23 items)
 
  
CPUMotherboardGraphicsRAM
Intel Core i5 3570k @ 4.5Ghz ASRock Z77 Pro3 Powercolor Radeon HD7950 3GB @ 1150/1350 4x4GB G.Skill Ares 2000Mhz CL9 
Hard DriveHard DriveHard DriveHard Drive
Samsung 840 250GB Western Digital Black 1TB WD1002FAEX Seagate Barracuda 3TB ST3000DM001 Samsung Spinpoint EcoGreen 2TB 
Optical DriveCoolingCoolingCooling
Pioneer DVR-220LBKS Noctua NH-D14 Scythe Gentle Typhoon 1850rpm Corsair AF140 Quiet Edition 
CoolingOSMonitorMonitor
Arcitc Cooling Acclero Twin Turbo II Arch Linux x86-64, amdgpu BenQ G2220HD BenQ G2020HD 
KeyboardPowerCaseMouse
Ducky Shine III Year of the Snake, Cherry Blue Silverstone Strider Plus 600w CoolerMaster CM690 II Black and White SteelSeries Sensei Professional 
Mouse PadAudioOther
Artisan Hien Mid Japan Black Large ASUS Xonar DX NZXT Sentry Mesh 30w Fan Controller 
  hide details  
Reply
My system
(23 items)
 
  
CPUMotherboardGraphicsRAM
Intel Core i5 3570k @ 4.5Ghz ASRock Z77 Pro3 Powercolor Radeon HD7950 3GB @ 1150/1350 4x4GB G.Skill Ares 2000Mhz CL9 
Hard DriveHard DriveHard DriveHard Drive
Samsung 840 250GB Western Digital Black 1TB WD1002FAEX Seagate Barracuda 3TB ST3000DM001 Samsung Spinpoint EcoGreen 2TB 
Optical DriveCoolingCoolingCooling
Pioneer DVR-220LBKS Noctua NH-D14 Scythe Gentle Typhoon 1850rpm Corsair AF140 Quiet Edition 
CoolingOSMonitorMonitor
Arcitc Cooling Acclero Twin Turbo II Arch Linux x86-64, amdgpu BenQ G2220HD BenQ G2020HD 
KeyboardPowerCaseMouse
Ducky Shine III Year of the Snake, Cherry Blue Silverstone Strider Plus 600w CoolerMaster CM690 II Black and White SteelSeries Sensei Professional 
Mouse PadAudioOther
Artisan Hien Mid Japan Black Large ASUS Xonar DX NZXT Sentry Mesh 30w Fan Controller 
  hide details  
Reply
post #45 of 47
Quote:
Originally Posted by lloyd mcclendon View Post

The unix file system convention is really NONSENSE but people praise it like it's some beautiful thing of academia (like many other parts of unix are) ... when the file system it is far from it and needs a seriously good rework.

All filesystem conventions are nonsense because everybody makes their own. On *nix I may end up with software in /bin, /usr/bin, /usr/local/bin, /opt, or if I modify the software, pretty much anywhere I feel like. On Windows the applications generally place their executables in one of two locations, but user data could be floating around in many different places.
    
CPUMotherboardGraphicsRAM
i7 920 D0 MSI X58 Pro-E GTX 560 Ti 448 3x2GB G.Skill DDR3-1333 9-9-9-24 
Hard DriveHard DriveOptical DriveOS
840 Pro Caviar Black LG BD-ROM Windows 8.1 Pro x64 
MonitorMonitorKeyboardPower
Dell U2713HM Dell U2311H Turbo-Trak (Google it :D) Corsair HX-520 
CaseMouseMouse PadAudio
CM690 Mionix Avior 7000 Everglide Titan AKG K 242 HD 
  hide details  
Reply
    
CPUMotherboardGraphicsRAM
i7 920 D0 MSI X58 Pro-E GTX 560 Ti 448 3x2GB G.Skill DDR3-1333 9-9-9-24 
Hard DriveHard DriveOptical DriveOS
840 Pro Caviar Black LG BD-ROM Windows 8.1 Pro x64 
MonitorMonitorKeyboardPower
Dell U2713HM Dell U2311H Turbo-Trak (Google it :D) Corsair HX-520 
CaseMouseMouse PadAudio
CM690 Mionix Avior 7000 Everglide Titan AKG K 242 HD 
  hide details  
Reply
post #46 of 47
Today at work I needed to code a simple nagios plugin. Its job is to invoke a java program which ultimately checks the health of some service. If the program returns one, declare the monitor to be in critical state; if the program returns 0, declare it as ok. In addition, if it is going to return 1, capture the output from stderr and display it after the critical message. Very simple right?

BASH VERSION
Code:
output=$(java -jar check-status.jar 2>&1 1>/dev/null) && echo OK || echo "CRITICAL - $output"


Done ... an entire 90 seconds of labor. Unfortunately .. the machine this has to run on is windows. So we have the


DOS BATCH VERSION. I've been at this for __hours__ - it is absolutely not possible to do any it any differently. $() doesn't exist .. well kind of, with the goofy FOR /F command, but that only works if you're using a rudimentary command inside and don't care about the return code or anything else...rolleyes.gif
Code:
@ECHO OFF
REM plugin.bat
SETLOCAL

java -jar check-status.jar 2>&1 1>NUL | call tee.bat "CRITICAL - "
IF ERRORLEVEL 1 GOTO CRITICAL
echo OK
ENDLOCAL
exit /B 0

:CRITICAL
ENDLOCAL
exit /B 1
Code:
@ECHO OFF
REM tee.bat
SETLOCAL

SET PREFIX=%*
FOR /F "useback tokens=*" %%P IN ('%PREFIX%') DO SET PREFIX=%%~P

SET BUFFER_EMPTY=1
SETLOCAL EnableDelayedExpansion

REM Apparently this is how you read stdin from a pipe.....   who in the world makes this kind of stuff up?
FOR /F "tokens=1* delims=]" %%A IN ('FIND /N /V ""') DO (
        IF "1" == "!BUFFER_EMPTY!" (
                (ECHO.|set /p =%PREFIX%)
                SET BUFFER_EMPTY=0
        )
        > CON ECHO.%%B
)
SETLOCAL DisableDelayedExpansion
ENDLOCAL

IF "1" == "%BUFFER_EMPTY%" (
        EXIT /B 0
) ELSE (
        EXIT /B 1
)


So to me it's only a matter of time before these threads stop. Far too much evil lies underneath. /me goes crazy mad.gifrolleyes.gif


now that i step back and look at it, that acutally has a hole such that if the program doesn't print anything to stderr but otherwise returns 1, it will say OK. So back to the drawing board. again. i am this close to using powershell or perl.. but the requirement i got was "it must be a batch file" rolleyes.gif
Edited by lloyd mcclendon - 2/10/12 at 11:57pm
stable again
(25 items)
 
  
CPUCPUMotherboardGraphics
E5-2687W E5-2687W ASUS Z9PED8-WS EVGA GTX 570 (Linux host) 
GraphicsRAMHard DriveHard Drive
EVGA GTX 970 FTW (win7 guest) 64GB G.SKILL 2133 2x Crucial M4 256GB raid1 4x 3TB raid 10 
CoolingCoolingCoolingCooling
2x Apogee HD  2x RX 480 2x MCP 655 RP-452x2 rev2 (new) 
CoolingCoolingOSOS
16x Cougar Turbine CFT12SB4 (new) EK FC 580 Gentoo (host) Gentoo (x23 guests) 
OSMonitorMonitorPower
windows 7 (guest w/ vfio-pci) Viewsonic 23" 1080P Viewsonic 19" Antec HCP Platinum 1000 (new) 
CaseOtherOther
Case Labs TH10 (still the best ever) 2x Lamptron FC-5 IOGEAR 2 way DVI KVM Switch 
  hide details  
Reply
stable again
(25 items)
 
  
CPUCPUMotherboardGraphics
E5-2687W E5-2687W ASUS Z9PED8-WS EVGA GTX 570 (Linux host) 
GraphicsRAMHard DriveHard Drive
EVGA GTX 970 FTW (win7 guest) 64GB G.SKILL 2133 2x Crucial M4 256GB raid1 4x 3TB raid 10 
CoolingCoolingCoolingCooling
2x Apogee HD  2x RX 480 2x MCP 655 RP-452x2 rev2 (new) 
CoolingCoolingOSOS
16x Cougar Turbine CFT12SB4 (new) EK FC 580 Gentoo (host) Gentoo (x23 guests) 
OSMonitorMonitorPower
windows 7 (guest w/ vfio-pci) Viewsonic 23" 1080P Viewsonic 19" Antec HCP Platinum 1000 (new) 
CaseOtherOther
Case Labs TH10 (still the best ever) 2x Lamptron FC-5 IOGEAR 2 way DVI KVM Switch 
  hide details  
Reply
post #47 of 47
Quote:
Originally Posted by lloyd mcclendon View Post

Today at work I needed to code a simple nagios plugin. Its job is to invoke a java program which ultimately checks the health of some service. If the program returns one, declare the monitor to be in critical state; if the program returns 0, declare it as ok. In addition, if it is going to return 1, capture the output from stderr and display it after the critical message. Very simple right?
BASH VERSION
Code:
output=$(java -jar check-status.jar 2>&1 1>/dev/null) && echo OK || echo "CRITICAL - $output"
Done ... an entire 90 seconds of labor. Unfortunately .. the machine this has to run on is windows. So we have the
DOS BATCH VERSION. I've been at this for __hours__ - it is absolutely not possible to do any it any differently. $() doesn't exist .. well kind of, with the goofy FOR /F command, but that only works if you're using a rudimentary command inside and don't care about the return code or anything else...rolleyes.gif
Code:
@ECHO OFF
REM plugin.bat
SETLOCAL
java -jar check-status.jar 2>&1 1>NUL | call tee.bat "CRITICAL - "
IF ERRORLEVEL 1 GOTO CRITICAL
echo OK
ENDLOCAL
exit /B 0
:CRITICAL
ENDLOCAL
exit /B 1
Code:
@ECHO OFF
REM tee.bat
SETLOCAL
SET PREFIX=%*
FOR /F "useback tokens=*" %%P IN ('%PREFIX%') DO SET PREFIX=%%~P
SET BUFFER_EMPTY=1
SETLOCAL EnableDelayedExpansion
REM Apparently this is how you read stdin from a pipe.....   who in the world makes this kind of stuff up?
FOR /F "tokens=1* delims=]" %%A IN ('FIND /N /V ""') DO (
        IF "1" == "!BUFFER_EMPTY!" (
                (ECHO.|set /p =%PREFIX%)
                SET BUFFER_EMPTY=0
        )
        > CON ECHO.%%B
)
SETLOCAL DisableDelayedExpansion
ENDLOCAL
IF "1" == "%BUFFER_EMPTY%" (
        EXIT /B 0
) ELSE (
        EXIT /B 1
)
So to me it's only a matter of time before these threads stop. Far too much evil lies underneath. /me goes crazy mad.gifrolleyes.gif
now that i step back and look at it, that acutally has a hole such that if the program doesn't print anything to stderr but otherwise returns 1, it will say OK. So back to the drawing board. again. i am this close to using powershell or perl.. but the requirement i got was "it must be a batch file" rolleyes.gif
Can't you even use WSH?
Though Powershell or Perl would be a lot saner
New Posts  All Forums:Forum Nav:
  Return Home
  Back to Forum: Linux, Unix
Overclock.net › Forums › Software, Programming and Coding › Operating Systems › Linux, Unix › The #1 reason I keep having to run back to Windows...