답변:
Linux 응용 프로그램은 일반적으로 해당 구성을 응용 프로그램 고유의 텍스트 기반 파일에 저장합니다. 머신 특정 설정은 일반적으로 / etc 디렉토리 트리에 저장됩니다. 사용자 별 설정은 일반적으로 사용자의 홈 디렉토리에 있으며 "."로 시작하는 "숨겨진"파일에 있습니다. ( 'ls -a'를 사용하여 확인하십시오).
/proc
커널 관련 내용
/etc
소프트웨어 관련 자료
그놈 설정은 Windows 레지스트리와 비슷한 것으로 간주 될 수 있습니다.
그러나 Linux와 Windows의 핵심 철학은 직경이 다르기 때문에 (Linux ~ 공개 및 호환, Windows ~ 폐쇄 및 방해) 직접적인 병렬은 없습니다.
편집 : 동의하지 않는 사람들을 위해 여기에 당신을위한 약간의 역사가 있습니다 : http://www.faqs.org/docs/artu/ (당신의 배경이 무엇이든간에 멋진 독서)
.reg
(또는 파일을 .ini
, .xml
, .json
정규 표현식에 20 개여 설정 파일의 지옥을보다에서 X 기계를 통해, 당신이 원하는 무엇이든) /etc/
... 전체 네트워크 설정을 변경하지만 관련이없는 지역 추가를 유지하는 동안 당신 동안 Windows 레지스트리 하이브에 대해 완벽하게 자세한 설명을 찾을 수 는 없으며 그 구조 는 전적으로 비밀이 아닙니다 . (flamewar를 남긴다)
시스템 전체 설정은의 파일에 있으며 /etc
, 사용자 별 설정은 일반적으로 사용자 홈 디렉토리에서 숨겨진 파일 (시작 : a.)로 있습니다. 특정 프로그램에 대한 자세한 내용은 해당 매뉴얼 페이지를 참조하십시오 man [program name]
.
.*rc
사용자의 홈 디렉토리에있는 파일 을 언급 할 수 있습니다. /etc
시스템 전체에 불과합니다.
대부분의 응용 프로그램은 텍스트 기반 구성 파일을 사용합니다 (일부 응용 프로그램은 XML 또는 JSON을 사용하지만 각 프로그램마다 고유 한 형식을 가짐). 시스템 전체 구성은 아래에 유지됩니다 /etc
.
사용자 구성은 일반적으로 사용자의 홈 디렉토리에 소위 "도트 파일" ( " .
"로 시작하는 파일 이름 ; 파일 ls -a
을 표시하는 데 사용)으로 저장됩니다. "dotfile creep"을 피하기 위해 최근 프로그램은 XDG 기본 디렉토리 사양 에 ~/.config/
따라 구성을 유지하기 시작했습니다 .
다양한 데스크탑 환경에는 자체 레지스트리와 유사한 API가 있습니다. 그놈의 Gconf (더 이상 사용되지 않음) 및 dconf / GSettings (신규); Xfce의 Xfconf
Linux에서 분할됩니다. 하나의 장소가 없습니다.
사용자가 실행하는 프로그램의 경우 파일 인 경우 일반적으로 $ HOME / .someprogramrc에 있고 하위 디렉토리를 보증 할만큼 복잡하면 $ HOME / .somedirname에 있습니다. KDE 앱은 모두 $ HOME / .kde의 하위 영역을 찾습니다. 일반적으로 자체 디렉토리를 생성하지 않습니다.
디렉토리를 나열하는 일반적인 작업은 파일 .
을 숨김 으로 처리하는 것이므로 ls -A
명령 줄에서 사용 show hidden files
하거나 GUI 설정을 사용해야합니다 .
시스템에 의해 실행되는 프로그램의 경우 일반적으로 파일입니다. /etc/
디렉토리에는 일반적으로 .d
끝에 표시되지만 실제로는 명명 규칙이 없습니다 .
커널의 경우 /etc/sysconfig.conf
/ proc / sys / *에 쓰는 /etc/init.d의 시작 스크립트 또는에 있습니다.
대부분의 시스템 구성은 시스템을 /etc
보다 쉽게 백업 할 수 있도록합니다. /etc/
따라서 바이너리가 아닌 구성 파일 만 보유하면 크기가 작습니다.
Windows 레지스트리는 운영 체제 및 프로그램에 대한 다양한 .ini 및 기타 구성 파일을 자동화하여 더 빨리로드되도록하기 위해 만들어졌습니다. 레지스트리의 모든 정보는 컴퓨터의 다른 곳에도 포함되어 있지만 오늘날에는 일반적으로 쓰기 방지되어 있습니다. Linux는 Vi (시각적 편집기) 또는 기타 편집기를 사용하여 Linux에서 이러한 구성 파일에 액세스하여 편집합니다.
Windows :-디렉토리 계층 내의 파일에 데이터를 저장합니다.-이 파일은 언급 된 .dll 및 기타 지원 파일과 유사합니다. 그런 다음 파일은 데이터베이스 (레지스트리)와 같은 관리 시스템을 통해 관리되므로 사용자와보다 쉽게 상호 작용할 수 있습니다. . -이것은 우리가 가리키고 클릭하는 것을 의미하지만 사용 편의성, 빠른 접근성 및 사용하기 쉬운 이름으로 불필요한 데이터 저장을 위해 TONS 데이터가 백그라운드로 기록됩니다.
Linux :-파일은 분리 된 파티션에 저장됩니다 (Linux에서는 화면을 포함하여 하드웨어에 더 직접 액세스 할 수 있음을 기억해야합니다. 모든 것이 CLI를 통해 액세스 가능함). -이러한 파일은 이미 디렉토리 계층 구조에 있습니다 (OS와 같은 스토리지 시스템에서는 Windows와 유사하지만 폴더로 구분되지 않음). 파일을 더 읽기 쉽고 액세스하기는 쉽지만 CLI에 대한 지식이 필요합니다. 그들을 활용할 수 있습니다.
주요 차이점 : Windows는 사용자, 시스템 등의 상호 작용을 관리하기 위해 OS 인터페이스에 데이터베이스 "계층"을 추가합니다. 이렇게하면 GUI를 사용하여 모든 것을 액세스하고 수행하는 것이 더 쉬워 지지만 사용자와 시스템도 만들어집니다. 대부분의 기능을 위해이 데이터베이스 시스템에 크게 의존합니다. 반면에 Linus는 구성 요소와 직접 인터페이스 할 수 있으므로 Windows 포인트 앤 클릭 방식 대신 "언어"를 입력해야합니다. 예, Windows를 통해 CLI를 활용할 수 있지만 Windows와 Linux 비교를 실제로 비교하는 것은 아닙니다. 차이점은 사용자가 데이터에 액세스하는 방법, 시스템이 데이터를 활용하는 방법 및 Windows가 "시스템"을 통해 더 많은 "관리"를 추가하여 "보다 쉬운"방법을 만드는 방법에 있습니다.
CLI / Linux 환경에 익숙하지 않은 사람으로 평가하는 것은 이해할 만하지 만 두 시스템의 의도를 먼저 적용 할 때 훨씬 더 합리적입니다. Linux는 "레지스트리 통합으로 Microsvck가 시도한 시도를 전복시키는 것이 아니라"사용자와 하드웨어 간의 추상화 계층을 제거하여 사용자에게 더 많은 힘을 제공합니다.
이것을 상상하려면 타자기를 생각하십시오. 키를 누르면 기어가 움직이고 잉크가 종이를 만들어 데이터를 생성합니다. Linux에서 사용자는 시스템 커널과 인터페이스하여 하드웨어에서 조치를 수행하는 명령을 입력합니다. Windows 환경에서는 사용자와 하드웨어 사이에 더 많은 잠재적 계층이 있습니다. 응용 프로그램은 OS와 통신하는 명령을 호출하여 시스템 / 커널과 인터페이스하여 하드웨어와 작동합니다. 이 프로세스는 Windows에서 더 많은 변수가 방정식을 입력함에 따라 더 복잡해집니다. 명령을 실행하기 전에 정보를 검색하기 위해 레지스트리와 상호 작용해야하는 명령과 같습니다. 복잡한 작업. 사전로드 된 서비스 및 프로세스는 Linux에서 사용자가 호출해야하는 기능을 관리 할 수 있도록로드됩니다. 그리고 그렇습니다. 리눅스에서 실행되는 프로세스가 있지만 다른 의견이 부정확 한 이유를 더 잘 표시하기 위해 시스템이 어떻게 다른지에 대한 기본 아이디어를 제공하려고합니다. Linux를 사용하는 아이디어는 사용자와 하드웨어 간의 인터페이스를 최소화하여 혼란을 줄이면서 더 간단하게 유지하는 것입니다. Windows는 사용자에 맞게 조정하고보다 쉽게 액세스 할 수있는 방식으로 더 많은 기능을 포함하려고하지만 복잡한 관리 시스템 (비용이 많이 들기 쉽고 문제가 생길 수 있음)이 발생합니다. 또한 레지스트리는 모든 물리적 연결 및 사용자가 저장하고 저장 한 하드웨어와의 다른 물리적 상호 작용에 대한 디지털 정보를 제공 할 수 있습니다 (사용자 / 프로그램으로 정리하지 않은 경우). 나는' d Windows에서 정기적으로 청소해야하는 다양한 / 많은 지점을 청소하는 것 (및 레지스트리의 BIG 문제가 발생할 가능성이있는)과 비교하여 사용하지 않을 때 수동으로 삭제할 수있는 읽기 가능한 파일을 선호합니다. 장면 뒤의 사물을 관리하고 사용자가 저장에 걸리는 더 많은 디지털 트레일을 설정하는 것은 또 다른 계층입니다.
불행히도 많은 사용자들이 Windows를 사용하고 있으며 시험판 전에 Linux를 너무 두려워합니다. 많은 맛이 있으며, 일부는 명령, 쉘 등이 다르기 때문에 초보자로 선택하기가 어렵습니다. "Windows 컨디셔닝"을 제거하면 Linux 배포판이 여러 가지면에서 우수합니다 (부풀린 소프트웨어 없음). 개인적으로 Windows가 우수하다고 생각하는 유일한 시나리오는 게임을하는 것입니다. MS가 한 번에 하나의 OS에 통합하기 위해 더 많은 것을 푸시하면서 항상 더 많은 데이터를 얻기를 원하므로 더욱 혼란스러워집니다. 가지고있는 것은 좋은 기술이며, Linux 배포판으로 게임을하면 새로운 사용자가이 게시물을 읽을 때 이러한 질문에 대답 할 수 있습니다.