Sett en Snakker Cow i Linux Budskapet til Day

Det er mange kule gamle Linux-kommandoer som vi ikke ser lenger fordi de er begravd under våre prangende grafiske skrivebordene. Men de er fortsatt der, men de er morsomme, og best av alt de er konfigurert med fine enkle tekstfiler. MOTD, eller Message of the Day, har utviklet seg fra en enkel tekstfil til et helt manus rammeverk som kan vise ANSI kunst, statiske tekstmeldinger, og vise dynamisk systeminformasjon.

Message of the Day
< p> Message of the Day, eller motd, viser en melding på konsoll innlogginger. Du kan se dette i aksjon ved å trykke Ctrl + Alt + F2 for å få til en konsoll, og deretter logge inn. Eller åpne en SSH-økt til en annen Linux-PC. Dette er hvordan det ser ut på Linux Mint:

 Velkommen til Linux Mint 13 Maya (GNU /Linux 3.2.0-23-generic x86_64) Velkommen til Linux Mint * Dokumentasjon: http: //www.linuxmint.comLast login: To 3 oktober 09:25:53 2 013 

Men det er kjedelig, og jeg vil at det skal se slik ut:

 /bofh unnskyldning # 365: \\ | || parallelle prosessorer kjører | \\ vinkel dag /----------------------------- \\ ^ __ ^ \\ (oo) \\ _______ (__) \\) \\ /\\ || ---- w | || || _____ ____ _ __ __ /___ /____ ___ __ /__ /____ (_) __ ____ ____ //____ _____ ____ //\\ __ \\ /__ `//////_ /___ //_ \\ /__ \\ /__ //__ `/__ \\ /__ /___ ///_ ///_ ///__ ////__ /////_ ////_ //////_ ///____ /\\ __, _ /\\ __, //​​_ //_ //_ /\\ ___ /_ //_ /\\ __, _ /\\ __, _ /_ //_ /\\ __, _ //____ /__ __ ___ ____ //____ _____ ///_ \\ /__ \\ /__ /_ \\ /___ ///__ /////_ /__ ///_ /\\ ___ /_ //_ /\\ __ /\\ ___ /_ /(_) 

Hvordan du gjør dette avhenger av din Linux distro. I gamle dager kom meldingen fra /etc /motd, og de fleste distroer fortsatt bruke dette. Så alt du gjør for å endre meldingen er redigere /etc /motd, i ren tekst. Enkel peasey og moro. Men dette betyr ikke at du kan kjøre morsomme kommandoer, som cowsay og formue. Det er en vei rundt dette, som jeg skal komme tilbake til i et øyeblikk.

MOTD på Debian og Ubuntu

Debian og Ubuntu bruker en dynamisk skript rammeverk, update-motd. Den bruker en batch av skript i /etc /update-motd som er utført av pam_motd modulen når brukere logger inn, og informasjon fra de ulike skript er montert i /var /run /motd. /etc /motd er symlinked til /var /run /motd, så alt du skriver i den vil bli overskrevet. Så hva om du ønsker å sette ditt eget inspirerende budskap i MOTD på Debian og Ubuntu? /etc/update-motd.d/99-footer er reservert for dette, men det er et shell script så du kan ikke bare legge en tekstmelding, men må bruke shell-kommandoer. Her er et enkelt eksempel som utganger to linjer med tekst delt av linjeavstand:

 printf "\\ n wakka wakka wakka \\ n \\ n wakka \\ n" 

Som ser slik ut:

 Velkommen til Linux Mint 13 Maya (GNU /Linux 3.2.0-23-generic x86_64) Velkommen til Linux Mint * Dokumentasjon: http://www.linuxmint.com wakka wakka wakka wakka Siste innlogging: Ons 11 september 19:53:56 2 013 

Du kan lese filer i /etc /update-motd å se hvilke skript de andre linjene kommer fra, og hvis du ønsker å finne alle scripts som berører MOTD prøve å kjøre sudo grep -ir motd /etc. Eller les mann update-motd.

Jazzing Up Your MOTD med Fortune og Cowsay

Vil du ikke foretrekker å ha en snakkende kua levere en annen formue når du har logget inn?

 ___________________________________________________________ /Q: Hva er liten og gul og veldig, veldig, farlig? \\\\ A: En kanarifugl med superbrukerpassord. /------------------------------------------------- ---------- \\ ^ __ ^ \\ (oo) \\ _______ (__) \\) \\ /\\ || ---- w | || || 

På Debian og Ubuntu, installere formue-mod og cowsay. Det er mange forskjellige formue databaser du kan installere, som du kan finne med apt-cache search formue. De er alle rene tekstfiler slik at du enkelt kan redigere dem og legge til dine egne meldinger hvis du føler deg kreativ. Deretter legger denne linjen til /etc/update-motd.d/99-footer:

 exec /usr /games /formue | /usr /spill /cowsay -n 

Nå vil du få en formue innpakket i cowsay ved hver innlogging. Du kan teste det på kommandolinjen slik:

 $ /usr /games /formue | /usr /games /cowsay -n ___________________________________________________ /Q: Hvorfor gjorde kyllingen krysse veien? \\ | A: For å se sin venn Gregory Peck. || || Q: Hvorfor gjorde kyllingen krysse lekeplassen? | \\ A: For å få til det andre raset. /------------------------------------------------- - \\ ^ __ ^ \\ (oo) \\ _______ (__) \\) \\ /\\ || ---- w | || || 

Du kan også angi et bestemt formue database, for eksempel /usr /spill /fortune bofh-unnskyldninger | /usr /games /cowsay -n

Gjør det samme for figlet: bare pop en linje inn /etc/update-motd.d/99-footer, som dette:

 exec figlet - f digital Velkommen og bli assimilert 

Som ser slik ut:

 + - + - + - + - + - + - + - + + - + - + - + + - + - + + - + - + - + - + - + - + - + - + - + - + - + | W | e | l | c | o | m | e | | en | n | d | | b | e | | en | s | s | i | m | i | l | en | t | e | d | + - + - + - + - + - + - + - + + - + - + - + + - + - + + - + - + - + - + - + - + - + - + - + - + - + 
Andre Distros

Hva om distroer med den gammeldagse statisk MOTD? Ingen grunn til bekymring, fordi du kan gjøre bruk av den globale innlogging profil for å kjøre regisserte innloggings meldinger. Lag en fil som heter /etc /profiles.d /motd.sh, og skriv inn dine kommandoer i det slik:

 /usr /games /formue | /usr /spill /cowsay -nfiglet -f skrå Say venn og skriv echo "Tørk føttene og tankene dine manerer" 

Ja, det er så lett, og konsollen innlogging vil se omtrent slik ut:
< pre> _____________________________________________ /Dagens hvor merkelig er morgendagens grunnen. \\\\ - Hunter S. Thompson /----------------------------------------- ---- \\ ^ __ ^ \\ (oo) \\ _______ (__) \\) \\ /\\ || ---- w | || || _____ ____ _ __ __ /___ /____ ___ __ /__ /____ (_) __ ____ ____ //____ _____ ____ //\\ __ \\ /__ `//////_ /___ //_ \\ /__ \\ /__ //__ `/__ \\ /__ /___ ///_ ///_ ///__ ////__ /////_ ////_ //////_ ///____ /\\ __, _ /\\ __, //​​_ //_ //_ /\\ ___ /_ //_ /\\ __, _ /\\ __, _ /_ //_ /\\ __, _ //____ /__ __ ___ ____ //____ _____ ///_ \\ /__ \\ /__ /_ \\ /___ ///__ /////_ /__ ///_ /\\ ___ /_ //_ /\\ __ /\\ ___ /_ /(_) Tørk føttene og tankene dine manerer

Du kan bruke alle shell-kommandoer og pen det opp med ANSI farger. Dette eksempelet viser gjeldende systeminformasjonen i farger:

 hostname = `uname -n`KERNEL =` uname -r`CPU = `uname -p`ARCH =` uname -m` # De ulike fargene som variablesW = "\\ 033 [01; 37m" B = "\\ 033 [01; 34m" R = "\\ 033 [01; 31m" X = "\\ 033 [00; 37m" echo "$ R # ======= ============================================ # "echo" $ W Velkommen $ B $ USER $ W $ B $ hostname "echo" $ R ARCH $ W = $ ARCH "echo" $ R KERNEL $ W = $ Kernel "echo" $ R CPU $ W = $ CPU "echo" $ R # ================================================= = # "

Hvilke viser slik:

 # ================================ ================== # Velkommen Carla til studio ARCH = x86_64 KERNEL = 3.8.0-31-generic CPU = x86_64 # =========== ======================================= # 

En annen fordel å gjøre det på denne måten er du raskt kan teste dine endringer ved å kjøre skriptet direkte:

 $ sh /etc/profiles.d/motd.sh

Consult Bash referansehåndboken og mannen sidene ved de ulike kommandoer for å lære mer måter å tilpasse MOTD, og ​​sjekke din egen distro dokumentasjon i tilfelle de har gjort noen morsomme tweaks til MOTD. Anmeldelser