Open ScriptTiger opened 6 years ago
We cannot model something like Hiren's at the moment because it is a completely different boot environment. ReactOS clones how Windows boots, Freeldr, NT kernal, etc., NOT GRUB, Linux kernal, etc. UBCD4Win uses BartPE and also follows the Windows boot environment, so we should only use that as a model for now. We need to break things down into practical steps that are more easily achievable and step by step we will work towards the end goal of having all that cool stuff you want LATER.
Seems you misunderstand Hiren's... Hiren's is (originally) like UBCD4Win, a Boot CD that includes a LiveXP-Windows. You can have a look at the (original) software-list of Hiren's here: https://www.hiren.info/pages/bootcd There is also listed under 'Browsers / File Managers' a 'Mini Windows Xp'... Else, all the Windows-Software in the list wouldn't make sense... ^^ The 'Mini Windows Xp' links to http://reboot.pro/forum/52-livexp/ and is referred as 'a very flexible PE 1x' that links again to http://livexp.boot-land.net/.
Means: All Windows-Apps listed in https://www.hiren.info/pages/bootcd should be tested to work on a read-only Windows-like Environment! :-) This should help us to find software that works on a ReactOS-Boot-CD, also. :-)
I think the versions of Hiren's I used in the past were drastically different than that. What is the licensing for "Mini Windows XP"? How can they distribute it in an ISO legally? If "Mini Windows XP" is really a "fully functional Windows XP environment" that is somehow free, doesn't that make ReactOS useless? I think we need to do more research there, there is something we are definitely missing.
No, the problem was, that the original Hiren's Boot CD was warez! ^^ After that there was a Free Version (that is still downloadable in many software archives), but this included the 'Mini Windows' anymore... Now, Hiren's Boot CD seems to be discontinued.
Just to be clear, by "warez" you mean illegally distributed software, right? Which would include unlicensed versions of "mini Windows XP" right? I will have to be honest with you, I would feel more comfortable if you removed everything about Hiren's from the readme if that is the case. I cannot legally participate in a project if it's associated with things like that. If Hiren's has a tool list you like that works in a read-only XP environment and they are open-source or otherwise free to be distributed legally, I completely agree you should copy that tool list and we should keep it on file here, but we should stop referencing Hiren's for legal reasons.
Do you feel better if I move it to the wiki? Hiren's (you can build it with 'Mini Windows' by you own, legal) is IMHO just a very good reverence for a Windows-Recovery-CD... and in order to guard against misunderstandings I already made in the README.md clear, that we won't include warez!
AFAIK there exist as of today just 2 Windows-Recovery-CDs that can be used as reference: UBCD4Win & Hiren's... And UBCD4Win was also part of the warez-scene, because the most people were to lazy to build it for there own...
But the UBCD4Win project never put itself in the warez scene, other people did by misusing it. The creator of Hiren's intentionally included warez himself in his own project, which is very different. I just want to make sure there is no confusion with our project. If people want to do something illegal with our product, there is nothing we can do about that. But we have to make sure we ourselves don't do anything illegal. I will try and update the readme ASAP to clarify further, because it's not articulated very well currently and it could be confusing and I definitely don't want any misunderstanding about that. Also, kind of off topic, but how is Hiren's mini XP built if you do it yourself? Is there documentation on it? Everything I read said it doesn't use BartPE, but WinPE did not exist yet, so what is it using?
It use the LiveXP I linked above... AFAIK the creator 'Hiren's' is from Japan (or at least Asia) and I think at the beginning of his project he just DGAF about licenses... Maybe the Asians differ there a bit to the western world... And after it got more famous, he removed the licenesed parts... I will make a try to move the Hiren's Warez Stuff more out of the README.md... Give me a moment...
I really like this link you sent: http://livexp.boot-land.net/
I have experience with a lot of the software on that list. Is there anything Hiren's has that list doesn't?
I will create a list with the free software that is included in Hiren's in the wiki, but this will take me a while...
OK, I tried to improve the README.md...
Hi. I've just been testing some portable applications on live version on cd and on hdd. added to root: HBCDMenu.cmd HBCD Menu shortcut HBCD folder in HBCD folder: HBCDMenu.exe msvbvm60.dll programs folder in programs folder: HBCDMENU.CSV (rebuilt to include only software from this image) .cmd files that link hirens exe with files ( rebuilt since they don't extract from arhive to temp rather start directly from folder) files folder in files folder there are folders with programs
added hirens.cmd to desktop
Programs included: 7zip, aida64 engineer, atto disk benchmark, cpu-z, ghost, ghost explorer, gpuz, hwmonitor, irfanview, nirlauncher, prime95, savehwids, sumatrapdf, superpi, testcpu, unstoppablecopier, victoria, wprime, WPS_OfficePortable.
They all work if they can access temp folder ( on hdd testing) but on cd test most of them don't want to start or report errors. I tried to include ramdrive from old UWBCD but it would not show up.
Good thing is that Nirlauncher works so you have access to many programs most of them work even from cd. Bad thing is that nothing is archived so every program takes a lot of space.
Is there a way to send you the image for testing ?
Hi!
Seems you spend a lot of work into this... That's great! I like it! :-)
Where do you have the HBCD-Files from ???
The IMHO easiest way to make it public for us should be you make a repo (repository) with your user... ...name it e.g. 'UWBCD-skydecboot2018' and upload you files... ...then I can download it from there and test it... :-)
I'm hanging with my next release (v0.0.3) ATM at this bug: https://www.reactos.org/forum/viewtopic.php?f=4&t=17232 :-/
Greets, Tobias.
I saw this error many times when I tried to install ram drives, It may be that some .ini or some .sys file is not loaded correctly. I would usually just reload my ghost image.
HBCD files are from last hirens 15.2
Also when I was testing on HDD, when I tried to unzip arhive with 7z it would totaly destroy the file system creating giant 4gb files and folder with crazy names.
On our way to a stable release (something like v1.0, but I think we will switch versioning - if @ScriptTiger is OK with it - later to year numbers) I be willing to work with some tricks (e.g. workarounds) like e.g. use the WinXP-NTFS-Driver for NTFS-Support before ReactOS have finished it, or maybe use HBCD-Menu, until we have a better one... But at the end (when going to stable), we need to remove this tricks again out of our releases! (But maybe e.g. some programmers join in and write us e.g. a better menu... ^^) We will try to work with the ReactOS-People together, because not just they benefit from it - we benefit too from it! So it's also important to report our bugs (like the broken VM and the not working RAMDrives) back to the ReactOS-People that they can fix it! We also need them, to get e.g. the RAMDrive running... (...and all other software, that don't work yet, too!)
I'm also new to this all... So can you tell me that 'arhive' is?
Btw.:
I googled ATM 'Hirens BootCD download' because I have no image of it at my hands... and then I saw, that Hiren have updated his download page yesterday !!!
Seems the CD is now no more called 'Hiren's BootCD 15.2' (from 2015 AFAIK), it's now called 'Hiren’s BootCD PE x64 (v1.0.1)'!
Here is the page: https://www.hirensbootcd.org/download/
But IMHO we should have a look at the tools that were included in 15.2 as have a look at the tools that are now included...
(And I will update our wiki with some infos to it...)
I copied archives from my own project that includes 7ziped archives with updated programs. When I tried to unzip them in reactos live on hdd one of them created the mentioned mess. I'm not realy sure which one. After that I reloaded ghost image and unzipped archives to folders on my main pc and added them to liveos hdd via live windows and them started to test them.
We can use HBCDmenu.exe for now for testing, the HBCDmenu.csv that links exe with starter scripts is recreated .cmd starter scripts that link csv and program executables are also recreated When someone shows up that knows how to create a program that uses .csv file for menu selection the .csv file and .cmd filed will already be created and tested.
You should really start to report the bugs you find to the ReactOS-People... ;-)
I will have a look at the HBCD-Files when I have downloaded them...
Just downloaded the new Hirens, it looks like it is a fan project, not continuation by original creator. They pushed all programs into the wim file which is strange as most other boot compilations don't do it that way. Gandalfs, DLC1, medicat and my own compilation use wim files for loading windows PE but not for storing programs. Programs are stored in their own folders (sometimes archived). This method allows the use of programs that need to be installed but it limits ther use to only PE enviroment. In real life I need to use those programs on the installed windows and with this packing I can not do that. Some of those programs that need to be installed need some extra steps to run them in PE if they aren't installed into it like loading some registry keys or adding files to specific folders. Like yesterday I was trying to make superantispyware to work in PE so that it won't load definitions form internet ( if you for some reason I can't connect) an instead use local definitions. So I was monitroing the way it downloads and prepares definition on installed windows, found out that it downloads them into %programdata% folder. Created another archive with definitons and added another line to .cmd file that loads superantispyware that extracts definitions into %programdata% folder. Tested it on installed, DLC1win10x86 with 32bit superantispyware and DLC1win10x64 with 64bit SAS and in all cases SAS recognized the definitions and reported them loaded and ready to use. Also tried it today on reactlive on hdd but it looks like it does not have a %programdata% folder or global variable but that may be XP related as it didn't have it either.
Yes, seems you right! https://www.hirensbootcd.org/about/
hirensbootcd.org is being developed by the fans of Hiren’s BootCD.
I've created a repo but how do I upload files to it?
If you use Windows I will suggest GitHub Desktop to you... https://desktop.github.com/
When building disk images, things can get a bit tricky with GitHub. There is technically "no limit" with storage, but if you start getting close to 1 gig they will send you a warning letter of abuse. I would recommend keeping only 1 repo of your actual work in progress and using a service like Dropbox to distribute the various test images you get. @Tobias-B-Besemer, as I stated in the Google forums, we can also use the website for this if you want, it would be very easy for me to set up accounts there and make a file sharing area for downloads/uploads, and we would also need to tweak the current upload limits.
If you are not familiar with the git protocol, I will also say git has another issue when dealing with non-text files. Git is designed to control versions of text (source code) by storing only the differences in text. When you upload an .exe, a .zip, etc., they will stay in your git history even if you delete them, just like text files except these are obviously usually bigger and take up more space. If you change them in any way, git cannot "diff" the changes and they will duplicate in the git history and continue to pile up. To manage this, I would highly recommend becoming familiar with something like the BFG Repo Cleaner:
https://rtyley.github.io/bfg-repo-cleaner/
Just as an example, the current command line I use to manage my website before every push to origin:
java -jar C:\<path>\bfg-<version>.jar -D {*.png,*.zip,*.txt,*.csv,hosts,master.html} C:\<path>\scripttiger.github.io
In the above example, "scripttiger.github.io" is the repo you want to clean. I clean .txt files because my website contains over 300 mb of .txt files that are generated with every new version of Steven Black's hosts file and I don't need to track their changes. Obviously in our case you may not want to clean .txt files. Don't clean anything you want to keep a history of. When you "clean" something, it means it's deleting all of its backups and various versions stored in git history.
After you have cleaned your local repo, you will not be able to use GitHub Desktop to "upload" (push) your local version because GitHub desktop doesn't let you force a push to origin. You will need to download something like Git for Windows. I personally just use Cygwin and install git in Cygwin because I already use Cygwin for a lot of other things. The git commands you will need to issue to force a push to origin are as follows:
cd C:\<path>\scripttiger.github.io
git reflog expire --expire=now --all && git gc --prune=now --aggressive
git push -f origin master
Just change "scripttiger.github.io" to your local repo directory. The repo already knows where to send it at GitHub, etc., you will just need to enter your GitHub user ID and password when it prompts you.
@ScriptTiger, would be nice if you can setting something up for file-sharing on the website. :-)
And no, last part with git is not necessary! ^^ Just install Git Desktop, clone your existing repo, put your files like myimage.info.txt into your local folder, commit to master and then push to your Git Repo. Seems maybe ScriptTiger hadn't since a long time no more a view on this nice, handy tool... ;-)
And I can't imagine that they don't do a normal diff on every file nowadays...
@skydecboot2018, we can use Dropbox as long... Do you have Dropbox?
@skydecboot2018, if you don't have DropBox, then you can use my space: https://www.dropbox.com/sh/an9z9kzs6zp59l6/AAAEzF7-NMHwPY9DIR-bae2Aa?dl=0 But I don't have you email till now to give you write-access...
I made a new thread in our Google Group to discuss the UWBCD-skydecboot2018... https://groups.google.com/forum/?utm_source=footer#!topic/uwbcd/eAAXM8N88Gk ...so we don't spam this issue anymore...
For sure, can you adjust all of the upload limits to 1 gig? After I set up file sharing and create @skydecboot2018's user account, I'll PM @skydecboot2018 on Reddit with log-in credentials and info on how to log in and upload/download. That work? Hmm... I'll have to check GitHub Desktop out again, it may have changed some since then. I have everything automated and I only review diffs manually before commits to make sure everything looks good. If you wanted "to do a normal diff on every file", it would have to be a binary diff to compare bit for bit, which git does not do by default, but you can get plugins to support it if you are using a custom git server, but GitHub doesn't support it. Files that are not text don't get diffed, you can look in any repo at any non-text file and it says "Binary file not shown." And when you try to view the raw, it just downloads it. It's nothing against git, it was designed as source version control and not arbitrary file storage.
@ScriptTiger, can you tell me which limits I have to set up? You talk about PHP, right? Can you name the variables?
Mhhmmm, you may be right with GitHub - I'm just wondering how many space they must waste with this kind of saving files...
Actually, after thinking about that more, can you set up a special (S)FTP root directory and (S)FTP accounts on your VPS? A download/upload area on the website would be great for small tools, but for entire disk images we may want to use (S)FTP, it will definitely be a lot better than using HTTP(S). If you can't set up (S)FTP, and it really doesn't matter if it's FTP or SFTP, it doesn't need to be secure to send our disk images as I don't think we are putting anything to sensitive inside them, here's a link for adjusting upload size: https://www.drupal.org/docs/7/managing-site-performance-and-scalability/increase-upload-size-in-your-phpini
I set up now ftp.UWBCD.org. It works for me with normal FTP. SFTP seems to don't go because I have deactivated SSH for the 'UWBCD.org'-Customer because of security reasons... FTP over TLS also don't work ATM, but I don't know why! But I will let this problem unsolved for now, because @ScriptTiger said we don't need it ATM... You both got PMs from me with login credentials... @skydecboot2018, you on reddit...
I think when we have FTP, we don't need a upload/download area ATM, right? So I changed nothing about the other upload-limits for now... @ScriptTiger, when you wanna have it in a other way, tell me, and I will change!
If you have access to your sshd_config file, you can configure SSH to only allow/force SFTP connections so they cannot use SSH for remote code execution. You can also set up public/private keys for SSH and not allow passwords to make it even more secure. And then if you want to go further, there are even SSH proxy services out there and you can block all connections to your server directly except for those coming from the proxy. This isn't a priority, as I said, just ideas for you if you're interested :P
As I want to migrate with the 'Plesk Migrator' to Ubuntu 18.04 when my ISP release it (they have to test it ATM with the underlying virtualization platform and the latest version of Plesk), I don't want to make now already changes on my Ubuntu, because they will not get migrated and I don't wanna do it twice... ...but I set it on the To-Dos-List for fixing it later. https://github.com/UWBCD/UWBCD-ReactOS/wiki/2.)-To-Dos
Btw. @skydecboot2018: AFAIK you have this 1GB Limit on GitHub only in your repo - not in your releases! So you can (try to) make a release with your build! My idea was to fork your repo (I can only do this after you have uploaded at least one file) into our org and then work with you on a small, better documentation to your build and then push it back into your repo...
Does anyone have any experience with WinTaylor or Win-UFO, the "Windows Side" of CAINE? Apparently it's part of the popular CAINE forensics tool and it's freeware. CAINEitself is open source, but this component is not, so we might have to research the licensing and/or get permission from someone first. But we might be able to just play on their successes here if they already have a toolkit that is known to be successful. They take into account compatibility for the widest range of Windows versions, but focus primarily on forensics. Because of it's focus on compatibility, including Windows XP, we should be able to get it to work with ReactOS and instantly have a whole forensics toolkit available.
The problem is, that on the CAINE Site you get informed that Win-UFO https://web.archive.org/web/20150330135427/http://win-ufo.org/downloads.shtml is death https://www.caine-live.net/page5/page5.html and for WinTaylor seems to exist no homepage, too. But I added now on our own list https://github.com/UWBCD/UWBCD-ReactOS/wiki/Software-List-1:-Our-own a topic for 'Forensic'...
I also added 'Virus Total Uploader' there to the 'Anti Maleware' List...
I just had a short look on the tools... Can't we add the features of the apps with single apps? http://www.sectechno.com/wintaylor-an-advanced-digital-forensics-utility/ http://saisa.eu/blogs/Guidance/?p=864
As it seems, WinTaylor is also replaced in CAINE... https://www.caine-live.net/page2/page2.html
WinTaylor and the new GUI seems to have tools from https://www.nirsoft.net/. @skydecboot2018 also mentioned in his comment & build the nirlauncher for those apps...
I added CAINE also to our 'Watch List'... https://github.com/UWBCD/UWBCD-ReactOS/wiki/Software-List-5:-Others
So once again, as centralization of what I have seen in short: We can use there normal apps like VLC... ...and then take the NirLauncher and add the other tools... ...then test them all wit ReactOS and make bug reports for those that don't work.
https://groups.google.com/forum/#!topic/uwbcd/U4T3hzILXuQ
Please refer to my comments there.