Jun 3, 2010 - 리눅스 파일권한 명령어

리눅스 파일권한 상식

ls -al 로 파일의 자세한 정보를 볼 수 있다

참고 : 맨앞에 문자가 - 일 경우 파일, d 이면 디렉토리, l 이면 링크를 나타냄 )

r : Read = 4 w : Write = 2 x : eXcute = 1

-rwxrwxrwx ( 777 ) -r–r–r– ( 444 ) -rwx–x–x ( 711 )

2~4필드 : 소유주 ( User ) 권한 5~7필드 : 그룹 ( Group ) 권한 8~10필드 : 나머지 ( Others ) 권한

  1. chmod : 파일, 디렉토리 권한 수정
    • ex) chmod 755 a_file
      ( 소유자에겐 7(rwx), 그룹과 나머지에겐 5(r-x) 권한부여 ) chmod o+rw a_file
      ( others에게 읽기, 쓰기 권한 부여 ) chmod 700 *
      ( 현재 위치의 모든 파일과 폴더 권한 수정 ) chmod -R 755 www
      ( www디렉토리 내의 모든 파일과 디렉토리의 권한 수정 )
  2. umask : 파일이 만들어질때 허가권 기본값
    • ex) # umask 022
      -> chmod와 반대개념 777에서 뺀다. 022일 경우 chmod 755 와 같음,
  3. chown : 파일 소유자, 소유그룹 수정
    • ex) chown bible file1
      ( file1 파일의 소유자를 bible로 수정 ) chown bible:bible2 file2
      ( file2 파일의 소유자를 bible로 그룹을 bible2로 수정 ) chown -cR nobody:nobody dirl
      ( dirl 폴더와 그안의 모든 파일,디렉토리의 소유자,소유그룹 변경 ) chown -R bible:webhost uploads –from=nobody:nobody
      ( uploads디렉토리 내의 파일중 소유자가 nobody이고 소유그룹이 nobody로 되어 있는 파일의 소유자를 bible로 변경하고 소유그룹을 webhost로 변경 )

참조


May 19, 2010 - FLASHBACK TABLE

FLASHBACK TABLE 테이블명 TO BEFORE DROP;

DROP 해서 날려버린 테이블을 복구하려고 할때 사용됩니다.

1. 쓰레기통 비워져있으면,
 -> 그날로 짐싸야합니다.

2. 10G 이하면,
 -> 10G 이상부터  휴지통이 있으므로, 그냥 짐싸야합니다.

3. 동일 Table 이 있으면,
 -> 복구가 안됩니다. 짐쌉시다.

아차 3번일 경우에는 짐싸기 전에 확인합시다.

새로운 이름으로 변경하여 복구 후 rename 을 해줍시다.

FLASHBACK TABLE 테이블명 TO BEFORE DROP RENAME TO 변경 테이블 명;

원래 테이블명과 동일한 테이블이 존재할 경우에 제약조건만 없다면,

INSERT INTO DEPT SELECT * FROM "BIN$W7Q+R0EGy9rgQAB/AQA02Q==$0";

위와같은 명령어로 복구가 가능합니다.


참조


Jan 27, 2010 - 불필요한 객체 생성을 피하는 방법

극단적인 ex)

String s= new String("테스트");
String s = "테스트";

기능적으로 동일한 객체를, 필요할 때마다 매번 새로 생성하기보다는 하나의 객체를 재사용하는 것이 좋을 때가 많습니다.
재사용을 하면 객체 생성에 소요되는 비용(시간과 자원)이 절감되므로 실행 속도가 더 빨라지고 코드도 보기 좋게 작성됩니다.
불변(immutable) 객체는 항상 재사용이 가능합니다.

new String 을 하게 되면 매번 새로운 String 인스턴스를 생성하게 됩니다.
한마디로 불필요한 객체를 만들게 된다는 말입니다.

매번 이 생성자를 통해 생성하게 되면 기능 상으로 동일한 객체가 계속 별개로 생성하게 되기 때문에, 만일 반복문이나 자주 호출되는 메소드 안에서 이런 문장이 실행된다면,
동일한 String 인스턴스를 쓸데없이 생성하게 됩니다.

String 의 경우 동일한 문자열 리터럴(literal)을 갖도록 권장하고 있습니다.