Skip to main content

Chapter 3. FreeBSD 기초

3.1. 요약

이 장에서는 FreeBSD 운영 체제의 기본 명령어와 기능에 대해 설명합니다. 이 자료의 대부분은 모든 UNIX® 계열 운영 체제와 관련이 있습니다. FreeBSD를 처음 사용하는 사용자는 이 장을 주의 깊게 읽어 보시기 바랍니다.

이 장을 읽고 나면 다음과 같은 내용을 알게 될 것입니다:

  • 가상 콘솔을 사용하고 구성하는 방법.

  • FreeBSD에서 사용자 및 그룹을 생성하고 관리하는 방법.

  • UNIX® 파일 권한 및 FreeBSD 파일 플래그의 작동 방식.

  • 기본 FreeBSD 파일 시스템 레이아웃.

  • FreeBSD 디스크 구성.

  • 파일 시스템을 마운트 및 마운트 해제하는 방법.

  • 프로세스, 데몬 및 신호가 무엇인지.

  • 셸이란 무엇이며 기본 로그인 환경을 변경하는 방법.

  • 기본 텍스트 편집기를 사용하는 방법.

  • 장치와 장치 노드란 무엇인가.

  • 매뉴얼 페이지를 참조하는 방법.

3.2. 가상 콘솔과 터미널

시작 시 그래픽 환경을 자동으로 시작하도록 FreeBSD를 구성하지 않은 경우, 이 예제에서 볼 수 있듯이 시스템이 명령줄 로그인 프롬프트로 부팅됩니다:

FreeBSD/amd64 (pc3.example.org) (ttyv0)

login:

첫 번째 줄에는 시스템에 대한 몇 가지 정보가 포함되어 있습니다. amd64는 FreeBSD가 64비트 x86 시스템에서 실행 중임을 나타냅니다. 호스트 이름은 pc3.example.org이고, ttyv0은 이것이 "시스템 콘솔"임을 나타냅니다. 두 번째 줄은 로그인 프롬프트입니다.

FreeBSD는 다중 사용자 시스템이기 때문에 다른 사용자를 구별할 수 있는 방법이 필요합니다. 이는 시스템의 프로그램에 액세스하기 전에 모든 사용자가 시스템에 로그인하도록 요구함으로써 이루어집니다. 모든 사용자에게는 고유한 '사용자 아이디'와 개인 '비밀번호'가 있습니다.

시스템 콘솔에 로그인하려면 사용자 추가에 설명된 대로 시스템 설치 시 구성한 사용자 아이디를 입력하고 Enter 키를 누릅니다. 그런 다음 사용자 아이디와 연결된 비밀번호를 입력하고 Enter 키를 누릅니다. 비밀번호는 보안상의 이유로 에코되지 않습니다.

올바른 비밀번호를 입력하면 오늘의 메시지(MOTD)가 표시되고 명령 프롬프트가 이어집니다. 사용자 생성 시 선택한 셸에 따라 이 프롬프트는 #, $ 또는 % 문자가 됩니다. 이 프롬프트는 사용자가 이제 FreeBSD 시스템 콘솔에 로그인하여 사용 가능한 명령을 시도할 준비가 되었음을 나타냅니다.

3.2.1. 가상 콘솔

시스템 콘솔을 사용하여 시스템과 상호작용할 수 있지만, FreeBSD 시스템의 키보드에서 명령줄로 작업하는 사용자는 일반적으로 가상 콘솔에 로그인합니다. 이는 시스템 메시지가 기본적으로 시스템 콘솔에 표시되도록 구성되어 있기 때문입니다. 이러한 메시지는 사용자가 작업 중인 명령이나 파일 위에 표시되므로 당면한 작업에 집중하기 어렵습니다.

기본적으로 FreeBSD는 명령 입력을 위한 여러 가상 콘솔을 제공하도록 구성됩니다. 각 가상 콘솔에는 고유한 로그인 프롬프트와 셸이 있으며 가상 콘솔 간에 쉽게 전환할 수 있습니다. 이는 기본적으로 그래픽 환경에서 여러 개의 창을 동시에 열어 놓은 것과 같은 명령줄을 제공합니다.

Alt+F1 ~ Alt+F8 키 조합은 가상 콘솔 간 전환을 위해 FreeBSD에 예약되어 있습니다. 시스템 콘솔(ttyv0)로 전환하려면 Alt+F1, 첫 번째 가상 콘솔(ttyv1)에 액세스하려면 Alt+F2, 두 번째 가상 콘솔(ttyv2)에 액세스하려면 Alt+F3 등을 사용하세요. Xorg를 그래픽 콘솔로 사용하는 경우, 텍스트 기반 가상 콘솔로 돌아가려면 Ctrl+Alt+F1을 조합하면 됩니다.

한 콘솔에서 다른 콘솔로 전환할 때 FreeBSD가 화면 출력을 관리합니다. 그 결과 여러 개의 가상 화면과 키보드가 있는 것처럼 착각하여 명령을 입력할 수 있는 FreeBSD를 실행할 수 있습니다. 하나의 가상 콘솔에서 실행된 프로그램은 사용자가 다른 가상 콘솔로 전환해도 실행이 중지되지 않습니다.

FreeBSD 콘솔과 키보드 드라이버에 대한 자세한 기술 설명은 kbdcontrol(1), vidcontrol(1), atkbd(4), syscons(4)vt(4)를 참고하세요.

FreeBSD에서 사용 가능한 가상 콘솔의 수는 /etc/ttys의 이 섹션에서 구성할 수 있습니다:

# name    getty                         type  status comments
#
ttyv0   "/usr/libexec/getty Pc"         xterm   on  secure
# Virtual terminals
ttyv1   "/usr/libexec/getty Pc"         xterm   on  secure
ttyv2   "/usr/libexec/getty Pc"         xterm   on  secure
ttyv3   "/usr/libexec/getty Pc"         xterm   on  secure
ttyv4   "/usr/libexec/getty Pc"         xterm   on  secure
ttyv5   "/usr/libexec/getty Pc"         xterm   on  secure
ttyv6   "/usr/libexec/getty Pc"         xterm   on  secure
ttyv7   "/usr/libexec/getty Pc"         xterm   on  secure
ttyv8   "/usr/X11R6/bin/xdm -nodaemon"  xterm   off secure

가상 콘솔을 비활성화하려면 해당 가상 콘솔을 나타내는 줄의 시작 부분에 주석 기호(#)를 넣습니다. 예를 들어 사용 가능한 가상 콘솔 수를 8개에서 4개로 줄이려면 가상 콘솔 ttyv5부터 ttyv8까지를 나타내는 마지막 네 줄 앞에 #을 넣습니다. 시스템 콘솔 ttyv0에 대한 줄은 주석 처리하지 마십시오. Xorg가 X Window 시스템에 설명된 대로 설치 및 구성된 경우 마지막 가상 콘솔(ttyv8)은 그래픽 환경에 액세스하는 데 사용됩니다.

이 파일의 모든 열에 대한 자세한 설명과 가상 콘솔에 사용할 수 있는 옵션은 ttys(5)를 참조하세요.

3.2.2. 단일 사용자 모드

FreeBSD 부팅 메뉴에는 "Boot Single User"이라고 표시된 옵션이 있습니다. 이 옵션을 선택하면 시스템이 "Boot Single User"라는 특수 모드로 부팅됩니다. 이 모드는 일반적으로 부팅되지 않는 시스템을 복구하거나 root 비밀번호를 알 수 없는 경우 재설정하는 데 사용됩니다. 단일 사용자 모드에서는 네트워킹 및 기타 가상 콘솔을 사용할 수 없습니다. 그러나 시스템에 대한 전체 루트 액세스 권한은 사용할 수 있으며 기본적으로 root 비밀번호는 필요하지 않습니다. 이러한 이유로 이 모드로 부팅하려면 키보드에 물리적으로 액세스해야 하며, 키보드에 물리적으로 액세스할 수 있는 사람을 결정하는 것은 FreeBSD 시스템을 보호할 때 고려해야 할 사항입니다.

단일 사용자 모드를 제어하는 설정은 /etc/ttys의 이 섹션에서 찾을 수 있습니다:

# name  getty                           type  status  comments
#
# If console is marked "insecure", then init will ask for the root password
# when going to single-user mode.
console none                            unknown  off  secure

기본적으로 상태는 secure로 설정되어 있습니다. 이는 키보드에 물리적으로 액세스할 수 있는 사람이 중요하지 않거나 물리적 보안 정책에 의해 제어된다고 가정합니다. 이 설정을 안전하지 않음으로 변경하면, 누구나 키보드에 액세스할 수 있기 때문에 환경 자체가 안전하지 않다고 가정합니다. 이 줄을 insecure로 변경하면 사용자가 단일 사용자 모드로 부팅하도록 선택할 때 root 암호를 묻는 메시지가 표시됩니다.

Note
이 설정을 insecure로 변경할 때는 주의하세요! 루트 비밀번호를 잊어버린 경우에도 단일 사용자 모드로 부팅할 수 있지만, FreeBSD 부팅 프로세스에 익숙하지 않은 사람에게는 어려울 수 있습니다.

3.2.3. 콘솔 비디오 모드 변경하기

FreeBSD 콘솔 기본 비디오 모드는 1024x768, 1280x1024 또는 그래픽 칩과 모니터에서 지원하는 다른 크기로 조정할 수 있습니다. 다른 비디오 모드를 사용하려면 VESA 모듈을 로드하세요:

# kldload vesa

하드웨어에서 지원되는 동영상 모드를 확인하려면 vidcontrol(1)을 사용합니다. 지원되는 비디오 모드 목록을 보려면 다음을 실행하세요:

# vidcontrol -i mode

이 명령의 출력에는 하드웨어에서 지원하는 비디오 모드가 나열됩니다. 새 비디오 모드를 선택하려면 루트 사용자로 vidcontrol(1)을 사용하여 모드를 지정합니다:

# vidcontrol MODE_279

새 비디오 모드가 적합하다면 /etc/rc.conf에 추가하여 부팅 시 영구적으로 설정할 수 있습니다:

allscreens_flags="MODE_279"

3.3. 사용자 및 기본 계정 관리