Користувальницькькі налаштування

Налаштування сайту


software:os:linux:shell:setup

Розбіжності

Тут показані розбіжності між вибраною ревізією та поточною версією сторінки.

Посилання на цей список змін

Порівняння попередніх версій Попередня ревізія
Наступна ревізія
Попередня ревізія
software:os:linux:shell:setup [2020/01/31 15:10]
charon
software:os:linux:shell:setup [2020/02/03 17:02] (поточний)
charon [Створити ~/.ssh/config]
Рядок 1: Рядок 1:
-Встановити пакети (приклад для робочої станції): +===== Встановити пакети (приклад для робочої станції) ===== 
-  ncurses-term tree wget curl bash-completion git htop whois bzip2 mlocate pv unrar unzip anacron +  ncurses-term tree wget curl bash-completion git htop whois bzip2 mlocate pv unrar unzip anacron mc 
-Для Убунту та Дебіан також:+ 
 +===== Для Убунту та Дебіан також встановити =====
   apt-file   apt-file
-Встановити //vim//, якщо немає, наприклад:+ 
 +===== Встановити vim, якщо немає, наприклад =====
   command -v vim > /dev/null || sudo apt install vim-nox   command -v vim > /dev/null || sudo apt install vim-nox
-Створити додаткові каталоги:+ 
 +===== Створити додаткові каталоги =====
   mkdir -v ~/{.ssh,temp,scripts,backup,.vim}   mkdir -v ~/{.ssh,temp,scripts,backup,.vim}
   chmod 700 ~/{.ssh,temp,scripts,backup,.vim}   chmod 700 ~/{.ssh,temp,scripts,backup,.vim}
-Створити //~/.bash_profile// 
-   
  
 +===== Створити ~/.bash_profile =====
 +<code>
 +######################
 +# Configure PATH ENV #
 +######################
 +# if running bash
 +if [ -n "$BASH_VERSION" ]; then
 +    # include .bashrc if it exists
 +    if [ -f "$HOME/.bashrc" ]; then
 +        . "$HOME/.bashrc"
 +    fi
 +fi
 +
 +# prepend additional user directories
 +path_array=("/usr/local/scripts" "$HOME/bin" "$HOME/.local/bin" "$HOME/scripts")
 +
 +for item in "${path_array[*]}"
 +do
 +    if [ -d "$item" ] ; then
 +        PATH="$item:$PATH"
 +    fi
 +done
 +unset path_array
 +export PATH
 +
 +##########################
 +# Configure shell prompt #
 +##########################
 +# Colors
 +# 0 - Black
 +# 1 - Red
 +# 2 - Green
 +# 3 - Yellow
 +# 4 - Blue
 +# 5 - Magenta
 +# 6 - Cyan
 +# 7 - White
 +# you can make it lighter with BOLD attribute
 +#
 +CNORM="\[$(tput sgr0)\]"
 +CLIGHTGREEN="\[$(tput bold)$(tput setaf 2)\]"
 +CGREEN="$CNORM\[$(tput setaf 2)\]"
 +CLIGHTCYAN="\[$(tput bold)$(tput setaf 6)\]"
 +CCYAN="$CNORM\[$(tput setaf 6)\]"
 +CGRAY="$CNORM\[$(tput setaf 7)\]"
 +CWHITE="\[$(tput bold)$(tput setaf 7)\]"
 +CLIGHTRED="\[$(tput bold)$(tput setaf 1)\]"
 +# assign colors to data
 +DAYC=$CLIGHTGREEN
 +DATEC=$CGREEN
 +PATHC=$CLIGHTGREEN
 +HOSTC=$CLIGHTCYAN
 +EVENTC=$CCYAN
 +TIMEC=$CGREEN
 +GTC=$CWHITE
 +LASTEXITC=$CLIGHTGREEN
 +SUCOLOR=$CLIGHTRED
 +# Prepare prompt
 +PRUSER="-"
 +if [ "$EUID" = "0" ]; then
 +  PRUSER="${SUCOLOR}#${CNORM}"
 +fi
 +PS1="$DAYC\D{%a}$DATEC/\D{%b,%d}:pts/\l:$PATHC\w\n\
 +${HOSTC}\h$CNORM:$PRUSER$EVENTC\!$TIMEC/\A$CNORM|$LASTEXITC\$?$GTC>$CNORM"
 +export PS1
 +# PS2 – Continuation interactive prompt
 +export PS2="continue-> "
 +
 +# The PS4 shell variable defines the prompt that gets displayed, when you execute a shell script in debug mode
 +export PS4='$0.$LINENO+ '
 +
 +########
 +# MISC #
 +########
 +export HISTSIZE=1000
 +export HISTTIMEFORMAT="%t%d.%m.%y %H:%M:%S%t"
 +</code>
 +
 +===== Створити ~/.bash_aliases =====
 +<code>
 +unalias ls
 +alias ls="/bin/ls --color=never -F --group-directories-first"
 +alias dir="ls -a"
 +alias l="ls -la"
 +alias cw="clear; w"
 +alias x="exit"
 +alias cls="clear"
 +alias bc="bc -ql"
 +alias tt=traceroute
 +
 +# Open last modified file in vim (not checked!)
 +alias Vim="vim `ls -t | head -1`"
 +
 +# Find top 5 big files
 +alias findbig="find . -type f -exec ls -s {} \; | sort -n -r | head -5"
 +
 +# To clear all the history and screen
 +alias hcl='history -c; clear'
 +
 +# Make basic commands verbose
 +alias cp="cp -v"
 +alias rm="rm -v"
 +alias mv="mv -v"
 +
 +# To navigate to the different directories
 +alias ..='cd ..'
 +alias ...='cd ../..'
 +
 +# Create and change to a new directory
 +mcd ()
 +{
 +   if [ "$1" == "" ]; then
 +       echo "mcd directory-name";
 +   else
 +       if [ ! -d $1 ]; then
 +           mkdir $1;
 +           cd $1;
 +       else
 +           echo "$1 directory exists";
 +       fi;
 +   fi
 +}
 +# display currently mounted file systems nicely
 +showmounted() { (echo "DEVICE PATH TYPE FLAGS" && mount | awk '$2=$4="";1') | column -t; }
 +</code>
 +
 +
 +===== Створити ~/.ssh/config =====
 +<code>
 +Host test proverka
 +    HostName test.example.org
 +    User ninja
 +    IdentityFile ~/.ssh/id_ed25519
 +
 +Host *
 +    User charon
 +    # Keep-alive
 +    ServerAliveInterval 45
 +    ServerAliveCountMax 3
 +    UseRoaming no
 +    KexAlgorithms curve25519-sha256@libssh.org,ecdh-sha2-nistp521,ecdh-sha2-nistp384,ecdh-sha2-nistp256,diffie-hellman-group-exchange-sha256
 +    # Ensure KnownHosts are unreadable if leaked - it is otherwise easier to know which hosts your keys have access to.
 +    HashKnownHosts yes
 +    # Host keys the client accepts - order here is honored by OpenSSH
 +    HostKeyAlgorithms ssh-ed25519-cert-v01@openssh.com,ssh-rsa-cert-v01@openssh.com,ssh-ed25519,ssh-rsa,ecdsa-sha2-nistp521-cert-v01@openssh.com,ecdsa-sha2-nistp384-cert-v01@openssh.com,ecdsa-sha2-nistp256-cert-v01@openssh.com,ecdsa-sha2-nistp521,ecdsa-sha2-nistp384,ecdsa-sha2-nistp256
 +
 +    MACs hmac-sha2-512-etm@openssh.com,hmac-sha2-256-etm@openssh.com,umac-128-etm@openssh.com,hmac-sha2-512,hmac-sha2-256,umac-128@openssh.com
 +    Ciphers chacha20-poly1305@openssh.com,aes256-gcm@openssh.com,aes128-gcm@openssh.com,aes256-ctr,aes192-ctr,aes128-ctr
 +</code>
software/os/linux/shell/setup.1580476207.txt.gz · Востаннє змінено: 2020/01/31 15:10 повз charon