is..cy 2023. 3. 18. 18:10

 


Mac Terminal를 사용하던 중 2년전 포트폴리오를 준비하여 AWS 서버에 Oracle 및 Java 환경을 구축하려 애쓰던 기억이 떠올랐다.

 

다행히도 당시에 명령어를 정리해 놓은 내용이 남아 있었고

 

올해 Blog를 시작하며 그동안 정리해 놓은 텍스트들을 올릴 예정이다. 

 

새롭게 알게되는 내용들을 게시물에 계속 업데이트하려고 한다. (너무 간략하게 적어놔서 디테일이 떨어진다 😅)

 


 

1. Linux 개요

  • Linus Tovalds에 의해 개발됨 (open source 개념의 시작)
  • 서버구축이 주요 목적  : cloud service 대부분이 linux (aws)
  • 멀티 유저 운영체제 : 하나의 Server를 여러사람이 사용 (권한 및 보안관리가 중요)
  • Ubuntu Server : Radhat 계열의 Linux Server OS
  • Debian 계열의 distro server에 활용하기에 용이
  • distro : 배포판 패키지 (ubuntu, radhat, pedora,kali etc)
  • kili distro : 보안 및 해킹관련 테스트에 활용

 


2. Linux 명령어

 

Linux Command
sudo su root root 접속
 tail -f catalina.out log 확인
unzip 압축풀기
git clone git 복사
ls -al 파일 전부 보기
mkdir directory 생성
rmdir directory 삭제
unname 시스템 정보 및 세부사항
df 디스크 공간 필수 정보 표시
ps 실행중인 프로세스 시각화
kill 자원제한으로 멈춘 프로세스 중지
service 시스템 전체 서비스를 호출
batch 정의된 일정에 따라 시스템 서비스를 실행
shutdown 시스템 종료 메시지 전송
cat 새 파일 삭성하고 터미널에서 파일내용을 보고 출력을 다른 명령행 도구나 파일로 리디렉션
head 직접 파일 또는 파이프 된 데이터의 시작을 볼 수 있음 (많은 파일 처리시 생산성 향상)
tail 오류나 파일 로그를 실시간을 확인
cp 파일이나 디렉터리를 복사
less 터미널 세션을 방해하지 않으면서 파일 내에서 양방향 탐색
In 파일이나 디렉터리에 심벌릭 링크의 여러 인스턴스 생성
cmp 두 파일을 비교하고 결과를 표준 출력 스트림에 인쇄
dd 한 유형에서 다른 유형으로 복사 및 변환
alias 파일의 다른 문자열로 단어를 바꿈
history 터미널 세션 기록 확인
rev 입력 텍스트를 가져와서 각 문자를 반대로하여 표준 출력에 기록
wget 웹에서 파일을 다운로드 (사용자에게 HTTP,FRP 인터넷 프로토콜을 사용할 수 있는 기능 제공)
iptables 특정 호스트 시스템에서 들어오고 나가는 인터넷 트래픽을 제어할 수 있는 터미넣 유틸리티를 호출
find 파일 검색
which $PATH 시스템 환경 변수 
grep 대량의 텍스트파일 패턴 검색
clear 기존 터미널 화면 지움
echo console에 특정 텍스트 출력
sort 파일 정렬

 

Linux Command _ Authority
sudo access 가능한 권한
chmod access 권한 변경
chown 사용자가 파일이나 디렉터리 소유권 변경 chown member1:member2 test.cnf

=> test.cnf 파일에 대해 소유자는 member1,
      그룹명은 member2로 바꾼다.

 

권한 범위
u user 권한
g group 권한
o other 권한
a  모든 사용자 권한

 

접근 권한 카테고리
해당 권한 추가
- 해당 권한 제거  g=-
해당 권한 설정데로 변경 o=r test.cnf
읽기 권한 chmod u=rx
쓰기 권한
실행 권한

 

 


3. 명령어 사용예시 (Ubuntu 환경구축과정)

 

* tool install  
java download $ sudo apt-get install openjdk-8-jdk
tomcat download : $ sudo apt-get install tomcat8
mySql download : $apt-get install mysql-server
   
* Ubuntu Oracle 설치과정  
zip 서버에 압축해제 : $ sudo unzip oracle-xe-11.2.0-1.0.x86_64.rpm.zip
  해당파일은 오라클 홈페이지에서 다운 (11gR2 Express Edtion)
• 오라클 설치 : $ sudo alien --scripts -d oracle-xe-11.2.0-1.0.x86_64.rpm
  uname-i 입력시 x86_64가 나올시 64bit version
 필요한 패키지 설치 : $ sudo apt-get install -y alien libaiol unixodbc
• rpm 설치  $ sudo alien --scripts -d oracle-xe-11.2.0-1.0.x86_64.rpm
  (rpm file -> deb file)
  sudo dpkg --install oracle*.deb
  sudo dpkg --install oracle-xe_11.2.0-2_amd64.deb
* Ubuntu에서는 rpm을 사용하여 패키지를 설치할 수 없으므로, Debian의 deb 패키지로 변경이 필요

 

Ubuntu package concepts
alien RPM 패키지를 Debian 패키지로 변환하는
libaio1 Linux 커널 AIOAsybcgrounous I/O 엑세스 라이브러리
unixodbc ODBC (Open Database Connectivity) library

 

 

* RedHat Package들은 설치시 /sbin/chkconfig를 사용해야하지만 Ubuntu에 해당파일이 없기에 해당 파일 생성
• config 생성 : $ sudo vi /sbin/chkconfig
 파일 생성 후 실행 권한설정 (775) : $ sudo chmod 755 /etc/rc2.d/S01shm_load
• 커널 파리미터 설정 : $ sudo vi /etc/sysctl.d/60-oracle.conf
• 커널 파리미터 로드 : $ sudo service procps start
• Oracle XE용 파일추가 : $ sudo ln -s /usr/bin/awk /bin/awk
• Oracle XE remaster가 사용할 lock file 생성 : $ sudo mkdir /var/lock/subsys
  $ sudo touch /var/lock/subsys/listener
메모리설정 : $ sudo mount -t tmpfs shmfs -o -size=4096m /dev/shm
  (메모리에 의한 오류 방지)
• 새로운 SHM을 생성 및 mount : $ sudo vi /etc/rc2.d/S01shm_load
Oracle XE 패키지 설치 : $ sudo dpkg --install oracle-xe_11.2.0-2_amd64.deb
• Oracle XE 사용을 위채 최초설정 : $ sudo /etc/init.d/oracle-xe configure
 상태확인 : $ lsnrctl status
• Oracle 패키지 삭제 : $ sudo dpkg --purge oracle-xe
Oracle directory 삭제 : $ sudo rm -rf /u01/app
   
   

4. 참조

 

 oracle 설치         : https://www.oracle.com/kr/
 oracle 설치방법  https://a292run.tistory.com/entry/Oracle-11gR2-on-Ubuntu-2004
  https://dudaji.tistory.com/entry/
 권한명령어  : https://withcoding.com/103#recentComments