xterm don't steal focus - rhel

I'm running a series of applications that open xterm windows on a RHEL4.6 enviroment with mobaxterm serving as a xserver running on windows7. Every xterm window that starts steals the focus and I have to wait for all the applications to launch their xterm windows before I can do anything because whatever I'm typing just gets stolen by each successive xterm window. I have a ~/.Xdefaults file in my ~ account but its just got a font size in there. Is there any setting that anyone knows of I can use to make them run in the background say?

You could start xterm initially iconified:
xterm -iconic
from the manual page:
-iconic
This option indicates that xterm should ask the window manager
to start it as an icon rather than as the normal window. The
corresponding resource name is iconic.

Related

unable to use arrow keys for previous command in interative commandline app

I have developed an application which has an interactive terminal to accept commands from user. But when i press arrow key in Linux, it fails to show previous command on interactive terminal of my application. However Ubuntu terminal shows previous commands using UP arrow key. In windows command interpreter, i am able to select previous commands using UP arrow key inside my interactive terminal app.
Any settings need to be changed in Ubuntu to make it work?
Implementing an interactive terminal is actually not a trivial task. Your application need to send and receive specific code depending on which terminal or terminal emulation is used (ANSI, VT-100, ...)
There are several libraries that can help you implement a portable terminal with history, line editing and more:
GNU Readline
libedit
libtecla

Opening multiple terminal with remote access

I am using remotely logged in to my work server through SSH. I have to work on terminal and it will be helpful if I can pull up multiple terminal to access multiple directories and files. How can I do that? I am a beginner. So, any help will be greatly appreciated.
screen is a great tool for this.
screen -m
will open a daemonized screen window and you can detach it to return to your primary shell with
Ctrl+A , then press D
To resume the screen use
screen -r
You can create multiple screens with names and resume them individually. Checkout the manpages for more info
You can use "screen" on you server to open more shell session in a "dedicated" environment so you can even disconnect from the server without loosing your shells (in case of idle, for example).
see http://www.rackaid.com/resources/linux-screen-tutorial-and-how-to/

Linux - Make Application started in a terminal launch on a different display

I have inherited an application that is launched at login time from my server's .bashrc. The application starts two gnome-terminals. If I am logged in with a gnome desktop, it works great. Two terminals open on the desktop.
Sometimes I kill the application and must restart it. Works great if I launch it by hand from a terminal on the desktop (causing me to have 3 terminals open).
However, if I telnet into the machine where the application is installed, as .bashrc executes I get all sorts of "cannot open display" errors.
Well, of course I can't, I'm not logged in from a gui interface, But a desktop IS running on my server and is logged in using the same ID! Why not put the terminals there?
So how do I say, in bash, "start this application and send its output to 1) the display where you are now, or, 2) the one currently up on the server?" (I assume that found by looking at the env var display?)
Ubuntu 10.04 64 bits. I telnet to the server to start the vncserver so I can access the aforementioned desktop.
Thanks,
It depends on the application exactly, but generally you simply export the DISPLAY environment variable and the application should start on the specified display.
eg:
export DISPLAY=localhost:0.1
xterm &
Some applications would also (or alternatively) take a --display command line argument - check into the specific options available for the applications you're using.

Screen process hangs in cygwin

I'm trying to run screen (version 4.0) in the latest version of Cygwin under 64-bit Windows Ultimate, and it doesn't want to work. I launch a new screen session using "screen -d -m -S screen1". When I connect to it using something like "screen -A -d -r screen1" the process hangs. When I list screens with "screen -list" it reports the screen as "possibly Dead".
Any idea how to get screen working in my environment?
I just ran the same commands you did, and had similar problems. But I use screen under 64-bit Windows 7 all the time.
I just use screen to start a screen session, and screen -dr to reattach to the same session later. (I've actually been using screen -U and screen -drU, but I just realized that with defutf8 on in my $HOME/.screenrc, the -U isn't necessary.)
I haven't figured out why your approach doesn't work.
I am also currently trying to get screen work on a cygwin installation on a windows server 2008 installation.
it works in principle, so I can reuse sessions, but its quite buggy:
1.) only sessions started through an rdp session (on the windows desktop) are able to access mounted network shares, sessions started through ssh can only access "c". (okey not really a screen bug, more cygwin in general)
2.) detach doesn't work through ssh. strg+a+d just freezes the terminal, by using these keys in that sequence: [strg+z, bg, %, strg+c] I can get back into the screen session I've last visited.
3.) this leads to the funny state that I can have the same screen session attached multiple times, and see the input and output on all instances

VNC on CentOS 5.5 + Gnome

I have successfully started a vncserver and can connect to it through the browser via 111.111.111.111:5081.
It looks like it's working because I do see the Gnome cursor (X).
However, apart from the cursor I just have a black screen. No taskbar or anything. Right click provides nothing either.
Does anyone have any idea what I need to do to get the full desktop ? I have created a new user and wondered if there is any settings that need changing.
Thanks in advance,
Alex
Your VNC server is running, but there is nothing running in it. No window manager, no desktop environment (GNOME), nothing. The cursor you are seeing is a Xserver cursor, not a GNOME cursor.
That probably means you ran the VNC server directly without using some of the friendly wrapper scripts such as vncserver. For example, if you have tightvnc installed and you run Xtightvnc directly, that's what you'll get.
For example, I usually start a VNC session (or port 5901) like this:
vncserver -geometry 1024x768 :1
Alternately, you can use x11vnc to serve your existing X desktop (instead of starting a new one in the background).

Resources