우분투 20.04 환경 설정

kk21·2023년 11월 7일
1

우분투 서버 구축

목록 보기
3/19
post-thumbnail

✨ 우분투 20.04 환경 설정

0. vim 설치

sudo apt update
sudo apt upgrade
sudo apt-get install vim
  • update랑 upgrade 부터 하는 것이 좋음

1. ssh 설치

1.1. apt update

sudo apt update

1.2 openssh-server 설치

sudo apt install openssh-server

1.3 확인

sudo systemctl status ssh


2. 방화벽 설정

sudo ufw status
  • 기본 설정은 방화벽 inactive

sudo ufw enable
  • 방화벽 켜기
sudo ufw disable
  • 방화벽 끄기
sudo ufw allow [포트번호]
  • 특정 포트 허용

3. ssh 포트 변경

3.1. sshd_config 파일 열기

sudo vi /etc/ssh/sshd_config

3.2. 포트 변경

#Port 22 라고 적혀 있는 부분에서 원하는 숫자로 변경 후 주석 제거

#Port 22 -- 기본
Port 1234 -- 수정 후

1234는 임의로 정한 숫자


4. APM 설치

4.1 apache2 설치

sudo apt install apache2

4.2 apache2 실행

sudo service apache2 start
  • 아파치 서버 중지
sudo service apache2 stop
  • 아파치 서버 재시작
sudo service apache2 restart

4.3. MySQL 설치

sudo apt install mysql-server

4.4. PHP 설치

sudo apt install php libapache2-mod-php php-mysql

4.5. html 파일 내 php 코드 사용

sudo vi /etc/apache2/mods-enabled/mime.conf
AddType application/x-httpd-php .php .phtml .html .htm


5. swap 16기가 설정

5.1. swap 확인

free -h 

5.2. swapoff

sudo swapoff -a

5.3. swapfile 생성

sudo fallocate -l 16G /swapfile

5.4. swapfile 생성 2

sudo mkswap /swapfile

5.5. swapon

sudo swapon /swapfile

5.6. free 확인

5.7. 재부팅 시 적용

sudo vi /etc/fstab

파일 마지막에 추가

/swapfile swap swap defaults 0 0


6. neofetch 설정

  • neofetch 설치 파일은 미리 다운로드 (생략)

6.1. make 설치

sudo apt install make

6.2. make 실행

sudo make install

확인

neofetch

6.3. neofetch 자동 실행

profile 열기

sudo vi /etc/profile

맨 끝에 적용

neofetch


7. htop 설치

  • 우분투에서 기본적으로 top을 제공하고 있으나 인터페이스가 많이 ..
    htop 추천 !
sudo apt install htop

htop



8. 아나콘다 설치

  • 버전 문제 생김 (추가 참고)

8.1. 아나콘다 설치

  • 다운로드
wget https://repo.anaconda.com/archive/Anaconda3-2021.05-Linux-x86_64.sh

  • 실행
sudo bash Anaconda3-2021.05-Linux-x86_64.sh

  • 설치 과정
  1. 엔터 누르기
  2. yes
  3. 설치 경로 작성

설치 경로는 /usr/anaconda3로 작성

conda init yes

anaconda 설치 완료

8.2. anaconda 설정

  • conda 실행
source /usr/anaconda3/bin/activate

  • 초기화
source /usr/anaconda3/bin/activate

  • conda 자동실행 끄기
conda config --set auto_activate_base False

8.3. 멀티 유저 접근 설정

  • 그룹 생성
sudo groupadd CondaGroup

  • 그룹 설정
sudo chgrp -R CondaGroup /usr/anaconda3/

  • 그룹 권한 설정
sudo chmod 770 -R /usr/anaconda3/

  • 그룹 권한 설정
sudo adduser kk21 CondaGroup


9. 주피터 허브 설치

9.1. nodejs 설치

sudo apt install npm nodejs

9.2. jupyterhub 설치

conda install -c conda-forge jupyterhub

9.3. proxy 문제 해결

npm install -g configurable-http-proxy

9.4. 실행 테스트

sudo /usr/anaconda3/bin/jupyterhub


10. SSL 발급 신청

10.1. certbot 설치

sudo apt-get install -y python3-certbot-apache

10.2. 도메인 등록

sudo certbot --apache -d [도메인]

ssl 적용이 완료된 것을 확인할 수 있음

10.3. config 설정

  • 디렉토리 만들기
sudo mkdir /etc/jupyterhub

  • config 파일 생성
jupyterhub --generate-config

  • config 파일 이동
sudo mv jupyterhub_config.py /etc/jupyterhub/

  • 맨 아래에 내용 추가
sudo vim /etc/jupyterhub/jupyterhub_config.py
  • 내용
    c.Spawner.default_url = '/lab'
    c.JupyterHub.ssl_cert = u'/etc/letsencrypt/live/도메인/fullchain.pem'
    c.JupyterHub.ssl_key = u'/etc/letsencrypt/live/도메인/privkey.pem'


11. 주피터 허브 서비스 등록

11.1. 파일 작성

  • 파일 작성
sudo vi /etc/systemd/system/jupyterhub.service
  • 내용
    하단 사진 참고

11.2. 서비스 허용

sudo systemctl enable jupyterhub.service

11.3. 서비스 시작

sudo systemctl enable jupyterhub.service

11.4. 상태 확인

sudo systemctl status jupyterhub


12. 완료


13. 주피터 허브에 R 설치

conda install -c conda-forge r-essentials

  • 결과 확인

14. 각 사용자별 public_html 만들기

14.1. public_html 만들기

sudo mkdir /etc/skel/public_html

14.2. index.html 파일 만들기

sudo vi /etc/skel/public_html/index.html

  • 내용은 자유롭게 작성
#html 예제 코드 
<!doctype html>
<html>
    <head>
            <title>HomePage</title>
    </head>
    <body>
            <H2>HomePage</H2>
    </body>
</html>

14.3 연결

  • 내용 확인 후 닫기
cd /etc/apache2/mods-available/
sudo vi userir.conf
  • 아래 내용 이후 진행
sudo ln -s ../mods-available/userdir.conf
sudo ln -s ../mods-available/userdir.load
  • 파일 내용 수정
sudo vi apache2.conf
//중간에 아래 내용 추가 
<Directory /home>
        Options Indexes FollowSymLinks
        AllowOverride None
        Require all granted
</Directory>
  • 아파치 재시작
sudo service apache2 restart

추가

이 글을 따라 Anaconda3를 설치하면 jupyterhub 설치에서 아래 사진처럼 Solving environment 무한으로 돌아가는 현상이 있을 것임.

2일 동안 아나콘다를 지우고 설치하고, 우분투를 밀고 다시 설치하는 등 .. 엄청 삽질을 하다가 해결 !!

바로 아나콘다 버전 문제..!!

anaconda를 설치할 때 최신 버전으로 설치해주면 문제 없이 설치 가능 !!

나는 Anaconda3-2023.09-0-Linux-x86_64.sh로 설치했음

참고...

profile
LLM Engineer의 성장 일기 ing. . . ✨

0개의 댓글