- 전체
- C/C++ 일반
- C/C++ 수학
- C/C++ 그래픽
- C/C++ 자료구조
- C/C++ 인공지능
- C/C++ 인터넷
- wxWidget
- GTK+
- UNIX or LINUX programming
- 리눅스 마스터 - 국가공인자격
- VC++/ MFC
- C#/CLI/.NET
- QT/기타UI
- Boost lib
- 오픈소스 C 분석자료
- MSA (마이크로서비스), Docker, kubernetes
- WSL(windows subsystem linux)
UNIX or LINUX programming Ubuntu 16.04 개발환경 세팅하기!
2017.03.21 17:09
Ubuntu 16.04 개발환경 세팅하기!
필자는 IntelliJ 를 사용해 개발을 주로 하기 때문에 JDK 와 node.js, 그리고 MySQL 을
우분투 16.04 에 설치해보겠다.
우분투를 매번 개발할 때마다 다시 설치하기 때문에 이 일련의 귀찮은 작업들을 외워버렸다.
이 글은 기초적인 세팅 방법이다.
1. JDK 설치하기
아래와 같은 명령어를 터미널에서 실행한다.
sudo add-apt-repository ppa:webupd8team/java
sudo apt update
sudo apt install oracle-java8-installer
복사하기 참 편하다.
다음으로 $JAVA_HOME 을 설정하게 되는데 profile 을 수정해야 한다.
대개 /etc/profile 에 있으므로
sudo vi /etc/profile
에 들어가서 맨 밑에
export JAVA_HOME="/usr/lib/jvm/java-8-oracle"
을 추가해준 뒤
source /etc/profile
으로 업데이트 해준다.
확인은 $JAVA_HOME 을 쳐보면 된다.
bash: /usr/lib/jvm/java-8-oracle: 디렉터리입니다
설치했지만 실행 권한은 나에게 없으므로
sudo chmod 755 n
으로 실행권한을 부여한다.
n을 쓰기 편하게 바이너리에 등록하자.
sudo mv n /usr/bin
이제 n이 사용가능해졌다!
sudo n stable
하면 node의 최신 안정된 버전이 설치된다.
*특정 버전을 사용하고 싶다면?
sudo n 0.8.14 처럼 버전을 적어주면 된다.
그리고 sudo n 을 쳐보면
아마도 o node/0.8.14 라고 뜨게 될 것이다. 내가 사용하는 노드 버전을 의미한다.
다음은 npm관련 문제 해결인데,
npm 기본 디렉토리에 대한 권한 문제를 해결하기 위기해 npm 기본 디렉터리를 변경할 건데
mkdir ~/npm-global-modules
npm config set prefix '~/npm-global-modules'
sudo vi ~/.profile
하고 다음을 맨 밑에 추가한다.
export PATH=~/npm-global-modules/bin:$PATH
그리고 나와서
source ~/.profile
로 업데이트 해준다.
3. MySQL 설치하기
sudo apt install mysql-server-5.7
간단하다.
mysql -u root -p
비밀번호를 입력하고 들어가자!
이후 추가로 두 가지 작업을 해주면 된다.
1) Character Set 변경하기
기본적으로 MySQL을 설치하면 컈릭터셋이 latin1로 되어있다.
확인은 status 명령어로 가능하다(물론 mysql 접속 후 명령어겠죠)
MySQL 5.5 버전 이후부터는 default-character-set 옵션이 제거되어 살짝 당황했지만!
더 편하게 바뀐 것 같다.
sudo vim /etc/mysql/my.cnf
로 들어가서
[mysqld]
collation-server = utf8_general_ci
character-set-server = utf8
skip-character-set-client-handshake
를 추가한다.
sudo service mysql restart
서버 재시작 후 mysql 접속해서 status 쳐보면 utf8로 바뀐 것을 확인할 수 있다.
*굳이 5.1 버전을 설치하신 분들을 위해
[mysqld]
character-set-server = utf8
[client]
default-character-set = utf8
[mysql]
defaule-character-set = utf8
2) 원격 접속을 위한 유저 설정
거의 DB는 원격접속을 할 일이 더 많기 때문에 원격 접속을 위한 유저가 하나 이상 필요하다.
하지만 MySQL 5.7 부터 기존의 user 테이블에 password 컬럼이 사라졌기에 새로운 방법으로의 접근이 필요하다.
mysql 접속 후
use mysql
INSERT INTO user(host, user, authentication_string, ssl_cipher, x509_issuer, x509_subject)
values ('%', '계정명', password('비밀번호'), '', '', '');
하면 계정이 생성될거고 그 유저에게 권한을 주는 일은
// 모든 권한
grant all privileges on *.* to 계정명@'%' identified by '비밀번호';
// 특정 DB 모든 권한
grant all privileges on DB명.* to 계정명@'%' identified by '비밀번호';
// 특정 권한
grant select, update, insert on *.* to 계정명@'%' identified by '비밀번호';
위 3개를 적절히 섞어서 쓰면 가능!
마지막으로 꼭
flush privileges;
해줘야 적용이 된다.
얼추 개발환경 세팅이 끝났다. 다음엔 vsFTP와 ssh 를 포스팅 해야겠다.
출처: http://broduck.tistory.com/1 [개발로 하는 개발]
광고 클릭에서 발생하는 수익금은 모두 웹사이트 서버의 유지 및 관리, 그리고 기술 콘텐츠 향상을 위해 쓰여집니다.

