|
Just like we can create checkpoints & restore Windows to an older state, this is possible on Linux(ubuntu server)?
For example, I'm installing a bunch of packages, all of a sudden I suspect I installed the wrong versions in between. And there's a pile of them. Instead of checking one by one, will it be possible to just clean wipe all the installations and take it back to the orginal state? Like maybe creating a checkpoint and then getting back there if something went wrong.
|
|
|
|
|
There is nothing similar to what you have in Windows (a lot will explain you why it is unnecessary in Linux)...
There are several tools however to do that: 10 Easy Ways to Restore Your Linux System[^]
"The only place where Success comes before Work is in the dictionary." Vidal Sassoon, 1928 - 2012
|
|
|
|
|
thanks , checking it out.
|
|
|
|
|
Good read thanks!
Give me coffee to change the things I can and wine to accept the things I cannot!
JaxCoder.com
|
|
|
|
|
If you root you can copy the entire file system over.
|
|
|
|
|
sounds easy, until you start running into symbolic links, devices, named pipes, temp filesystems and you've got dbus some of their newfangled thingymawatsits. ...ends up being a mess of of command line options for this or that.
not that it can't be done, get it right and create a script.
but yes can be done: in fact did it to clone an entire setup onto backup [different config] hardware - something windows definitely can't do. Cloned the SSD, unplug from source, plug into dest, boot... done. (just change the system name if you want to talk to it over a network.)
Message Signature
(Click to edit ->)
|
|
|
|
|
I've cloned the disks in windows to different hardware.
It's a pain, but the process was load over the required drivers for the new hardware.
Installable, but NOT installed.
Clone the drive. Put the clone in the different hardware machine, boot into safe mode without networking.
get the monitor/keyboard/mouse drivers first. Generics usually work at first.
reboot normally.
Apply all of the drivers specific to this machine.
After about 10 reboots. You are pretty much good as gold.
Now, deal with all of the software/copy protection like QuickBOoks, etc.
That recognize the drive changed, or the CPU changed or the core hardware changed.
Back in the day WINNT, we did this in order to upgrade developers computers without reinstalling everything. Probably did this about 30 times.
Anything that causes a crash just requires safe mode boot, installed the new hardware driver, and delete the old one.
USB and Networking are the single biggest nightmares. And nowadays the entire Mainboard and subsystems.
|
|
|
|
|
One word: Virtualization.
Checkpoint management isn't the responsibility of the OS, so that'll remain consistent regardless of what OS you're hosting.
Obviously whether that's the right solution for you is for you to decide.
|
|
|
|
|
usually if it is a decent software u are installing on linux or unix they give u a sh file to remove or uninstall the s/w ..if u are running linux on hyper-v or vmware u can do a snapshot also..
Caveat Emptor.
"Progress doesn't come from early risers – progress is made by lazy men looking for easier ways to do things." Lazarus Long
|
|
|
|
|
Serves you right for not using the Best! Windows! EVAH!
I'll be joining you, in a few months, but my network is so damned complicated that I'm having to try rebuilding it using VMs and spare boxes, first.
I wanna be a eunuchs developer! Pass me a bread knife!
|
|
|
|
|
Timeshift is your friend. Can work like Time Machine on that other brand. It can undo a major upgrade or minor changes, very configurable.
Lou
If you can keep your head while those about you are losing theirs, perhaps you don't understand the situation.
|
|
|
|
|
This is something that'll vary between Linux distros, since there's a lot of variation in what they include and how their package managers operate.
It sounds like NixOS might be what you're looking for. If you apply a bunch of updates and and something goes wrong, you can just roll them all back and end up in the state you were at before.
You can also use Nix as your package manager on other Linux distributions, but I've never tried it.
|
|
|
|
|
Cool App Of The Day! ScreenToGif!
See, every now and then I uploaded animated screenshot of my progress on the vector graphic eraser!
Now I have problem with the vector graphic unionizer! as seen here!
(can't close the loop, and the code run significantly slower when it should close )
Well, I used that app, ScreenToGif, to take those shots! really nice app!
That's all for today!
|
|
|
|
|
Try posting this here: Free Tools Discussion Boards[^] - it's a lot more "slow moving" than the Lounge, so it remains visible for far longer.
Sent from my Amstrad PC 1640
Never throw anything away, Griff
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
AntiTwitter: @DalekDave is now a follower!
|
|
|
|
|
Looks interesting, thanks for the link I'll give er a try!
Give me coffee to change the things I can and wine to accept the things I cannot!
JaxCoder.com
|
|
|
|
|
Yes, it's the time of the season again for skotteling: Google Photos[^]
In the picture: cod, salmon, paprika and potatoes on a non-stick liner
|
|
|
|
|
That's an outdoor frying pan, isn't it?
Have you considered replacing the cod with eggs, the salmon with bacon, adding a few sausages, some mushrooms, black pudding, ... Yum!
Sent from my Amstrad PC 1640
Never throw anything away, Griff
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
AntiTwitter: @DalekDave is now a follower!
|
|
|
|
|
But, we are only simple people, we don't know about haute cuisine
|
|
|
|
|
That'll do for me. What's everyone else going to eat?
There's a mcdonald's, down the road. Stop by the offie and get me a few beers, on the way back.
I wanna be a eunuchs developer! Pass me a bread knife!
|
|
|
|
|
We're on a diet, so that will pose no problem
|
|
|
|
|
There seems to be a general view that if you want to do some serious compute bound work C++ will always win over C# because of its unmanagedness. This may be the case, but then there's an alternative argument that goes if you sidestep garbage collection, and use unsafe constructs you get close, and because your code gets JITed, there may be a chance to hone the code for the actual CPU it will run on which could actually make .NET faster over a generalised native binary. There seems to be better scope for this if you use the SIMD enabled System.Numerics.
I've been mucking around with sound synthesis in .NET recently, and by using unmanaged memory (Marshal.AllocHGlobal) and unsafe pointers the performance is good enough. In fact I've got it so there are virtually no garbage collections at all (beware of Linq - it creates enumerators all over the place). GCs are terrible news for audio, because a delay can mean a buffer not being ready in time and you get nasty clicks. It means a different approach to coding, but it's still miles preferable to header files and linking libs and all that 32/64 bit nastiness you get with C++.
Then I stumbled on this:
https://www.bepuentertainment.com/
This is a stunning masterclass in what C# can do. I recommend having a look at the video, and reading the bits about GPU vs. CPU and 'a different kind of c#' entries. I'm fairly hard to impress these days, but I've downloaded the code built it and played with it and just... wow.
Moreover, I'd argue its the last nail in the coffin of the argument that C# is not a viable choice for high performance compute bound work.
Regards,
Rob Philpott.
|
|
|
|
|
(I haven't followed the link yet - it's Saturday, and I'm feeling lazy.)
It's probably rather like the old C / Assembler debate. Yes, a skilled assembler programmer can produce faster, more compact code than a skilled C programmer purely because he can tell the machine exactly what he wants it to do rather than adding a layer of "interpretation" via a compiler. But ... it'll take a lot longer to code, and an unskilled assembler programmer can still make a serious dogs dinner of the same job!
I suspect that an average C# coder will produce code that is less efficient than a skilled C++ coder to do the same job - but I also suspect that he'll produce it in less time, and it'll be more easily maintainable by an average developer. And with the performance of modern machines that's a critical factor in most cases. Additionally, I suspect that a skilled C# developer will produce better, faster code than an average C++ dev, and get it out the door quicker as well.
Don't get me wrong, C++ is a good language, I used it for many years - but C# produces good code as well which is often a lot more readable and less prone to silly and avoidable bugs.
Sent from my Amstrad PC 1640
Never throw anything away, Griff
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
AntiTwitter: @DalekDave is now a follower!
|
|
|
|
|
I like the simple readability of structured C
|
|
|
|
|
Yes, and I wrote a lot of embedded C, often with assembler for the time critical bits.
But you have to pay attention, and it's far too easy to create nasty bugs if you don't know what you are doing:
int* GetMemory(int n)
{
int arr[n];
return arr;
} Things get nasty real quick with that ...
Even if you do it right:
int* GetMemory(int n)
{
int* arr = (int*) malloc(n * sizeof(int));
return arr;
} It's still far to easy to leave a memory leak because the caller is responsible for freeing the memory and unless he looks at the function he may not be aware of that.
Sent from my Amstrad PC 1640
Never throw anything away, Griff
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
AntiTwitter: @DalekDave is now a follower!
|
|
|
|
|
This is the trouble. Twenty years of living in the .NET nanny state with the parental controls maxed out means you forget (well I have) the myriad of ways you can kill yourself in the unmanaged world.
I'm not going out there!
Regards,
Rob Philpott.
|
|
|
|