Cygwin-Heimatort geändert, jetzt kann das Terminal meine .minttyrc-Konfigurationsdatei nicht finden

4743
Shaun

Ich musste den HOMESpeicherort für Cygwin ändern, indem ich das Verzeichnis, in das ich eingestellt habe, abhängt /etc/passwd(nach der Lösung von hier aus ). Für die Mehrzahl meiner Konfigurationsdateien scheint es kein Problem zu sein. .bashrcund .vimrcwerden wie erwartet gelesen.

Die Konfiguration für meine .minttyrcDatei wird jedoch nicht übernommen. Es wird mit den Standardfarben geladen. Wenn ich versuche, eine neue Einstellung über Windows hinzuzufügen, klicken Sie mit der rechten Maustaste auf die Titelleiste und wählen Sie Optionen. Daraufhin wird ein Fehler angezeigt:

Could not save options to '[old home directory]': No such file or directory. 

Wenn ich das alte Home-Verzeichnis neu aufbaue und die .minttyrcDatei dort ablege, funktioniert es einwandfrei. Gibt es einen Ort, an dem ich den Speicherort für den Standort .minttyrcseparat aktualisieren muss ?

1
Sie sollten überhaupt nicht HOME einstellen. Cygwin macht die richtige Magie. Haben Sie HOME in der Windows-Umgebung eingestellt? DavidPostill vor 8 Jahren 0
Ich glaube nicht, dass die Lösung in Ihrem Link mit den neuesten Versionen von Cygwin funktionieren wird. Der Cygwin-Startcode wurde komplett neu geschrieben. Nun ist zum Beispiel / etc / password nicht mehr erforderlich. Weitere Informationen finden Sie unter [ich kann die Datei etc / passwd in cygwin nicht finden] (http://stackoverflow.com/q/28573763) und https://cygwin.com/cygwin-ug-net/ntsec.html So ändern Sie Ihr Heimatverzeichnis richtig. DavidPostill vor 8 Jahren 0
@DavidPostill Bei der Arbeit hat mein PC die Umgebungsvariable HOME auf einen Ordner in einem Netzlaufwerk gesetzt. Bei der Installation von Cygwin wurde ein Duplikat dieses Ordners auf meinem Desktop erstellt. Er wollte diesen Ordner als HOME-Ordner verwenden. Ich habe es im `home'-Unterverzeichnis meiner Cygwin-Installation geändert. Ich habe die Zeile `db_home` in` / etc / nsswitch.conf 'wie von Ihnen vorgeschlagen eingerichtet, und die anderen Konfigurationsdateien werden ordnungsgemäß ausgeführt. Aber es ist immer noch nicht am richtigen Ort für `.minttyrc`. Shaun vor 8 Jahren 0
Wie fängst du an? DavidPostill vor 8 Jahren 0
Fügen Sie Ihrer Mintty-Startverknüpfung "-c ~ / .minttyrc" hinzu, beispielsweise "C: \ cygwin \ bin \ mintty.exe -c ~ / .minttyrc -i /Cygwin-Terminal.ico -`" DavidPostill vor 8 Jahren 0
`-c FILE` ist die angegebene Konfigurationsdatei laden DavidPostill vor 8 Jahren 0
Das hört sich vielversprechend an. Es hat gut auf meinem Heimcomputer funktioniert, also probiere ich es aus, wenn ich am Montag wieder zur Arbeit komme. Shaun vor 8 Jahren 0
Ich schreibe es dann als Antwort auf;) DavidPostill vor 8 Jahren 0
@DavidPostill, ich habe eine [verwandte Frage] (http://superuser.com/questions/942908/changing-the-home-for-cygwin) veröffentlicht, weil ich denke, das Problem könnte so sein, wie Sie es in den Kommentaren angedeutet haben, nämlich mein Zuhause Das Verzeichnis wird nicht richtig eingestellt. Das Heimatverzeichnis schien richtig eingestellt zu sein, aber nach einem Neustart wurde es erneut durcheinander gebracht. Ich habe versucht, eine Neuinstallation von Cygwin einzurichten, um alle Anpassungen zu entfernen, die ich durch das Einrichten von home aus `/ etc / passwd` vorgenommen hatte, und es konnte das richtige Ausgangsverzeichnis nicht mehr finden, selbst wenn es in der` / etc / nsswitch.conf 'angegeben wurde Datei. Shaun vor 8 Jahren 0

1 Antwort auf die Frage

2
DavidPostill

Das Terminal kann meine .minttyrc-Konfigurationsdatei nicht finden

Du kannst den ... benutzen -c file Option verwenden, um den Speicherort der Mintty-Konfigurationsdatei anzugeben.

Am einfachsten können Sie dies tun, indem Sie Ihre Mintty-Verknüpfung auf ändern

C:\cygwin\bin\mintty.exe -c ~/.minttyrc -i /Cygwin-Terminal.ico - 

Ändern Sie die Einstellungen für Ihr Cygwin-Setup entsprechend.


Lesen Sie weiter

$ mintty --help Usage: mintty [OPTION]... [ PROGRAM [ARG]... | - ]  Start a new terminal session running the specified program or the user's shell. If a dash is given instead of a program, invoke the shell as a login shell.  Options: -c, --config FILE Load specified config file -e, --exec Treat remaining arguments as the command to execute -h, --hold never|start|error|always Keep window open after command finishes -i, --icon FILE[,IX] Load window icon from file, optionally with index -l, --log FILE|- Log output to file or stdout -o, --option OPT=VAL Override config file option with given value -p, --position X,Y Open window at specified coordinates -s, --size COLS,ROWS Set screen size in characters -t, --title TITLE Set window title (default: the invoked command) -u, --utmp Create a utmp entry -w, --window normal|min|max|full|hide Set initial window state --class CLASS Set window class name (default: mintty) -H, --help Display help and exit -V, --version Print version information and exit 
Hat in meiner Arbeitsumgebung aufgrund der "HOME" -Situation nicht funktioniert, aber ich habe es zu Hause ausprobiert, indem ich die minttyrc-Konfiguration an eine andere Stelle stellte und den in der Verknüpfung angegebenen Pfad aktualisiert habe. Es hat wie erwartet funktioniert. Shaun vor 8 Jahren 1