GNU/Linux >> Znalost Linux >  >> Linux

Je možné předefinovat Tildu (‚~‘, domovský adresář)?

Je možné předefinovat domovský adresář? např. na /ext1/username místo /home/username , tj. rozšíření ~ do jiného adresáře (na rozdíl od změny skutečného domovského adresáře, kde jsou umístěny domovské soubory uživatelů).

(Tato otázka je převážně akademická, protože se zdá, že je to špatný postup. Také nemám na výběr v otázce použití csh , přestože jste si přečetli Top 10.)

Přijatá odpověď:

Vlnovka ~ je interpretován vaším shellem. Váš shell bude interpretovat ~ jako krátká forma $HOME .

Zkuste (echo ~; HOME=foo; echo ~) . Toto by mělo nejprve vytisknout váš skutečný domovský adresář a poté „foo“, jak nastavíte $HOME k tomu.

Výchozí hodnota $HOME pochází z vaší konfigurace systému. Použijte getent passwd zobrazí seznam všech známých uživatelů a jejich domovských adresářů. V závislosti na konfiguraci vašeho systému mohou tyto položky pocházet z /etc/passwd nebo jakákoli vzdálená adresářová služba.

Pokud chcete pouze dočasně předefinovat svůj domovský adresář, stačí nastavit jiný $HOME .

Pokud jej chcete trvale změnit, musíte změnit zadání hesla, např. ruční úpravou /etc/passwd .


Linux
  1. Jak SSH do konkrétního adresáře?

  2. Rsync mění oprávnění k adresáři?

  3. Tajemné .adresáře v domovském adresáři?

  1. Jaký má smysl šifrování domovského adresáře?

  2. Jaká by měla být ideální oprávnění k domovskému adresáři v linuxu

  3. Je možné skrýt ztráty+nálezy?

  1. Je možné vysledovat Builtin Commands To Bash?

  2. Hosting Folder v domovském adresáři pomocí nginx

  3. Puppet:Získejte domovský adresář uživatelů