суббота, 10 февраля 2018 г.
A brief story of how you shouldn't promote your open source project
четверг, 1 февраля 2018 г.
пятница, 13 октября 2017 г.
Does ip belong to network?
#!/bin/sh belongs_network () { addr=$1 network=$2 netaddr=`echo $network | cut -d / -f 1` netcdr=`echo $network | cut -d / -f 2` a1=$(echo "$addr" | cut -d . -f 1) a2=$(echo "$addr" | cut -d . -f 2) a3=$(echo "$addr" | cut -d . -f 3) a4=$(echo "$addr" | cut -d . -f 4) n1=$(echo "$netaddr" | cut -d . -f 1) n2=$(echo "$netaddr" | cut -d . -f 2) n3=$(echo "$netaddr" | cut -d . -f 3) n4=$(echo "$netaddr" | cut -d . -f 4) ares=$((($a1*256*256*256+$a2*256*256+$a3*256+$a4)>>(32-$netcdr))) nres=$((($n1*256*256*256+$n2*256*256+$n3*256+$n4)>>(32-$netcdr))) if [ $ares -eq $nres ] ; then return 0 else return 1 fi } if belongs_network 10.208.103.255 10.208.128.0/17; then echo "belongs" else echo "does not belong" fi
среда, 29 марта 2017 г.
Thank you, Oracle engineers
- Our userland build system, which constantly evolves, however, in different directions, under Oracle control and in our distribution. But still a lot of components can be easily migrated between build systems.
- A lot of software build receipts and patches, as result, were borrowed with small modifications, from Oracle userland-gate. The process is still going on.
- We still borrow patches from Solaris pkg-gate. Also differences in underlying kernels are currently rather significant, a lot of changesets from pkg-gate can be ported to OpenIndiana pkg5 repository.
- Of course, I can not avoid thanking Alan for his constant help in supporting Xorg subsystem and GUI parts of our distribution. He was always helpful to me and Aurélien.
- Evidently, recent KMS work, integrated into OpenIndiana, wouldn't be possible without Oracle's open drm port, which was ported from Solaris to illumos by Martin Bochnig, and later independently ported and enhanced by Gordon Ross.
четверг, 16 февраля 2017 г.
Enterprise Information systems
пятница, 21 октября 2016 г.
Sending SMS notifications from OpenIndiana zone with Huawei E1550
I want to receive SMS notifications when something is terribly wrong in our data center. One part of the problem is OpenNMS, and we know how to configure it. But another part is actually sending SMS.
As only physical server with normal USB ports which we have is self-assembled SuperMicro storage, running OpenIndiana, we want to create OI zone, which can send SMS. First of all, we'll need some USB modem. I use Huawei e1550, which was already switched to modem-only mode (AT^U2DIAG=0) on Windows PC. Let's look at prtconf -v (looking for HUAWEI):
device, instance #0 Driver properties: name='pm-components' type=string items=3 dev=none value='NAME= usbsacm0 Power' + '0=USB D3 State' + '3=USB D0 State' Hardware properties: name='driver-minor' type=int items=1 value=00000000 name='driver-major' type=int items=1 value=00000002 name='high-speed' type=boolean name='configuration#' type=int items=1 value=00000001 name='usb-product-name' type=string items=1 value='HUAWEI Mobile' name='usb-vendor-name' type=string items=1 value='HUAWEI Technology' name='usb-raw-cfg-descriptors' type=byte items=85 value=09.02.55.00.03.01.03.e0.fa.09.04.00.00.03.ff.ff.ff.00.07.05.81.03.40.00.05.07.05.82.02.00.02.20.07.05.01.02.00.02.20.09.04.01.00.02.ff.ff.ff.00.07.05.83.02.00.02.20.07.05.02.02.00.02.20.09.04.02.00.02.ff.ff.ff.00.07.05.84.02.00.02.20.07.05.03.02.00.02.20 name='usb-dev-descriptor' type=byte items=18 value=12.01.00.02.00.00.00.40.d1.12.01.10.00.00.02.01.00.01 name='usb-release' type=int items=1 value=00000200 name='usb-num-configs' type=int items=1 value=00000001 name='usb-revision-id' type=int items=1 value=00000000 name='usb-product-id' type=int items=1 value=00001001 name='usb-vendor-id' type=int items=1 value=000012d1 name='compatible' type=string items=3 value='usb12d1,1001.0' + 'usb12d1,1001' + 'usb,device' name='reg' type=int items=1 value=00000006 name='assigned-address' type=int items=1 value=00000003
If modem was switched to modem-only mode, you'll see
value='usb12d1,1001.0' + 'usb12d1,1001' + 'usb,device'in 'compatible' field.So, let's say OI that it should use usbsacm to talk to it:
# update_drv -a -i 'usb12d1,1001' usbsacm
Now you should have /dev/term/0 - 3 devices and can use tip to talk to /dev/term/0:
# tip /dev/term/0 connected AT OK ~^D
Let's create zone and pass /dev/term/0 to the zone:
# zonecfg -z sms1 sms1: No such zone configured Use 'create' to begin configuring a new zone. zonecfg:sms1> create zonecfg:sms1> set zonepath=/zones/sms1 zonecfg:sms1> set brand=ipkg zonecfg:sms1> set autoboot=true zonecfg:sms1> set ip-type=exclusive zonecfg:sms1> add net zonecfg:sms1:net> set physical=sms10 zonecfg:sms1:net> end zonecfg:sms1> add device zonecfg:sms1:device> set match=/dev/term/0 zonecfg:sms1:device> end zonecfg:sms1> exit # zfs create data0/zones/sms1 # zoneadm -z sms1 install # zoneadm -z sms1 boot
Now we can configure network in our zone:
# zlogin sms1 # ipadm create-if sms10 # ipadm create-addr -T static -alocal=192.168.1.2/24 sms10/v4 # route add -p -net 0 192.168.1.1 # cp /etc/nsswitch.dns /etc/nsswitch.conf # echo 'nameserver 8.8.8.8' > /etc/resolv.conf # svcadm enable dns/client
We'll use gammu utilities to send sms:
# pkg install utility/gammu
Your /etc/gammurc (or ~/.gammurc) should look like:
[gammu] device = /dev/term/0 connection = at
If everything is fine, now you can send SMS:
# gammu sendsms TEXT +7myphone -text "test"
воскресенье, 8 мая 2016 г.
My Crimea trip (April-May 2016)
Day 1. The road
What can you expect from bus tour to Crimea for 170 euros? Everything is possible. In the beginning we found out that bus has opaque windows and malfunctioning microphone. Also one of the drivers forgot his documents, so we stayed in Azov for 2 hours waiting for another bus. So we walked in Azov city park for some time. After leaving park we had to wait some more time on the road. So at last we left Azov at 7-8 in the evening.When we finally left Azov, driver turned on a film, which killed me with its stupidity. Luckily, the DVD disk was damaged, and we didn't have to watch all the film. There's no good light in the bus, so I can't read my book. But I can hear loud conversations of patriotic company which drink cognac on the backseat of the bus. So I'm listening to Frank on my phone and hope that it will not discharge too soon.
Ferry… Passenger control was surprisingly fast, but our bus registration took some time. So the overall process took about 2.5 hours. One interesting thing I've seen while waiting for the bus registration is boarding of railway oil tanks boarding the ferry.
Day 2. Alushta. Nikitsky botanical garden. Massandra palace
So, we still in the road. I hope I'll be able to sleep at the hotel. Vain hope. I've just managed to unpack my bag, take a shower and take a breakfast. And back to the bus.Day 3. Livadia palace. Lower Oreanda Park
Ufff. It's cold. Terribly cold. I couldn't turn on conditioner in heating mode, so had to sleep under 3 blankets. It's about 10 degrees outside. But under 3 blankets it's warm enough. Of course, there's no any central heating in this summer hotel. In the morning hotel staff explained me that air conditioner remote buttons should be pressed harder and helped to turn on air conditioner in heating mode.In the palace there's also an exhibition devoted to the Yalta conference. The palace itself was given as residence for Roosevelt. There's a copy of "Pravda" newspaper of 1945 with printed decisions of the conference. You can see a sculpture of Churchill, Roosevelt and Stalin near sanatorium, which is situated nearby. It wasn't placed near the palace, as it's too heavy for this place.
After visiting Resort's park there was a concert of church choir music. As I barely could withstand this, I spent this time walking in the park, which looked lovely.
We were going back to the bus along the same pathway. The pathway is called "Sunny path" and to justify this name, sundial was placed near the path. However, it never shows true time and serves only as decorative element.
In the evening I forgot a packet with food in the bus, so I had to go walking, searching for a cafe. I've walked along the beach, but all cafes there were still closed or were not very attractive. Finally I've chosen one with adequate prices and interesting interior - guns, steering wheels, bear's skins. Food was delicious, but music was awful. As it was live music, they even included some margin for it in the bill. It wasn't high, but I'd prefer to pay it to these musicians for silence, not for their music.
Day 4. Vorontsov Palace. Swallow's Nest. Yalta.
From Swallow's Nest we went by small ship to Yalta. In Yalta we had some free time. I even managed to have a decent dinner there for ~ 2 euro. While walking along the seafront, I've seen several concerts - they were held on the stages under clear sky. There were a lot of publice there. Some of them tried to get their money, lending different exotic personal vehicles, forcing you to take a picture with their animals or playing violins. Lively place. I was fond of several pairs of old men, playing chess on the benches. A man managed to do check-mate in 6 moves from situation, which didn't foretell it in any way.
In the evening I walked from the hotel in the direction opposite to the city center. Saw several pictures in Stalker style - abandoned children recreation centers, rusty satellite antennas, abandoned wagons…
Day 5. Genoese fortress. Vine plant.
As I forgot to buy any food during the day, I have to buy "Snickers" for the cost of the second course in the canteen where I usually eat. Another impressions on the ferry are related to the ferryboat itself. It looks grandiosely. It was interesting that ferryboat does two turns during its way so that it lands with its back part…
Epilogue
There were a lot of impressions, and most of them were positive. I saw that this region is developing with great speed. From several conversations I found out that people expect that a lot of funding will come from Moscow after 2018, when World Championship will be over and Kerch strait bridge will be finished. Of course, this bridge is a necessity, as crossing strait on the ferry takes too much time.I still haven't seen a lot in Crimea, and I'd like to go back and visit Sevastopol and Bakhchysarai, to spend several days on the sea shore.
If you decide to go there, don't forget that for now it seems only MTS mobile services work there. Also several men in our group had issues with their credit cards, so don't forget to get cash. Luckily, you'll not need a lot of money there.