2023-03-11

Aliexpress’s cashback program - invitation-only promotion code 2023

Aliexpress’s invitation-only reward program - promotion code

1% cashback of your orders + x% cashback of referral's orders


You can try for your own 1%

* invitation QR link will show after closing the ad pop-up.

https://a.aliexpress.com/_msKLqqi

2023-01-07

ACE Combat7 - Custom Joystick Mapping - PXN-2113 Pro

%AppData%\Local\BANDAI NAMCO Entertainment\Config\input.ini


[JoystickSetting]
EnableJoystick=True
EnableDeviceJoystick=True
EnableDeviceFlight=True
EnableDevice1stPerson=True

[JoystickMappingFormat]
HelpComment=" ObjectFormat"
HelpComment="     X, Y, Z, Rx, Ry, Rz, Slider[1-2], POV_[U, D, L, R][1-4], Button[1-32]"
HelpComment=
HelpComment=" ValueFormat"
HelpComment="     Object, Object:[P, N, R, C]...[P, N, R, C]"
HelpComment="         P:PositiveValue / N:NegativeValue / R:ReverseSign / C:ConvertRange(+1.0~-1.0 -> 0.0~1.0)"
HelpComment=
HelpComment=" MappingFormat"
HelpComment="     Value, Value1 [&, !, +, >, <] Value2"
HelpComment="         &:IfValue2!=0 / !:IfValue2==0 / +:AddValue / >:SelectLarger / <:SelectSmaller"
HelpComment=
HelpComment=" Example"
HelpComment="     Flight_Pitch=Y:R ! Button10"
HelpComment="     Flight_HatSwitchRight=POV_R1"

[Joystick-083711FF-0000-0000-0000-504944564944]
ProductName=PXN-2113 Pro
Flight_Gun=Button1
Flight_Missile=Button3
Flight_Weapon=Button2
Flight_Target=Button5
Flight_Radar=Button4
Flight_Flare=Button9
Flight_View=Button7
Flight_AccelerationDeceleration=Button11
Flight_AutoPilot=Button12
Flight_Pause=Button10
Flight_HatSwitchUp=
Flight_HatSwitchDown=
Flight_HatSwitchLeft=
Flight_HatSwitchRight=
Flight_Pitch=Y:R
Flight_Roll=X
Flight_Yaw=Rz
Flight_Throttle=Z
Flight_CameraPitch=POV_U1 + POV_D1:R
Flight_CameraYaw=POV_L1 + POV_R1:R
UI_B=Button4
UI_A=Button3
UI_X=Button5
UI_Y=Button6
UI_LB=Rz:N
UI_RB=Rz:P
UI_LT=
UI_RT=
UI_LeftStickPress=
UI_RightStickPress=
UI_DPadUp=POV_U1
UI_DPadDown=POV_D1
UI_DPadLeft=POV_L1
UI_DPadRight=POV_R1
UI_LeftStickUp=Y:N
UI_LeftStickDown=Y:P
UI_LeftStickLeft=X:N
UI_LeftStickRight=X:P
UI_RightStickUp=
UI_RightStickDown=
UI_RightStickLeft=
UI_RightStickRight=
UI_Menu=Button10



2022-06-20

Windows Update by Command Line (Powershell)

 Windows Update by Command Line (Powershell)


Simple Sequence

Run as Administrator

PS C:\Users\Administrator> Install-Module PSWindowsUpdate

PS C:\Users\Administrator> Get-WindowsUpdate

PS C:\Users\Administrator> Install-WindowsUpdate



Advanced Commands

PS C:\Users\Administrator> Get-PSRepository





PS C:\Users\Administrator> Remove-PSRepository PSGallery

PS C:\Users\Administrator> Add-PSRepository -Name PSGallery -InstallationPolicy Trusted

PS C:\Users\Administrator> Get-WUServiceManager

"Microsoft Update" is the latest. "Windows Update" is an older one, like for Windows 7.

PIC 2

 




PS C:\Users\Administrator> Add-WUServiceManager -MicrosoftUpdate

PS C:\Users\Administrator> Get-WUInstall -MicrosoftUpdate


Good to know:

Import-Module PSWindowsUpdate

Install-Module -Name PSWindowsUpdate -Force

Get-Command -Module PSWindowsUpdate

Install-Module -Name PSWindowsUpdate -Force




2022-05-07

1. Jobs to check

2. Useful Index

이미 적용했는지 잘 모를때, 그냥 해보면 이미 있는 경우면 기존에 있다고 알려주고 끝나니 걱정 말고 시도해보면 됨

dm_DMClean, dm_DMFilescan
  EXECUTE make_index WITH type_name = 'dmr_content', attribute='data_ticket', attribute='format', attribute='storage_id'

2020-05-26

chflags: copy or delete failed by uchg flag

chflags

Change a file or folder's flags.
Syntax
    
chflags [-R [-H | -L | -P]] flags file ...

Examples

➜ Downloads $ cp download.dat no_delete
cp: no_delete: Operation not permitted
➜ Downloads $ cp ls -lOe no_delete(Capital O, not number 0)
-rw-r--r--  1 operator1  staff  uchg 0  5 26 19:44 no_delete

Downloads $
Downloads $ chflags nouchg no_delete
Downloads $ cp download.dat no_delete
Downloads $

 

Examples

Lock the folder "finance" against changes:
$ chflags uchg finance

Unlock the folder named "finance" and allow changes to all the contents:
$ chflags -R nouchg finance

Make the folder ~/Library visible (this was the default setting prior to OS X Lion )
$ chflags nohidden ~/Library

(An alternative method is to use the 'Go' drop down menu in Finder and hold down the option key.)

Hide the folder ~/Library from finder:
$ chflags hidden ~/Library

Make the file MyLogs.txt append-only:
$ chflags uappnd MyLogs.txt

Unlock your Documents directory and everything in it:
$ chflags -R nouchg ~/Documents 




Keywords and keyword aliases - Owner or Super-user only:

             opaque           set the opaque flag 
             nodump           set the nodump flag 
             uappnd, uappend  set the user append-only flag
   uchg, uchange, uimmutable  set the user immutable flag
             uunlnk, uunlink  set the user undeletable flag

Keywords and keyword aliases - Super-user only:

             arch, archived   set the archived flag
             sappnd, sappend  set the system append-only flag
   schg, schange, simmutable  set the system immutable flag
             sunlnk, sunlink  set the system undeletable flag

The immutable flag makes the file/folder Locked/Protected and is equivalent to locking the file in Finder's Show Info box.

Putting the letters no before an option causes the flag to be turned off.

  For example:
       uchg    Means the file cannot be changed
     nouchg    Means the file can be changed (immutable bit cleared)
        hidden  Will set the hidden flag
      nohidden  Will remove the hidden flag

2020-05-11

모니터로 떠나는 예술여행 - Google Arts & Culture

모니터로 떠나는 예술여행

봄을 맞아 꽃구경도 좋지만 인터넷으로 부담없이 예술여행을 즐기는 것도 새로운 여가생활이 될 수 있을 것 같다.

Google Arts & Culture 사이트를 살펴보면, 우선 주소는 아래와 같다.



우선 일반적인 박물관 방식과 유사한 작가별, 매체별, 주의별 분류체계로 골라 보는 방법이 있다.
이 사이트만의 특징으로 360˚ 비디오 및 스트리트 뷰 로 실감나게 체험하는 방법이 제공된다.




스트리트 뷰

360˚ 비디오
머리에 쓰는 헤드셋이 있으면 좋지만, 없어도 마우스나 키보드로 보는 방향을 옮겨가며 구경할 수 있다.



2020-03-13

미술 작품 무료 공개 프랑스 웹사이트

프랑스에서는 보다 많은 사람들에게 문화 체험을 제공하려고 하고 있었다.

파리에 소재한 많은 박물관, 미술관, 전시관 및 유적지들은 상시 혹은 정기적으로 무료 입장일을 운영하고 있었는데 몇몇 단체들이 연합하여 공공 미술관을 만들었다.

이후 여러 작가 및 독지가들의 후원을 받아 보유한 작품의 저작권을 포기하고 누구나 보고 즐기고 재활용 가능하게 만들고 있다.

해당 사이트 주소:
  http://parismuseescollections.paris.fr/en

Copyright Free 의 의미:
  CC0

2019-04-19

영어문법 교정툴 - grammarly

영어로 이메일 혹은 논문 작성시 오타, 문법오류 교정 및 좀더 자연스러운 구조로 도와주는 툴들이 있다.

그 중 2009년에시작되어 꾸준히 성장하면서 유료 모델까지 만들어낸 서비스가 Grammarly (https://www.grammarly.com)라는 서비스.
무료/월 사용료/년 사용료 형태의 계정 가입이 필요하다.
무료 서비스 수준에는 다들 만족하는 것 같으나, 유료 서비스의 경우 추가 서비스 결과물이 아직 만족스럽지 않다는 평이 많음.

머신러닝 기법으로 최근 화법의 변화를 따라가려는 점이 기존의 문법기반으로 고정된 서비스와의 차별점. 가끔 할인 행사시 유료로 전환하면 손해 덜 볼듯.

아래와 같이 다양한 환경에서 도움을 받을 수 있다.

웹 UI
     Web UI - https://app.grammarly.com/
웹브라우저 플러그인
      Grammarly for Chrome
      Grammarly for Safari
MS Office Add-on
      Grammarly for MS Office
MacOS 전용 앱
      Grammarly for MacOS
스마트폰 키보드
      Grammarly Keyboard

2013-10-30

CentOS - Oracle 11gR2 - HugePages


Oracle이 잦은 swapping으로 성능 저하가 나는 경우가 있다.
주로 메모리 요구량이 많거나 또는 기본 4K pool이 모자라서 발생한다.

일반적으로 16GB 이상을 Oracle에 할당하면 발생하기 시작한다.
RHEL/CentOS 에서는 HugePages 라는 2M 혹은 4M 크기로 할당하여 회피할 수 있다.
또한 HugePage로 할당된 메모리는 swap되지 않고 메모리에 있는다.

1. Oracle 에 할당할 메모리크기 확인

Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

SQL> show parameter target

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
archive_lag_target                   integer     0
db_flashback_retention_target        integer     1440
fast_start_io_target                 integer     0
fast_start_mttr_target               integer     0
memory_max_target                    big integer 0
memory_target                        big integer 0
parallel_servers_target              integer     16
pga_aggregate_target                 big integer 180M
sga_target                           big integer 600M
SQL>
[oracle@ora11 ~/scripts]$ ipcs -m

------ Shared Memory Segments --------
key        shmid      owner      perms      bytes      nattch     status
0x3b5a955c 5013505    oracle    660        631242752  22
 600+M 정도 필요하다.

2. Oracle 수행 계정에서 900M 까지(600M이상) 사용할 수 있게 준비


[root@ora11 ~]# tail -2 /etc/security/limits.conf
oracle soft memlock 921600
oracle hard memlock 921600
 확인
[root@ora11 ~]# su - oracle -c "ulimit -l"
921600
혹은
[oracle@ora11 ~/scripts]$ ulimit -a
core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
scheduling priority             (-e) 0
file size               (blocks, -f) unlimited
pending signals                 (-i) 16037
max locked memory       (kbytes, -l) 921600
max memory size         (kbytes, -m) unlimited
open files                      (-n) 1024
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
real-time priority              (-r) 0
stack size              (kbytes, -s) 10240
cpu time               (seconds, -t) unlimited
max user processes              (-u) 16037
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited
[oracle@ora11 ~/scripts]$

수행 계정의 그룹정보를 확인
[oracle@ora11 ~/scripts]$ id -a
uid=500(oracle) gid=500(dba) groups=500(dba)
[oracle@ora11 ~/scripts]$ grep dba /etc/group
dba:x:500:dmadmin

3. 준비할 HugePage 블럭 계산


[oracle@ora11 ~/scripts]$ grep Hugepagesize /proc/meminfo
Hugepagesize:     2048 kB
 2M 단위로 할당 중임, 600M / 2M = 300 개 필요, 넉넉하게 400개 지정
group id 는 500
[root@ora11 ~]# tail -2 /etc/sysctl.conf
vm.nr_hugepages = 400
vm.hugetlb_shm_group = 500

4. 커널 값 적용


리부팅 혹은
[root@ora11 ~]# sysctl -w vm.nr_hugepages=400
vm.nr_hugepages = 400
[root@ora11 ~]# sysctl -w vm.hugetlb_shm_group=500
vm.hugetlb_shm_group = 500
[root@ora11 ~]#

5. Oracle 재시작 후 확인


HugePage 적용시
[oracle@ora11 ~/scripts]$ egrep -e Mem -e Page -e Huge /proc/meminfo
MemTotal:      2056548 kB
MemFree:        674696 kB
AnonPages:       69968 kB
PageTables:      11384 kBHugePages_Total:   500
HugePages_Free:    199

HugePages_Rsvd:      0
Hugepagesize:     2048 kB
 미 적용시

[oracle@ora11 ~/scripts]$ egrep -e Mem -e Page -e Huge /proc/meminfo
MemTotal:      2056548 kB
MemFree:       1055076 kB
AnonPages:       71488 kB
PageTables:      37716 kB
HugePages_Total:     0
HugePages_Free:      0

HugePages_Rsvd:      0
Hugepagesize:     2048 kB
 HugePage 사용시 메모리 할당 갯수가 줄어들어 관리용 PageTable도 줄어드는 것 확인됨


기타.

가용한 HugePage가 모자라면 Oracle 기동 중 경고 없이 기존 방식대로 수행된다.

11.2.0.1에는 호환성 문제가 있어서 AMM (Automatic Memory Management) 구성은 안된다.
다만, ASMM (Automatic Shared Memory Management)는 지원한다.
즉, memory_target, memory_max_target 을 설정하는 AMM은 안되니, reset하고
대신 sga_target, sga_max_size, pga_aggregate_target 으로 조정해야한다.
SQL> show parameter target

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
archive_lag_target                   integer     0
db_flashback_retention_target        integer     1440
fast_start_io_target                 integer     0
fast_start_mttr_target               integer     0
memory_max_target                    big integer 0
memory_target                        big integer 0

parallel_servers_target              integer     16
pga_aggregate_target                 big integer 180M
sga_target                           big integer 600M
SQL>
11.2.0.2 부터는 HugePage를 강제로 사용하고 모자라면 기동안되게하는
use_large_pages설정이 추가됐다.
ALTER SYSTEM SET use_large_pages=only SCOPE=SPFILE;
SHUTDOWN IMMEDIATE;
STARTUP;
 단순히 swap되지 않고 메모리에만 있게 하려면 다른 방법도 있다.
/etc/fstab에 보면 메모리를 통상 /dev/shm 에 shm 혹은 tmpfs 로 마운트하는데
ramfs로 마운트하면 swap되지 않는다.

# umount /dev/shm
# mount -t ramfs ramfs /dev/shm

CentOS - Oracle 설치위한 시스템 라이브러리

CentOS - Required Packages for Oracle 

(CentOS - Oracle 설치위한 시스템 라이브러리)


Oracle 11gR2 - CentOS 5 에서

CentOS 5 (x86)
binutils
compat-libstdc++-33
elfutils-libelf
elfutils-libelf-devel
elfutils-libelf-devel-static
gcc
gcc-c++
glibc
glibc-common
glibc-devel
glibc-headers
kernel-headers
ksh
libaio
libaio-devel
libgcc
libgomp
libstdc++
libstdc++-devel
make
sysstat
unixODBC
unixODBC-devel

CentOS 5 (x64)
binutils
compat-libstdc++-33 (both 32 and 64 bit required)
elfutils-libelf
elfutils-libelf-develelfutils-libelf-devel-static
gcc
gcc-c++
glibc                         (both 32 and 64 bit required)
glibc-common
glibc-devel                (both 32 and 64 bit required)
glibc-headers
ksh
libaio                         (both 32 and 64 bit required)
libaio-devel               (both 32 and 64 bit required)
libgcc                        (both 32 and 64 bit required)
libstdc++                   (both 32 and 64 bit required)
libstdc++-devel
make
sysstat
unixODBC                  (both 32 and 64 bit required)
unixODBC-devel         (both 32 and 64 bit required)

기타 필수적이진 않지만 참고하면 좋을 설정들

 /etc/sysctl.conf
      # Kernel parameter settings for Oracle
 fs.aio-max-nr = 1048576
 fs.file-max = 6815744
 kernel.shmall = 2097152
 kernel.shmmax = 4294967295
 kernel.shmmni = 4096
 kernel.sem = 250 32000 100 128
 net.ipv4.ip_local_port_range = 9000 65500
 net.core.rmem_default = 262144
 net.core.rmem_max = 4194304
 net.core.wmem_default = 262144
 net.core.wmem_max = 1048586

/etc/security/limits.conf
      oracle           soft    nproc   2047
      oracle           hard    nproc   16384
      oracle           soft    nofile  1024
      oracle           hard    nofile  65536
 
/etc/pam.d/login 
      session    required     /lib/security/pam_limits.so
      session    required     pam_limits.so 

2013-10-23

iPad Air - Apple Event october 2013

iPad Air : 얇고 가볍게, iPhone 5S와 같은 CPU, MIMO 지원하는 최초 iOS기기
iPad mini 2 : 레티나 디스플레이, 5S와 동일 CPU

iWork, iLife : 64비트 최적화 및 기능 업그레이드

Mac Pro, Mac Book Pro : 사양 업그레이드


OS X Mavericks : 무료, Maps/iBooks 업그레이드

역시나 한방의 반전없는 싱거운 느낌


http://www.apple.com/apple-events/october-2013/

2013-10-16

쿠키 클릭커 - Cookie Clicker

쿠키 생산을 주제로 한  엽기 타이쿤 류 게임

http://orteil.dashnet.org/cookieclicker/



게임의 정보를 요약해 주는 애드온(javascript)


javascript: (function () {
var jA = document.createElement('script');
jA.setAttribute('type', 'text/javascript');
jA.setAttribute('src', 'http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js');
jA.onload = function() {
var jB = document.createElement('script');
jB.setAttribute('type', 'text/javascript');
jB.setAttribute('src', 'http://pastebin.com/raw.php?i=2KRNm8Gm');
document.body.appendChild(jB);
};
document.body.appendChild(jA);
}());

bookmark용 링크



2013-09-25

CentOS - 서버 시간 동기화

NTPd 구성

  * ntp 패키지 설정
  * 안정적인 ntp 서버 목록 확보


1. ntp 패키지 설치
# yum -y install ntp


2.일단 한번만 동기화
# ntpdate time.windows.com


3. 계속 사용하려면
# chkconfig --list | grep ntp
ntpd            0:off   1:off   2:off   3:off   4:off   5:off   6:off
# chkconfig ntpd on
# chkconfig --list | grep ntp
ntpd            0:off   1:off   2:on    3:on    4:on    5:on    6:off
# service ntpd start



4. 국내 ntp 서버 등록 하기
* /etc/ntp.conf 파일에 server 부분 수정/추가
** http://www.pool.ntp.org/zone/kr 에서 제시하는 설정
...
server 3.kr.pool.ntp.org
server 3.asia.pool.ntp.org
server 0.asia.pool.ntp.org
...


기타 자주 쓰는 서버들
kr.pool.ntp.org
asia.pool.ntp.org
time.bora.net
time.windows.com
time.kornet.net
time.nuri.net

CentOS - rpmforge 설치



rpmforge 는 CentOS 나 RedHat과 별개로 진행되는 프로젝트임.

http://pkgs.repoforge.org/rpmforge-release/


1. 설치할 바이너리가 32비트일지 64비트일지 확인
  * i386, i486, i586, i686 등이면 32비트
  * x86_64면 64비트
[root@bocs ~]# uname -m
x86_64

2. http://pkgs.repoforge.org/rpmforge-release/ 에서 최신 버전 확인
 * 현재 확인시 rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm

[   ] rpmforge-release-0.5.3-1.el3.rf.i386.rpm   20-Mar-2013 16:59   11K  RHEL3 and CentOS-3 x86 32bit
[   ] rpmforge-release-0.5.3-1.el3.rf.x86_64.rpm 20-Mar-2013 16:59   11K  RHEL3 and CentOS-3 x86 64bit
[   ] rpmforge-release-0.5.3-1.el4.rf.i386.rpm   20-Mar-2013 16:59   11K  RHEL4 and CentOS-4 x86 32bit
[   ] rpmforge-release-0.5.3-1.el4.rf.x86_64.rpm 20-Mar-2013 16:59   11K  RHEL4 and CentOS-4 x86 64bit
[   ] rpmforge-release-0.5.3-1.el5.rf.i386.rpm   20-Mar-2013 16:59   12K  RHEL5 and CentOS-5 x86 32bit
[   ] rpmforge-release-0.5.3-1.el5.rf.x86_64.rpm 20-Mar-2013 16:59   12K  RHEL5 and CentOS-5 x86 64bit
[   ] rpmforge-release-0.5.3-1.el6.rf.i686.rpm   20-Mar-2013 16:59   12K  RHEL6 and CentOS-6 x86 32bit
[   ] rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm 20-Mar-2013 16:59   12K  RHEL6 and CentOS-6 x86 64bit
[   ] rpmforge-release-0.5.3-1.rf.src.rpm        20-Mar-2013 16:59  8.5K  Distribution independent source
 
3. 해당 rpm download
[root@bocs ~]# wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm
Resolving apt.sw.be... 193.1.193.67
Connecting to apt.sw.be|193.1.193.67|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 12640 (12K) [application/x-redhat-package-manager]
Saving to: ?pmforge-release-0.5.3-1.el6.rf.x86_64.rpm?

100%[=====================================================================>] 12,640      61.2K/s   in 0.2s

Last-modified header invalid -- time-stamp ignored.
2013-09-25 03:26:33 (61.2 KB/s) - ?pmforge-release-0.5.3-1.el6.rf.x86_64.rpm?saved [12640/12640]
[root@bocs ~]#
   혹시 wget 없다면
[root@bocs ~]# yum -y install wget

4. rpm 설치
[root@bocs ~]# rpm -Uvh rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm
warning: rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 6b8d79e6: NOKEY
Preparing...                ########################################### [100%]
   1:rpmforge-release       ########################################### [100%]
[root@bocs ~]#
 5. Repository PGP key 설치
[root@bocs ~]# wget http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt
[root@bocs ~]#  rpm --import RPM-GPG-KEY.dag.txt

 6. 필요한 모듈 설치
   * htop 설치 예
[root@bocs src]# yum --enablerepo=rpmforge -y install htop

2013-09-24

CentOS LVM resizing volume - root volume 줄이고 swap 늘이기

root volume 줄이고 swap 늘이기

CentOS 6.4 x64

LVM 으로 볼륨을 만들어 두면 크기 조정하기가 편하다.
기본 값으로 설치를 마치고 보니, swap이 작아 보인다.

/ 를 줄이고 swap을 늘이려하나, 사용중인 root volume은 live 상태로 바꾸지 못한다.

해결 방법은

1. 설치 DVD (혹은 minimal, live 등)을 이용하여 rescue 모드로 부팅한다.
  • 부팅모드 : rescue
  • 언어선택 :  기본 (English)
  • 키보드 : 기본 (us)
  • rescue 이미지 : 기본 (Local CD/DVD)
  • network interface : No  (Network 필요 없음)
  • 기존 파일시스템 mount 여부 : SKIP (반드시 마운트 하지 말것)
  • 할일 : 기본 (shell 시작)
2.  shell이 시작되면

기존 파일 시스템을 인식
# lvm vgchange -a y


수정할 / 볼륨 확인
# lvscan

파일시스템 오류 여부 확인
# e2fsck -y /dev/VolGroup/lv_root 

파일시스템 줄이기 (8.54G -> 7G)
# resize2fs -f /dev/VolGroup/lv_root 7G

논리볼륨 줄이기 (8.54G -> 7G)
# lvm lvreduce -L7G /dev/VolGroup/lv_root

swap에 줄여서 남긴 공간 전체 (100%=약1.5G) 할당하기
# lvm lvresize /dev/VolGroup/lv_swap -l 100%FREE
혹은 특정크기(2GB) 지정하기
# lvm lvresize /dev/VolGroup/lv_swap -L2G


swap 영역 새로 만들기
#mkswap -f /dev/VolGroup/lv_swap



3.shell 끝내고 재시작
  • # exit
  • reboot 선택


2013-09-13

CentOS - 사용중인 ext3 파일 시스템을 ext4로 변경하는 법

CentOS - converting procedure from ext3 to ext4 without format

사용중인 ext3 파일 시스템을 ext4로 변경하는 법

* 최상위 (/ ) 아닌 경우 ; / 를 변환하려면 initrd 수정 후 single mode에서 처리 등 조금 다름
mv /boot/initrd-`uname -r`.img /boot/initrd-`uname -r`.img.old
mkinitrd -v --with=ext4 --with=ext3 /boot/initrd-`uname -r`.img `uname -r` 

** 디렉토리 변환하면(fsck -D 옵션), ext4 에서 ext3으로 돌아올 수 없게 됨


CentOS 5.6

5.6에서는 커널에서 지원을 하지 않았기 때문에, 별도로 만들어진 ext4 전용 툴(tune4fs,e4fsck)을 설치 후 작업

1. ext4 전용 툴(tune4fs,e4fsck)을 설치
#yum -y upgrade mkinitrd e2fsprogs
#yum -y install e4fsprogs

2. 파일시스템 설정값 변경
*uninit_bg 으로 기존 데이터 유지
#cd /; umount /dev/VolGroup00/LogVol01
#tune4fs -O extents,uninit_bg,dir_index /dev/VolGroup00/LogVol01

3. /etc/fstab 의 내용을 ext3에서 ext4로 변경
#vi /etc/fstab

4. 변환 수행
* 변환시 invalid 수정한다는 문구가 조금 나타남
** single mode에서 하는 것이 안전함
#e4fsck -fDC0 /dev/VolGroup00/LogVol01

5. 완료 후 사용
#mount -a


CentOS 6.x 

기본 툴(tune2fs,e2fsck)에서 ext4 를 지원함
* 툴 명령만 다를 뿐 OS 5.6에서와 절차는 동일함
#cd /; umount /dev/VolGroup00/LogVol01

#tune2fs -O extents,uninit_bg,dir_index /dev/VolGroup00/LogVol01

#vi /etc/fstab

#e2fsck -fDC0 /dev/VolGroup00/LogVol01

#mount -a

CentOS vFabric tcServer 설치

CentOS vFabric tcServer installation and configuration

우선 SUN JDK 설치 후 VMWare tcServer 설치


작업 환경 : CentOS 5.9, SUN Java 1.6, tcServer 2.9.3
[root@was was]# cat /etc/redhat-release
CentOS release 5.9 (Final)
[root@was was]# uname -a
Linux was 2.6.18-348.16.1.el5 #1 SMP Wed Aug 21 04:00:25 EDT 2013 x86_64 x86_64 x86_64 GNU/Linux

1. 설치 파일 확보 : SUN JDK 및 VMWare tcServer

[root@was was]# ls
jdk-6u45-linux-i586-rpm.bin
jdk-6u45-linux-x64-rpm.bin
vfabric-tc-server-standard-2.9.3-RELEASE.noarch.rpm

2. SUN JDK 1.6 설치 및 확인
* 여기선 x32설치, 필요시 x64 설치
[root@was was]# mkdir tt;cd tt
[root@was tt]# sh ../jdk-6u45-linux-i586-rpm.bin
Unpacking...
Checksumming...
Extracting...
UnZipSFX 5.50 of 17 February 2002, by Info-ZIP (Zip-Bugs@lists.wku.edu).
  inflating: jdk-6u45-linux-i586.rpm
  inflating: sun-javadb-common-10.6.2-1.1.i386.rpm
  inflating: sun-javadb-core-10.6.2-1.1.i386.rpm
  inflating: sun-javadb-client-10.6.2-1.1.i386.rpm
  inflating: sun-javadb-demo-10.6.2-1.1.i386.rpm
  inflating: sun-javadb-docs-10.6.2-1.1.i386.rpm
  inflating: sun-javadb-javadoc-10.6.2-1.1.i386.rpm
Preparing...                ########################################### [100%]
   1:jdk                    ########################################### [100%]
Unpacking JAR files...
        rt.jar...
        jsse.jar...
        charsets.jar...
        tools.jar...
        localedata.jar...
        plugin.jar...
        javaws.jar...
        deploy.jar...
Installing JavaDB
Preparing...                ########################################### [100%]
   1:sun-javadb-common      ########################################### [ 17%]
   2:sun-javadb-core        ########################################### [ 33%]
   3:sun-javadb-client      ########################################### [ 50%]
   4:sun-javadb-demo        ########################################### [ 67%]
   5:sun-javadb-docs        ########################################### [ 83%]
   6:sun-javadb-javadoc     ########################################### [100%]

Done.
[root@was tt]# whereis java
java: /usr/bin/java /etc/java /usr/lib/java /usr/share/java
[root@was tt]# java -fullversion
java full version "1.6.0_45-b06"
[root@was tt]# rpm -qa | egrep -e java -e jdk
jdk-1.6.0_45-fcs
sun-javadb-demo-10.6.2-1.1
sun-javadb-common-10.6.2-1.1
sun-javadb-client-10.6.2-1.1
sun-javadb-docs-10.6.2-1.1
sun-javadb-core-10.6.2-1.1
sun-javadb-javadoc-10.6.2-1.1

3. VMWare tcServer 설치 및 확인

[root@was tt]# cd ..
[root@was was]# rpm -i vfabric-tc-server-standard-2.9.3-RELEASE.noarch.rpm
[root@was was]# rpm -qa | grep vfabric
vfabric-tc-server-standard-2.9.3-RELEASE
[root@was was]# cd /opt/vmware/vfabric-tc-server-standard/
[root@was vfabric-tc-server-standard]# ls
lib         README.txt         tcruntime-instance.bat  tomcat-6.0.37.A.RELEASE
licenses    tcruntime-ctl.bat  tcruntime-instance.sh   tomcat-7.0.42.A.RELEASE
quickstart  tcruntime-ctl.sh   templates

4. server01 인스턴스 구성 및 확인
* 여기에선 기본인 tomcat7 대신 tomcat6를 선택하였음
** 필요에 따라 server01/conf/tomcat-users.xml 등 수정

tcServer 설치시 생성된 tcserver 라는 계정 사용

[root@was vfabric-tc-server-standard]# tail -1 /etc/passwd
tcserver:x:503:502:tc Server User:/home/tcserver:/bin/bash
[root@was vfabric-tc-server-standard]# chmod g+w .
[root@was vfabric-tc-server-standard]# su - tcserver
[tcserver@was ~]$ cd /opt/vmware/vfabric-tc-server-standard/
[tcserver@was vfabric-tc-server-standard]$ JAVA_HOME=/usr/java/default ./tcruntime-instance.sh create -v 6.0.37.A.RELEASE server01
Creating instance 'server01' ...
  Using separate layout
  Creating bin/setenv.sh
  Applying template 'base'
    Copying template's contents
    Applying fragment 'context-fragment.xml' to 'conf/context.xml'
    Applying fragment 'server-fragment.xml' to 'conf/server.xml'
    Applying fragment 'web-fragment.xml' to 'conf/web.xml'
    Applying fragment 'tomcat-users-fragment.xml' to 'conf/tomcat-users.xml'
    Applying fragment 'catalina-fragment.properties' to 'conf/catalina.properties'
  Applying template 'base-tomcat-6'
    Copying template's contents
    Applying fragment 'server-fragment.xml' to 'conf/server.xml'
    Applying fragment 'web-fragment.xml' to 'conf/web.xml'
  Applying template 'bio'
    Copying template's contents
    Applying fragment 'server-fragment.xml' to 'conf/server.xml'
  Configuring instance 'server01' to use Tomcat version 6.0.37.A.RELEASE
  Setting permissions
Instance created
Connector summary
  Port: 8080   Type: Blocking IO   Secure: false
[tcserver@was vfabric-tc-server-standard]$ ls server01
bin  conf  lib  logs  README.txt  temp  webapps  work
[tcserver@was vfabric-tc-server-standard]$ JAVA_HOME=/usr/java/default ./tcruntime-instance.sh list
Listing instances in '/opt/vmware/vfabric-tc-server-standard'
  server01 Info:
    Instance name:         server01
    Runtime version:       6.0.37.A.RELEASE
    tc Runtime Base:       /opt/vmware/vfabric-tc-server-standard/server01
    Status:                NOT RUNNING
[tcserver@was vfabric-tc-server-standard]$

5. server01 인스턴스 확인, 구동 후 graceful 정지

[tcserver@was vfabric-tc-server-standard]$ JAVA_HOME=/usr/java/default ./tcruntime-ctl.sh server01 status
Instance name:         server01
Runtime version:       6.0.37.A.RELEASE
tc Runtime Base:       /opt/vmware/vfabric-tc-server-standard/server01
Status:                NOT RUNNING
[tcserver@was vfabric-tc-server-standard]$ JAVA_HOME=/usr/java/default ./tcruntime-ctl.sh server01 start
Using CATALINA_BASE:   /opt/vmware/vfabric-tc-server-standard/server01
Using CATALINA_HOME:   /opt/vmware/vfabric-tc-server-standard/tomcat-6.0.37.A.RELEASE
Using CATALINA_TMPDIR: /opt/vmware/vfabric-tc-server-standard/server01/temp
Using JRE_HOME:        /usr/java/default
Using CLASSPATH:       /opt/vmware/vfabric-tc-server-standard/tomcat-6.0.37.A.RELEASE/bin/bootstrap.jar
Using CATALINA_PID:    /opt/vmware/vfabric-tc-server-standard/server01/logs/tcserver.pid
Status:                RUNNING as PID=11482
[tcserver@was vfabric-tc-server-standard]$ JAVA_HOME=/usr/java/default ./tcruntime-ctl.sh server01 stop
Instance is running as PID=11482, shutting down...
Instance is running PID=11482, sleeping for up to 60 seconds waiting for shutdown
Instance shut down gracefully
[tcserver@was vfabric-tc-server-standard]$

2013-09-11

아이폰 5S 속보 요약 - Apple event september 2013

Apple event september 2013 - iPhone 5S 속보 특징

  • 아이폰 5는 단종 (5C 로 대체), 4S는 약정시 무료옵션 (미국)
  • 5C 는 기존 5모델과 동일 HW사용 : 단 FaceTime HD 카메라 향상
  • 5S에 골드색 포함 : 골드, 실버, new space gray
  • A7 칩 (64비트 CPU) + M7 동작감지 칩 + GPS
  • 아이폰5 대비 2배 빨라 : 최초 아이폰 대비 : 40x CPU, 56x 그래픽
  • LTE, Dual-band WiFi, Bluetooth 4.0 
  • 배터리(사용시간) : 기존 5모델과 비슷 혹은 약간 향상 / 3G 통화 10시간, LTE 웹서핑 10시간
  • 5S에 Touch ID 라는 지문 인식 기능 포함
  • 카메라 개선 : 높아진 센서크기, 초당 10장 연속촬영, 슬로-모 (120fps 720p), true tone 플래시
  • A7 칩으로 대폭적인 성능 향상, 특히 비디오
  • 5C 는 플라스틱, 다양한 색상으로
  • iWork 및 iLife( iPhoto + iMovie) 는 새로운 iOS 장비에서 무료 (iBook 저작과 맞물리는 듯?)
  • 9.18 부터 iTunes radio
  • 9.18 부터 iOS7을 iphone, ipad 로 배포

1차 발매국 (일본 등) 은 9.20부터 판매, 9.13 부터 선주문 예약 : 한국은 없음 (LTE-A는 없었기 때문에?)
이후 발매국은 올 연말 12월 경 판매 


공식 이벤트 동영상 보기 => http://www.apple.com/apple-events/

2013-09-05

도큐멘텀 설치 - Oracle 설정

RAC 환경에서 설치 하려면
반드시
MAX_COMMIT_PROPAGATION_DELAY
값을 0 (기본값 700/100=7.00초)으로 한 경우만 기술지원을 받을 수 있다.

문제는 10g Release2 부터 이 변수가 없어졌다.
대신
broadcast on commit
라는 관련 설정이 생겼지만, 의미가 다르기 때문에 주의가 필요하다.

Hint절 사용

select /*+ hint */ r_object_id from dm_sysobject_s

select r_object_id from dm_sysobject enable(oracle( hint ))


DB 계정 잠기지 않게

SQL> select profile from dba_users where username='{RepositoryOwner}';
SQL> alter profile {ProfileName}  limit password_life_time unlimited;

만일 만료(혹은 grace 기간) 해제
SQL> ALTER USER {UserName} IDENTIFIED BY {password};

이미 잠긴 경우
ALTER USER {UserName} ACCOUNT UNLOCK;

CentOS - 그래픽 없이 명령으로 볼륭 디스크 공간 추가하기

최초 OS 설치후 여러 프로그램을 /opt 에 설치하기위해, 디스크를 추가하고 /opt에 추가된 공간을 할당하는 예



1.추가된 디스크 확인 (sdb가 추가 디스크임)
# ls -l /dev | grep "^brw" | grep " [hs]d"
brw-rw----. 1 root disk      8,   0 Sep  5 11:27 sda
brw-rw----. 1 root disk      8,   1 Sep  5 11:27 sda1
brw-rw----. 1 root disk      8,   2 Sep  5 11:27 sda2
brw-rw----. 1 root disk      8,  16 Sep  5 11:27 sdb

 
2. 파티션 생성
# fdisk -l /dev/sdb


Disk /dev/sdb: 21.5 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

# fdisk /dev/sdb
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel with disk identifier 0x698cd53a.
Changes will remain in memory only, until you decide to write them.
After that, of course, the previous content won't be recoverable.

Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)

WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
         switch off the mode (command 'c') and change display units to
         sectors (command 'u').

Command (m for help): n
Command action
   e   extended
   p   primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-2610, default 1):
Using default value 1
Last cylinder, +cylinders or +size{K,M,G} (1-2610, default 2610):
Using default value 2610

Command (m for help): t
Selected partition 1
Hex code (type L to list codes): 8e
Changed system type of partition 1 to 8e (Linux LVM)

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.


# fdisk -l /dev/sdb

Disk /dev/sdb: 21.5 GB, 21474836480 bytes

255 heads, 63 sectors/track, 2610 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk identifier: 0x698cd53a

   Device Boot      Start         End      Blocks   Id  System

/dev/sdb1               1        2610    20964793+  8e  Linux LVM

3. Physical volume 생성
# pvcreate /dev/sdb1
  Physical volume "/dev/sdb1" successfully created

4. Volume 확인
# vgscan
  Reading all physical volumes.  This may take a while...
  Found volume group "VolGroup" using metadata type lvm2

5. Logical Volume 확인
# lvscan
  ACTIVE            '/dev/VolGroup/lv_root' [8.54 GiB] inherit
  ACTIVE            '/dev/VolGroup/lv_swap' [992.00 MiB] inherit


6. Physical volume 확인
# pvscan
  PV /dev/sda2   VG VolGroup        lvm2 [9.51 GiB / 0    free]
  PV /dev/sdb1                      lvm2 [19.99 GiB]
  Total: 2 [29.50 GiB] / in use: 1 [9.51 GiB] / in no VG: 1 [19.99 GiB]


7. Volume 신규 생성
# vgcreate VolData /dev/sdb1
  Volume group "VolData" successfully created

8. Logical Volume 추가 (15GB)
# lvcreate -L 15G -n lv_data VolData
  Logical volume "lv_data" created


# lvscan
  ACTIVE            '/dev/VolData/lv_data' [15.00 GiB] inherit
  ACTIVE            '/dev/VolGroup/lv_root' [8.54 GiB] inherit
  ACTIVE            '/dev/VolGroup/lv_swap' [992.00 MiB] inherit

9. 파일시스템 생성 (ext4)
# mkfs.ext4 /dev/VolData/lv_data
mke2fs 1.41.12 (17-May-2010)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
983040 inodes, 3932160 blocks
196608 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=4026531840
120 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208

Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 31 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.

10. mount 정보 추가
* /etc/fstab 에 아래 한줄 추가

/dev/mapper/VolData-lv_data /opt               ext4    defaults        1 1


# mount -a

# df -k
Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/mapper/VolGroup-lv_root
                       8813300   1558824   6806784  19% /
tmpfs                   771484         0    771484   0% /dev/shm
/dev/sda1               495844     97423    372821  21% /boot
/dev/mapper/VolData-lv_data
                      15481840    169456  14525952   2% /opt