XRDP 서버 열기
$ sudo apt -y install xrdp
XRDP 서버 패키지를 설치한다.
$ sudo ufw allow 3389/tcp
XRDP서버의 전용 포트인 3389/tcp 포트를 열어준다.
윈도우즈에 기본적으로 탑재된 원격 데스크톱 연결 프로그램을 열고 '옵션' 클릭.
리눅스 서버의 Host-Only IP와 사용자 이름을 입력한다.
이게 XRDP의 클라이언트 프로그램이다.
처음엔 접속을 하려고 하면 블랙 스크린이 뜰 것이다.
약간의 설정 파일 수정이 필요하다.
$ sudo nano -c /etc/xrdp/startwm.sh
-c 옵션은 에디터 내 라인 수 표시이다.
위와 같이 33번줄부터 정확히 입력하고 덮어쓰기-종료 를 한다.
cat으로 확인하고 stop & start 반복
다시 접속해보면 성공적으로 XRDP 서버에 연결된다.
Shutdown 관련 명령
$ sudo poweroff : 서버 전원을 물리적으로 끄는 것과 같다
$ sudo shutdown -r now : 즉시 리부트 실행
$ sudo shutdown -P +10 : 10분 후 종료
$ sudo shutdown -r 22:00 : 오후 10시에 재부팅
$ sudo shutdown -c : 예약된 shutdown 취소
$ sudo init 0 : 시스템 종료
$ sudo init 6 : 시스템 재부팅
init의 런레벨
0 : Power Off - 종료 모드
1 : Rescue - 시스템 복구 모드
2 : Multi-User - 사용하지 않음
3 : Multi-User - 텍스트 모드의 다중 사용자 모드
4 : Multi-User : 사용하지 않음
5 : Graphical - 그래픽 모드의 다중 사용자 모드
6 : Reboot
default.target으로 현재 런레벨을 확인할 수 있다.
WSL2(Windows Subsystem for Linux) 설치
Windows 검색 -> PowerShell -> 관리자 권한으로 실행
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
복사해서 넣기
winver 명령어로 빌드가 18362 이상인지 확인하고 진행한다.
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
입력 후 엔터.
https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi
위 파일을 다운로드하고 설치 및 실행한다. 오류가 뜨면 재부팅하고 다시하면 된다.
wsl --set-default-version 2
입력 후 엔터.
Microsoft Store 앱을 열고 Linux 검색 후 Ubuntu 20.04 LTS를 다운로드한다.
유저네임, 비밀번호, 비밀번호 확인을 입력해준다.
wsl --set-default Ubuntu-20.04
wsl -l -v
를 쳐서 디폴트 설정을 해주고 왼쪽에 애스터리스크가 정상적으로 표시되는지 확인한다.
이후 설치한 Ubuntu 20.04 LTS 어플리케이션을 열거나 PowerShell에서 wsl 명령어 입력,
또는 SSH를 통해 접속하는 방법이 있다(SSH 접속은 추후에 할 것 같다.).
Shell 환경변수
export YOIL=monday
echo $YOIL
unset $YOIL
echo $YOIL
모든 쉘 스크립트 파일은 알아볼 수 있도록 확장자명을 .sh로 하고
주석으로 #!/bin/bash를 시작할 때 넣는다.
nano 에디터를 사용해 이런 식의 쉘 스크립트를 코딩할 수 있다.
실행 결과.
Linux Commands
$PATH : 모든 명령어들의 경로의 집합
which : 해당 명령어의 경로를 출력
find : 파일의 위치를 알려준다.
-exec rm { } \; 을 뒤에 추가해서 찾은 파일들에 대한 추가 명령을 할 수 있다.
whereis : 해당 명령어의 경로와 소스 등 상세 정보까지 출력
locate : DB에서 찾기 때문에 가장 상세하지만 updatedb 명령을 해야 한다.
--help 속성 : 해당 명령어의 사용법을 알려준다.
man : 해당 명령어의 매뉴얼을 보여준다.
whoami : 현재 로그인한 사용자명 출력
cat /etc/os-release : OS에 대한 자세한 정보 출력
file : 해당 파일의 타입과 기타 정보 출력
rwxrwxrwx
ls -l 명령 시 대상이 파일이면 앞에 -을 붙이고 출력되는 옵션.
Read, Write, eXecute 를 뜻하고, 앞에서부터 3개씩 끊어서
파일 제작자, 제작자가 속한 그룹, 그 외 사용자의 권한을 정의한다.
만약 대상이 디렉토리라면 앞에 d를 붙이고 나온다.
내가 이미 알고 있거나 간단해서 굳이 정리할 필요 없는 부분은 생략하며 정리하고 있다.