Linux Splash Screen Linux Logo

Linuxlogo is a Linux command-line utility that creates a colored ANSI image of the distribution logo as a splash screen with the most important system information.

Creating a Linux Logo splash screen

Here, the file issue.net or motd makes sense to output a splash screen of the host, motd stands for (“message of the day”). These files, which are used by the login process, are located under the configuration directory /etc and output a message after a successful login – but before the start of the respective login shell.

linuxlogo hostnamectl status
# redhat CentOS
$ sudo yum -y install linux_logo
# Debian Ubuntu
$ sudo apt-get -y install linuxlogo
# Fedora
$ sudo dnf -y install linux_logo

The autostart configuration rc.local generates the necessary entries during the boot process,

$ sudo vi /etc/rc.d/rc.local
# Debian & Ubuntu
$ sudo vi /etc/rc.local

for the console login with the file issue and the remote login issue.net.

if [ -f /usr/bin/linux_logo ]; then
     echo "" > /etc/issue
     /usr/bin/linux_logo -L debian_banner -u >> /etc/issue
     echo >> /etc/issue
Fi
if [ -f /usr/bin/linux_logo ]; then
     echo "" > /etc/issue.net
     /usr/bin/linux_logo -L debian_banner -a -u >> /etc/issue.net
     echo >> /etc/issue.net
Fi

On Debian and Ubuntu run the following command:

$ /usr/bin/linuxlogo -L debian_banner_2 -u

Make rc.local be executable.

$ sudo chmod +x /etc/rc.d/rc.local

In order for the splash screen to appear in the SSH terminal during remote login, you have to activate the banner of the SSH daemon.

$ sudo vi /etc/ssh/sshd_config

Remove the hash (#) line (about 108) and add issue.net.

# no default banner path
Banner /etc/issue.net

The change takes effect when the SSH daemon is restarted.

# CentOS 7
$ sudo systemctl restart sshd
# CentOS 6
$ sudo service sshd restart

Where, for legal reasons, a notice is intended to warn against unauthorized access to the console, the /etc/motd file can produce the following output:

$ sudo vi /etc/motd
##############################################################################
# Unauthorized access to this system is prohibited !             #
#                                  ******                                    #
# This system is actively monitored and all connections may be logged.    #
# By accessing this system, you consent to this monitoring.          #
##############################################################################

It is also a good idea to output the splash screen with Linux logo from the ~/.bashrc, here is an example of the system-wide bash configuration of the redhat distribution.

$ sudo vi /etc/bashrc

Insert the line at the end of the ~/.bashrc file.

if [ -f /usr/bin/linux_logo ]; then linux_logo -L redhat -u; Fi

Linuxlogo can be extended with the following line in ~/.bashrc

if [ -f /usr/bin/linuxlogo ]; then linuxlogo ;hostnamectl status | grep "Operating System";fi
uname -sor

Linux Logo Parameters

Distributions:

/usr/bin/linux_logo -L list

Available Built-in Logos:
        Num Type Ascii Name Description
        1 Banner Yes bsd_banner FreeBSD logo
        2 Classic Yes irix Irix logo
        3 Classic Yes bsd FreeBSD logo
        4 Banner Yes solaris The Default Banner Logos
        5 Classic Yes aix AIX logo
        6 Classic Yes classic The Default Classic Logo
        7 Banner Yes debian_banner Debian Banner (white)
        8 Banner Yes mandrake_banner Mandrake(TM) Linux Banner
        9 Banner Yes pld PLD Linux banner
        10 Banner Yes suse SUSE Logo
        11 Banner Yes sourcemage_ban Source Mage GNU/Linux banner
        12 Classic Yes gnu_linux Classic GNU/Linux
        13 Classic Yes core Core Linux Logo
        14 Classic Yes debian Debian Swirl Logos
        15 Banner Yes slackware Slackware Logo
        16 Banner Yes mandriva Mandriva(TM) Linux Banner
        17 Banner Yes redhat RedHat Banner (white)
        18 Banner Yes ubuntu Ubuntu Logo
        19 Classic Yes debian_old Debian Old Penguin Logos
        20 Banner Yes sme SME Server Banner Logo
        21 Banner Yes sourcemage Source Mage GNU/Linux large
        22 Banner Yes mandrake Mandrakelinux(TM) Banner
        23 Banner Yes banner The Default Banner Logo
        24 Classic Yes classic-simp Classic No Dots Or Letters
        25 Classic Yes classic-nodots The Classic Logo, No Periods
        26 Banner Yes banner-simp Simplified Banner Logo

Do "linux_logo -L num" where num is from above to get the appropriate logo.
Remember to also use -a to get ascii version.

Linux Logo Help Screen

/usr/bin/linux_logo -h

Linux Logo Version 5.11 using libsysinfo 0.2.1
        by Vince Weaver <vince@deater.net>
   Newest Versions at:
      https://www.deater.net/weave/vmwprod/linux_logo
      https://metalab.unc.edu/pub/Linux/logos/penguins

Usage: /usr/bin/linux_logo [-a] [-b] [-c] [-d] [-D file] [-e file] [-f] [-g]
                    [-h] [-i] [-k] [-l] [-n] [-o num] [-p] [-s] [-t str] [-u] [-v]
                    [-w Num] [-x] [-y] [-F format] [-L num | name | list | random_xy]
         [-a] -- Display on ascii-only logo
         [-b] -- Display a Banner Logo!
         [-c] -- Display a "Classic" type logo
         [-d] -- disable "prettying" of output
         [-D file]-- use custom logo from "file"
         [-e file]-- Use "file" instead of /proc/cpuinfo [for debugging]
         [-f] -- force the screen clear before drawing
         [-F format] Format output.  See README.
      B [-g] -- give system info only
         [-h] -- this help screen
         [-i] -- ignore ~/.linux_logo and /etc/linux_logo.conf
         [-k] -- keep sysinfo flushed-left (non-centered)
      B [-l] -- display logo only
      C [-o Num] -- offset output Num spaces to the right
         [-p] -- preserve cursor location
         [-s] -- skip Bogomips [speeds up on non-Linux platforms]
         [-t str] -- display user-supplied string
      * [-u] -- show uptime
         [-v] -- version information
         [-w Num] -- set width of screen to Num [default 80]
      * [-y] -- show load average
         [-L num | name | list | random_xy] -- multiple logo options.  Lake README

B=Banner mode only, C=Classic Mode Only *=Works Only in Linux

PowerShell remoting over SSH Posh-SSH

As Microsoft announced, SSH will be supported by PowerShell Posh-SSH remoting in Windows 10

This is a third-party solution called Posh-SSH. To use SSH remoting in PowerShell, you must first install the Posh-SSH module from the PowerShell Gallery. It is required that Windows 10 is used, or that the Windows Management Framework 5 is installed.

Install-Module Posh-SSH

Posh SSH can be installed from PowerShell as follows as Administrator.

Install-Module Posh-SSH
Get-Command -Module Posh-SSH
New-SSHSession -ComputerName "203.0.113.4" -Credential (Get-Credential)
Invoke-SSHCommand -Index 0 -Command "uname -a"

This makes it possible to execute commands on the Linux host and copy files.

Posh-SSH is a PowerShell module for session remoting and automating tasks against the system using the SSH protocol (OpenSSH). The module supports only a subset of the capabilities defined in RFCs https://de.wikipedia.org/wiki/Secure_Shell.

PowerShell remoting over SSH

PowerShell remoting normally uses WinRM for connection negotiation and data transport. SSH is now available for Linux and Windows platforms and allows true multiplatform PowerShell remoting.

WinRM for PowerShell

WinRM provides a robust hosting model for PowerShell remote sessions. SSH-based remoting doesn’t currently support remote endpoint configuration and Just Enough Administration (JEA).

PowerShell SSH Posh-SSH remoting

SSH remoting lets you do basic PowerShell session remoting between Windows and Linux computers. SSH remoting creates a PowerShell host process on the target computer as an SSH subsystem. Eventually we’ll implement a general hosting model, similar to WinRM, to support endpoint configuration and JEA.

PowerShell SSH cmdlets

The New-PSSession, Enter-PSSession, and Invoke-Command cmdlets now have a new parameter set to support this new remoting connection.

To create a remote session, you specify the target computer with the HostName parameter and provide the user name with UserName. When running the cmdlets interactively, you’re prompted for a password. You can also use SSH key authentication using a private key file with the KeyFilePath parameter. Creating keys for SSH authentication varies by platform.

PowerShell 6 or higher, and SSH must be installed on all computers. Install both the SSH client (ssh.exe) and server (sshd.exe) so that you can remote to and from the computers. OpenSSH for Windows is now available in Windows 10 build 1809 and Windows Server 2019. For more information, see Manage Windows with OpenSSH. For Linux, install SSH, including sshd server, that’s appropriate for your platform. You also need to install PowerShell from GitHub to get the SSH remoting feature. The SSH server must be configured to create an SSH subsystem to host a PowerShell process on the remote computer. And, you must enable password or key-based authentication.

Exit mobile version