Ich möchte eine modernere Version von GNU-Utils (coreutils) auf einem Debian-Linux-System installieren, auf dem ich keine Administratorrechte habe. Gibt es eine Möglichkeit, das zu tun?
Das Grundprinzip ist, dass ich eine modernere Version als die benötige, die auf dem System installiert ist, auf dem ich meine Analyse ausführen möchte. Ich versuche, mit "sort -R" oder "shuf" Zeilen in einer großen Textdatei zufällig zu sortieren.
Antworten:
Sie können sie nicht in dem Sinne installieren, dass sie die vorhandenen für alle Benutzer des Systems überschreiben. Sie können sie jedoch in Ihrem Ausgangsverzeichnis kompilieren und installieren und so konfigurieren
PATH
, dass sie anstelle der Systembenutzer ausgeführt werden.Laden Sie dazu die neueste Version von coreutils von der GNU-Website herunter . Extrahieren Sie dann das Archiv und führen
cd
Sie die folgenden Befehle aus, um es zu kompilieren und zu installieren. Beachten Sie den--prefix
Schalter, mit dem Sie das Verzeichnis konfigurieren können, in dem es installiert werden soll.Die meisten Debian-Systeme sind so konfiguriert, dass
~/bin
sie Ihrem PATH automatisch hinzugefügt werden . In diesem Fall können Sie die Dienstprogramme in dieses Verzeichnis kopieren. Möglicherweise ist es jedoch nicht so konfiguriert, dass ausführbare Dateien in diesem Verzeichnis ausgeführt werden, bevor Systemverzeichnisse durchsucht werden, oder Sie möchten sie in einem eigenen Verzeichnis aufbewahren. In diesem Fall müssen Sie Ihr bearbeiten~/.profile
, um dieses Verzeichnis zu durchsuchen, bevor Sie die Systemverzeichnisse durchsuchen können. Fügen Sie dazu eine Zeile wie die folgende hinzu:Wenn Sie sie nicht kompilieren möchten, können Sie sie auch aus einem neueren Debian-Paket extrahieren, indem Sie
ar vx
in der.deb
Datei eindata.tar.gz
Tarball mit dem Paketinhalt ausgeben . Für neuere Pakete sind jedoch möglicherweise neuere Bibliotheken erforderlich, die auf Ihrem System nicht vorhanden sind.quelle
PATH=...
müssen doppelte oder keine Anführungszeichen verwendet werden. Die Verwendung von einfachen Anführungszeichen führt dazu, dass das Literal$HOME
und$PATH
nicht deren Werte eingefügt werden.