Probably one of the most often task while working with dictionaries in Python is sorting by value. That is how it can be done: >>> d = {‘Canada’: 513, ‘Sao Tome and Principe’: 3, ‘Fiji’: 1, ‘Montenegro’: 12, ‘Lithuania’: 47} >>> sorted_list = sorted(d, key=d.get, reverse=True) >>> for i in sorted_list: … print i, d[i]…
All posts tagged linux
Troubleshooting: Cannot open TUN/TAP dev /dev/net/tun
If you are getting error ‘Cannot open TUN/TAP dev /dev/net/tun‘ while starting OpenVPN server, it means that you should load ‘tun’ module which features TUN/TAP device driver: OpenVPN 2.1.1 i386-redhat-linux-gnu [SSL] [LZO2] [EPOLL] [PKCS11] built on Jan 26 2010 NOTE: the current –script-security setting may allow this configuration to call user-defined scripts LZO compression initialized…
Python: uploading file via HTTP with pyCurl and Requests
Here is a simple way to upload file in Python. You should have PyCurl installed. import pycurl from cStringIO import StringIO filename=’test_file’ c = pycurl.Curl() c.setopt(c.POST, 1) c.setopt(c.HTTPPOST, [(‘title’, ‘test’), ((‘file’, (c.FORM_FILE, filename)))]) c.setopt(c.VERBOSE, 1) bodyOutput = StringIO() headersOutput = StringIO() c.setopt(c.WRITEFUNCTION, bodyOutput.write) c.setopt(c.URL, “http://upload.example.com” ) c.setopt(c.HEADERFUNCTION, headersOutput.write) c.perform() print bodyOutput.getvalue() Upd. File upload with…
Nagios: monitoring virtual Windows servers
I would like to propose one of the ways of monitoring of OS Windows server, which is installed on a Linux server as a virtual one. For this purpose, we will use Nagios and the program for Windows – NSClient++. First of all we need to install program NSClient++ on the virtual machine. During the…
Python: distribution systems world
At the very beginning Python packaging world may seem too confusing. But only at first sight. There are a lot of different packages package formats, libraries and tools for distributing and packages management in Python world. There is also PyPI – the Python Package Index is a repository of software for the Python. Most often…
AWK: quick way to get squid users traffic usage
If you need quick and simple way to get squid users traffic usage you can use this script: #!/bin/bash awk ‘{ user = $8 traffic[user] += $5; } END { OFS = “tt” for (i in traffic) {printf “%s – tt size: %10.2f Mbn”, i, ( traffic[i] / (1024 * 1024 ) ) } }’…
RPM: Bulding Python package for Redis
To build RPM package for Python library is really easy task if developer has kindly included setup.py file in it. Let’s build RPM for redis-py package by Andy Mccurdy. First of all we need archive with last version of redis-py. [root@develop ~]# wget https://github.com/downloads/andymccurdy/redis-py/redis-2.4.9.tar.gz Unpack it. [root@develop ~]# tar xzvf redis-2.4.9.tar.gz [root@develop ~]# cd redis-2.4.9/…
AWK: getting last column value
If you need to get value of last column in awk you can use built-in variable NF which means the number of fields in record. awk ‘$(NF) !~ /-/ { print $0 }’ access_log Or next, if you need next to the last field. And so on. awk ‘$(NF-1) != /-/ { print $0 }’…
DRBD split-brain solution in primary/primary setup
Recently one of our customers DRBD cluster has detected split-brain: node2 kernel: block drbd1: Split-Brain detected, dropping connection! node2 kernel: block drbd1: helper command: /sbin/drbdadm split-brain minor-1 node2 kernel: block drbd1: helper command: /sbin/drbdadm split-brain minor-1 exit code 0 (0x0) This is primary/primary cluster. And to fix this issue we had to perform manual procedures…
RPM: last installed packages
1. To get list of last installed RPM packages you can simply use next command: rpm -qa –last | less 2. To get list of packages installed sorted by size use: rpm -qa –queryformat=”%{size} %{name}-%{version}-%{release}n” | sort -rn | less Didn’t find the answer to your question? Ask it our administrators to reply we will…