Getting 32 bit Centos docker image - linux

I was trying to run 32 bit Centos in container:
sudo docker run -it i386/centos:6
Inside container I run command uname-a in order to know it is 32 bit. Got output:
4.10.0-28-generic #32~16.04.2-Ubuntu SMP Thu Jul 20 10:19:48 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
According to my understanding it is 64 bit version and not expected 32 bit one?
What I do wrong while getting 32 bit Centos?

Containers share kernel with the host system. Thats why you see ubuntu in the output which is your host system kernel. These containers only have 32bit packages installed and they will work fine with your 64bit kernel.

Related

Can I change the Linux kernel that Docker uses on macOS?

Q1: Can I change which Linux kernel that Docker uses on macOS?
Q2: When does Docker upgrade the Linux kernel version?
Currently, as of:
21 Sep 2020, up-to-date Docker Desktop v2.3.0.5 (48029), Engine 19.03.12
it is using Linux kernel 4.19.76 (released 22 Oct 2018).
I expected it to be on a more recent kernel
(e.g., Linux 5.8 was released 2 Aug 2020; Linux 5.0 was release 3 Mar 2019).
$ docker run -it alpine uname -a
Linux f745312f5a3e 4.19.76-linuxkit #1 SMP Tue May 26 11:42:35 UTC 2020 x86_64 Linux
Related:
How does Docker run a Linux kernel under macOS host?
Can I change the kernel used in Docker for Windows?
https://kernelnewbies.org/LinuxVersions
Q1: Can I change which Linux kernel that Docker uses on macOS?
Safe and simple answer: No. Unless you want to mess-up directly with the Hyperkit VM that docker desktop for Mac is deploying for you when installing. I don't use Mac, I have no clue it this is even possible and strongly suggest you don't walk that path unless you seriously know what your are doing and are ready to reinstall everything if this breaks.
Q2: When does Docker upgrade the Linux kernel version?
When that change is incorporated to a new release and announced on the Docker for mac release notes. Latest kernel upgrade was made on 2020-05-27.
That being said, docker only uses the underlying kernel of the OS/VM where it is installed. If you really need a different kernel for a very specific reason, you can always deploy in parallel your own custom vm with the exact kernel you want, install a docker engine there and use it.
https://stackoverflow.com/a/65844573/8818399
Docker uses its own patched Kernel (along with a specialized Linux distro) called linuxkit in Docker Desktop. It is mentioned in https://hub.docker.com/r/docker/for-desktop-kernel.
I am able to find kernel, initrd.img and cmdline in a folder called linuxkit inside the application folder of my Docker for Mac installation.
Simply build your own Kernel with the instructions/patches of linuxkit and replace those files.

Check for multiarch on linux/chrome OS?

I'm making a hotfix for AROC on the Chromebook Plux V2 (which has a x86_64 architecture, but no multiarch support) and I want to run a test in his script that checks for it. What command can I use to check for multiarch on a linux x86_64 system?
(Just to reference the original issue) when deploying AROC on that chromebook, the device could not run the i686 busybox binary that the script installs.
The author insists on the i686 binary, because the android containers that he tests deployments on are 32 bit on a host system with multiarch.
My goal is to fix his script and add support for the device I was testing on.
I plan to do this, by checking for multiarch and installing the i686 binary if a 32 bit runtime exists or installing the x86_64 binary if it doesn't. What command can I use to check for multiarch?
you're asking about multilib support, not multiarch.
you can simply check to see if the 32-bit ldso exists: test -e /lib/ld-linux.so.2.

Which command will work instead of systemctl and systemd in AWS linux instance?

i have a aws linux instance,i am trying to start services from systemctl and systemd but both command is not there in system, my linux version is -
Linux ip-xx-x-x-xxx 4.9.51-10.52.amzn1.x86_64 #1 SMP Fri Sep 29 01:16:19 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
Unfortunately we dont have the systemd in the Amazon Linux machines of the 1st version.
They have recently got (Amazon Linux 2 LTS Candidate 2 AMI (HVM), SSD Volume Type - ami-f973ab84) which will have the systemd in it.
If you are using the 1st version then its not possible to execute these commands.

How can I run my GUI application without desktop enviroment and make it fullscreen?

I run ubuntu 16.04 on Intel Celeron CPU.
Linux kevin-minipc 4.8.0-39-generic #42~16.04.1-Ubuntu SMP Mon Feb 20 15:06:07 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
I run ubuntu 16.04 on Intel Celeron CPU.
Linux kevin-minipc 4.8.0-39-generic #42~16.04.1-Ubuntu SMP Mon Feb 20 15:06:07 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
and I wrote a Qt appliction. When I run it in desktop environment, it's fullscreen.
Now, I want the system autologin and my application run fullscreen as an X client when system started without desktop environment.
So I made these changes:
add a file named lightdm.conf in /etc/lightdm:
[Seat:*]
user-session=myxclient
autologin-user=kevin
autologin-user-timeout=delay
kevin is my system account.
add a file myxclient.desktop in /usr/share/xsessions:
[Desktop Entry]
Name=myapp
Comment=myapp
Exec=/home/kevin/myapp
Icon=
Type=Application
/home/kevin/myapp is the path to my Qt application.
When I reboot and system have started, myapp will run without desktop, but it IS NOT fullscreen. I tried to run other application in the .desktop file, like firefox, it's not fullscreen either.
So, how can I make it fullscreen? Some other ways are also acceptable. (It's better I don't have to change any configurations when I use the display of different size.)
And another question: Without desktop environment, can I use input program like ibus?

install latest git on RedHat 3

Hi I've been searching high and low in the internet where to find a Git installer that will work on our machines at work. They are ATEs that can only run on RedHat3 (which means we can't upgrade the OS).
My limited knowledge on Unix administration is also a big hindrance and the reason that I cannot find a working installer. this is the system information of our machines.
Linux D10-003 2.4.21-4.0.1.EL #1 Thu Oct 23 01:36:33 EDT 2003 i686
i686 i386 GNU/Linux
thanks and looking forward to your answers!
You can install git by compiling source. More steps are at https://git-scm.com/book/en/v2/Getting-Started-Installing-Git#Installing-from-Source

Resources