Figlet

17 Oct 2018

figlet

När man arbetar med ett större antal servrar och sitter och loggar in via SSH så kan man i ett stressat läge inte alltid uppfatta vilken server man loggat in på. Det har hänt mig en och annan gång och efter att en av lyssnarna till min och Fredrik Björemans podcast berättade att han med hjälp av en text-till-ascii-konvertering alltid la in servernamnet i filen /etc/motd, som står för message of the day, vilket traditionellt varit ett enkelt sätt för en systemadministratör att meddela andra användare i ett Unix-baserat system om exempelvis kommande uppdateringar eller andra nyheter som de behöver veta.

/etc/motd är helt textbaserad så man kan i praktiken skicka in vilken information man vill i den texten. I mitt fall vill jag automatisera detta, exempelvis via Ansible och ett script jag kör på nyinstallerade CentOS-servrar som gör en rad saker (sätter mitt lokala repo som det som servern laddar ner paket och uppdateringar från, ställer in min syslog-server, med mera). Via ett program kallat Figlet, som finns i CentOS 7-repot, kan man generera “ascii-logotyper” från vanlig text. I mitt fall vill jag ta hostnamnet på servern men inte dess domännamn och skicka in i /etc/motd genom ett script. Följande enkla kommando löser detta:

figlet ${HOSTNAME%%.*} > /etc/motd

Detta kan givetvis också scriptas så kommandot körs via SSH eller via en kickstart-server om så önskas.

Avslutningsvis: Figlet kan en hel del andra massa roliga saker som jag rekommenderar alla att titta närmare på.