sudo apt update
Reading package lists... Done라는 결과 값을 확인할 수 있습니다.sudo apt install <설치할 패키지 이름>과 같이 작성하여 진행할 수 있습니다.sudo apt install nginx
설치 중간에 "Do you want to continue? [Y/n]" 라고 중간 확인 단계가 있으며, "Y"를 입력하면 설치가 계속됩니다.
Setting up nginx (1.18.0-0ubuntu1) ... 라고 나오며 다시 입력창이 나오면 패키지 설치가 완료된었다고 볼 수 있습니다.
sudo systemctl status nginx
위 명령어를 통해 Nginx가 제대로 실행되고 있는지 확인하기 위해 시스템의 서비스 상태를 체크할 수 있다.
Active: active (running) 라는 문구가 보이면 정상적으로 서비스 되고 있는 것입니다.
hostname -I
위 명령어를 통해 Raspberry Pi의 내부 IP 주소를 확인할 수 있습니다.
확인한 내부 IP 주소를 브라우저에 "http://123.456.78.90" 형식으로 입력하여 웹 서버에 접속할 수 있습니다.
접속 성공 시 아래 같은 페이지를 확인할 수 있습니다.

Samba는 Raspberry Pi를 네트워크 파일 서버로 만들어서 다른 컴퓨터와 파일을 공유할 수 있게 해줍니다.
sudo apt install samba
Setting up samba (2:4.11.6+dfsg-0ubuntu1.8) ...라고 나오면 잘 설치가 완료된 것입니다.sudo mkdir -p /home/$USER/shared
sudo chmod 777 /home/$USER/shared
명령어 설명
(1) mkdir -p /home/$USER/shared:
현재 사용자의 홈 디렉토리 아래에 shared라는 디렉토리를 생성합니다.
$USER는 현재 사용자의 이름을 자동으로 참조합니다.
⠀
(2) chmod 777:
디렉토리의 권한을모두에게 읽기, 쓰기, 실행 권한을 부여해, Samba를 통해 접근할 수 있게 해줍니다.
ls 명령어를 통해 shared 디렉토리 생성 여부를 확인합니다.Samba의 설정 파일인 smb.conf 파일을 수정하여 공유 디렉토리를 설정합니다.
sudo nano /etc/samba/smb.conf
smb.conf 파일의 맨 밑에 내용을 추가합니다.[shared]
path = /home/your-username/shared
available = yes
valid users = your-username
read only = no
browsable = yes
public = yes
writable = yes
⭐
your-username이라고 표기된 곳은 실제 사용자 이름으로 변경하여 작성해야 합니다.
(ex. path = /home/hongkilldong/shared, valid users = hongkilldong)
sudo systemctl restart smbd
명령어 설명
systemctl restart smbd: Samba는 데몬(smbd)을 재시작하는 명령어로, 변경된 설정이 바로 적용되도록 해줍니다.
Samba 서비스를 재시작한 후에 네트워크 상에서 공유 폴더에 접근할 수 있는지 테스트해봅니다.
로컬 컴퓨터에서 네트워크 탐색기나 파일 탐색기를 열고 \\IP주소\shared로 접속해보면 연결된 폴더를 확인할 수 있습니다.

Windows에서는 해당 주소 입력 시 자격 증명 입력 창을 확인할 수 있습니다.
해당 로컬 컴퓨터로 지속적으로 폴더를 계속 사용할 예정인 경우 내 자격증명 기억을 체크해두면 이후에는 증명 과정을 거치지 않을 수 있습니다.
만약 네트워크 자격증명 입력 시 pw 입력 하면 엑세스가 거부되었습니다. 라는 문구가 발생하는 경우 아래 조치를 통해 접속할 수 있습니다.
해당 문제가 발생하는 이유는 Samba에 사용자를 추가하지 않았기 때문일 가능성이 있습니다.
Samba에서는 각 사용자가 별도의 비밀번호를 가져야하기 때문에 사용자를 추가하고 비밀번호를 설정하는 작업을 진행합니다.
sudo smbpasswd -a your-username
smbpasswd -a your-username :여기까지 진행하면 Nginx와 Samba를 통해 웹, 파일 개인 서버를 생성한 것입니다.