2つのMacユーザーアカウント間で.bashrcファイルを共有する方法


11

コンピューターに2つのユーザーログインを設定しました。1つは自宅用、もう1つは仕事用です。2人のユーザー間でbashとvimの設定を共有できるようにしたいと思います。とにかくこれを行うにはありますか?これまでは、あるアカウントから別のアカウントにファイルをコピーしてきましたが、1つの場所でのみ変更を加えることができるように、2つのファイルの間に1つのファイルのみを配置できるようにしたいと考えています。これは可能ですか?ありがとう。

回答:


11

このlnツールを使用して、シンボリックリンクを作成できます。

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

この例では、のディレクトリuser2にある既存のファイルを指す新しいリンクを作成していますuser1sudo ln ...権限が正しく設定されていない場合は、使用する必要がある場合があります。


5
このコンテキストでは、おそらくハードリンクする方が良いため、1つのユーザーアカウントを削除しても、残りのアカウントの.bashrcファイルは削除されません。
Gerry

それを行う-sには、lnコマンドのオプションを省略します
MattDMo

3
さらに、これを行いますが、bashrcを共有Dropboxフォルダーに配置して、使用するすべてのマシンで使用できるようにし、バックアップします。
Dean

11

これを達成する方法はたくさんありますが、私が見た一般的なイディオムは、各ユーザーのホームフォルダーの外に単一のファイルをインストールし、共通ファイルに〜/ .bashrcファイルの両方のソースを含めることです。

これにより、明確になり、後日ユーザーレベルの変更を行う可能性がありますが、一方または両方のユーザーが後日削除されても存続する1つのファイルのみが維持されます。

ファイルをハードリンクするよりも少し手間がかかります。ソフトリンクをこの種のものに使用した私の経験では、一部のツールはソフトリンク(またはsym)リンクを処理できず、期待どおりに処理できないためです。

コードコントロールを使用してファイルをデプロイするよりもはるかに簡単ですが、gitやmercurial、または別のバージョンコントロールシステムをセットアップする場合は、変更を管理する優れた方法でもあります。


このソリューションの+1、ここでgitを使用して実装しました-github.com/balupton/dotfiles-私が見つけた大きな利点は、OS(osx、ubuntu、fedora)に関係なく、カスタム構成を簡単にインストールして使用できることですなど)マシン固有の構成を通常どおり維持できますが、それらの間で同期する共通構成のソースを使用できます。
balupton 2013

8

/ etc / bashrcにあるシステム全体の.bashrcを編集できます。

ただし、Gitに少し慣れている場合は、「ドットファイル」のリポジトリを作成することを検討してください。これには、無料のGithubリポジトリを使用できます。このような方法でドットファイルを追跡することには、多くの利点があります。

  • 利用可能な多数の公開dotfilesリポジトリの1つからフォークまたはプルするか、それらからインスピレーションを得ることができます
  • さまざまなユーザーアカウントやさまざまなマシンにドットファイルを簡単にインストールして更新できます
  • リビジョンコントロールを取得します。これにより、長期的にはいくつかのトラブルを回避できます。

また、インストールにより正しい権限が与えられます
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.