일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- unix
- @test
- @AspectJ
- java spring
- AOP
- spring framework
- Linux
- myBatis
- java
- 리눅스
- POJO
- spring
- Spring JDBC
- Dependency Injection
- Ubunt
- Framework
- Spring Boot
- Di
- JdbcTemplate
- pointcut
- JDBC TEMPLATE
- spring aop
- SpringJDBC
- @JUnit
- XML
- @Spring-Test
- STS
- 마이바티스
- 프로퍼티
- 컨테이너
- Today
- Total
목록Linux (50)
개키우는개발자 : )
인자를 이용한 스크립트 파일로 변경하기 -adduser 파일을 /home/dogveloper/bin 디렉토리로 이동 mv ./adduser ~/bin 현재 위치의 adduser파일을 bin 폴더로 이동 시켰습니다. cat adduser adduser 파일은 고정값으로 testuser 라고 지정이 되어 있어 유저 이름이 들어가야 할 곳을 유동적으로 인자 값으로 받아 처리하면 adduser 추가할유저 방식으로 입력하여 사용자를 등록 할 수 있도록 파일을 수정 해야 한다. nano adduser useradd 스크립트 에선 1개의 인자가 필요하기 때문에 $1 이라고 입력한다. 인자 값이 여러개면 $1,$2 방식으로 인자를 더 받을 수 있다. testuser가 작성되어있던 곳에 $1 로 바꿔준다. adduser..
사용자를 추가하는 스크립트 파일 생성하기 - adduser 파일 생성하기 nano addusertouch adduser 말고 에디터를 이용해 바로 파일을 생성 하겠습니다. // testuser 을 생성하는 명령어useradd testuser // 제일 뒤에서 2줄에 대한 정보 가져오기tail -n2 /etc/passwd // 생성한 testuser 의 /home/testuser 디렉토리 생성mkdir /home/testuser // 생성된 /home/testuser 디렉토리 권한과 그룹을 testuser로 변경 chown testuser:testuser /home/testuser // 변경되었다는 문구 작성echo "testuser user added" 저장 후 빠져나오기 Ctrl + O , Ctrl +..
-홈 디렉토리 소유권 변경하기 소유권 변경 sudo chown dragon /home/dragon 소유권을 dragon 으로 변경하면 dragon root 소유권자만 변경된 것을 볼 수 있다. 소유권:그룹 변경 sudo chown dragon:dragon /home/dragon 다시 확인하면 dragon dragon 으로 소유권과 그룹이 모두 변경 된다. 변경된 소유권을 확인 했으면 dragon 계정으로 파일을 생성 해본다. 그전엔 권한 없다고 나왔는데 touch test 명령어를 다시 입력하니 잘 생성된 것을 볼 수 있다. 출처[뉴렉처] 유튜브 채널https://www.youtube.com/watch?v=vRRKGsMqiKE&list=PLq8wAnVUcTFU9zLWK-dHWrvTJ0PF8Y0Sf&ind..
-사용자 관리하기 -터미널 창 전환 Alt + F1~6 까지의 프롬포트창 tty1~6까지 서로 다른 터미널 창을 확인 할 수있다. -사용자 추가하기 - 생성 sudo useradd dragon useradd dragon 이라 입력하면 권한이 없다는 메시지가 뜬다 그렇기 때문에 sudo 를 앞에 붙여 슈퍼유저 권한으로 아이디를 생성한다. 그리고 현재 접속중인 유저의 비밀번호를 입력한다. 생성된 유저는 passwd 파일에 등록이 된다. tail 명령어 를 사용한다. tail -n3 /etc/passwd 뒤에서 3줄까지 읽어 달라는 요청 명령어 이다. dragon:x:1001:1001 앞에 1001은 dragon을 컴퓨터가 확인 할 수 있는 식별번호 이다. 뒤에 1001은 그룹이다 시스템 관리를 효과적으로 하..
링크파일(심볼릭)로 컴파일 실행하기 -javac 를 이용하여 컴파일 하기 javac Hello2.java Hello2.java 를 컴파일 한다. 하지만 여기에 문제점이 하나있다.자바 프로그래밍 언어는 class 의 이름(Hello)와 자바 파일명이 같아야 한다. 그러므로 Hello2.java 와 class Hello는 같지 않기 때문에 Hello.class 파일이 생성이 된것이다.자바언어는 반드시 자바 생성파일명과 class 이름을 맞춰주어야 한다. 그래도 일단 컴파일이 되었으니 컴파일된 Hello.class 를 실행 시킨다 java Hello 클래스 내부에 문자를 출력시켜주는 메소드인 println 안에 Hello Linux 라는 문자가 잘 출력 되는것을 볼 수 있다. -컴파일 과정에 문제점 (공동 프..
링크파일을 이용한 실행파일 리졸빙 -주요 명령어( ln , path , cp ) -jdk 설정하기 java -version 실행하기자바를 찾을 수 없다고 나옵니다. ./java -version 실행하기bin에 접근한 상태에서 현재 디렉토리에서 java -version을 실행하면 실행이 잘됩니다. echo $PATH 실행: 기준으로 java 파일을 찾는다 처음엔 /home/dogveloper/bin 다음엔 /usr/local/sbin ... 이런식으로 하나하나 찾아서없으면 java 파일이 없다는 문구가 나온다. 그래서 path값을 설정하면 java -version 을 실행 할 수 있다. 하지만 심볼링크파일로도 실행 가능하다. 심볼릭 링크를 이용해서 java 파일 실행하기PATH 경로를 확인해보면 /home..
링크 파일 -주요 명령어( ln , path , cp ) -링크 파일 만들기 -Hard Link 실습 ln Hello HelloLnHello 파일의 링크파일을 옵션을 아무것도 주지 않고 생성한다. 생성날짜 파일사이즈 모두 같다. nano HelloLn링크파일인 HelloLn 파일을 편집을 하겠습니다.System.out.println("Link File"); 을 추가 작성후 저장을 합니다. 그리고 파일을 다시 확인하면 링크파일과 연결된 파일도 둘다 용량이 변경되었습니다. 링크파일의 원본인 Hello 파일을 삭제 해보겠습니다. rm Hello링크파일은 그대로 남아 있습니다. 원본이 사라진다. 링크파일을 읽어보겠습니다.내용이 그대로 있습니다. 원본파일이 삭제 되어도 링크파일은 그대로 유지가 됩니다. 출처 [뉴..
압축본 JDK 설치하기 -JDK 다운로드 cd 를 이용해서 download 디렉토리 이동후 rm * 모든파일 삭제 wget 을 이용하여 jdk8 버전 다운로드 wget --no-cookies --no-check-certificate --header "Cookie:gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/8u201-b09/42970487e3af4f5aa5bca3f542482c60/jdk-8u201-linux-x64.tar.gz" wget --no-cookies \ --no-check-certificate \ --header..
파일 압축 관리 -파일 압축 방법 : tar (Tape ARchive) + zip 생성된 파일을 하나의 파일로 묶거나 압축하여 전달한다. -압축 파일 다루기 tar -cf name.tar a b c3개의 파일을 묶어준다. tar -zcf name.tar.gz a b c3개의 파일을 묶어서 압축한다. tar -xvf name.tarv옵션을 넣지 않으면 묶였던 파일들이 풀리는 목록이 출력 된다. tar -zxvf name.tar.gz압축된 파일을 풀어준다. -압축 하기 실습 tar -cf test.tar *현재 디렉토리안에있는 모든 파일을 묶는다. 파일의 용량이 급격히 커진다. tar -zcf test.tar *cf 옵션 앞에 z를 추가해서 압축을 한다. 묶었던 파일보다 용량이 현저히 많이 줄어든다.하지만 ..
유용한 명령어 주요 명령어( history , piping , redirect , grep , more , less ) clear 작업을 하면 화면에 코드가 쌓이게 된다. clear 명령어를 입력하면 화면의 코드들이 삭제된다. 방향키 위내가 직전에 쳤던 명령어를 확인할 수 있다. history내가 작업했던 명령어들을 한번에 볼 수 있다. history 리스트 실행 방법사용할 명령어 숫자를 확인하고 !98(clear) 입력해보겠다. 잘 실행 된다. Shift + PageUp , Shift + PageDown위의 history 명령어를 사용했을때 위에 내용이 더있는데 확인하고 싶을때 사용하면 위 아래 로 이동 한다. history > testhistory 의 목록을 콘솔 창이 아닌 file로 담고 싶을때 h..
파일 찾기와 파일 정보 확인하기 주요 명령어( find , file , cmp , cat , head , tail , grep ) 파일 찾기 find 파일 또는 디렉토리를 찾는 명령어. find ./ -name Hello.java현재 디렉토리 에서 이름이 Hello 이고 확장자가 .java인 파일 find ./ -name *.java현재 디렉토리 에서 확장자가 .java인 모든 파일 find . -name *.java -size +1c현재 디렉토리에서 확장자가 .java인 파일크기가 1byte 이상인 파일 find / -name *.java현root경로 / 에서 확장자가 java인 파일을 찾는데 권한이 일반권한이라 Permission denied(권한거부) 메시지가 뜬다. 정보 확인 cat Hello.j..
nano를 이용한 파일 편집 - 파일 편집기 - nano 편집기 nano Hello.java 를 입력하면 나노 편집기로 이동하게 됩니다. 명령어 단축키 들이 보입니다. ^ = Ctrl ^E 를 누르면 EXIT 가 실행됩니다. 실행해보겠습니다.처음 실행 했을땐 Y , N 알람창 나와서 Y 눌르고 그냥 나와버렸는데 그 이후 부터는 Y,N 창이 안나오고 바로 나와지네요 이제 기본 editor 을 활용 하여 편집을 해보겠습니다. editor H 까지만 쓰고 TAP 키를 누르면 알아서 자동 입력 됩니다. editor 명령어는 내 리눅스에 기본편집기로 설정되어 있는 편집기가 실행되는 겁니다. 기본 에디터인 nano 가 실행되네요 ~ vi랑 다르게 화살표로 이동 합니다. 평상시 사용하던 것처럼 사용하세요 ^G = C..
파일 편집 및 관리 - 파일 편집기 - vi 편집기 - vi 편집기 실습하기 - pwd : 현재 폴더 확인 - cd workspace/ : workspace 폴더로 이동 - ls : 이동한 폴더의 파일목록 확인 - vi Hello.java : 편집할 파일 선택 Enter vi Hello.java 를 편집하기위해 Enter 키를 치면 이와 같은 화면이 나옵니다. 이 화면에선 아직 편집 명령 전입니다.vi 는 편집하기위해 명령어를 또 한번 입력 해야합니다. 초기 화면에서 키보드 i 를 입력합니다. i 를 입력한 후의 화면 모습입니다. i 명령어를 입력해야 이제 편집모드로 변합니다. Hello World 를 입력 해보겠습니다. 메모장에 입력하듯 입력하면 됩니다. 입력후에 윈도우로 치면 저장을 하던가 뒤로가기를..
리눅스 파일 관리 명령어 - 파일 시스템을 위한 명령어들 - 2가지의 폴더를 생성한다. - workspace : java 의 소스코드를 저장해주는 디렉토리- bin : 나만 쓰는 실행파일 들을 모아놓는 디렉토리 - pwd : 디렉토리 위치 home/계정아이디 확인- mkdir(makedirectory) : 디렉토리 생성 명령어- ls : 디렉토리 리스트 확인 - 생성한 파일을 수정하는 방법 - mv : 파일명을 변경한다. 기존의 bin 이라는 디렉토리를 aa 라는 디렉토리로 변경 - ls -l : 파일목록 상세보기 - 디렉토리 파일이 아닌 일반 파일 생성.- 생성된 파일 리스트중 어떤파일이 디렉토리 이고 텍스트 파일인지 확인하는 방법. - touch : 일반 파일을 생성할때 사용하는 명령어. test.t..
리눅스 파일 경로와 순회하기 - 파일 탐색을 위한 명령어들 - cd / : cd 를 이용하여 여러곳의 디렉토리를 접근할 수 있다. cd /home/dogveloper 나의 개인 디렉토리로 이동할때 항상 길게 작성하면 불편하기때문에 cd /home/dogveloper = cd ~ 로 대체 할 수 있다. - pwd : 현재 내가 위치한 디렉토리를 보여주는 명령어 이다. - ls : 디렉토리 목록을 보여준다. - ls -l : 디렉토리 목록을 자세히 보는 명령어 이다. 출처 [뉴렉처] 유튜브 채널https://www.youtube.com/watch?v=_PvQ5_wYhj0&list=PLq8wAnVUcTFU9zLWK-dHWrvTJ0PF8Y0Sf&index=11
리눅스 파일 시스템 구조 - 리눅스 파일 시스템 - 리눅스 파일 시스템과 윈도우 파일 시스템의 비교 - cd / : /(root) 디렉토리 로 이동 (cd = change directory)- ls : 파일 목록 명령어- ls -l: 소문자 l 은 long을 뜻한다. 파일 목록이 길게 보여지는 명령어 이다. 절대경로- 최상위 디렉토리 (/)부터 시작해서 목표 디렉토리까지 가는 경로를 전부 기술하는 방식.- 경로를 기술 할 때에는 항상 맨 앞에 최상위 디렉토리 (/)가 붙는다는 것을 명심.- 절대경로를 이용하여 b 디렉토리에서 d 디렉토리로 이동해보자. cd /a/b/c/d/ 다시 b 경로로 이동 cd /a/b/ 절대 경로는 어렵지 않습니다. 그냥 최상위부터 가고싶은 위치까지 경로를 적어주면 됩니다.실제 ..
리눅스(유닉스) 사용하기 - 쉘(Shell) 이란 Shell 셸은 운영 체제 상에서 다양한 운영 체제 기능과 서비스를 구현하는 인터페이스를 제공하는 프로그램이다. 셸은 사용자와 운영 체제의 내부(커널) 사이의 인터페이스를 감싸는 층이기 때문에 그러한 이름이 붙었다. 셸은 일반적으로 명령 줄과 그래픽 형의 두 종류로 분류된다. 명령 줄 셸은 운영 체제 상에서 명령 줄 인터페이스(CLI)를 제공하는 반면에, 그래픽 셸은 그래픽 사용자 인터페이스(GUI)를 제공한다. GLI와 GUI 기반 셸의 상대적 장점에 대해서는 논쟁이 많다. CLI 지지자는 CLI 셸 상에서 일반적인 수행(파일 이동 등)을 훨씬 빠르게 할 수 있다고 주장한다. 반대로 GUI 지지자는 GUI 셸의 상대적 사용성과 간편함을 내세운다. 일반적..
광고 클릭은 개발자(저) 에게 큰힘이 됩니다!!'ㅁ'우분투 설치(서버 버전) - Linux Desktop 데스크탑 버전은 사용하지 않는다 - 우분투 서버 버전 다운로드 https://www.ubuntu.com/ 우분투 사이트 접속 다운로드 버튼을 클릭하면 이런 메뉴가 나옵니다. 18.04LTS 버튼을 클릭하면 자동으로 다운로드가 됩니다. iso 확장자로 다운이 완료되었네요 Linux Server를 선택후 설정 버튼을 클릭합니다. 저장소 -> 비어있음 -> cd아이콘 -> 가상 광 디스크 파일 선택 순서로 진행합니다. 다운받은 파일 선택 선택된 파일이 잘 적용된지 보고 확인버튼 클릭. 더블클릭 또는 시작 버튼을 누릅니다. 설치가 완료 되면 언어 선택 화면이 나옵니다. 영어를 선택합니다.(enter) Lay..
Virtual Box 설치하기 (Windows) - 오라클 사이트 접속 - https://www.oracle.com/index.html 다이렉트 링크 : https://www.oracle.com/technetwork/server-storage/virtualbox/downloads/index.html 다운로드 아이콘 클릭 마우스 스크롤을 조금 내리면 IT Infrastructure 클릭 VM VirtualBox 클릭 본인의 컴퓨터 사양에 맞춰 다운로드 다운로드된 파일 실행 실행후 next 모두 설치하기 설치후 메뉴,바탕화면 등 아이콘 표시 관련 체크박스 원하시는데로 체크하셔서 next Yes 인스톨 버튼 확인 설치 도중에 드라이브 설치관련 알람메시지가 뜨면 설치해 주시면 됩니다. 설치완료후 저는 바로 st..
오픈소스 라이선스 - OSI Open Source Definition(https://opensource.org/) - 유명한 오픈 소스 라이선스들 - Apache License 2.0 아파치 라이선스는 아파치 소프트웨어 재단에서 자체적으로 만든 소프트웨어에 대한 라이선스 규정이다. 아파치 2.0 라이선스는 누구나 해당 소프트웨어에서 파생된 프로그램을 제작할 수 있으며 저작권을 양도, 전송할 수 있는 라이선스 규정을 의미한다. 아파치 라이선스에 따르면 누구든 자유롭게 아파치 소프트웨어를 다운 받아 부분 혹은 전체를 개인적 혹은 상업적 목적으로 이용할 수 있으며 재배포시에는 원본 소스 코드 또는 수정한 소스 코드를 반드시 포함시켜야 하는 것은 아니고 아파치 라이선스, 버전 2.0을 포함시켜야 하며 아파치 소..
오픈소스 유닉스의 탄생 - UNIX의 상업화 POSIX 이식 가능 운영 체제 인터페이스(portable operating system interface)의 약자로, 서로 다른 UNIX OS의 공통 API를 정리하여 이식성이 높은 유닉스 응용 프로그램을 개발하기 위한 목적으로 IEEE가 책정한 애플리케이션 인터페이스 규격이다. POSIX의 마지막 글자 X는 유닉스 호환 운영체제에 보통 X가 붙는 것에서 유래한다. 규격의 내용은 커널로의 C언어 인터페이스인 시스템 콜 뿐 아니라, 프로세스 환경, 파일과 디렉터리, 시스템 데이터베이스(암호 파일 등), tar 압축 포맷 등 다양한 분야를 아우른다. 유닉스 계열 외에 마이크로소프트 윈도 NT는 POSIX 1.0에 준하는 POSIX 서브 시스템을 탑재하고 있으며,..
유닉스의 탄생 - Multics 프로젝트 멀틱스(Multics, Multiplexed Information and Computiong Service)는 현대의 운영 체제에 큰 영향을 미친 초기시분할 운영 체제이다. 1964년 멀틱스 프로젝트가 시작되어 2000년 10월 30일에 마지막으로 멀틱스를 쓰던 컴퓨터가 종료되었다. 흔히 유닉스의 역사와 관련하여 멀틱스가 훌륭한 운영 체제가 되지 못했었다는 인식이 있기도 했으나 이는 잘못된 통념임이 밝혀지고 있다. 실제로 멀틱스는 현대적 기능들을 다수 가지고 있었던 훌륭한 운영 체제라고 할 수 있다. 멀틱스는 처음에 GS-645 메인프레임용으로 개발되었고 나중에 하니웰 6180 시리즈 머신에서 지원되었다. - UNIX 의 탄생 BCPL B언어는 AT&T 벨 연구소..
개발자가 알아야 할 필수내용 - 학습내용 - 서비스 실행 및 관리 Linux/Unix 역사 -> Linux 서버설치 -> 파일 편집 -> 파일 관리 사용자 관리 -> 프로세스 관리 -> Bash Shell -> 설치파일 관리 -> Telnet/SSH/FTP -> JAVA JDK 설치 -> Tomcat/MySQL 출처 [뉴렉처] 유튜브 채널https://www.youtube.com/watch?v=Xd7IVMYnGUU&list=PLq8wAnVUcTFU9zLWK-dHWrvTJ0PF8Y0Sf&index=3
어떤 리눅스를 배워야 하는가? - 리눅스 계보 - 미래지향적 내가 배움에 있어 미래에 사용률이 높아지거나 가치가 있는 프로그램 - 점유율점유일이 높다는 건 사용하는 사람이 많다는 것이다. 사용하는 사람이 많다는 것은 어떤 문제(오류)가 발생했을 때 커뮤니티 활동으로 인해 문제 해결에 큰 도움을 받을 수 있고 Tip이나 개발 기법 또한 도움받을 수 있다. - 사용의 편의성프로그래밍 언어도 직관적으로 사람이 쉽게 읽을 수 있도록 진화한다. 그렇기 때문에 사용의 편의성 또한 중요한 선택의 하나이다. - 웹 서버로 운영되는 리눅스별 사용율 - 리눅스 사용자들이 등록한 사용대수 가장 많이 사용하는 Ubuntu를 배우는 게 위에 작성한 3가지에 부합하기 때문에 Ubuntu를 배우겠습니다. - 우분투 버전 리눅스 커..
왜 우리는 리눅스(Linux)를 배워야 하는가 - 프로그래머 ( 또는 개발자 ) 로써 리눅스를 배워야 하는가? 아직 리눅스를 경험해 보지 못하였기 때문에 꼭 배워야 하나? 라는 궁금증을 항상 가지고 있었습니다. 그렇지만 좀더 개발자 역량의 업그래이드(?) 를 하기 위해 알고 있는 것과 모르는 것은 차이가 크게 난다 생각합니다. 그러하여 리눅스는 배울 가치가 있어 보이고 경력이 높아질수록 필요할 것 개인적으론 배우는 게 좋다고 생각이 드네요~ - 현재 가장 많이 사용되는 운영체제들 우리는 어떤 OS를 사용하고 있나. - Unix 유닉스(Unix)는 대부분의 현대적 컴퓨터 운영 체제의 원형이 된 OS이다. 현대의 윈도우 계열이 아닌 리눅스 , 안드로이드, macOS , IOS 등의 많은 운영체제가 유닉스를 ..