Programmer Application Note

레이블이 linux인 게시물을 표시합니다. 모든 게시물 표시
레이블이 linux인 게시물을 표시합니다. 모든 게시물 표시

2016년 6월 7일 화요일

docker 자동완성

오후 5:48 Posted by PAN.SPOT , No comments


docker 자동완성

$cd ~
$curl -o .docker-completion.sh https://raw.githubusercontent.com/docker/docker/master/contrib/completion/bash/docker
$sudo vi .profile
"source .docker-completion.sh" 추가

2015년 10월 14일 수요일

리눅스에서 윈도우 폴더 공유 시 권한문제 및 컴파일 시 Value too large for defined data type 문제

오후 8:37 Posted by PAN.SPOT No comments

윈도우에서 공유 설정을 한 후 리눅스에서 mount 하여 사용 할 때 권한 문제가 발생 한다면, 리눅스 계정의 uid,gid 설정을 하면 해결 된다.

해당 윈도우 폴더에서 리눅스 프로젝트를 컴파일 하였을 때
아래와 같은 오류가 발생한다면 nounix,noserverino 추가 한다.

Value too large for defined data type
정의한 자료형으로 쓰기엔 너무 큰 값

최종 마운트 방법

mount -t cifs //<Windows공유서버IP>/<윈도우공유폴더명> /<리눅스공유폴더명> -o username="<계정>",password="<암호>",uid=<xxx>,gid=<xxx>,nounix,noserverino

2015년 8월 26일 수요일

openvpn 설치

오후 7:06 Posted by PAN.SPOT , 1 comment
혼자 사용할때 설정이 간편한 openvpn-as 설치 방법 (ubuntu14.04 기준)

server 측 설정

$sudo apt-get install openvpn-as
$passwd openvpn //비밀번호 설정 (접속 비밀번호임)
  • https://serverip:943/admin 여기로 접속하면 사용자 추가등 기본 설정을 할 수 있음. 단 사용자는 2명이상일 때 추가 결재를 해야 사용가능한것으로 보임.
 

client 측 설정

windows 사용자 기준
  1. openvpn client 설치 https://openvpn.net/index.php/open-source/downloads.html
  2. https://serverip:943/ 여기로 접속
  1. openvpn connect를 설치 해도 되지만 다른os에서도 사용 하기위해 로그인으로 변경하여 로그인한다.
  1. openvpn 프로파일을 다운 받는다.
  1. C:\Program Files\OpenVPN\config 폴더에 다운받은 프로파일을 저장한다.
  2. openvpn client gui를 실행하여서 사용자와비밀번호를 입력하고 (추가하지 않았다면 openvpn/설정한비번) connect 한다.

2015년 5월 4일 월요일

ubuntu 64bit OS 32bit 컴파일 하기

오전 12:09 Posted by PAN.SPOT , No comments

설치

$ sudo dpkg --add-architecture i386 && sudo apt-get update

삭제

$ sudo dpkg --remove-architecture i386 && sudo apt-get update

패키지 설치

$apt-get install libc6:i386 libstdc++6:i386 libncurses5:i386 zlib1g:i386

2015년 4월 14일 화요일

/dev/null 과 2 > &1

오전 12:11 Posted by PAN.SPOT No comments

아래의 명령어에서 사용된 것을 하나씩 확인 해보자
backup.sh > /dev/null 2>&1
>(리다이렉션) : 표준 출력을 다음에 위치한 곳으로 우회 시킨다.
/dev/null : 모두 버려라
&j : j가 참조하고 있는곳
0:표준 입력,1:표준출력,2:표준에러

예)
$backup.sh > log.txt
backup.sh의 표준 출력을 log.txt로 보낸다.
$backup.sh 2> err.txt
backup.sh의 표준 에러를 err.txt로 보낸다.

이제 $backup.sh > /dev/null 2>&1 분석해보자.
backup.sh > /dev/null
- backup.sh의 표준 출력을 버려라.
2>&1
- 표준에러를 표춘 출력이 참조 하는곳으로 보내라.
backup.sh > /dev/null 2>&1
- backup.sh의 표준 출력을 버리고 표준 에러는 표준 출력이 참조하는곳(/dev/null)으로 보내라.

2015년 4월 13일 월요일

주기적인 작업 crontab

오후 11:53 Posted by PAN.SPOT No comments
crontab
설정된 시간에 따라 그 시간에 맞는 서비스를 실행 시키는 것
일반적으로 주기적으로 백업이 필요할 때 사용한다.

예약된 리스트
$crontab -l
작업 수정 및 등록
$crontab -e
작업 삭제
$crontab -r

아래의 폴더에 실행파일을 넣으면 끝
/etc/cron.hourly
/etc/cron.daily
/etc/cron.weekly
/etc/cron.monthly

정밀하게 설정하기
$su - (root 권한)
$crontab -e
분(0-59) 시(0-23) 일(0-31) 월(1-12) 요일(0,7:일요일,1:월요일,.....) 명령어

예)
*/10 1-4 1,3 5 * backup.sh > /dev/null 2>&1

*/10 : 매 10분 간격으로
1-4 : 1,2,3,4 시에
1,3 : 1일과 3일에
5 : 5월에
* : 모든 요일에
즉 : 5/1 5/3일 1~4시 사에서 10분 간격으로 backup.sh을 실행하라는 뜻임.



2015년 4월 7일 화요일

linux 쉘 명령어 모음

오후 8:26 Posted by PAN.SPOT No comments
$ll : ls -l
$Pushd : 현재디렉토리저장
$Popd : 저장한 디렉토리로 이동
$Dirs : 
저장된 디렉토리 표시
$chgrp 그룹명 파일또는폴더 :  그룹 변경
$df : 마운트된 파일 시스템의 사용 가능한 공간 확인
$du : 디렉토리의 파일용량
$free : 현재 메모리 사용량 및 사용가능한 메모리
$w : 현재 로그인한 사용자가 무엇을 하는지 알려줌 
$tty : 시스템에서 연결되어 사용하는 터미널 경로

apt-get

오후 6:37 Posted by PAN.SPOT , No comments
apt-get(Advanced Packaging Tool)은 우분투(Ubuntu)를 포함안 데비안(Debian)계열의 리눅스에서 쓰이는 패키지 관리 명령어 도구입니다.

패키지 인덱스 인덱스 정보를 업데이트 : apt-get은 인덱스를 가지고 있는데 이 인덱스는 /etc/apt/sources.list에 있습니다. 이곳에 저장된 저장소에서 사용할 패키지의 정보를 얻습니다.
$sudo apt-get update

설치된 패키지 업그레이드 : 설치되어 있는 패키지를 모두 새버전으로 업그레이드 합니다.
$sudo apt-get  upgrade

의존성검사하며 설치하기
$sudo apt-get dist-upgrade

패키지 설치
$sudo apt-get install 패키지이름

패키지 재설치
$apt-get --reinstall install 패키지이름

패키지 삭제 : 설정파일은 지우지 않음
$sudo apt-get remove 패키지이름

패키지 삭제 : 설정파일까지 모두 지움
$sudo apt-get --purge remove 패키지이름

패키지 소스코드 다운로드
$sudo apt-get source 패키지이름

위에서 받은 소스코드를 의존성있게 빌드
$sudo apt-get build-dep 패키지이름

패키지 검색
$sudo apt-cache  search 패키지이름

패키지 정보 보기
$sudo apt-cache show 패키지이름

apt를 이용해서 설치된 deb패키지는 /var/cache/apt/archive/ 에 설치가 됩니다.
홈