헤드리스(터미널 전용) Ubuntu Linux 서버를 설정하려고 하며 시작하기 위한 리소스를 찾으려고 합니다. 저는 한동안 GUI Linux/Windows 사용자였으며 Ubuntu 데스크탑에서 (GUI를 사용하여) 서버를 설정하는 방법에 대한 튜토리얼을 진행했지만 제가 찾은 가장 큰 어려움은 터미널을 사용하려고 할 때입니다. 결국에는 웹 서버를 설정하고 개인 콘텐츠(개인 웹사이트 또는 개인 웹사이트)를 호스팅하고 싶습니다.합류장소). 서버에서는 데이터베이스(postgres/mysql)도 설정하고 싶고 Samba를 사용해 본 경험도 마다하지 않을 것입니다. SSH를 사용할 수 있도록 서버에서 SSH를 활성화할 만큼 충분합니다.
헤드리스 서버를 실행하려고 할 때 겪었던 유일한 문제: mysql을 설치했다고 생각했지만(apt-get을 사용하여) 재부팅 시 서버에서 데이터베이스 서비스를 시작하는 방법, 제대로 작동하는지 확인하는 방법 등을 거의 파악하지 못했습니다. 올바르게 설치되었는지 또는 시각적 프로세스 관리자에 액세스하지 않고도 실행 중인지 확인하는 방법도 있습니다.
Linux 서버를 처음 사용하는 사용자(특히 순수 터미널 인터페이스 사용)를 위해 특별히 튜토리얼을 추천할 사람이 있습니까?
답변1
먼저 웹 서버 측면에서 애플리케이션이 수행하는 작업을 이해할 수 있도록 무언가를 정의하겠습니다.
아파치"인터넷과 같은" 정적 HTML 및 텍스트 파일을 제공할 수 있는 HTTP 웹 서버입니다. 웹 서버는 인바운드 요청과 처리하고 싶지 않은 모든 것을 처리합니다. 일반적으로 설치가 완료된 후 해당 htdocs
디렉터리로 이동하여 일부 파일을 배치할 수 있습니다. 브라우저에서 localhost
실행 포트를 결정하기 위해 Apache 기본값(80)을 사용했다고 가정하면 이 파일을 사용할 수 있습니다. 이것이 기본 웹사이트에 필요한 전부입니다.
다음을 지원하는 Apache 구축을 고려할 수도 있습니다.PHP. PHP는 동적 콘텐츠를 제공하고 정적 HTML 파일을 "강화"하기 위해 웹사이트에서 많이 사용되는 스크립팅 언어입니다.
PHP와 Apache가 함께 작동하면 다음을 사용하는 것을 고려하십시오.데이터 베이스(예: MySQL)은 데이터를 저장하는 데 도움이 됩니다. 대부분의 웹 소프트웨어(예: WordPress 및 포럼)에는 데이터베이스가 필요하며 설정이 어렵지 않습니다. MySQL에는 서버에 설치할 수 있고 브라우저에서 데이터베이스를 검색할 수 있는 PHPMyAdmin이라는 멋진 인터페이스가 있습니다(걱정하지 마세요. 로그인이 있습니다). MySQL과 상호작용하기 위해 명령줄을 사용해야 하는 유일한 경우는 kill
.
이 모든 것을 Linux 시스템에 넣고램프 서버(리눅스, 아파치, MySQL, PHP).
이미 이 모든 것을 알고 계시다면 죄송합니다. 귀하가 Linux/서버 분야에 처음 접하시는 것 같으므로 저는 단지 용어에 대한 좋은 기초를 제공하려고 노력하고 있을 뿐입니다.
실제 질문에 답하기 위해 두 가지 가능한 옵션이 있습니다.
1- X11을 워크스테이션으로 스트리밍. Windows를 사용하는 경우 다음과 같은 것이 필요합니다.초과하다서버에서 DISPLAY
다음과 같이 환경 변수를 컴퓨터의 호스트 이름으로 설정해야 합니다.
export DISPLAY=you_host_name_here:0.0
이렇게 하면 서버에서 GUI 응용 프로그램을 열 수 있지만 워크스테이션에는 창을 표시할 수 있습니다. 그러나 나는 그것이 당신이 가장 큰 이익을 얻을 것이라고 생각하지 않습니다.
2- 터미널에 익숙해지세요.원하든 원하지 않든 이것은 Linux 세계에서 해야 할 일입니다 :) 파일 시스템( cd
, ls
등 )에 익숙해지는 mkdir
것이 좋습니다 . 그러나 웹 콘텐츠(.html 또는 .php 파일)를 제공하려면 터미널 기반 텍스트 편집기에 익숙해야 합니다. 나는 사용한다육, 학습 곡선이 가파르지만 매우 강력합니다. 대안은 nano
, emacs
및 pico
(물론 다른 것들도 있습니다)입니다. 편집기를 사용할 수 있으면 X 전달 GUI 등을 처리하지 않고도 파일을 변경할 수 있습니다.
마지막으로 패키지 관리자를 사용하여 많은 애플리케이션을 설치했습니다. 소스에서 애플리케이션을 빌드해 보셨나요? 나는 물건이 설치되는 위치와 호환성을 더 잘 제어할 수 있다고 느끼기 때문에 물건을 직접 만드는 경향이 있습니다. Apache의 경우 PHP 및 MySQL을 지원하도록 컴파일해야 합니다. 이는 많은 작업처럼 보일 수 있지만 Linux 또는 UNIX에서 작업할 때 매우 간단하고 훌륭한 도구라고 확신합니다.
답변2
귀하의 질문은 다수의 하위 질문으로 구성되어 있으므로 별도로 질문해야 할 수도 있습니다. 그러나 mysql이 실행 중인지 확인하는 방법에 대한 구체적인 질문은 다음과 같습니다.
sudo apt-get install htop
일반적으로 프로세스/RAM 사용량/작업 종료를 모니터링하려면 htop( )을 권장합니다 . 탑과 비슷하지만 더 좋습니다.
서버가 실행 중인지 확인하는 방법에 대한 자세한 내용은 sudo /etc/init.d/service_name command
서비스가 mysql/apache2/nginx/postgresql/ssh/ufw인 곳을 확인하세요. ( ls /etc/init.d
전체 목록을 보려면 입력하세요.) 명령은 시작/중지/재시작/상태 중 하나입니다. 일부 다른 서비스는 를 통해 모니터링해야 합니다 sudo service service_name command
. 따라서 이 경우에는 sudo service mysql status
mysql이 실행 중인지 알려주어야 합니다.
데이터베이스를 설정/구성하려면 온라인에서 다양한 튜토리얼을 읽고 책을 구입하세요. 개인적으로 매우 고급 데이터베이스가 필요하지 않다면 sqlite와 같은 간단한 데이터베이스를 사용하는 것이 좋습니다. postgresql/mysql/oracle과 같은 성숙한 데이터베이스 제품군보다 설정 및 사용이 훨씬 간단합니다. 적절하게 조정된 데이터베이스는 설정 및 관리가 쉽지 않다는 점을 명심하세요. 이것이 데이터베이스 관리자가 정규직인 경우가 많습니다. 바라보다:http://www.sqlite.org/whentouse.htmlsqlite가 충분히 강력하지 않은지 확인하십시오.
답변3
이 책을 읽어보세요Nginx HTTP 서버
이 책은 특히 초보자에게 좋은 책입니다. 첫 번째 장에서는 Linux를 시작하기 위해 알아야 할 모든 것과 그 이상을 설명합니다.
또한 정말 좋은 서버를 설정하는 방법도 배우게 됩니다.nginx- 요즘 인기가 많아요.