Note1: I'm using a USB stick as an example, it could also be a partition / disk on your PC but a USB stick would make things easier as you can also duplicate a USB stick to another USB stick to have a backup of that environment.
(Note: In your case, if you wish to preserve the content of a RAM disk, you will have to use the suggestions by Fabby and Zeiss, and you no longer need to mount /tmp and /var/tmp described below as RAM disk)
Create two accounts: the first one is the default account created at the time of installation of the distribution (On Ubuntu, generally this account has sudo privileges). Say default account admin and home directory is /home/admin, while 2nd account is say developer, and home directory is set as /ramdisk. While creating the 2nd account, ensure that it does not create a home directory. developer account must not have sudo privileges. root account password must be locked, so there is no temptation to use su while working under the developer account. If you are extremely paranoid, you would like to use chroot for developer and do not retain any set-uid programs within the chrooted directory.
Test everything (e.g. set .gitconfig, gitignore, .bashrc and few other configuration files) till everything is working fine. Ensure that TMPDIR=/ramdisk/tmp is set in .bashrc so even temporary directories can be created on the large RAM disk by those programs which honour TMPDIR.
Once tested, disable the auto-update feature as per instructions applicable for your distribution. This is a must because I also recommend mounting /tmp and /var/tmp on a RAM disk with the lowest possible size (see 5 below), and your auto-update programs may end up corrupting your system.
Copy /home/admin to a separate directory, say under /var/warehouse/devtools-home. Clean-up anything which is not explicitly required as part of pristine image from /var/warehouse/devtools-home, to keep it as small as possible. Create a ZIP file of /var/warehouse/devtools-home -- a home directory image.
Add a cron job with @reboot to unzip developer home dir image under /ramdisk and chown -R developer.developer /ramdisk. You may use boot services or rc.local equivalent supported by your distribution.
Reboot and test everything. Login as developer for regular work. Reboot the machine, and all traces are lost, and once again, you get a fresh copy of the home directory with its default configuration.
When you need to make upgrades or add new tools, login as admin, unmount /tmp and /var/tmp, perform upgrades, and then reboot the server. If you wish to change defaults in home directory, follow steps (2) and (3) above, and create a new home directory image.
Solution 1 is good for a one-off machine. If you wish to create an entire environment for multiple desktops in a LAN, above may become too cumbersome to manage. However, you do not wish to loose power of using a high speed CPU and high RAM of modern desktops. In such case, a central PXE boot server is recommended instead of a central terminal server. Without going in too much details, what you need is as follows:
First I have to say it's my 1st experience with Archlinux
I'm currently an ubuntu user, but it's quite often that I end up on archlinux wiki or pages while searching to solve some issues, and it made me curious :-)
So I tried to setup Arch on an old laptop I have, to test it a bit more.
It's a laptop with vintage mbr stuff, no uefi (hp dm1-1005sf with a 32G SSD if it make a difference).
Regarding the wifi driver, yes, I noticed this too...but I planned to take one problem at a time (maybe I'm wrong, but I assume missing wifi driver would bring problems later, not at loading initial ramdisk). thanks for the link !
I pressed "e" at grub menu to change linux line and remove "quiet" and then ctrl+x to boot with modified setup without saving.
So next to quiet, there is "loglevel=3", I changed the value to check if I can see more.
So try to use rng-tools or haveged and see whether it makes a difference.
Alternatively (but that's inconclusive) try to type random stuff durign the stall and see whether that releases it faster.
In order for early loading to work in custom kernels, "CPU microcode loading support" needs to be compiled into the kernel, not compiled as a module. This will enable the "Early load microcode" prompt which should be set to Y.
Well...I must say I have limited knowledge in this area...
I followed the install guide which says:
Choose and install a Linux-capable boot loader. If you have an Intel or AMD CPU, enable microcode updates in addition.
Could you try adding 'tsc=unstable' to your kernel parameters and see if it changes anything? Could a broken BIOS cause a slow boot on a newer kernel? Maybe try to update that. I have similar issues and the same clocksource messages on a Thinkpad T400 with an outdated coreboot ROM. But I deleted journal entries from before may, so I can't check how long ago they appeared.
I'm trying to setup a ramdisk for a setup I have with AT91SAM9261 and 2.6.30 kernel.I know you would say why don't I use initramfs? I will use also that one, as of now I would like to check if I can boot with a ramdisk as rootfs.
So I created the ramdisk directly on the embedded target, with 4MB size.I used "dd" and "mkefs" and the ramdisk image works fine if I mount it as loop when rootfs is my jffs2. I can browse mount_point and do stuff inside.The content was created according to the section "Manually building initial RAM disk" in the above link.
In /dev I placed null and console, in /bin I copied busybox and created the links.I set the execute attribute to init script as well, which works fine when I run it here (as loop device with jffs2 as rootfs)
For some I set ownership to "nobody" just to check if it makes any difference.As it can be seen in the log output the ramdisk is mounted, but init fails.It gives a warning to check the ext2 image, which I did before copying it and I have no error reported.
The tftp server is on Windows7. I though I might have some incompatibility if I copy the ramdisk image from linux to Windows then do tftp from Windows server.So I copied the image again from Windows to linux, mounted it and checked if the FS reports any error and scripts can be executed - everything looks normal.
I plan to rebuild busybox and try again, but as my current ramdisk image works when I mount it as loop I don't have too much confidence it will change something.I'm out of ideas. I've been trying the whole day to get this working.
Missing libraries were the root cause for the non-executable init placed on the ramdisk.Using chroot turned out to be extremely useful. With this issue I learned how to use chroot and simulate a jail.
Another trick was to use user_debug=31 in the command line so that the kernel will output a message saying that the file is not found.It looks like the "file not found" does not really point to a missing file, but to a failure to read the file system due to busybox not executing properly (missing libraries).
In parallel I have compiled dynamically the busybox 1.20.02 for my arm architecture and the ramdisk worked properly (without libs).This user_debug=31 turned out to be again useful when I compiled and ran busybox, as it was also failing after mounting the ramdisk, but it thrown out an "undefined exception" which led me to a wrong "arch" value used for compiling busybox. After changing it everything was fine.
Ironic supports booting a user provided ramdisk or an ISO image (starting withthe Victoria release) instead of deploying a node.Most commonly this is performed when an instance is booted via PXE, iPXE orVirtual Media, with the only local storage contents being those in memory.It is supported by pxe, ipxe, redfish-virtual-media andilo-virtual-media boot interfaces.
While this interface example utilizes a HTTP URL, as with all fieldsreferencing file artifacts in the instance_info field, a user isable to request a file path URL, or an HTTPS URL, or as a Glance ImageService object UUID.
This feature, when utilized with the ipxe boot_interface,will only allow a kernel and ramdisk to be booted from thesupplied ISO file. Any additional contents, such as additionalramdisk contents or installer package files will be unavailableafter the boot of the Operating System. Operators wishing to leveragethis functionality for actions such as OS installation should exploreuse of the standard ramdisk deploy_interface along with theinstance_info/kernel_append_params setting to pass arbitrarysettings such as a mirror URL for the initial ramdisk to load data from.This is a limitation of iPXE and the overall boot process of theoperating system where memory allocated by iPXE is released.
When choosing your boot ISO, your ISO image will need to be sufficient to bootthe hardware under normal conditions. For example, if the ISO is onlycompatible with BIOS booting, then a host in UEFI mode will not boot.This is not a limitation of Ironic, but an architectural limitation.
ISO images are also cached across deployments, similarly to how it is done fornormal instance images. The URL together with the last modified response headerare used to determine if an image needs updating.
The intended use case is for advanced scientific and ephemeral workloadswhere the step of writing an image to the local storage is not requiredor desired. As such, this interface does come with several caveats:
Users and Operators who intend to leverage this interface shouldexpect to leverage a metadata service, custom ramdisk images, or theinstance_info/ramdisk_kernel_arguments parameter to add options tothe kernel boot command line.
When using PXE/iPXE boot, bare metal nodes must continue to have networkaccess to PXE and iPXE network resources. This is contrary to most tenantnetworking enabled configurations where this access is restricted tothe provisioning and cleaning networks
After update and auto install nvidia driver stuck in initial ramdisk. This is very frustrating. Please someone help me or im going to install more stable os. I cant use my laptop for two days now. Asus strix corei9 nvidia 3060
3a8082e126