³»ÀÏÀº ¼Ò¸¸ÀÔ´Ï´Ù.sun's longitude:58 33 58 
¡¤ ÀÚÀ¯°Ô½ÃÆÇ ¡¤ ¹¯°í´äÇϱ⠡¤ ¾ËÆĹ®¼­ ¡¤ RPMS list
¡¤ »ç¿ëÀÚ¹®¼­ ¡¤ ÆÁ/FAQ¸ðÀ½ ¡¤ ¸®´ª½ºLinks ¡¤ ÀÚ·á½Ç
¡¤ ¼­¹öÁ¤º¸ ¡¤ ¿î¿µÀÚ ¡¤ Books/FAQ ¡¤ FreeBSD
 
/board/read.php:¼Ò½ºº¸±â   
 

Áú¹®°ú ´äº¯ °Ô½ÃÆÇÀÔ´Ï´Ù.

ÇöÀç ½Ç½Ã°£À¸·Î ÀÌ°÷ ¼­¹öÀÇ ¼³Á¤ÆÄÀÏ(¸î°³)¸¦ º¸¿©ÁÖ°í ÀÖ½À´Ï´Ù.
¼­¹öÀÇ ¼³Á¤³»¿ë¿¡ °üÇÑ Áú¹®Àº ¸ÕÀú ÀÌ°÷ ¼­¹öÀÇ ¼³Á¤³»¿ëÀ» Âü°íÇÏ½Ã±æ ¹Ù¶ø´Ï´Ù.

[*** ¾²±â ±ÝÁö´Ü¾î ÆÐÅÏ ***]
±Û º»¹® Áß°£¿¡ ¾÷·ÎµåÇÒ À̹ÌÁö¸¦ Ãß°¡ÇÏ´Â ¹æ¹ý : @@À̹ÌÁöÀ̸§@@
ex) @@foo.gif@@
1677 ¹ø ±ÛÀÇ ´äÀå±Û: Re: c·Î ¸¸µç ¹é¾÷½ºÅ©¸³Æ®..
±Û¾´ÀÌ: »êÀÌ [ȨÆäÀÌÁö] ±Û¾´³¯: 2003³â 09¿ù 25ÀÏ 18:08:23 ¸ñ(Àú³á) Á¶È¸: 736

Á¦°¡ C ÇÁ·Î±×·¥ ¼öÁØÀÌ ±øÅëÀÔ´Ï´Ù.

¾Æ·¡..

time(&today_second);
today = gmtime(&today_second);

À̺κÐÀ»

time(&today_second);
today_second += 32400;
today = gmtime(&today_second);

ÀÌ·¸°Ô 9½Ã°£À» ´õÇØ¾ß KST ½Ã°£À¸·Î µË´Ï´Ù.
CÀÇ unix timestamp ¾Æ¸¶ GMT ±âÁØÀÏ°Ì´Ï´Ù.

9½Ã°£À» ´õÇÏÁö ¾Ê°í,
¾Æ¸¶ »õº®¿¡ crond À¸·Î µ¹¸®¸é Ç×»ó ÇÏ·çÀü³¯·Î ³¯Â¥°¡
ÂïÈú°Ì´Ï´Ù.


[ÇϾáÇÇ]´ÔÀÌ ³²±â½Å ±Û:

>¾È³çÇϼ¼¿ä^^
>»êÀÌ´Ô ¾Æ·¡ ½ºÅ©¸³Æ®Á» ºÁÁÖ¼¼¿ä..
>¾Æ·¡´ë·Î ÄÄÆÄÀÏÇؼ­ ¹é¾÷½ºÅ©¸³Æ®¸¦ µ¹¸®´Âµ¥..
>³¯Â¥º°·Î ¹é¾÷ÀÌ µÇÁö ¾Ê°í óÀ½¿¡ »ý¼ºÇÑ Æú´õ¸¸ °è¼Ó ã¾Æ »ý¼º½ÃµµÇÏ´Ù°¡
½ÇÆÐÇÕ´Ï´Ù.
>¿¹¸¦µé¸é 2003³â 09¿ù 23ÀÏ¿¡ ¹é¾÷µÈ Æú´õ°¡ ÀÖ´Ù¸é...
>±× ´ÙÀ½³¯ºÎÅÏ °è¼Ó 2003-09-23 Æú´õ¸¸ »ý¼ºÇÏ·Á°í ÇÏÁÒ.
>µµ´ëü ÀÌÀ¯°¡ ¹»±î¿ä...
>Áö±ÝÀº Å©·ÐÀ¸·Î ¹é¾÷½Ã°£ 5ºÐÀü¿¡ Àü³¯ Æú´õ¸¦ »èÁ¦ÇØÁÖ´Â ¹æ½ÄÀ¸·Î µ¹¸®°í
Àְŵç¿ä..
>ÈÄ¿ì¿ò.. ºÒÆíÇϱä Çϳ׿ä....
>¾Æ·¡´Â ¼Ò½º ÀÔ´Ï´Ù.
>ÆÄÀϵµ ¸µÅ©½ÃÄÑ µÎ°Ú½À´Ï´Ù.
>http://www.inet1004.net/backup.c
>-----------------------------------------------------------------------------------
---------
>#include <stdio.h>
>#include <time.h>
>#include <dirent.h>
>#include <string.h>
>
>/*---------------- »ç¿ëÀÚ°¡ °íÃÄ¾ß ÇÒ ºÎºÐ 
-------------------------------------------------
>*/
>
>const char        *BACKUP_DIR        = "/backup";   //¹é¾÷ÆÄÀÏÀÌ ÀúÀåµÉ
Æú´õÀ» Àý´ë°æ·Î·Î ÁöÁ¤ÇØ 
>ÁÝ´Ï´Ù.
>const char        *HOME_DIR        = "/home";          //¹é¾÷ÇÒ È¨Æú´õ¸¦
ÁöÁ¤ÇØ ÁÝ´Ï´Ù.
>const int        EXPIRE_DAY        = 3;                     //¸îÀÏÀÌ Áö³ª¸é
»èÁ¦ÇÒ°ÇÁö¸¦ ÁöÁ¤ÇÕ´Ï´Ù.
>
>/*---------------------------------------------------------------------------------
---------
>*/
>
>/*        php ÀÇ mktime °ú °°Àº ÀÏÀ» ÇÏ´Â Æã¼Ç.      */
>time_t SFmktime(int hour, int minute, int second, int month, int day, int
year){
>                struct tm *change_time;
>                time_t this_time;
>                time(&this_time);
>                change_time = gmtime(&this_time);
>                
>                year = year - 1900;
>                month = month - 1;
>
>                change_time->tm_sec                = second;
>                change_time->tm_min                = minute;
>                change_time->tm_hour        = hour;
>                change_time->tm_mday        = day;
>                change_time->tm_mon                = month;
>                change_time->tm_year        = year;
>                //printf("%02d-%02d-%02d\n",change_time->tm_year +
1900,change_time->tm_mon 
>+1,change_time->tm_mday);
>                return mktime(change_time);
>
>}
>
>/* main  --------------------------------------------*/
>int main(){
>                //time_t now;
>                time_t today_second; //¿À´ÃÀÇ ½Ã°£À» ÃÊ·Î ÀúÀå¹ÞÀ» º¯¼ö
>                time_t pastday; // µð·ºÅ丮¸ñ·ÏÀ» ³¯Â¥·Î º¯È¯ÇÑ ÈÄ ÀúÀå¹ÞÀ» º¯¼ö,
°è¼Ó ¹Ù²ñ
>                struct tm *today;
>
>                DIR *directory; // µð·ºÅ丮 ÀúÀå°ø°£.
>                struct dirent *dir_info; //µð·ºÅ丮 À̸§À» ÀúÀåÇÒ
±¸Á¶Ã¼
>                char *remove_dirname;
>                char *create_dirname;
>                char *cmds;
>                
>                char sep[] = "-"; // ³¯Â¥ ÀÚ¸¦ ±¸ºÐÀÚ.
>                char *pp; // Àӽ÷ΠÀß·ÁÁø ³¯Â¥.
>                int  i, expire_second;
>                char *year, *month, *day;
>                char days[11];
>
>                // ¹é¾÷µð·ºÅ丮À̸§À» ÀúÀåÇÒ ¸Þ¸ð¸®¸¦ ÃʱâÈ­ ÇÑ´Ù.
>                remove_dirname = (char*)malloc(40);
>                create_dirname = (char*)malloc(40);
>                cmds           = (char*)malloc(1024);
>                // ½Ã°£ ±¸Á¶Ã¼¸¦ ÃʱâÈ­ ½ÃÅ°°í
>                time(&today_second);
>                today = gmtime(&today_second);
>                
>                // ¿À´ÃÀÏÀÚ¸¦ ÃʷΠȯ»êÇÏ¿© ÀúÀåÇÑ´Ù.
>                // today_second 
>                today_second = SFmktime(0,0,0,today->tm_mon +
1,today->tm_mday,today-
>>tm_year + 1900);
>               
printf("=================================================================\n&quo
t;);
>                printf(" %d-%d-%d ÀÏÀÚ ¹é¾÷½ºÅ©¸³Æ® ÀÛµ¿
Á¤º¸ÀÔ´Ï´Ù.\n",today-

>>tm_year+1900,today->tm_mon+1,today->tm_mday);
>               
printf("=================================================================\n&quo
t;);
>                //printf("%d\n",today_second);
>
>                // ¿ì¼± ¹é¾÷ÇÒ µð·ºÅ丮³»¿¡ ÀÖ´Â Æú´õÀÇ À̸§À» ºÒ·¯ directory ¿¡
ÀúÀåÇÑ´Ù.
>                directory = opendir(BACKUP_DIR);
>                
>                //¹è¿­ÀÌ Á¾·áµÉ¶§±îÁö ·çÇÁ¸¦ µ¹¸°´Ù. µð·ºÅ丮¸íÀ» dir_info ±¸Á¶Ã¼¿¡
ÀúÀåÇÑ´Ù.
>                while((dir_info = readdir(directory)) != NULL){
>                        // ¸¸¾à µð·ºÅ丮 À̸§ÀÌ . or .. or logs ¶ó¸é
³Ñ¾î°£´Ù.
>                        if(strcmp(".",dir_info->d_name) == 0 ||
strcmp("..",dir_info->d_name) == 0 || 
>strcmp("logs",dir_info->d_name) == 0){
>                                continue;
>                        }
>                        // µð·ºÅ丮¸íÀ» "-" ±¸ºÐÀÚ·Î À߶󳻼­ Ãʸ¦
»Ì¾Æ³½ÈÄ ¿À´ÃÀÇ ÃÊ¿Í ºñ±³ÇÑ´Ù.
>                        strncpy(days,dir_info->d_name,11);
>                        pp = strtok(days,sep);
>                        i =0;
>                        while( pp != NULL){
>                                if(i == 0)year = pp;
>                                if(i == 1)month = pp;
>                                if(i == 2)day = pp;
>                                pp = strtok(NULL,sep);
>                                i++;
>                        }
>                        // ³¯Â¥ Çü½Ä¿¡ ¸ÂÁö ¾Ê´Â Æú´õ¸íÀÌ ³ª¿À¸é ´ÙÀ½ Æú´õÈ®ÀÎÀ¸·Î
³Ñ¾î°£´Ù.
>                        if(atoi(year) == 0 || atoi(month) == 0 || atoi(day) ==
0){
>                                printf("¹é¾÷Çü½Ä¿¡
 ¸ÂÁö¾Ê´Â Æú´õ¸í [%s] ÀÔ´Ï´Ù. ¹«½ÃÇÕ´Ï´Ù.\n",dir_info-

>>d_name);
>                               
printf("-----------------------------------------------------\n");
>                                continue;
>                        }
>
>                        printf("%02d-%02d-%02d ÀÏÀÚÀÇ Æú´õ°¡
Á¸ÀçÇÕ´Ï´Ù\n",atoi(year),atoi(month),atoi

>(day));
>                        // µð·ºÅ丮ÀÇ ³¯Â¥¸¦ ÃÊ·Î º¯È¯ÇÏ¿© ÀúÀåµÊ.
>                        pastday =
SFmktime(0,0,0,atoi(month),atoi(day),atoi(year));
>                        expire_second = 86400 * EXPIRE_DAY;
>
>                        //printf("%d - %d = %d\n",today_second, pastday,
today_second-pastday);
>                        if((today_second - pastday) > expire_second){
>                                
>                                printf("»èÁ¦´ë»óÆú´õ:[%s]
        %dÀÏ °æ°ú\n",dir_info->d_name,

>(today_second-pastday)/86400);                        
>                                //»èÁ¦ÀÛ¾÷À» ÇÑ´Ù.
>                               
sprintf(remove_dirname,"%s/%s",BACKUP_DIR,dir_info->d_name);
>                                printf(" %s ¸¦
»èÁ¦ÇÕ´Ï´Ù...\n",remove_dirname);

>                                if(rmdir(remove_dirname)){
>                                                printf("»èÁ¦½ÇÆÐ!
 ¿¡·¯¸Þ¼¼Áö¸¦ È®ÀÎÇÏ¿© ÁֽʽÿÀ\n");
>                                               
printf("-----------------------------------------------------
>\n");
>                                                exit();
>                                }
>                               
printf("-----------------------------------------------------\n");
>
>                        }// end if
>                }
>        closedir(directory);
>        
>        // ºÒ·¯¿Â µð·ºÅ丮¸íÀ» ÇÑÁÙ¾¿ ÀúÀåÇÑ ÈÄ ³âµµ¿Í ¿ù ÀÏ·Î ³ª´©¾î
ÀúÀåÇÑ´Ù.
>       
sprintf(create_dirname,"%s/%02d-%02d-%02d",BACKUP_DIR,today->tm_year+1900,
today-
>>tm_mon+1,today->tm_mday);
>        printf("Æú´õ %s ¸¦ »ý¼ºÇÕ´Ï´Ù..\n",create_dirname);

>        if(mkdir(create_dirname,0700)){
>                printf("»ý¼º½ÇÆÐ!
 ¿¡·¯¸Þ¼¼Áö¸¦ È®ÀÎÇÏ¿©ÁֽʽÿÀ\n");

>                exit();
>        }
>        //¹é¾÷Æú´õ ¸í·É ÀúÀå
>        
>        sprintf(cmds,"tar cvfpz %s/%02d-%02d-%02d/usr.local.tar.gz /usr/local/

>>> /var/log/backup.log 2>>
/var/log/backup.err.log",BACKUP_DIR,today->tm_year+1900,today-
>>tm_mon+1,today->tm_mday);
>        printf("%s\n",cmds);
>        system(cmds);
>        sprintf(cmds,"tar cvfpz %s/%02d-%02d-%02d/etc.tar.gz /etc >>
/var/log/backup.log 
>2>>
/var/log/backup.err.log",BACKUP_DIR,today->tm_year+1900,today->tm_mon+1,today-
>>tm_mday);
>        printf("%s\n",cmds);
>        system(cmds);
>        sprintf(cmds,"tar cvfpz %s/%02d-%02d-%02d/var.tar.gz /var >>
/var/log/backup.log 
>2>>
/var/log/backup.err.log",BACKUP_DIR,today->tm_year+1900,today->tm_mon+1,today-
>>tm_mday);
>        printf("%s\n",cmds);
>        system(cmds);
>        sprintf(cmds,"tar cvfpz %s/%02d-%02d-%02d/db.tar.gz /db >>
/var/log/backup.log 
>2>>
/var/log/backup.err.log",BACKUP_DIR,today->tm_year+1900,today->tm_mon+1,today-
>>tm_mday);
>        printf("%s\n",cmds);
>        system(cmds);
>        sprintf(cmds,"tar cvfpz %s/%02d-%02d-%02d/sys.tar.gz /sys >>
/var/log/backup.log 
>2>>
/var/log/backup.err.log",BACKUP_DIR,today->tm_year+1900,today->tm_mon+1,today-
>>tm_mday);
>        printf("%s\n",cmds);
>        system(cmds);
>        
>        //home Æú´õÀÇ ¸ñ·ÏÀ» ºÒ·¯¿Í ÀúÀåÇÑ´Ù.
>        directory = opendir(HOME_DIR);
>                
>        //¹è¿­ÀÌ Á¾·áµÉ¶§±îÁö ·çÇÁ¸¦ µ¹¸°´Ù. µð·ºÅ丮¸íÀ» dir_info ±¸Á¶Ã¼¿¡
ÀúÀåÇÑ´Ù.
>       
sprintf(create_dirname,"%s/%02d-%02d-%02d/home",BACKUP_DIR,today-
>>tm_year+1900,today->tm_mon+1,today->tm_mday);
>        if(mkdir(create_dirname,0700)){
>                printf("»ý¼º½ÇÆÐ!
 ¿¡·¯¸Þ¼¼Áö¸¦ È®ÀÎÇÏ¿©ÁֽʽÿÀ\n");

>                exit();
>        }
>        while((dir_info = readdir(directory)) != NULL){
>                // ¸¸¾à µð·ºÅ丮 À̸§ÀÌ . or .. or logs ¶ó¸é ³Ñ¾î°£´Ù.
>                if(strcmp(".",dir_info->d_name) == 0 ||
strcmp("..",dir_info->d_name) == 0 || strcmp
>("logs",dir_info->d_name) == 0){
>                        continue;
>                }
>                sprintf(cmds,"tar cvfpz %s/%02d-%02d-%02d/home/%s.tar.gz %s/%s

>>> /var/log/backup.log 2>>
/var/log/backup.err.log",BACKUP_DIR,today->tm_year+1900,today-
>>tm_mon+1,today->tm_mday,dir_info->d_name,HOME_DIR,dir_info->d_name);
>                printf("%s\n",cmds);
>                system(cmds);
>        }//end of while
>
>        sprintf(cmds,"chmod -R 0600
%s/%02d-%02d-%02d",BACKUP_DIR,today-
>>tm_year+1900,today->tm_mon+1,today->tm_mday);
>        system(cmds);
>        system("echo \"¹é¾÷¿Ï·á\"
 >> /var/log/backup.log");
>} 

========================================

 
ÀÌÀü±Û : c·Î ¸¸µç ¹é¾÷½ºÅ©¸³Æ®..
´ÙÀ½±Û : À̹ÌÁö¸µÅ© ¹æÁö ½ºÅ©¸³Æ® ¹®ÀÇ  
 from 61.254.75.40
JS(Redhands)Board 0.4 +@

c·Î ¸¸µç ¹é¾÷½ºÅ©¸³Æ®.. À̹ÌÁö¸µÅ© ¹æÁö ½ºÅ©¸³Æ® ¹®ÀÇ
Àμâ¿ë 


apache lighttpd linuxchannel.net 
Copyright 1997-2024. linuxchannel.net. All rights reserved.

Page loading: 0.03(server) + (network) + (browser) seconds