본문 바로가기

os

(70)
[홈페이지 만들기 1 ] html php mysql 연동하기 네이버와 구글을 뒤져봐도 왜케 기초부터 차근차근 설명한 곳이 없어서 (딱한군데 내가 배우고 있는 교수님 홈피에서 모든걸 따왔다 - 허락 맡았어요!) 내꺼에다 차근차근 올려야 겠다는 마음이 일어나는구나!!(사실 다음주 까지 홈피 만들라고 해서;;ㅋㅋ 보고서를 여기다가 작성하는거지뭐~) 일단은 mysql 과 html 의 연동이 잘되나를 확인 하기 위해서!! 간략하게만 만들어보겠다! - 설치는 나의 블로그에 있는 mysql 설치와 동일 한글이 깨질경우 도 블로그에 기제되어있다. - 다른 아이디의 권한이 않되서 root권한으로 한것을 밝힙니다.(다른분들은 성공하시길) - 모든 작업은 fedora10 버전 콘솔에서 햇음을 밝힙니다. (window용 아닙니다.) 1 .먼저 mysql에 databases 와 tabl..
500 OOPS: could not open chroot() list file:/etc/vsftpd/chroot_list -_-익명으론 들어가지는데 업로드가 안된다!! 전엔 어떻게 됐찌?-_-? 일반 사용자로 권한을 줬는데도 안되고.. vi /etc/vsftpd.conf 에서 chroot_list_file=/etc/csftpd.chroot_list 의 주석을 제거하고 들어가보면..-_- 500 OOPS: could not open chroot() list file:/etc/vsftpd/chroot_list 어쩌라고!! 그냥 저 파일을 만들어 주면 된다. vi /etc/vsftpd/chroot_list 해주고~ 해당 사용자 등록만 해주면 된다~ 근데..-_- 왜 디렉토리 경로가 유저 경로로 되네.. 뭐..되니까 상관은 없는데 말야..쩝..
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' mysql 과 php 소켓 간의 연결이 이루어 지지 않아 나는 에러 ln -s /tmp/mysql.sock /var/lib/mysql 하고서~ service mysqld restart 해보면 잘 들어가진다~
getuid() 1 사용법 #include #include uid_t getuid(void); uid_t geteuid(void); 2 설명getuid()는 현재 프로세스의 실제 유저 아이디를 얻어온다. geteuid()는 현재 프로세스의 유효 유저 아이디(effective user ID)를 언어온다. 실제 유저 아이디는 프로세스를 호출한 유저의 아이디이다. 유효 유저 아이디는 실행된 파일에 설졍된 SID를 가지는 아이디이다. 3 반환값유저의 ID를 되돌려준다. 4 에러이 함수들은 언제나 성공한다. 에러 없음~ 5 예제 #include #include #include #include #include int main(){ struct passwd *lpwd; printf("UID : %d\n",getuid()); prin..
access() 1 사용법 #include int access(const char *pathname, int mode); 2 설명 access 파일의 사용자 권한을 체크한다. 첫 번째 인자는 파일이나 디렉토리의 전체 이름이며, 두 번째 인자는 체크할 내용을 지정하게 된다. 만일 경로명이 심볼릭링크라면 링크 테스트로 원본 파일을 체크하게 된다. mode 는 하나이상의 R_OK , W_OK , X_OK and F_OK로 구성된 허상(mask) 이다. R_OK, W_OK and X_OK 는 각각 파일의 존재, 읽기, 쓰기, 실행권한 체크를 요구한다. F_OK는 단지 파일의 존재유무의 체크만을 요구한다. 테스트는 파일이 위치하고 있는 디렉토리의 권한에 의존하고, 디렉토리와 심 볼릭 링크 파일도 같은 이치이다. 커널에의해 실행될..
unlink() 1 함수 원형 #include int unlink(const char *pathname); 2 동작 unlink 는 파일 시스템에서 pathname 이름을 가진 파일을 지운다. 만약 지우려는 파일이 파일에 대한 가장최근연결(링크가 오직 하나라면) 이며, 다른 어떠한 프로세스도 이 파일을 열고 있지 않다면, 파일은 지워지고, 파일이 사용한 공간은 사용가능하도록 파일시스템에 되돌려준다. 만약 지우려는 파일의 가장 최근 연결된 파일이지만, 이 파일을 다른 프로세스가 열고 있다면, 다른 프로세스가 이 파일을 닫을때까지 파일은 존재한체로 남게 되다. 만약 pathname이 심볼릭 링크파일이라면 연결은 제거된다. 3 return 성공할경우 0을 실패했을경우에는 -1을 반환하며, 적당한 errno 값을 설정한다. 4..
Race Condition Study on Race Condition---------------- 1. 머리말 유닉스는 멀티 유저를 지향한 매우 훌륭한 시스템이다. 여러 사람으로 하여금 정보를 공유할 수 있도록 잘 만들어져 있다. 그러면, 개인의 Privacy는 어떤 식으로 유지가 되는 것일까? 그것은 Permission, 그리고 password 등으로 가능하도록 구현해 놓았다. 그리고, 시스템 관리를 위해서 Root라는 superuser를 두어서 어떤 일이든 가능한 위치에 놓았다. 초기에 유닉스가 나타난 당시, 사용하는 유저가 그리 많지 않았고, 또한 흑심을 품은 해커도 별로 나타나지 않았으므로, 보안에 관한 관심이 별로 없었다. 그러나, 요즈음의 경우 사용자 편의를 위해 짜여진 프로그램이 거꾸로 시스템을 공격하는 무기고가 되고..
fork() 함수에 대해서.. Race Condition 문서를 읽으면 어김없이 나올수 밖에 없는 함수. 헤더 unistd.h 형태 pid_t fork(void); 반환 pid_t 실행에 실패하면 -1 을 반환. 부모에게는 새로 생성된 자식 프로세스 PID가 반환 되며, 자식 프로세스에는 0이 반환됩니다. fork()함수에 의해서 생성된 프로세서는 부모의 모든 값을 그대로 이어 받지만 프로세서 아이 디만이 틀릴뿐이다. fork()함수는 0으로 자식프로세서에게 아이디를 부여한다. 그러면 첫번째 자식 프로세서는 0이면 두번째 자식은 몇이 올것인가? 라는 문제의 식이다. 간단하게 프로그램을 짜보면 과연 결과값이 어떻게 나올것인지 곰곰히 생각해봐야한다.(처음이니까~) 결과가 어떠한가!! 처음엔 부모 프로세서가 다 돌고 두번째로 생성된 프로세..