Archive

Author Archive

Subversion sunucu kurulumu

August 23rd, 2012 No comments

Linux üzerinde kurulumdan bahsedeceğim. Öncelikle kullandığınız dağıtımın paket deposundan subversion paketini kurmalısınız. Ben debian kullandığım için

1
sudo apt-get install subversion

Kurulum tamamlandıktan sonra gerekli tüm araçlara sahip olmuş oluyoruz.

Bir depo oluşturalım.

1
svnadmin create depom

depom adli dizinde bir depo oluşturmuş olduk. Bu depo üzerinde gerekli düzenlemeleri yapalım.
depom/conf/svnserve.conf bu dosya temel ayarlarimizi yapacağımız dosya. Bu dosyayı açıp [general] başlığı altındaki ayarları düzenliyoruz. Burdaki tüm ayarlar yorum satırı haline getirişmiş, bunlardan işimize yarayanları aktif hale getirmemiz gerekiyor.

# anon-access = read

Tanımladığımız kullanıcılar dışında kalan kişilerin yetkilerini düzenlemek için kullanıyoruz. Eğer yorum satırı halinde bırakırsak tanımsız kullanıcılar depo üzerinde okuma hakkına sahip oluyorlar. Eğer bu şekilde bırakırsak okuma yapamazlar. Eğer read yerine write yazarsak depomuzda herkes okur-yazar oluyor.

# auth-access = write

Kayıtlı kullanıcıların yetkilerini burdan belirliyoruz. Yorum satırı olmaktan çıkartırsak depomuzda tanımlı kullanıcılar yazma hakkına sahip olur.

# password-db = passwd

Depoya erişim yetkisi verdiğimiz kullanıcıların kullanıcı adı ve parolaların tutulduğu yeri belirtir. Kullanıcıları tanımlamak için yorum satırı halinden çıkartıp istediğimiz yolu belirtmeliyiz, daha sonra ilgili dosyayı düzenlemeliyiz.
Dosya içeriği

[users]
askin = parolam

Parolalar şifrelenmemiş halde tutuluyor.

# authz-db = authz

Kullanıcıların izinlerini daha detaylı olarak ayarlamak istersek bu satırı yorum satırı halinden çıkartıp, istediğimiz bir yolu girmemiz gerekmekte.

# realm = My First Repository

Depomuzun adı, bu satırı yorum satırı olmaktan çıkartıp istediğimiz bir isim veriyoruz.

Tüm bunları yaptıktan sonra depomuzu yayınlayabiliriz. Bunu yapmak için svnserve adında bir programdan yararlanıyoruz.

1
/usr/bin/svnserve -d -r /home/svn/repositories --log-file /var/log/svnserve

Bu komut /home/svn/repositories dizinindeki tüm depoları yayınlar.

Depoyu chekout etmek için

1
svn checkout svn://sunucu.com/depom
Categories: Gezegen, Linux Tags: , , , ,

UDP Broadcast sunucu – istemci

August 3rd, 2012 No comments

Sunucu:

#include <stdio.h>
#include <string.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#define MY_PORT 3333
int main(int argc, char *argv[])
{
int sockfd, new_fd;
struct sockaddr_in my_addr; // hedef adres
struct sockaddr_in their_addr; // baglanti yapan adres
int sin_size, rt;
// gelen verinin tutuldugu buffer
char buf[32];
// islem yapmak icin gerekli dosya gosterici
sockfd = socket(AF_INET, SOCK_DGRAM, 0);
sin_size = sizeof(struct sockaddr_in);
// adres ile ilgili ayarlar
my_addr.sin_family = AF_INET;
my_addr.sin_port = htons(MY_PORT); // kullanilacak port
my_addr.sin_addr.s_addr = INADDR_ANY; // mevcut ip adresi
memset(&(my_addr.sin_zero), 0, 8); // geri kalani 0la
// socket ile dosyayi iliskilendir
bind(sockfd, (struct sockaddr *)&my_addr, sizeof(struct sockaddr));
while ( 1 ) {
rt = recvfrom (sockfd, buf, 12, 0, (struct sockaddr *)&their_addr, &sin_size);
if (rt > 0) {
printf ("recv: %s\n", buf);
} else if (rt < 0) {
printf("Baglanti koptu\n");
break;
}
}
close(sockfd);
return 0;
}

İstemci:

#include <stdio.h>
#include <string.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#define DEST_IP "255.255.255.255"
#define DEST_PORT 3333
int main(int argc, char *argv[])
{
int sockfd, new_fd;
struct sockaddr_in dest_addr; // hedef adres
int sin_size, rt;
sin_size = sizeof(struct sockaddr_in);
// islem yapmak icin gerekli dosya gosterici
sockfd = socket(AF_INET, SOCK_DGRAM, 0);
// adres ile ilgili ayarlar
dest_addr.sin_family = AF_INET;
dest_addr.sin_port = htons(DEST_PORT);
dest_addr.sin_addr.s_addr = inet_addr(DEST_IP);
memset(&(dest_addr.sin_zero), 0, 8); // geri kalani 0 la
// Broadcast icin gerekli yetkiyi al
int flag = 1;
if (setsockopt (sockfd, SOL_SOCKET, SO_BROADCAST, &flag, sizeof(flag)) < 0)
perror("setsockopt");
// mesaji gonder
rt = sendto (sockfd, "slm asl plz", 12, 0, (const struct sockaddr *)&dest_addr, sin_size);
if ( rt < 0 )
perror("Hata: ");
// socketi kapat
close(sockfd);
return 0;
}

Mysql Kullanıcı – Database Oluşturma

July 11th, 2012 No comments

Herzaman unutup google’a bakacağıma buraya bakayım daha kolay 🙂

Önce mysql sunucusuna bağlanalım:
mysql -u root -p

Kullanıcı oluşturma:
create user kullaniciadi;

Veritabanı oluşturma:

create database veritabaniadi;

Kullanıcı yetkilerini verme:
Tüm yetkiler:

grant all on veritabaniadi.* to kullaniciadi@localhost identified by 'parola';

Sadece okuma (select):

grant select on veritabaniadi.* to kullaniciadi@localhost;

Yetkiler hemen devreye girsin:
flush privileges;

Categories: Gezegen, Linux Tags: , , , , , ,

FSF #10889

June 22nd, 2012 No comments

[FSF Associate Member]