2021. 10. 7. 19:21

리눅스에서 tmp 폴더에 더미 파일이 많이 쌓여서, 몇일 지난 파일은 자동으로 삭제하고 싶을 때 

 

 

1. 먼저 날짜 몇일 이상 지난 파일 찾기

 

> find 폴더 -name 파일명 -mtime +일수

> find /tmp/ -name '*.tar' -mtime +30

 

이렇게 쓰면 31일 지난 파일 목록이 뜬다.

쓰는 숫자에 +1 계산해야된다.

 

2. 삭제하기 

> find /tmp/ -name '*.tar' -mtime +30 -delete

 

delete 옵션을 사용하면 31일지난 파일은 삭제된다. 

 

 

3. 쉘 스크립트 만들기

> vi test.sh

를 열고 아래처럼 작성한다.

#!/bin/sh

find /tmp/ -mtime +30 -delete

저장하고 나가기 (:wq)

tmp 파일의 모든파일중 31일이 지난 파일은 삭제한다.

 

실행권한주기,

> chmod 755 test.sh

 

 

4. 스케쥴 등록하기(crontab)

>crontab -e

30 00 * * * /tmp/test.sh

 저장후 나가기(:wq)

 

매일 00:30분에 위 쉘를 실행함.

 

#적용확인하는법

현재 디렉토리의 하위 파일개수 세기

> find . -type f | wc -l

Posted by Tyson
2021. 8. 24. 22:01

서버에서 라라벨 소스 가져와서, 로컬에서 작업하는데,

 

로그인 후에...계속,  토큰이랑, 세션 정보가 쿠키에 저장이 안되서....

 

이것저것 다해보다가...결국 보니까..

 

.env 파일에,

SESSION_DOMAIN 을 로컬호스트로 바꿔줬어야 한다.

아마 로그인할때 생성하는 토큰이 도메인을 확인하는거였나 보다....

 

기존에  아래 두개에 써있던 도메인을 지우고, 로컬호스트 ip로 적어주니까, 로그인이 된다.

SESSION_DOMAIN=127.0.0.1

SANCTUM_STATEFUL_DOMAINS=127.0.0.1

 

'컴퓨터 > Laravel(라라벨)' 카테고리의 다른 글

composer install 토큰 에러 (could not fetch [repository])  (0) 2023.07.25
라라벨 419 에러  (0) 2021.08.24
라라벨 캐쉬 지우기  (0) 2021.08.24
Posted by Tyson
2021. 8. 24. 18:34

인터넷에 맥에 오라클 12.2에 대한 설명은 많은데, 그 이상은 잘 없다.

오라글 버전별 지원 OS

12.2 :  High Sierra, Sierra and El Capitan

18.1 : Mojave and High Sierra

19.8 : High Sierra, Mojave, Catalina, Big Sur

까지 지원이다.

난 19.8를 설치해야 한다.ㅠㅠ

 

 

먼저 아래 링크로 들어가서, 19.8를 다운 받는다.

https://www.oracle.com/database/technologies/instant-client/macos-intel-x86-downloads.html

 

 

여기보면, zip, dmg 있는데, dmg도 결국은 파일들 있는거고, 그거를 download 폴더에 압축을 풀어주는것만 한다...

 

그냥 zip파일로 받고 클릭해서 압축을 푼다.

 

 

그리고, oci8를 위해서는 sdk도 받아야한다.

 

 

sdk에 다 포함되어 있는게, 아니고, 

 

추가적인 파일만 있으므로, 

 

둘 다 받아서 클릭하면, 

 

instantclient_19_8

이라는 폴더가 생성이 되고,

sdk 는 sdk란 폴더가 생성이 된다.

 

 

 

둘다 클릭하면, 다른 이름으로 두개 폴더가 생기는데, 

"instantclient_19_8 2" 폴더에 있는거를 

"instantclient_19_8" 폴더로 다 옮겨준다.

 

베이직은 

 

이런 파일들이 있고,

sdk  는 이런 파일들이 있는데, 

sdk 폴더를 instantclien_19폴더에  아래처럼 복사해 준다.

이렇게 하는 이유는 저 폴더를 전체 다 이동시킬거다.

 

 

 

 

 

그리고,  oci8를 아래 에서 다운 받는다.

http://pecl.php.net/package/oci8

 

php 버전이 7.0인경우, 

2.2.0 으로 다운 받아야 된다. 

 

처음에 3.0으로 받았다가.... 지원이 안되서 다시 작업했다.

 

tgz 파일로 다운받고, 압축 풀면 아래처럼 파일이 있는데,

xml파일은 상관없고, oci8-2.2.0 폴더도 그냥 "instantclient_19_8"폴더에 넣어준다.

 

자, 이제 부터 시작이다. 

/usr/local/밑에 폴더를 생성해야한다.

우리는 

/usr/local/oracle/instantclient_19_8로 하겠다.

 

먼저 터미널을 열고, 

>cd /usr/local

로 이동한다음. 

> open . 

를 치면, 이 폴더가 파인더에서 열린다.

(파인더에서 바로 가는 방법도 있는데, 좀 복잡하므로, 이 방법으로 한다.)

 

local 폴더 안에 oracle 폴더를 만들어 주고, 

그 안에, 아까 합쳐 놓은 instantclient_19_8 를 넣어준다.

 

그리고, 

다시 터미널에서 

그리고, 심볼릭 링크를 만들어줘서, 다른데서도 /usr/local/oracle/instantclient_19_8 로  접속해서 사용할 수 있게 해야한다.

 

> sudo ln -s /usr/local/oracle/instantclient_19_8/*.dylib /usr/local/lib/

*.dylib 파일들 전부를 /usr/local/lib에 바로가기를 만들어준거다.

 

 

< PHP OCI8 설치하기>

아까 넣어놓은 oci폴더로 이동한다.

> cd /usr/local/oracle/instantclient_19_8/oci8-2.2.0

 

phpize 를 실행해야하므로, autoconf를 설치한다.

>brew install autoconf

>sudo phpize

 

configure 팡리이 생성이 되면,

$> ./configure --with-oci8=instantclient,/usr/local/oracle/instantclient_19_8
$> make
$> make install

 

configure 는 설정(폴더위치등을 설정)

make 컴파일

make install 은 컴파일된거를 설치이다.

 

그리고, php.ini 에 extension=oci8.so 를  추가해줘야한다.

php.ini 위치는 터미널에서

>  php --ini 

를  치면, 아래처럼 나온다. 

Configuration File (php.ini) Path: /usr/local/etc/php/7.4
Loaded Configuration File:         /usr/local/etc/php/7.4/php.ini
Scan for additional .ini files in: /usr/local/etc/php/7.4/conf.d

 

나는 /usr/local/etc/php/7.4/php.ini 에 있으므로,

> vi /usr/local/etc/php/7.4/php.ini 로 에디터로 들어간다음에,

 

extension=oci8.so

를 써주고, 저장하고 나온다.

 

 

그리고, 아파치 재실행

 

접속확인은 

> php -r "oci_connect();"

치면 된다.

 

설치가 안됬으면, 에러가 뜨고, 연동 되었으면, 다른게 뜬다.

(warning)은 대체적으로 괜찮다.

 

 

 


참고 URL: https://blog.edit.kr/entry/High-Sierra에-PHP-Oracle-oci8-연결하기 [소금인형 - SW개발자?]

https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=spring1a&logNo=221600292690 

 

Posted by Tyson