Wireguard при проблемах с приложениями Debian и коммерческих провайдеров

Команда readlink -eне является переносимой, поэтому на нее нельзя полагаться.

$ cat input
Like quills upon the fretful porpentine.
$ ln -s input alink
$ readlink -e alink
readlink: illegal option -- e
usage: readlink [-n] [file...]

Вместо этого в коде Perl замените ссылки именем файла, на который они указывают, используя Perl-функцию readlink, а затем выполните цикл по вводу, как обычно.

$ perl -i -ple 'BEGIN{for(@ARGV){ $_=readlink if -l }} tr/A-Z/a-z/' alink

alinkпо-прежнему является символической ссылкой, а содержимое inputбыло изменено:

$ perl -E 'say readlink "alink"'
input
$ cat input
LIKE QUILLS UPON THE FRETFUL PORPENTINE.

В Perl-скрипте это может выглядеть примерно так

#!/usr/bin/env perl
use strict;
use warnings;

for my $arg (@ARGV) {
    $arg = readlink $arg if -l $arg;
}

# in-place edit with backup filename, perldoc -v '$^I'
$^I = ".whoops";

while (readline) {
    s/#5c616c/#8bbac9/g;
    print;
}

хотя может потребоваться List::Util::uniqили подобное, чтобы избежать изменения одного и того же имени файла два или более раз, если входные данные содержат повторяющиеся имена файлов.

0
26.01.2021, 22:46
1 ответ
~$ modprobe wireguard
 bash: modprobe : commande introuvable

Эту команду следует запускать от имени пользователя root:

sudo apt install -t buster-backports linux-image-amd64
sudo reboot

Отключите безопасную загрузку, как указано @A.B , затем запустите:

Разгрузить мосуле:

sudo modprobe -rv wireguard

Для загрузки модуля:

sudo modprobe -v wireguard

ТАКЖЕ вам необходимо создать файл /etc/wireguard/wg0.conf.

Сервер WireGuard :Debian

1
18.03.2021, 22:34

Теги

Похожие вопросы