服务器开发

使用for循环删除最后一个字符

我有一个输入需要查询,但如果查询返回NULL,则应该删除输入中的最后一个字符,然后将再次使用它进行查询,直到从表读取值。 输入:123456 查询:select col1 from table where input='123456';--空输出 输入:12345 查询:select col1 from table where input='12345';--空输出 ..
发布时间:2022-09-23 15:02:31 服务器开发

创建指向另一个符号链接的符号链接是否有任何副作用?

在Linux机器上创建指向另一个符号链接的符号链接是否有任何副作用(特别是在性能方面)? 推荐答案 总的来说,没有。从技术上讲,间接寻址会对非常造成轻微的性能影响,但对您的应用程序来说不会太明显。例如,大多数共享库都是指向符号链接的符号链接(例如,libQtCore.so->libQtCore.so.4->libQtCore.so.4.7->libQtCore.so.4.7.1)。 ..
发布时间:2022-09-23 12:06:19 服务器开发

如何使用Python实时获取大文件的复制进度?

我到处找,每次我都找到看起来很有希望的东西,但都没有找到结果。 最终,我希望从Python内部获取Linux机器上的文件复制的实时进度。我将获取该进度并将其发送到带有FlaskSocketIO的客户端网页,该网页很可能是线程化的,以避免阻止。 我不介意使用rsync、复制或任何其他方法...(Shutil等)来处理实际的复制。我只需要一个挂钩来通过套接字推送更新。 到目前为止,我 ..
发布时间:2022-09-21 14:23:54 服务器开发

如何在Ubuntu和APACHE服务器上用Flask读写文件

我正在尝试部署一个使用Flask来写入和读取PNG图像的应用程序。我可以在本地运行我的脚本,没有错误,除非我在我的服务器上运行它。 我在DigitalOcean上使用此guide进行部署。它使用的是阿帕奇、WSGI和Virtualenv。 这是我的代码示例: from flask import Flask from flask import send_file from PIL ..
发布时间:2022-09-20 18:20:42 服务器开发

Telnet自动化脚本有时会失败

我正在运行以下简单的telnet脚本,该脚本只需登录到计算机并退出。 相同的脚本在一台Linux服务器上运行良好(经过1000次迭代),但在另一台Linux服务器上失败(持续失败)(比方说在200次尝试后失败)。 在失败情况下,失败所需的迭代次数各不相同,但失败是持久的。 #!/usr/bin/perl use Net::Telnet; my $loop = 0; my $dump ..
发布时间:2022-09-04 23:14:27 服务器开发

在tar命令中排除某些文件夹不起作用

我运行此命令来压缩当前文件夹的内容,同时排除一些目录: mahmood@mpc:set3-HHLL$ l file1.txt a/ c/ file2.inp b/ ... mahmood@mpc:set3-HHLL$ tar cvjf ../set3.tar.bz2 * --exclude=a/ --exclude=b/ --exclude=c/ 但是,我在输 ..
发布时间:2022-08-27 09:09:34 服务器开发

在tar文件中获取文件字节偏移量(和长度)的方法

我有一个包含数百万个文件的大型tar文件。出于效率原因,我不想将文件解压缩到磁盘。 相反,给定一个所需的文件名,我想编写一个脚本(例如,Python)来从tar文件中提取相关的数据块。 有没有一种简单的方法可以创建一个索引,告诉我tar文件中每个文件的起始字节和长度,例如,我可以将其作为索引转储到磁盘中,以便在上述Python脚本中使用? 也许tar命令可以做到这一点,但我在手册 ..
发布时间:2022-08-27 09:00:54 服务器开发

将tar.gz打包到一个外壳脚本中

我想知道如何将tar.gz文件打包到一个外壳脚本中,就像idk**.bin所做的那样。这样我就可以在一个外壳文件中交付程序,而不是tar.gz 推荐答案 有Linux Journal article详细解释了如何做到这一点,并提供了打包有效负载的代码等。正如Etan Reisner在他的评论中所说,提取/安装脚本知道如何截断它的尾巴以获得先前连接的有效负载。以下是其工作原理的一个示例: ..
发布时间:2022-08-26 23:55:11 服务器开发

Libvlc-保留在视频之间打开的窗口

我在libvlc中使用了python包装器来播放视频。问题是,在我停止以前的视频播放并开始播放新的视频后,窗口重新打开。我正在尝试实现这样一种状态,即窗口仍处于打开状态,并且我可以在此窗口中更改视频,而不会在其后面闪烁桌面。 import time import vlc i = vlc.Instance() media_player = i.media_player_new() med ..
发布时间:2022-08-26 16:15:29 服务器开发

Cmake在构建BornAain时出现错误(未找到pthline_create)

我正在尝试在运行最新版本的Fedora 32的计算机上构建BornAain软件。我以前成功地做到了这一点,但我甚至不知道从哪里开始我收到的错误。在我的终端中,我收到以下错误: > [sjoerd@dhcp-10-240-34-181 ~]$ sudo cmake -DCMAKE_INSTALL_PREFIX=/home/sjoerd/.BornAgain /home/sjoerd/BornA ..
发布时间:2022-08-25 18:20:03 服务器开发

Docker容器只能通过Cloudflare CDN访问(部分IP范围)

我在坞站容器中有Web服务器,但我无法在我的主机(Debian)上配置iptable。我希望只允许指定的IP地址在端口80和443上连接到我的计算机(主机)。端口22应该可以从任何IP访问。在我的情况下,允许的应该是Cloudflare IP地址。CloudFlare IPS位于https://www.cloudflare.com/ips-v4。 如何正确阻止端口80和443上的非Cloud ..
发布时间:2022-08-25 13:32:46 服务器开发

使用具有给定ID的BG和FG

我正在使用Ubuntu。 如果为我指定了作业的ID,我如何将暂停的作业转到后台/前台和运行状态? 我知道bg/fg,但它们需要job id不需要PID。 另外,我使用 暂停作业 kill -STOP 我知道我可以用 kill -CONT 但我不知道如何使用此ID的bg和fg命令。 编辑:我想说清楚: 场景:我有一个暂停的作业, ..
发布时间:2022-08-24 10:00:10 服务器开发

LD--导出--仅针对一个库的动态?

可以将--export-dynamic传递给ld,这将导出程序中的符号(以便它们可用于运行时加载的任何共享库): $ cat > test.c void foo() {} int main() { foo(); } ^D $ gcc test.c $ nm -D a.out | grep foo ...没什么。现在: $ gcc -Wl,--export-dynamic te ..
发布时间:2022-08-23 11:59:18 服务器开发

如何设置DT_RPATH或DT_RUNPATH?

在Linux上,ld.so(8)手册页讨论了动态库的搜索顺序。它说DT_RPATH已弃用,还提到了DT_RUNPATH。未提及-rpath链接器选项。 ld(1)手册页提到-rpath和-rpath-link选项,但从未提及DT_RPATH或DT_RUNPATH,除非是在说明库搜索顺序中,这当然与ld.so(8)中提供的信息不匹配。 最后是一个LD_RUN_PATH环境变量。ld(1)表示 ..
发布时间:2022-08-23 10:20:17 服务器开发

无法再进行Sudo Su,";不存在,也没有指定askpass程序";

我有一个根服务器,我在其中禁用了通过根用户登录,并在sudoer列表中创建了另一个用户。因此,当我想在服务器上工作时,我会这样做: ssh myusername@IP_ADDRESS 在服务器上: sudo su 输入我的密码以获得超级用户权限。这在过去的6个月里一直运行良好。今天,我在执行sudo su: 时收到此消息 sudo: no tty present and n ..
发布时间:2022-08-20 14:11:29 服务器开发