User Tools

Site Tools


cluster-linux

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
cluster-linux [2024/05/26 11:11] gabrielecluster-linux [2024/05/26 11:17] (current) gabriele
Line 7: Line 7:
   - Common Commands   - Common Commands
   - Text editing in command line   - Text editing in command line
 +  - Displaying images in command line
 +  - Displaying images from command line (using X11 forwarding)
 +  - Displaying NIFTI images in command line
 +  - X11 Forwarding
  
  
Line 143: Line 147:
 For macOS, you could use [[https://iterm2.com/index.html|iTerm2]]. Once installed, open iTerm2 and establish an ssh connection to the remote desktop (see [[cluster-access|Cluster access]]). For example:  For macOS, you could use [[https://iterm2.com/index.html|iTerm2]]. Once installed, open iTerm2 and establish an ssh connection to the remote desktop (see [[cluster-access|Cluster access]]). For example: 
  
- ssh gbellucci@psychp01.rhul.ac.uk+  ssh gbellucci@psychp01.rhul.ac.uk
  
 Now, suppose that you have a NIFTI image named ''anatomical_brain.nii'' in the folder ''fmri_results'' in your home ''/home/gbellucci''. You can open the image like that: Now, suppose that you have a NIFTI image named ''anatomical_brain.nii'' in the folder ''fmri_results'' in your home ''/home/gbellucci''. You can open the image like that:
  
- niicat -lb /home/gbellucci/fmri_results/anatomical_brain.nii+  niicat -lb /home/gbellucci/fmri_results/anatomical_brain.nii
  
 The ''-lb'' option tells ''niicat'' to use libsixel-bin to display the image in your terminal. The ''-lb'' option tells ''niicat'' to use libsixel-bin to display the image in your terminal.
  
  
-===== 5. Displaying images from command line =====+===== 5. Displaying images from command line (using X11 forwarding) =====
 Another option to open an image saved on a remote server is to establish an X11 forwarding connection to the server and use an image viewer. For that, you need to: Another option to open an image saved on a remote server is to establish an X11 forwarding connection to the server and use an image viewer. For that, you need to:
   - Ensure you have X11 installed on your local machine (XQuartz on macOS, typically installed X server on Linux).   - Ensure you have X11 installed on your local machine (XQuartz on macOS, typically installed X server on Linux).
Line 159: Line 163:
 For example, first make sure XQuartz is currently running on your machine. Before connecting to the remote server, you can start XQuartz on your local machine by typing the following in a terminal window: For example, first make sure XQuartz is currently running on your machine. Before connecting to the remote server, you can start XQuartz on your local machine by typing the following in a terminal window:
  
- open -a XQuartz+  open -a XQuartz
  
 You then would need to establish a X11 forwarding connection like that (see [[cluster-access|Cluster access]] for more information): You then would need to establish a X11 forwarding connection like that (see [[cluster-access|Cluster access]] for more information):
  
- ssh -X username@remote_server+  ssh -X username@remote_server
  
 For example, suppose your username is ''gbellucci'' and the remote server is ''psychp01.rhul.ac.uk'', you would need to type: For example, suppose your username is ''gbellucci'' and the remote server is ''psychp01.rhul.ac.uk'', you would need to type:
  
- ssh -X gbellucci@psychp01.rhul.ac.uk+  ssh -X gbellucci@psychp01.rhul.ac.uk
  
 You will be prompted to enter a password. Afterwards, suppose that you have a beautiful image named ''my_beautiful_result_image.jpg'' in the folder results in your home ''/home/gbellucci''. You can open your image by using ''fim'' like that: You will be prompted to enter a password. Afterwards, suppose that you have a beautiful image named ''my_beautiful_result_image.jpg'' in the folder results in your home ''/home/gbellucci''. You can open your image by using ''fim'' like that:
  
- fim /home/gbellucci/results/my_beautiful_result_image.jpg+  fim /home/gbellucci/results/my_beautiful_result_image.jpg
  
-You can also open your image by using ''Eye of GNOME'', which tend to display images with higher resolution:+You can also open your image by using ''Eye of GNOME'', which tends to display images with higher resolution:
  
- eog /home/gbellucci/results/my_beautiful_result_image.jpg+  eog /home/gbellucci/results/my_beautiful_result_image.jpg
  
  
-===== 5. Displaying NIFTI images in command line =====+===== 6. Displaying NIFTI images in command line =====
 To quickly preview neuroimaging images in NIFTI format on the terminal, you can use ''niicat'' (see [[https://github.com/MIC-DKFZ/niicat?tab=readme-ov-file|here]]). For that, you would not need an X11 forwarding connection, as it prints the image in your terminal using [[https://github.com/saitoha/libsixel|libsixel]]. ''niicat'' can display niftii, png, jpg, or similar images. Importantly, though, to display images with ''niicat'', you need to work on a terminal that supports sixel (see [[https://github.com/saitoha/libsixel#terminal-requirements|here]]). To quickly preview neuroimaging images in NIFTI format on the terminal, you can use ''niicat'' (see [[https://github.com/MIC-DKFZ/niicat?tab=readme-ov-file|here]]). For that, you would not need an X11 forwarding connection, as it prints the image in your terminal using [[https://github.com/saitoha/libsixel|libsixel]]. ''niicat'' can display niftii, png, jpg, or similar images. Importantly, though, to display images with ''niicat'', you need to work on a terminal that supports sixel (see [[https://github.com/saitoha/libsixel#terminal-requirements|here]]).
  
 For macOS, you could use [[https://iterm2.com/index.html|iTerm2]]. Once installed, open iTerm2 and establish an ssh connection to the remote desktop (see [[cluster-access|Cluster access]]). For example:  For macOS, you could use [[https://iterm2.com/index.html|iTerm2]]. Once installed, open iTerm2 and establish an ssh connection to the remote desktop (see [[cluster-access|Cluster access]]). For example: 
  
- ssh gbellucci@psychp01.rhul.ac.uk+  ssh gbellucci@psychp01.rhul.ac.uk
  
 Now, suppose that you have a NIFTI image named ''anatomical_brain.nii'' in the folder ''fmri_results'' in your home ''/home/gbellucci''. You can open the image like that: Now, suppose that you have a NIFTI image named ''anatomical_brain.nii'' in the folder ''fmri_results'' in your home ''/home/gbellucci''. You can open the image like that:
  
- niicat -lb /home/gbellucci/fmri_results/anatomical_brain.nii+  niicat -lb /home/gbellucci/fmri_results/anatomical_brain.nii
  
 The ''-lb'' option tells ''niicat'' to use libsixel-bin to display the image in your terminal. The ''-lb'' option tells ''niicat'' to use libsixel-bin to display the image in your terminal.
  
  
-===== 5. X11 Forwarding =====+===== 7. X11 Forwarding =====
 X11 forwarding is a feature that allows you to run graphical applications installed on a remote server and display them on your local machine as if they were running locally. The “X11” part refers to the X Window System (version 11), which is a protocol and system for managing graphical displays on UNIX and UNIX-like operating systems. X11 forwarding is a feature that allows you to run graphical applications installed on a remote server and display them on your local machine as if they were running locally. The “X11” part refers to the X Window System (version 11), which is a protocol and system for managing graphical displays on UNIX and UNIX-like operating systems.
  
Line 209: Line 213:
 macOS uses XQuartz, an implementation of the X server for macOS. You need to install and run XQuartz to use X11 forwarding. You can easily install XQuartz via the Terminal using [[https://brew.sh/|Homebrew]]. In a Terminal window, just type: macOS uses XQuartz, an implementation of the X server for macOS. You need to install and run XQuartz to use X11 forwarding. You can easily install XQuartz via the Terminal using [[https://brew.sh/|Homebrew]]. In a Terminal window, just type:
  
- brew install --cask xquartz+  brew install --cask xquartz
  
 === Setup === === Setup ===
Line 219: Line 223:
 First make sure an X server is currently running on your machine. For instance, if you are working on macOS and use XQuartz, before connecting to the remote server, you can start XQuartz on your local machine by typing the following in a terminal window: First make sure an X server is currently running on your machine. For instance, if you are working on macOS and use XQuartz, before connecting to the remote server, you can start XQuartz on your local machine by typing the following in a terminal window:
  
- open -a XQuartz+  open -a XQuartz
  
 You then would need to establish a X11 forwarding connection like that (see [[cluster-access|Cluster access]] for more information): You then would need to establish a X11 forwarding connection like that (see [[cluster-access|Cluster access]] for more information):
  
- ssh -X username@remote_server+  ssh -X username@remote_server
  
 For example, suppose your username is ''gbellucci'' and the remote server is ''psychp01.rhul.ac.uk'', you would need to type: For example, suppose your username is ''gbellucci'' and the remote server is ''psychp01.rhul.ac.uk'', you would need to type:
  
- ssh -X gbellucci@psychp01.rhul.ac.uk+  ssh -X gbellucci@psychp01.rhul.ac.uk
  
 For trusted X11 forwarding, you can use the -Y option like that: For trusted X11 forwarding, you can use the -Y option like that:
  
- ssh -Y gbellucci@psychp01.rhul.ac.uk+  ssh -Y gbellucci@psychp01.rhul.ac.uk
  
 Both -X and -Y options allow you to run graphical applications from a remote server and display them on your local machine, but there are important differences in terms of security and functionality. The -X option or untrusted X11 Forwarding is the more secure option because it restricts the level of access that the remote application has to your local X server. Specifically, it limits the remote application’s ability to interact with other X11 clients and monitor or modify your local desktop environment. Even if more secure, with the -X option you might experience restrictions on some functionalities of the remote graphical applications. You can employ the -X option for general use, especially when you are unsure about the security of the remote applications you are running. It helps to prevent potential security risks from untrusted remote applications. Both -X and -Y options allow you to run graphical applications from a remote server and display them on your local machine, but there are important differences in terms of security and functionality. The -X option or untrusted X11 Forwarding is the more secure option because it restricts the level of access that the remote application has to your local X server. Specifically, it limits the remote application’s ability to interact with other X11 clients and monitor or modify your local desktop environment. Even if more secure, with the -X option you might experience restrictions on some functionalities of the remote graphical applications. You can employ the -X option for general use, especially when you are unsure about the security of the remote applications you are running. It helps to prevent potential security risks from untrusted remote applications.
cluster-linux.1716721904.txt.gz · Last modified: 2024/05/26 11:11 by gabriele

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki