skip to Main Content

linuxde açık port ve socket

linuxte açık portları ve socketleri öğrenmek istiyorsak, en temel uygulamamız netstat dan başka bir şeye gerek yok.

fcicek@fcicek-home:~$ sudo netstat -plnt
Aktif internet bağlantıları (sadece sunucular)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 0.0.0.0:22              0.0.0.0:*               DİNLE      1298/sshd           
tcp        0      0 127.0.0.1:631           0.0.0.0:*               DİNLE      3905/cupsd          
tcp        0      0 127.0.0.1:5432          0.0.0.0:*               DİNLE      1525/postgres       
tcp        0      0 127.0.0.1:5433          0.0.0.0:*               DİNLE      1508/postgres       
tcp        0      0 127.0.0.1:3306          0.0.0.0:*               DİNLE      1436/mysqld         
tcp        0      0 0.0.0.0:5355            0.0.0.0:*               DİNLE      1293/systemd-resolv 
tcp6       0      0 :::22                   :::*                    DİNLE      1298/sshd           
tcp6       0      0 ::1:631                 :::*                    DİNLE      3905/cupsd          
tcp6       0      0 :::5355                 :::*                    DİNLE      1293/systemd-resolv 
tcp6       0      0 :::80                   :::*                    DİNLE      1524/apache2

 

fcicek@fcicek-home:~$ netstat -lx 
Active UNIX domain sockets (sadece sunucular)
Proto RefCnt Flags       Type       State         I-Node   Yol
unix  2      [ ACC ]     AKIŞ      DİNLENİYOR  34197    /tmp/.ICE-unix/2505
unix  2      [ ACC ]     AKIŞ      DİNLENİYOR  28166    /run/user/125/bus
unix  2      [ ACC ]     AKIŞ      DİNLENİYOR  34061    /run/user/1000/systemd/private
unix  2      [ ACC ]     AKIŞ      DİNLENİYOR  34066    /run/user/1000/bus
unix  2      [ ACC ]     AKIŞ      DİNLENİYOR  34196    @/tmp/.ICE-unix/2505
unix  2      [ ACC ]     AKIŞ      DİNLENİYOR  87786    /tmp/.org.chromium.Chromium.9o8hA2/SingletonSocket
unix  2      [ ACC ]     AKIŞ      DİNLENİYOR  27553    @/tmp/.ICE-unix/1750

 

crossover veya wine da proteusda VGDVC.DLL hatası

linuxde   zorunlu olarak bir proteus dosyası açmanız gerektiği durumda wine veya crossover üzerinde poteus kurarak dosyayı açmak istetediğinizde

“Internal Exception: Access violation in module ‘VGDVC.DLL’ [00010C56]”

hatası ie karşılaşmanız çok olasıdır.. bunun için regedit i açarak

HKEY_CURRENT_USER\Software\Labcenter Electronics\Proteus 8 Professional\Default Graphics Mode=1

değeri 1 olarak değiştirmeniz gerekmektedir.

“/usr/bin/env: `node’: Böyle bir dosya ya da dizin yok” hatası

fcicek@fcicek-home:~$ cordova create MyApp
/usr/bin/env: `node': Böyle bir dosya ya da dizin yok

hatası ile karşılaşıyorsanız nodejs ile ilgili eksik bir şeyler kurulmuş olabilir..

root@fcicek-home:~# sudo apt-get install nodejs-legacy

ı tekrar kurduktan sonra yeniden denmekte fayda var.

fcicek@fcicek-home:~$ cordova create MyApp
? May Cordova anonymously report usage statistics to improve the tool over time? Yes

Thanks for opting into telemetry to help us improve cordova.
Creating a new cordova project

sunucuda farklı bir php sürümünü kullanmak

sunucuya yeni php sürümünü yükledikten sonra bazı sitelerin çalışmadığı şikayetleri geldi. sunucu üzerinde birden fazla php sürümü yüklü ve siz bunlardan bir tanesi özellikle kullanmak istiyorsanız .htaccess dosyası içerisine aşağıdaki satırı ilave ederek kullanabilirsiniz. ( bu örnekte php için php5.6 versiyonu kullanılmak istenmektedir )

AddHandler application/x-httpd-php56 .php

 

raspberry pi 3 üzerinde kablosuz ağ ayarları

raspberry pi 3 kablosuz ağ özelliği ile geliyor ve eski modellerindeki gibi driver vb tanıtımı ile uğraşmıyorsunuz. bununla ilgili daha önce bir yazı paylaşmıştım. “raspberry pi ““ raspbian : kablosuz bağlantı ayarları

raspberry pi 3 üzerinde wifi gömülü olduğu için wifi ayarlarını yapmanız ise oldukça kolay. öncelikle  wpa_supplicant.conf dosyasnı açıyoruz

pi@raspberrypi:~ $ nano /etc/wpa_supplicant/wpa_supplicant.conf

ve dosya içerisine

network={
ssid="kablosuz_agda_kullanilan_iot.gen.tr"
psk="kablosuz_ag_sifresi"
proto=RSN
key_mgmt=WPA-PSK
pairwise=CCMP
auth_alg=OPEN
}

satırlarınızı ekliyoruz

burada  ssid ve şifre dışındaki alanlar konusunda bilginiz yoksa ve modeminiz ile gerekli uyumlu şekilde konfigürasyon yapmak istiyorsanız aşagıdaki eşleştirmeyi kullanabilirsiniz..

proto  : WPA2 için RSN ,  WPA1 için WPA
key_mgmt  :  kişisel ağ için WPA-PSK , kurumsal ağ için WPA-EAP
pairwise  WPA2 için CCMP ve WPA1 için TKIP
auth_alg  : ototik bağlannma  OPEN, diğer ayarlar için LEAP veSHARED

raspberry nin ilk kurulumunda ssh aktif edilmesi

raspberry üzerine monitor ve klavye kullanmadan raspbian kurmak – kullanmak istiyorsanız ve boot sırasında ssh  aktif olmuyor diyorsanız yapmanız gereken kullandığınız sd card içine girerek config.txt dosyasının yer aldığı klasör (/boot) içine “ssh” isimli bir dosya oluşturarak içine ssh yazarak kaydedin.

raspberry in ilk açılış sırasında ssh artık aktif olacaktır. login olduktan sonra istediğiniz değişiklikleri yapabilirsiniz..

 

siremis kurulumu

https://ferhatcicek.com/2014/03/26/siremis/ yazısında siremis hakkında temel bilgileri blogumda paylaşmıştım. kamailio kullanıyorsanız siremis olmazsa olmazınızdır. sistemizde kamaili nun kurulu olduğunu düşünerek siremisi nasıl kuracağımızı basitçe anlatmaya başlayalım. öncelikle

http://siremis.asipto.com/pub/downloads/siremis/

adresinden güncel sürümü indirelim. şu an güncel sürüm 4.2. indirdiğiz yazılımı uygun bir noktada açalım.

root@cicek:/var/www# tar zxvf siremis-4.2.0.tgz 

açılan dizin içine girerek apache konfigürasyon dosyalarında eklemiz gereken satırları oluşturacak olan make komutunu çalıştıralım. burada kullandığınız apache sürümü önemli. ben sistemimde 2.4 sürümünü kullandığım için apache24-conf parametresini kullandım.

root@cicek:/var/www# cd siremis-4.2.0/
root@cicek:/var/www/siremis-4.2.0# ls
ChangeLog  Makefile  misc  openbiz  README  siremis
root@cicek:/var/www/siremis-4.2.0# make apache24-conf
# siremis apache conf snippet ...

	Alias /siremis "/var/www/siremis-4.2.0/siremis"
	<Directory "/var/www/siremis-4.2.0/siremis">
		Options Indexes FollowSymLinks MultiViews
		AllowOverride All
		Require all granted
		<FilesMatch "\.xml$">
			Require all denied
		
		<FilesMatch "\.inc$">
			Require all denied
		
	

bu kodu apachenin 000-default.conf konfigürasyon dosyası içine ekliyoruz. ben şu an debian kullanıyorum ve bu dosyanın yeri /etc/apache2/sites-available/000-default.conf şeklinde.

root@cicek:/etc/apache2/sites-available# nano /etc/apache2/sites-available/000-default.conf 

gerekli değişiklik yapıldıktan sonra apache yi yeniden başlatıyoruz.

root@cicek:/etc/apache2/sites-available# service apache2 restart 

bundan sonra gerekli erişim ve yetki ayarlamalarını yapılabilmesi için prepare ve chown parametrelerini işletiyoruz.

root@cicek:/var/www/siremis-4.2.0# make prepare
updating htaccess file...
updating app.inc file...
creating folders...
done

root@cicek:/var/www/siremis-4.2.0# make chown
changing onwner to www-data:www-data ...
chown -R www-data:www-data .

şimdi internet tarayıcımızdan http://locahost/siremis/ adresine erişim testi yapalım. erişim testi başarılı ise sıra siremis için mysql kullanıcı erişim ayarlarının yapılmasına geldi.

root@cicek:/var/www/siremis-4.2.0# mysql  -u root -p 
Enter password: 

mysql> GRANT ALL PRIVILEGES ON siremis.* TO siremis@localhost IDENTIFIED BY 'siremisrw';
Query OK, 0 rows affected (0.05 sec)

kanailio nunda tabiki mysql eklentisinin aktif edilmiş ve ayarlarının yapılmış olması gerekmektedir. eğer yok ise kuralım ve kurulum sonrası /etc/kamailio/kamctlrc dosyası üzerinde mysql aktif eder mysql ile ilgili ayarlarıda yapalım.

root@cicek:/etc/kamailio# apt-get install kamailio-mysql-modules 
root@cicek:/etc/kamailio# ls
dictionary.kamailio    kamailio-basic.cfg  kamctlrc
kamailio-advanced.cfg  kamailio.cfg        pi_framework.xml
root@cicek:/etc/kamailio# nano kamctlrc 
DBENGINE=MYSQL
DBHOST=localhost
DBNAME=kamailio
DBRWUSER="kamailio"
DBRWPW="kamailiorw"
DBROUSER="kamailioro"
DBROOTUSER="root"

sonrasında ysql veri tabanı ile ilgili işlemlerin yapılması için kamailionun kamdbctl aracını çalıştıralım

root@cicek:/etc/kamailio# kamdbctl create
MySQL password for root: 
INFO: test server charset
INFO: creating database kamailio ...
INFO: granting privileges to database kamailio ...
INFO: creating standard tables into kamailio ...
INFO: Core Kamailio tables succesfully created.
Install presence related tables? (y/n): y
INFO: creating presence tables into kamailio ...
INFO: Presence tables succesfully created.
Install tables for imc cpl siptrace domainpolicy carrierroute
		userblacklist htable purple uac pipelimit mtree sca mohqueue
		rtpproxy? (y/n): y
INFO: creating extra tables into kamailio ...
INFO: Extra tables succesfully created.
Install tables for uid_auth_db uid_avp_db uid_domain uid_gflags
		uid_uri_db? (y/n): y
INFO: creating uid tables into kamailio ...
INFO: UID tables succesfully created.
root@cicek:/etc/kamailio# 

buraya kadar sorunsuz olarak geldiyseniz sıre siremisin web arayüzünden kurulumu tamamlamaya geldi.

http://locahost/siremis/ adresinden aşagıdaki ekran görüntülerinde yer aldığı gibi gerekli verileri girerek tamamlıyoruz.

siremis1

siremis2

siremis3

siremis4

siremis5

siremis6

siremis artık kullanıma hazırdır. ancak

[{"target":"ERROR","content":"
\n[2015-07-03 10:01:48 (GMT)] An exception occurred while executing this script:
\nError message: #8192, Non-static method BizSystem::getConfiguration() should not be called statically, assuming $this from incompatible context< \/font>
\nScript name and line number of error: \/var\/www\/siremis-4.2.0\/openbiz\/bin\/data\/BizDataObj_Abstract.php:268< \/font>
\n

hatasını veya benzer hataları alacak olursanız https://github.com/asipto/siremis üzerinden en sonra halini indirerek denemenizi öneririm.

bunlardan sonra siremiz altındaki install klasörünü silmeniz önerilmektedir.

bash-completion : bash ile gelişmiş komut tamamlama

debian tabanlı dağıtımlarda bash-completion özelliği genellikle varsayılan paketler arasında yer alıyor. nedir bu bash-completion derseniz komut yorumlayıcısında her aşamada tab tuşu ile komut tamamlama özelligidir.

örnek olarak “apt-get install ” yaptığınızda paketin tam adını bilmesek bile kurulabilecek paketler listenelecektir.

yazılım hakkında detaylı bilgi almak isterseniz http://bash-completion.alioth.debian.org/ adresinden bilgi alabilirsiniz.

eğer bu paket dağıtımınızda yoksa öncelikle kurmanız

root@cicek:~#apt-get install bash-completion

ve sonrasında .bash_profile veya .bashrc gibi uygun bir dosyayı

root@cicek:~#vi .bash_profile

düzenleyerek aşagıdaki satırları eklememiz yeterli olacaktır.

if [ -f /etc/bash_completion ]; then
 . /etc/bash_completion
fi

linuxte vmware kurulumu sırasında karşılaşılan karakter kodu hatası

linux kullanıyor ve zorunlu nedenlerle windows ihtiyacınız olursa vmware elbette en iyi çözüm gibi durmaktadır.

http://www.vmware.com/go/tryworkstation-linux-64 adresinden linux için gerekli yazılımı indirdikten sonra kuruluma sıra geldiğinde

root@cicek:# ./VMware-Workstation-Full-12.1.0-3272444.x86_64.bundle 
  File "/usr/lib/vmware-installer/2.1.0/python/lib/sqlite3/__init__.py", line 0
SyntaxError: ('unknown encoding: ISO-8859-1', ('/usr/lib/vmware-installer/2.1.0/python/lib/sqlite3/__init__.py', 0, 0, None))

hatası ile karşılaşıyorsanız sizde linux unuzu Türkçe olarak yapılandırmışsınız ve bu şekilde kullanıyorsunuz demektedir. bu ve benzeri duruma aslında bir çok yazılımda karşılaşabilirsiniz. çözümü ise oldukça basit. komut yorumyacısına LANG=en eklemek.

root@cicek:# LANG=en ./VMware-Workstation-Full-12.1.0-3272444.x86_64.bundle

kişisel pcde mongodb ile çalışırken dosya boyutu sorunu

mongodb ile kişisel pc niz üzerinde çalışıyorsanız büyük veri dosyaları kimi zaman can sıkabiliyor. bunun için küçük boyutlu dosya kullanımını aktif etmeniz gerekmektedir.

root@cicek:/etc# sudo apt-get install mongodb

mongodb yi kurduktan sonra /etc/mongodb.conf dosyasına

root@cicek:/etc# nano mongodb.conf 
smallfiles=true

satırını ekleyerek mongodb durduyoruz

root@cicek:/etc# /etc/init.d/mongodb stop
[ ok ] Stopping mongodb (via systemctl): mongodb.service.

sonrasında /var/lib/mongodb/journal/* dizini altındaki dosyaları siliyoruz. ve mongodb yi yeniden başlatıyoruz. dosya boyutlarından görüleceği üzere oldukça fark mevcut.

root@cicek:/var/lib/mongodb/journal# ls -al
toplam 3145748
drwxr-xr-x 2 mongodb mongodb       4096 Ara 27 17:07 .
drwxr-xr-x 3 mongodb mongodb       4096 Ara 27 16:13 ..
-rw------- 1 mongodb mongodb 1073741824 Ara 27 17:07 prealloc.0
-rw------- 1 mongodb mongodb 1073741824 Ara 27 15:33 prealloc.1
-rw------- 1 mongodb mongodb 1073741824 Ara 27 15:33 prealloc.2
root@cicek:/var/lib/mongodb/journal# rm *
root@cicek:/var/lib/mongodb/journal# /etc/init.d/mongodb start
[ ok ] Starting mongodb (via systemctl): mongodb.service.
root@cicek:/var/lib/mongodb/journal# ls
prealloc.0
root@cicek:/var/lib/mongodb/journal# ls -al
toplam 393224
drwxr-xr-x 2 mongodb mongodb      4096 Ara 27 17:08 .
drwxr-xr-x 3 mongodb mongodb      4096 Ara 27 16:13 ..
-rw------- 1 mongodb nogroup 134217728 Ara 27 17:08 prealloc.0
-rw------- 1 mongodb nogroup 134217728 Ara 27 17:08 prealloc.1
-rw------- 1 mongodb nogroup 134217728 Ara 27 17:08 prealloc.2
Back To Top