J'ai finalement réussi à étudier et comprendre les liens durs dans ma quête pour vérifier que j'avais bien compris les bases, ce que j'ai réussi à éviter beaucoup. Après avoir réalisé à quel point ils sont brillants, je me demande pourquoi ils ne sont pas mieux supportés par le gestionnaire de fichiers par défaut d'Ubuntu, Nautilus.
Pour le moment, il n’existe qu’une option pour créer un lien vers un fichier, ce qui créera un lien "souple".
Le problème avec ceci est qu'ils cassent dès que vous déplacez ou renommez le fichier original.
Existe-t-il un moyen de faire en sorte que Nautilus crée un lien solide, ou une sorte d’addon/script/configuration/Tweak que je puisse faire pour ajouter l’option dans le menu contextuel, ou un raccourci clavier, pour créer un lien solide fichier?
Apparemment, cette option a été volontairement supprimée il y a des années. De la rubrique Création de liens physiques de bugzilla.gnome.org:
Presque aucun de nos utilisateurs ne connaît le concept de lien dur, alors pourquoi devrions-nous le confondre et même risquer de perdre des données? Vous pouvez utiliser Nautilus-open-terminal et créer des liens physiques manuellement.
La bonne nouvelle est que vous pouvez créer cette option à l'aide du package Nautilus Actions .
1. Installez d'abord le paquet nautilus-actions
:
Sudo apt update
Sudo apt install nautilus-actions
Ou utilisez le logiciel Ubuntu:
2. Exécutez le programme:
3. Allez dans "Préférences" et décochez "Créer un menu Action Nautilus racine":
Lorsque cette option est cochée, dans le menu contextuel aura sous-menu, etc.
4. Cliquez sur le bouton Définir une nouvelle action et remplissez les données dans le champ. Action onglet. En tant que libellé de contexte , vous pouvez utiliser Make Hard Link
, cochez également uniquement l'option Display item in selection context menu
- autrement dit, affichez cet élément lorsqu'un fichier est sélectionné.
5. Allez dans l’onglet Commande et remplissez les paramètres:
Profil :
Default profile
- s'il n'y a pas de profil personnalisé.Commande :
/bin/ln
- chemin d'accès au fichier exécutable (ou à la commande).%f 'Hard Link to %b'
- cliquez sur le bouton Étiquette pour plus d'informations.%d
- désigne le répertoire en cours.6. Parce que les liens physiques dans le répertoire cassent le système de fichiers de plusieurs façons nous devons désactiver cette possibilité. Allez dans l'onglet Mimetypes et ajoutez un nouvelle règle :
inode/directory
,Must not match any of
sélectionnée.7. Enregistrez l'action Faire un lien dur :
8. Exécutez Nautilus et utilisez l’action Créer un lien dur dans le menu contextuel. :
De plus, si vous souhaitez sauvegarder vos paramètres:
$HOME/.config/nautilus-actions/nautilus-actions.conf
contient les préférences d’Actions Nautilus.$HOME/.local/share/file-manager/actions/
.EDIT: Solution utilisant un script
Le même résultat peut être obtenu via un script, place dans $HOME/.local/share/nautilus/scripts/
.
Ce script pourrait ressembler à:
~$ cat "$HOME/.local/share/nautilus/scripts/Make Hard Link"
#!/bin/bash
if [ -f "${1}" ]
then
ln "$1" "Hard Link to $1"
fi
Nous pouvons créer ce script et lui donner des autorisations exécutables via une seule commande:
SNAME="$HOME/.local/share/nautilus/scripts/Make Hard Link"; \
printf '#!/bin/bash\n\nif [ -f \"${1}\" ]\nthen\n\tln \"$1\" \"Hard Link to $1\"\nfi\n' |\
tee "$SNAME"; \
chmod +x "$SNAME"
Le résultat sera:
Références: