Menu

linux/

Monitor cpu and memory usage of the process

Print every second cpu and memory usage of the process:

watch -n 1 "ps -eo pid,pcpu,pmem,args | kazy -i xnotitle -e kazy"
· 1 Jan 2020

Prettify json output in curl

Install jq package:

sudo dnf install jq

Usage example:

curl -u key:x "https://api.com/users.json" | jq
· 1 Jan 2020

How to regenerate grub configuration

sudo grub2-mkconfig -o /boot/efi/EFI/fedora/grub.cfg
· 1 Jan 2019

Log quires in dnsmasq

Add the following line to dnsmasq configuration file:

log-queries
· 1 Jan 2019

lxd: Increase disk size of an existing container

lxc config device override mycontainer root size=20GB

Restart the container to apply changes.

· 1 Jan 2019

i5-6440HQ CPU benchmark

CPU benchmark from Dell Precision 15 5510 Core-i5 i5-6440HQ

$ sysbench cpu run --time=5
sysbench 1.0.9 (using system LuaJIT 2.1.0-beta3)

Running the test with following options:
Number of threads: 1
Initializing random number generator from current time


Prime numbers limit: 10000

Initializing worker threads...

Threads started!

CPU speed:
    events per second:  1157.88

General statistics:
    total time:                          5.0008s
    total number of events:              5792

Latency (ms):
         min:                                  0.80
         avg:                                  0.86
         max:                                  3.74
         95th percentile:                      1.06
         sum:                               4998.26

Threads fairness:
    events (avg/stddev):           5792.0000/0.00
    execution time (avg/stddev):   4.9983/0.00
· 11 Mar 2018

List all IP addresses in a network

To list ip addresses of all connected to the network devices, use this command:

nmap -sn 192.168.0.0/24
· 1 Mar 2018

SSL certificate viewer

GUI to view certificate:

gcr-viewer cert.pem
· 1 Mar 2018

python: Django-like testrunner

Django-like testrunner for non-django projects:

#!/usr/bin/env python

import argparse
import collections
import unittest
import sys


def main():
    parser = argparse.ArgumentParser(description='Django-like testrunner')
    parser.add_argument('specific_test', metavar='', type=str, nargs='?', help='Specifc test')
    parser.add_argument("--failfast", action="store_true")
    parser.add_argument("--verbosity", type=int, default=1)

    args = parser.parse_args()

    loader = unittest.TestLoader()
    all_tests = loader.discover('.', top_level_dir="./")
    suite = unittest.TestSuite()

    if args.specific_test:

        def walk_tests(tests):
            if isinstance(tests, collections.Iterable):
                for item in tests:
                    walk_tests(item)
                return
            if tests.id().startswith(args.specific_test):
                suite.addTest(tests)
            elif not str(tests).startswith("test"):
                sys.exit("Error in file %s" % tests)

        walk_tests(all_tests)
    else:
        suite.addTests(all_tests)

    unittest.TextTestRunner(verbosity=args.verbosity, failfast=args.failfast).run(suite)


if __name__ == "__main__":
    main()
· 1 Mar 2018

Run command as a different user

Command runuser allows to run a command as a different user. You must be root to be able to run that command:

sudo runuser -l vagrant -c "GH=1 env"
· 1 Oct 2017