Unix & Linux

Linux,FreeBSD和其他类似Un * x的操作系统用户的问答

3
BASH和回车行为
我有一个简单的问题。 bash(我使用的是4.4.11)显示的行/文本以纯文本分隔/结尾是否正常\r? 我对这种行为感到有些惊讶: $ a=$(printf "hello\ragain\rgeorge\r\n") $ echo "$a" george 但是“ hello again”文本仍然存在,以某种方式“隐藏”: $ echo "$a" |od -w32 -t x1c 0000000 68 65 6c 6c 6f 0d 61 67 61 69 6e 0d 67 65 6f 72 67 65 0d 0a h e l l o \r a g a …

1
为什么我的文件名在Linux中看起来是“普通”的,而在Windows中却不是远程的?
与同事一起工作时,我发现了一个奇怪的问题,似乎与编码有关。我们正在与具有足够简单的文件名,如一些图像时city.gif或wine.gif,但正如人们所预料的事情开始使用特殊字符,例如当更多复杂的é,ë,à。我们还正在处理具有这些字符的荷兰数据,例如café(pub)。(我们无法控制文件的来源。)这是开始出现问题的地方。以下文件名仅是示例。带有变音符号的其他字符也会出现此问题。 café-2.png cafetaria.png café.png 第一项和最后一项应在其中带有重音符号e(重音aigu,é)。这样便可以在Linux(CentOS 6和7)的终端上运行它ls。但是Windows来了!(使用Windows 10,64位。)在Windows上通过SSL与我们的服务器通过SSL连接,然后调用时ls,上面的列表如下所示: café-2.png cafetaria.png caf▒.png 如您所愿,第一行仍带有重音符号e é,而第三行则没有。相反,我看到了▒这个字符-它是medium shadeunicode(十进制数为1818)。这本身很奇怪。但是,当我通过SFTP和Filezilla(仍在Windows上)连接时,会看到以下内容: café-2.png cafetaria.png café.png 因此,现在情况有所好转:在第一个中,é已更改为顺序,在第三个中,一切都很好。我在这里发现,这很可能是由于Latin-1 <-> UTF-8转换出错(如果我正确的话)。但这不可能是所有发生的事情,对吧? Linux显示了我们所期望的一切,Windows显示了似乎不一致的行为,具体取决于我们查看文件名的方式(SSH(putty)或SFTP(filezilla))。有没有一种方法可以“标准化”这些文件名(即编辑它们),并确保每个操作系统上的文件名都相同;或至少是一致的,如果是的话,如何?UTF-8是我们选择的编码。 即使这可能只是一个美学问题,但事实并非如此。尝试从Linux服务器通过Windows中的SFTP下载内容时,我无法下载出现上述问题的文件。Filezilla将抛出诸如的错误Can't download file café-2.png: café-2.png does not exist on the server。在我看来,Filezilla会读取目录和文件名,以某种编码对其进行解释,然后将GET请求及其解释发送给服务器,但是该解释与Linux文件名不同,因此找不到该文件。 最终,如果有解决方案,那将是很好的,尽管我也对为什么会发生这种情况感兴趣。是否因为映像文件可能是在不同的操作系统上创建而发生的?是因为Linux服务器将其解释为错误而发生,还是Windows混乱了?希望有一种解决方案,我们可以联系我们的系统管理员,要求他们打开服务器配置中的开关,但恐怕并非如此简单。

1
使用服务或systemctl在启动时控制openvpn守护程序?
我正在基于Debian的系统上工作,并且仍在学习systemctl vs service,但正在尝试将我的openvpn配置用作解决此问题的用例。 在当前设置中,我openvpn对启动时似乎如何启动以及如何对其进行管理感到困惑。 在启动时,这些是openvpn已经启动的进程: > ps aux | ag 'openvpn' nobody 952 0.0 0.0 5800 1108 ? Ss 13:29 0:00 /usr/sbin/openvpn --daemon ovpn-server --status /run/openvpn/server.status 10 --cd /etc/openvpn --config /etc/openvpn/server.conf root 1537 0.0 0.1 6088 2544 ? Ss 13:30 0:00 /usr/sbin/openvpn --daemon --auth-nocache --config /root/.vpn_conf/pia.ovpn 我仍然不知道是什么控制着它们在启动时启动。 第一个proc是服务器(我希望禁用),另一个是我希望保留并继续使用的客户端。 我的理解是可以systemctl用来列出所有服务: > …
11 openvpn  services 


1
将文本格式化为列
我有一个两列的文件,如下所示(示例): 文件1: John 1 Peter 2 Michael Rod 3 Su 7 Louise 9 我需要格式化它,我的预期输出应该是: 文件1: John 1 Peter 2 Michael Rod 3 Su 7 Louise 9

2
dig如何找到我的WAN-IP地址?“ myip.opendns.com”在做什么?
我需要从路由器自动获取自己的WAN-IP地址。我发现了这个问题,并提出了挖掘解决方案: dig +short myip.opendns.com @resolver1.opendns.com 它运行完美,但是现在我想了解它在做什么。到目前为止,这是我(希望)理解的(如果我错了,请纠正我): +short 只是给我一个简短的输出 @resolver1.opendns.com 是dns服务器,询问是哪个IP地址属于给定域 我不清楚myip.opendns.com。如果我改写www.spiegel.de,我将获得域名www.spiegel.de的IP地址,对吗?有了myip.opendns.com我的路由器的WAN-IP。那么,myip.opendns.com只是模拟一个解析到我的路由器的域吗?它是如何做到的?它从哪里获得我的IP?与正在运行的网页(例如www.wieistmeineip.de)有什么不同?他们还尝试获取我的IP。 在Krinkle对我提到的问题的回答中,有人说,这种“ dns方法”会比“ http方法”好吗?为什么更好,有什么区别? 一定有所不同,因为我从dig +short myip.opendns.com @resolver1.opendns.com(ip1)那里获得的WAN-IP 是我也可以在路由器的Web界面中看到的,而www.wieistmeineip.de(以及其他类似站点)也给了我另一个ip地址(ip2) )。我可以想象我的ISP使用的是某种子局域网,因此我对Web服务器的请求正在通过另一个具有ip2的(ISP-)路由器,因此www.wieistmeineip.de只能看到此地址(ip2)。但是,那又myip.opendns.com在做什么呢? 另外:从我的局域网内打开ip1可以从我的raspi中获得测试网站,而无法从我的局域网(移动互联网)的外部打开它。这是否意味着ip1不是适当的“ Internet ip”,而是更像LAN ip?
11 dns  dig  dyndns 



2
更新三星840 Pro的固件
我有一个Samsung 840 PRO系列SSD,并且想要更新其固件,以便找到此问题的替代解决方案。 我从此页面下载了“用于企业SSD的三星魔术师软件”,因为三星仅为Windows的消费者SSD提供魔术师。根据此reddit帖子的最高答复,它应该可以工作。 但是,在确定我的SSD的ID时,魔术师声称没有找到三星SSD,即使当前与笔记本电脑相连的唯一存储介质是第一段中提到的SSD。 # ./magician -L ================================================================================================ Samsung(R) SSD Magician DC Version 2.0 Copyright (C) 2015 SAMSUNG Electronics Co. Ltd. All rights reserved. ================================================================================================ Magician is now configuring the environment for LSI MegaRAID SAS. Magician is now configuring the environment for LSI SAS IT/IR Controller. Magician is now …
11 ssd  firmware  samsung 


3
`>> / dev / stderr`(带有空格)和`>&2`有什么区别?
猛扑 我在确定应该使用什么方面遇到一些困难? 我所有的脚本都使用“ >> / dev / stderr” 在bash提示下,如果我尝试: echo test >>/dev/stderrworks echo test >> /dev/stderrworks echo test >/dev/stderrworks echo test > /dev/stderrworks echo test >>&2失败! echo test >> &2失败! echo test >&2作品 echo test > &2失败! 我愿意将所有脚本更改为>&2。 它对ssh似乎也有很大的影响(在之后su SomeUser),在ssh >>/dev/stderr根本不起作用(权限被拒绝),只会>&2起作用。

1
mdstat中位图的含义是什么
不久前,我mdadm用RAID6中的4个驱动器创建了新的软件RAID阵列()。似乎工作正常。mdstat如下: Personalities : [raid6] [raid5] [raid4] md0 : active raid6 sda1[0] sde1[3] sdd1[2] sdb1[1] 1953260544 blocks super 1.2 level 6, 512k chunk, algorithm 2 [4/4] [UUUU] bitmap: 0/8 pages [0KB], 65536KB chunk unused devices: <none> 困扰我的是那bitmap: 0/8 pages部分,我不理解。 问题是:这是否是潜在的问题?并且请详细说明一下位图的实际含义。 该数组的完整细节如下: /dev/md0: Version : 1.2 Creation Time : Tue Nov 1 …

3
如何播放Audible的AAX有声读物?
我在Audible买了一些有声读物。默认的.aa文件在VLC中可以正常播放,但是质量很差-任何讲话期间都会有持续的背景嗡嗡声。它们的增强质量的音频文件在VLC中打开,该文件显示前奏,章号和进度指示器,但没有声音。是否可以解决此问题(Linux和开源软件是我关心的两个参数)? 最新的VLC(2.2.4)显示.aax文件的以下编解码器信息: 流0 类型:音频 编解码器:MPEG AAC音频(aavd) 英语语言 采样率:44100 Hz 每个样本的位数:16 比特率:1411 kb / s 流1 类型:字幕 编解码器:tx3g 英语语言
11 arch-linux  vlc  drm 

1
使用systemd配置Java守护程序
我在工作中使用此定义systemd: [Unit] Description=Some job [Service] ExecStart=/usr/local/sbin/somejob User=dlt Type=forking [Install] WantedBy=multi-user.target 调用脚本的方式如下(调用一个简单的例程,该例程在tcpip套接字上侦听并将输入追加到文件中): #!/bin/sh cd /home/user/tmp/testout nohup java -jar /home/user/programming/tests/java/core/SocketTest/SocketTest.jar </dev/null >/dev/null & After systemctl start somejob进程显示为正在运行,以init其父进程为例: user@CANTANDO ~$ ps -u dlt eo pid,ppid,command PID PPID COMMAND 8718 1 java -jar /home/user/programming/tests/java/core/SocketTest/SocketTest.jar 执行systemctl stop somejob完该过程后,不再显示(端口已关闭)。 所以一切似乎都很好 我的问题是:这是使用,运行Java守护程序的可接受解决方案systemd,还是存在警告,因此还有其他更稳定或安全的方法来实现这一目标?
11 systemd  java  daemon 

2
添加永久路线的最佳方法是什么?
我需要添加重新启动后不会删除的路由。我阅读了以下两种方法: 添加 up route add -net 172.X.X.0/24 gw 172.X.X.X dev ethX到文件 /etc/network/interfaces 要么 使用以下命令创建文件/etc/network/if-up.d/route: #!/bin/sh route add -net 172.X.X.0/24 gw 172.X.X.X dev ethX 并使其可执行: chmod +x /etc/network/if-up.d/route 所以我很困惑。最好的方法是什么?
11 debian  centos  rhel  route 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.