두 Mac 사용자 계정간에 .bashrc 파일을 공유하는 방법


11

내 컴퓨터에는 집과 직장에 각각 하나씩 두 개의 사용자 로그인을 설정했습니다. 두 사용자간에 내 bash 및 vim 설정을 공유하고 싶습니다. 어쨌든 이것을 할 수 있습니까? 지금까지 한 계정에서 다른 계정으로 파일을 복사했지만 두 파일 사이에 파일 하나만 있으면 한 곳에서만 변경할 수 있기를 원합니다. 이것이 가능합니까? 감사.

답변:


11

ln도구를 사용하여 심볼릭 링크 를 만들 수 있습니다 .

ln -s /Users/user1/.bashrc /Users/user2/.bashrc

이 예에서는 의 디렉토리 user2에있는 기존 파일을 다시 가리키는 새 링크를 작성합니다 user1. sudo ln ...권한이 올바르게 설정되지 않은 경우 사용해야 합니다.


5
이와 관련하여 하드 링크하는 것이 더 좋을 수 있으므로 한 사용자 계정을 삭제해도 나머지 계정의 .bashrc 파일도 삭제되지 않습니다.
Gerry

그렇게 -s하려면 ln명령에 대한 옵션을 생략하면 됩니다.
MattDMo

3
더 좋은 방법은 bashrc를 공유 Dropbox 폴더에 두어 사용하는 모든 컴퓨터에서 사용할 수 있고 백업하는 것입니다.
Dean

11

이를 수행하는 방법에는 여러 가지가 있지만, 내가 본 일반적인 관용구는 각 사용자의 홈 폴더 외부에 단일 파일을 설치하고 ~ / .bashrc 파일 소스를 공통 파일에 모두 두는 것입니다.

이를 통해 명확성을 확보하고 나중에 사용자 수준의 변경을 수행 할 수있을뿐만 아니라 나중에 한 명 또는 두 명의 사용자가 모두 삭제되는지 여부에 관계없이 하나의 파일 만 유지 관리 할 수 ​​있습니다.

파일을 하드 링크하는 것보다 약간 더 많은 작업이며 이러한 종류의 작업에 소프트 링크를 사용하는 경험은 일부 도구가 소프트 (또는 sym) 링크를 처리하지 않고 원하는대로 처리하지 않기 때문에 피하는 것입니다.

코드 컨트롤을 사용하여 파일을 배포하는 것보다 훨씬 쉽지만 git 또는 mercurial 또는 다른 버전 제어 시스템을 설정하려는 경우 변경 사항을 관리하는 좋은 방법입니다.


이 솔루션에 +1, git 여기에서 구현했습니다 -github.com/balupton/dotfiles- 내가 찾은 큰 이점은 OS (osx, ubuntu, fedora)에 관계없이 쉽게 사용자 정의 구성을 설치하고 사용할 수 있다는 것입니다 ) 등의 특정 머신 구성을 정상적으로 유지 관리 할 수 ​​있지만 공통 구성의 소스를 동기화 할 수 있습니다.
balupton

8

/ etc / bashrc에있는 시스템 전체의 .bashrc를 편집 할 수 있습니다.

그러나 Git에 익숙하다면 "도트 파일"을위한 저장소를 만드는 것을 고려해야한다. 무료 Github 리포지토리를 사용하여 그렇게 할 수 있습니다. 이런 방식으로 도트 파일을 추적하면 많은 장점이 있습니다.

  • 사용 가능한 많은 공개 닷 파일 저장소 중 하나 에서 포크를 가져 오거나 가져올 수 있습니다.
  • 다른 사용자 계정과 다른 컴퓨터에서 도트 파일을 쉽게 설치하고 업데이트 할 수 있습니다.
  • 개정 관리 기능을 사용하면 장기적으로 몇 가지 문제에서 벗어날 수 있습니다.

또한 설치는 올바른 권한을 부여합니다
user151019

2

다른 사람들이 지적했듯이 심볼릭 링크를 사용 하여이 작업을 수행 할 수 있지만 두 사용자가 파일에 액세스하고 파일을 편집 할 수 있도록 권한을 적절히 변경하는 것이 중요합니다.

  1. 에 대한 기존 항목 .bashrc을 모두 제거하십시오 user2.

    rm /Users/user2/.bashrc
  2. 심볼릭 링크 user1.bashrcuser2의 사용자 디렉토리 :

    ln -s /Users/user1/.bashrc /Users/user2/.bashrc
  3. 두 사용자가 파일을 수정할 수 있도록 권한을 변경하십시오.

    chmod +a "user2 allow read,write,execute" /Users/user2/.bashrc

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.