서버 컴퓨터를 사용하는 일이 생겼는데 이번에 우분투에서 새로운 계정을 만드는 방법을 알게되었다.
우분투에 새로운 사용자 계정을 만들려면 아래 단계를 따라서 진행하면 된다.
sudo adduser (user 이름)
adduser 명령어를 입력하고 sudo password를 입력하면 된다.
user 이름 부분에는 식별할 수 있는 간단한 이름이면 좋다.
위 사진에서 보이는 oem@ 여기서 @ 왼쪽에 붙을 이름이기 때문에 식별 가능하면서 짧은 이름으로 하는 것이 좋을 것이다.
그리고 사용자 계정 비밀번호를 입력하라고 뜨는데 입력하고 엔터를 눌러주면 된다.
그리고 부가적인 정보를 입력하는 단계가 진행되는데 Full Name에 나는 내 이름을 적어줬다. 이 이름은 표시되는데 사용되는 이름이다.
예를들면 사용자 계정 전환 화면에 표시된다.
그리고 마지막으로 y를 입력하면 완료된다.
만약 추가한 사용자 계정에 관리자 권한을 부여하려면 sudo 그룹에 추가해야한다.
sudo usermod -aG sudo (username)
이 명령어를 입력하면 추가된 사용자 계정에서 sudo 명령어를 사용할 수 있다. (사실 이 부분은 잘 모르겠다. 이 과정을 안해도 sudo 명령어를 앞에 붙여주면 다른 계정에서도 되긴하던데)
서버 컴퓨터에 SSH를 설치해주면 애니데스크와 같은 원격 프로그램에 직접 접속하지 않아도 작업할 수 있는 것이 많다.
원격 프로그램으로 접속하게 되면 화면을 공유하여 사용하기 때문에 동시에 여러 사람이 접속하여 원하는 작업을 할 수 없지만
SSH를 이용하면 본인 계정에 접속하여 동시에 여러 작업을 할 수 있다.
그리고 VS Code에서 SSH 플러그인을 설치하여 코드를 작성할 수 있고
X 가상머신을 설치해서 서버 컴퓨터에서 동작해야하는 프로그램을 직접 조작할 수 있다.
나는 VS Code SSH도 사용하면서 가상머신도 세팅해서 사용한다.
이 과정은 나중에 ros 설치 과정을 올릴 때 링크를 걸어 놓을 것이다.
우선 서버에 SSH 세팅 방법은 아래와 같다.
sudo apt update
sudo apt install openssh-server
터미널을 열고 ssh server를 설치한다.
sudo systemctl start ssh
systemctl start 명령어로 ssh를 시작한다.
sudo systemctl status ssh
이 때 아래 명령어로 ssh 서버 상태를 확인할 수 있다.
sudo systemctl enable ssh
sudo ufw allow ssh
sudo ufw status
sudo ufw enable
위 명령어로 ssh 세팅을 완료하고 다른 컴퓨터에서 서버로 ssh 접속을 하려면 아래 명령어를 사용한다.
ssh username@server_ip_address
예를들어 아까 내가 설정한 계정의 이름이 kjy 였고 서버의 ip 주소가 192.168.0.1 이면 접속하는 방법은
ssh kjy@192.168.0.1
이렇게 터미널을 열고 입력하면 된다.
만약 뭔가 yes/no 이렇게 뜨면 yes를 입력하고 엔터를 누르면 된다.
패스워드를 입력하라고 뜨면 패스워드를 입력하면 된다.
그리고 ctrl + d를 누르면 ssh 접속을 끊을 수 있다. 혹은 exit 명령어를 입력하면 된다.
검은색으로 칠한건 서버 ip이다.
서버 ip를 보는 방법은
ifconfig
를 입력해서 보면 된다.
위 사진 처럼 터미널에서 ssh 연결을 하면 사진 아래 처럼 다른 이름으로 터미널에 표시되는것을 볼 수 있다. 이러면 정상적으로 ssh 연결이 된것이다.
그리고 -X 옵션은 가상 디스플레이 설정으로 SSH 연결을 했을 때 GUI 창을 표시할 수 있는 옵션이다.
터미널에 nautilus 같은 명령어를 입력해도 표시가 안될 수 있는데
이렇게 창을 띄울 수 있다.
그러나 그냥 저렇게 -X 입력한다고 해서 다 되는건 아니고 다른 설정을 해줘야하는데 이건 ROS 설치 방법을 올릴 때 다시 올릴 것이다.
-X 이런거 안해도 VS Code에 SSH 플러그인 설치해서 연결하면 아래 사진처럼 서버 컴퓨터 사양으로 다른 컴퓨터에서 코딩할 수 있다.
VS Code SSH 연결을 사용하면 파일 전송하는데 큰 무리 없이 바로 사용할 수 있다. 그냥 컴퓨터 파일을 드래그하거나 복사 붙여넣기 하면 되지만 만약 VS Code를 사용하지 않을때는 다른 방법을 사용할 수 있다.
이건 ssh 연결을 한 상태가 아니라 하지 않은 상태에서 입력해야한다.
scp "D:\Development\Pycharm Projects\Crawler-Projects\EmojiCrawler\output\annotations.csv" kjy@(주소):/home/kjy/Desktop/ssh_download/annotations.csv
예를 들면 위와 같은 명령어를 입력하면 된다.
왼쪽이 윈도우 PC이고 오른쪽이 우분투 서버 PC이다.
설명하면 D:\Development\Pycharm Projects\Crawler-Projects\EmojiCrawler\output\annotations.csv
이 파일을
우분투 kjy@(주소):/home/kjy/Desktop/ssh_download/annotations.csv
로 복사하는 것이다.
윈도우 환경에서 "" 를 입력한 이유는 경로상에 띄어쓰기가 있기 때문이다.