AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / user-17560

Pro Backup's questions

Martin Hope
Pro Backup
Asked: 2024-01-19 01:30:09 +0800 CST

如何将文件上的 CR 转换为 CRLF 行结尾?

  • 5

带有行终止符(Mac 样式)的 ASCII 文本文件CR需要转换为带有CRLF行终止符(DOS/Windows 样式)。

搜索CR后面没有LF,并将其替换CR为CRLF。因此重复的命令不会破坏文件(带有CRCRLF)。

我已经尝试过unix2dos,但转换失败。

如何在没有 Python / vim 的情况下在基本 Arch Linux 控制台上转换此文件?

text-processing
  • 2 个回答
  • 45 Views
Martin Hope
Pro Backup
Asked: 2021-10-25 00:22:53 +0800 CST

如何在 OpenSSH 8.8 的 sshd 中启用 ssh-rsa?

  • 3

由于 OpenSSH 8.8 版 ssh-rsa 在 OpenSSH sshd 中被禁用:

$ ssh-audit 1.2.3.4
# algorithm recommendations (for OpenSSH 8.8)
...
(rec) +ssh-rsa                              -- key algorithm to append
...

Archlinux 论坛主题“最新的 sshd 不接受密钥算法”建议:

$ grep PubkeyA /etc/ssh/sshd_config
#PubkeyAuthentication yes
PubkeyAcceptedKeyTypes=+ssh-rsa

尽管该配置片段未在 5.10.74-1-raspberrypi4-ARCH 上的 openssh-8.8p1-1 中启用 ssh-rsa,即使在重新启动sshd.

如何强制 OpenSSH sshd 版本 8.8 启用 ssh-rsa?

arch-linux raspberry-pi
  • 1 个回答
  • 8363 Views
Martin Hope
Pro Backup
Asked: 2018-09-28 05:01:35 +0800 CST

如何在没有名为 root 的用户的情况下修复后缀集权限?

  • 2

我正在尝试Postfix从Entware(嵌入式设备的存储库)进行设置。

没有涉及 SElinux,并且在 master.cf 中禁用了 chroot。

# postconf -n
command_directory = /opt/sbin
compatibility_level = 2
config_directory = /opt/etc/postfix
daemon_directory = /opt/libexec/postfix
data_directory = /opt/var/lib/postfix
debug_peer_level = 2
debugger_command = PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin ddd $daemon_directory/$process_name $process_id & sleep 5
default_database_type = cdb
inet_protocols = ipv4
mail_spool_directory = /opt/var/mail
manpage_directory = no
myhostname = domain.nl
mynetworks = 1.1.2.1,8.9.1.1
queue_directory = /opt/var/spool/postfix
shlib_directory = /opt/lib/postfix
smtputf8_enable = no
unknown_local_recipient_reject_code = 550

问题是postfix set-permissions无法找出root用户名。这个发行版默认带有一个名为“admin”的“root”用户。至少我认为用户名是问题,因为:

# postfix set-permissions
find: unknown user root
# ls -lah /opt/sbin/postdrop
-rwxr-xr-x    1 NewRootUser   root      246.8K Sep  8 22:33 /opt/sbin/postdrop

回归

在https://wiki.zimbra.com/wiki/Steps_to_fix_permission_and_ownership_of_Postfix_binaries_manually_due_to_bug_on_zmfixperm的帮助下,尝试修复差异(755已设置):

# chown AdminUserName:postdrop /opt/sbin/postdrop
# chown AdminUserName:postdrop /opt/sbin/postqueue
# chmod g+s /opt/sbin/postdrop
# chmod g+s /opt/sbin/postqueue

结果:

# postfix check
postsuper: fatal: scan_dir_push: open directory defer: Permission denied

问题

如何使postfix set-permissions学习new root用户名?

或者如何手动做postfix set-permissions应该做的步骤?

或者在后缀源代码中的哪里可以找到为 flag 执行的操作set-permissions?

permissions postfix
  • 2 个回答
  • 6162 Views
Martin Hope
Pro Backup
Asked: 2018-09-07 14:15:33 +0800 CST

除少数特定文件夹外,如何递归删除每个文件和文件夹?

  • 2

手头有 Busyboxash外壳,我希望清理/opt文件夹。

清理意味着递归地删除每个文件和文件夹,除了一些需要保持不变的排除路径。

回归rm

# cd /opt && echo rm -rf \
   ./!(opt/etc/nginx|/opt/home|/opt/etc/config|/opt/usr/sbin|/opt/var/mlocate)
-sh: syntax error: unexpected "("

回归find

这似乎可以完成这项工作:

 # cd /opt && find ./ ! -path "./etc" ! -path "./etc/config" ! \
     -path "./etc/config/*" ! -path "./etc/nginx" ! -path "./etc/nginx/*" ! \
     -path "./home" ! -path "./home/*" ! -path "./usr" ! -path "./usr/sbin" ! \
     -path "./usr/sbin/*" ! -path "./var" ! -path "./var/mlocate" ! \
     -path "./var/mlocate/*" -exec rm -f {} \;; cd -

任何建议如何改进?使用-delete而不是-exec rm -f {} \?处理rm: can't remove '.' or '..'?如何在不递归的情况下删除空目录rm -rf,换句话说如何整合rmdir?


注意:它是 Busybox 1.24.2,shopt两者都没有tac。定义函数:

[, [[, addgroup, adduser, ar, arping, ash, awk, base64, basename, blkid, blockdev, brctl, bunzip2, bzcat,
cat, chgrp, chmod, chown, chroot, clear, cmp, cp, crond, crontab, cryptpw, cut, date, dd, delgroup, deluser,
devmem, df, diff, dirname, dmesg, dos2unix, du, echo, egrep, env, expr, false, fgrep, find, free, fsync,
getty, grep, gunzip, gzip, halt, head, hexdump, hostid, hostname, id, ifconfig, insmod, iostat, ip, ipaddr,
ipcalc, iplink, ipneigh, iproute, iprule, iptunnel, kill, killall, klogd, less, ln, lock, logger, login,
losetup, ls, lsmod, lsusb, md5sum, mkdir, mkfifo, mknod, mkswap, mktemp, more, mount, mv, nc, netmsg,
netstat, nice, nslookup, ntpd, od, passwd, patch, pgrep, pidof, ping, ping6, pivot_root, poweroff, printf,
ps, pwd, readlink, reboot, renice, reset, rev, rm, rmdir, rmmod, route, run-parts, sed, seq, setconsole,
setserial, sh, sha1sum, sha256sum, sha512sum, sleep, sort, start-stop-daemon, stat, strings, stty, su,
swapoff, swapon, switch_root, sync, sysctl, syslogd, tail, tar, tee, telnet, telnetd, test, time, top, touch,
tr, traceroute, true, tty, udhcpc, umount, uname, uniq, unix2dos, unlink, unlzma, unxz, unzip, uptime,
usleep, vconfig, vi, wc, wget, which, xargs, xz, xzcat, yes, zcat
rm busybox
  • 2 个回答
  • 1827 Views
Martin Hope
Pro Backup
Asked: 2018-03-15 08:11:38 +0800 CST

如何在路由器(用于 Nginx)上获取 IETF RFC7919 推荐的 DH 参数文件?

  • 1

根据Mozilla 服务器端 TLS 应该使用预定义的 DH 组ffdhe2048,ffdhe3072或者ffdhe4096由 IETF 在RFC 7919中推荐。

我的路由器正在运行 Nginx(和 Linux),因此ssl_dhparam应该设置。

没有 gnutls 包

但是,路由器的(Entware-NG)包管理系统缺少系统管理员 Adamgnutls建议安装的包。

DH 参数文件

在通过 SSH 运行 padavan(openwrt 派生)分发的路由器上获取 DH 参数文件的简单方法是什么?

nginx ssl
  • 1 个回答
  • 1340 Views
Martin Hope
Pro Backup
Asked: 2018-02-10 15:17:55 +0800 CST

如何使用(13:权限被拒绝)解决重命名()上的 Nginx dav PUT 请求失败?

  • 0

当尝试PUT在现有文件夹的根目录中创建 index.html 文件时,nginx 失败并显示:

[crit] 1181#0: *1 rename() "/opt/spool/nginx/client_temp/1/0000000001"
to "/opt/share/www/domain.tld/index.html-3hlCQ9iE" failed (13:
Permission denied), client: 1.2.3.9, server: host.domain.tld, request:
"PUT /www/domain.tld/index.html-3hlCQ9iE HTTP/1.1", host: "172.21.2.2"

环境

  • 使用来自repo 的nginx-extras1.13.6-1 。entware-3x
  • 在 Padavan 固件上运行。
  • $ grep www-rw /etc/passwd
    www-rw:x:1000:1001:Linux User,,,:/opt/share/www:/bin/sh
    
    $ grep www-w /etc/group
    www-w:x:1001:
    
    $ ls -l /opt/share/www
    drw-rw-r--    2 www-rw   www-w         4096 Feb  9 13:51 domain.tld
    
    $ ls -al /opt/share/www/domain.tld
    drw-rw-r--    2 www-rw   www-w         4096 Feb  9 13:51 .
    drwxr-xr-x    4 www-rw   www-w         4096 Feb  9 13:51 ..
    
    $ ls -l /opt/spool/nginx
    drwxrwxrwx    7 www-rw   root          4096 Feb  9 22:46 client_temp
    
    $ ls -l /opt/spool/nginx/client_temp
    drwx------    2 www-rw   www-w         4096 Feb  9 22:28 5
    
  • 客户:Cyberduck/6.3.3.27341

  • 客户-用户:www-rw

内容nginx.conf

user  www-rw www-w;
server {
    location /www {
        root                  /opt/share;

        client_body_temp_path /opt/spool/nginx/client_temp 1;
        dav_methods PUT DELETE MKCOL COPY MOVE;
        dav_ext_methods PROPFIND OPTIONS;
        # allow creating directories
        create_full_put_path  on;
        dav_access  user:rw  group:r  all:r;
        autoindex   on;
    }
}

回归

  • user nobody nogroup;
  • dav_access user:rw group:r all:r;
  • #autoindex ...
  • 客户-用户:admin

我应该修复什么(在权限中?)以解决 Nginx dav 权限被拒绝错误?

permissions nginx
  • 1 个回答
  • 1999 Views
Martin Hope
Pro Backup
Asked: 2017-12-27 10:57:06 +0800 CST

从哪个版本开始使用 ASH_BASH_COMPAT 构建的busybox ash 包含数组支持?

  • 0

2009 年 3 月 12 日 Denys Vlasenko 写道:

计划实现它——BASH 之类的数组支持——最终是的 ASH_BASH_COMPAT,是的。需要有足够的空闲时间。(非常欢迎志愿者)

由于它的编译启用了哪个busybox版本,包括类似数组的 BASH 支持?ashASH_BASH_COMPAT

array busybox
  • 1 个回答
  • 710 Views
Martin Hope
Pro Backup
Asked: 2017-12-26 04:45:05 +0800 CST

是否有“| cut -f1,2,3 -d:”的参数替换/扩展替代方案,也就是在出现第 n 个字符之后并包括修剪?

  • 7

(在 initramfs 内部)的一个古老版本ipconfig要求其用户输入最多只能提供 7 个冒号分隔的元素,例如:

ip=client-ip:server-ip:gw-ip:netmask:hostname:device:autoconf

ipconfig当用户确实提供超过 7 个元素时会导致错误。

因此额外的(2个DNS解析器)应该被砍掉。

这可以在subshellwith中完成cut,例如:

validated_input=$(echo ${user_input} | cut -f1,2,3,4,5,6,7 -d:)

如何使用参数扩展/替换cut来编写这样的内容?(b)ash

没有:

  • 启动子外壳/子进程(管道)
  • IFS-wrangling/mangling

由于 (1) 速度,请参阅使用 bash 变量替换而不是 cut/awk和 (2) 学习。


换句话说:如何查找第 n 个(第 7 个)字符的出现并从那里删除/修剪所有内容,直到字符串结尾?

string cut
  • 3 个回答
  • 1076 Views
Martin Hope
Pro Backup
Asked: 2017-12-25 07:36:23 +0800 CST

如何使 mkinitcpio busybox ash 源 /etc/profile?

  • 1

Arch Linux/usr/lib/initcpio/busybox由 mkinitcpio-busybox 1.27.2-1 包拥有,并且配置为低功能,例如 CONFIG_FEATURE_USE_INITTAB 未设置。

在包含该busybox的自定义initramfs中,我设法获得了执行源代码/etc/profile工作的ssh网络登录。在 VGA 显示器上还可以看到一个灰壳提示。

但是,“vga”外壳不是 source /etc/profile。问:登录 Shell 和非登录 Shell 的区别?让我觉得这个 shell 不是登录 shell。该外壳由以下启动/init:

exec setsid sh -c 'exec sh </dev/tty1 >/dev/tty1 2>&1'

回归:

  • exec setsid sh -c 'exec sh -i </dev/tty1 >/dev/tty1 2>&1'
  • exec setsid sh -c 'exec sh - </dev/tty1 >/dev/tty1 2>&1'
  • exec setsid sh -c 'exec -sh </dev/tty1 >/dev/tty1 2>&1'

如何使这个busybox ashshell 成为源/etc/profile和/或使其成为(自动)登录 shell?

arch-linux busybox
  • 1 个回答
  • 838 Views
Martin Hope
Pro Backup
Asked: 2017-12-23 03:07:12 +0800 CST

如何在 btrfs 文件系统碎片整理中设置非默认 zstd 压缩级别?

  • 15
# btrfs filesystem defragment -r -v -czstd:15 /
ERROR: unknown compression type zstd:15
# btrfs filesystem defragment -r -v -czstd_15 /
ERROR: unknown compression type zstd_15
# btrfs filesystem defragment -r -v -czstd15 /
ERROR: unknown compression type zstd15

btrfs 手册页没有提供有关如何选择压缩级别的线索:

-c[算法]

碎片整理时压缩文件内容。可选参数选择压缩算法、zlib(默认)、lzo 或 zstd。目前无法选择不压缩。另见示例部分。

如何选择非默认的 zstd 压缩级别来重新压缩现有的 btrfs 文件系统?



注意:快照可能会导致更大的磁盘空间btrfs filesystem defragment消耗:

警告:使用 Linux 内核版本 < 3.9 或 ≥ 3.14-rc2 以及 Linux 稳定内核版本 ≥ 3.10.31、≥ 3.12.12 或 ≥ 3.13.4 进行碎片整理将破坏 COW 数据的引用链接(例如文件使用 cp --reflink、快照或去重数据复制)。这可能会导致空间使用量的显着增加,具体取决于分解的引用链接。

btrfs zstd
  • 3 个回答
  • 13892 Views
Martin Hope
Pro Backup
Asked: 2017-12-11 13:09:04 +0800 CST

如何触摸目录中的所有内容,包括隐藏的,如目录向上`..`?

  • 0

这个问题与“触摸目录中的所有文件夹”问题相似。

如何将touch目录中的所有内容,

  • 递归地
  • 包括隐藏条目,如“目录向上”..和.
  • 不取消引用符号链接touch -h和
  • 使用参考文件touch -r <file>作为时间戳源

    从shell 脚本中?

bash shell-script
  • 1 个回答
  • 1842 Views
Martin Hope
Pro Backup
Asked: 2017-12-08 02:34:19 +0800 CST

如何在 shell 脚本中将 /dev/disk/by-* 解析为设备?

  • 0

在(Bash)shell 脚本中,我确实希望将分区标签 - fe /dev/disk/by-label/X- 解析为相应的设备(分区)编号:/dev/sdX1.

我该如何解决/dev/disk/byto /dev/sdX?

partition scripting
  • 1 个回答
  • 217 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    模块 i915 可能缺少固件 /lib/firmware/i915/*

    • 3 个回答
  • Marko Smith

    无法获取 jessie backports 存储库

    • 4 个回答
  • Marko Smith

    如何将 GPG 私钥和公钥导出到文件

    • 4 个回答
  • Marko Smith

    我们如何运行存储在变量中的命令?

    • 5 个回答
  • Marko Smith

    如何配置 systemd-resolved 和 systemd-networkd 以使用本地 DNS 服务器来解析本地域和远程 DNS 服务器来解析远程域?

    • 3 个回答
  • Marko Smith

    dist-upgrade 后 Kali Linux 中的 apt-get update 错误 [重复]

    • 2 个回答
  • Marko Smith

    如何从 systemctl 服务日志中查看最新的 x 行

    • 5 个回答
  • Marko Smith

    Nano - 跳转到文件末尾

    • 8 个回答
  • Marko Smith

    grub 错误:你需要先加载内核

    • 4 个回答
  • Marko Smith

    如何下载软件包而不是使用 apt-get 命令安装它?

    • 7 个回答
  • Martin Hope
    user12345 无法获取 jessie backports 存储库 2019-03-27 04:39:28 +0800 CST
  • Martin Hope
    Carl 为什么大多数 systemd 示例都包含 WantedBy=multi-user.target? 2019-03-15 11:49:25 +0800 CST
  • Martin Hope
    rocky 如何将 GPG 私钥和公钥导出到文件 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Evan Carroll systemctl 状态显示:“状态:降级” 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim 我们如何运行存储在变量中的命令? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S 为什么 /dev/null 是一个文件?为什么它的功能不作为一个简单的程序来实现? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 如何从 systemctl 服务日志中查看最新的 x 行 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - 跳转到文件末尾 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla 为什么真假这么大? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis 在一个巨大的(70GB)、一行、文本文件中替换字符串 2017-12-30 06:58:33 +0800 CST

热门标签

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve