Skip to content

Instantly share code, notes, and snippets.

View KozhevnikovM's full-sized avatar

Mikhail Kozhevnikov KozhevnikovM

View GitHub Profile
@KozhevnikovM
KozhevnikovM / gist:f7141427d8580becd3cfcaaf49c0ca39
Created May 15, 2023 08:59
Get external ip address from command line
dig @resolver4.opendns.com myip.opendns.com +short
@KozhevnikovM
KozhevnikovM / mkswap.sh
Created May 4, 2023 08:28
make swap file
sudo fallocate -l 8G /.swapfile; sudo chmod 600 /.swapfile; sudo mkswap /.swapfile; sudo swapon /.swapfile;
@KozhevnikovM
KozhevnikovM / curl.md
Created March 30, 2023 11:51 — forked from subfuzion/curl.md
curl POST examples

Common Options

-#, --progress-bar Make curl display a simple progress bar instead of the more informational standard meter.

-b, --cookie <name=data> Supply cookie with request. If no =, then specifies the cookie file to use (see -c).

-c, --cookie-jar <file name> File to save response cookies to.

@KozhevnikovM
KozhevnikovM / vault.service
Last active December 27, 2022 10:00
Systemd service for hashicorp vault. Use docker container
[Unit]
Description=HashiCorp Vault Service (Docker container)
After=docker.service
Requires=docker.service
[Service]
TimeoutStartSec=0
Restart=always
Environment=VAULT_VERSION=1.11.3
@KozhevnikovM
KozhevnikovM / gist:996ae19c780dfc296a467bf8ddb0aef9
Created October 17, 2022 08:30
Шпаргалка по systemctl
systemctl list-units --type service --all — просмотр всех юнитов в системе
systemctl list-unit-files --type service
systemctl start name — запустить сервис
systemctl stop name — остановить сервис
systemctl restart name — перезапустить сервис
systemctl status name — посмотреть статус сервиса
systemctl reload name — перечитать конфигурацию
systemctl daemon-reload — перечитать конфигурацию для всех
systemctl try-restart name — перезапустить, если запущен
systemctl enable name — включить автозапуск сервиса
@KozhevnikovM
KozhevnikovM / screen.txt
Created October 17, 2022 08:21
Шпаргалка по Screen
screen позволяет удобно запускать несколько оболочек в одном окне. Вот краткий список горячих клавиш:
Ctrl+a c — создать ещё одну оболочку
Ctrl+a " — просмотреть список оболочек в текущем сеансе screen
Ctrl+a NUM — переключиться на NUM окно, где NUM - это номер окна
Ctrl+a A — переименовать окно
Ctrl+a S — разделить окно горизонтально
Ctrl+a | — разделить окно вертикально
Ctrl+a tab — переключиться в следующий терминал в пределах окна
Ctrl+a Ctrl+a — переключиться между предыдущим окном и текущим
Ctrl+a X — закрыть текущую оболочку
@KozhevnikovM
KozhevnikovM / sudoers
Created October 17, 2022 08:12
Log all sudo commands
Defaults logfile="/var/log/sudo.log"
Defaults log_output
Defaults log_input
Defaults iolog_dir=/var/log/sudo-io/%{user}
%admins ALL=(ALL) NOPASSWD: LOG_INPUT: LOG_OUTPUT: ALL
@KozhevnikovM
KozhevnikovM / Dockerfile
Created August 13, 2021 07:51
Typical Docker file for python development
FROM python3.9
ENV PYTHONDONTWRITEBYTECODE 1
ENV PYTHONUNBUFFERED 1
WORKDIR /code
COPY Pipfile Pipfile.lock /code/
RUN pip install pipenv && pipenv install --system
def get_dividere_lettere(string):
cleared_string = clear_string(string)
pointer = 0
current_syllable = ''
for letter in cleared_string:
pointer += 1
current_syllable += letter
stayed_string = cleared_string[pointer:]
if not stayed_string:
yield current_syllable
def clear_string(string):
dictionary = str.maketrans('àáâãäåèéêëìíîïòóôõöøùúûüýÿ', 'aaaaaaeeeeiiiioooooouuuuyy')
return ''.join(e for e in string if e.isalpha()).translate(dictionary)
def is_vowel(letter, vowels='aeiouyj'):
return letter in vowels