Unix & Linux

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


1
JAVA_HOME和update-alternatives有什么区别?
我一直在尝试找出最佳方法,将OpenJDK Java运行时作为Fedora框的默认Java运行,并将Oracle JDK 6用于Android开发,即从Android Bundle运行Android SDK Manager,Android Studio和Eclipse。 我从Fedora存储库安装了OpenJDK Java Runtime,该存储库具有以下替代设置。 [donnie@fedora ~]$ alternatives --list | grep java jre_openjdk auto /usr/lib/jvm/java-1.7.0-openjdk-1.7.0.60-2.4.5.1.fc20.x86_64/jre jre_1.7.0 auto /usr/lib/jvm/java-1.7.0-openjdk-1.7.0.60-2.4.5.1.fc20.x86_64/jre java auto /usr/lib/jvm/java-1.7.0-openjdk-1.7.0.60-2.4.5.1.fc20.x86_64/jre/bin/java libjavaplugin.so.x86_64 auto /usr/lib64/IcedTeaPlugin.so 我已经使用Oracle提供的rpm安装了Oracle JDK 6。 我可以通过粘贴以下内容来使Android Bundle和Studio利用JAVA_HOME在Oracle JDK下运行.bashrc。 export JAVA_HOME=/usr/java/jdk1.6.0_45/ export PATH=$JAVA_HOME/bin:$PATH 我注意到Chrome仍然使用OpenJDK(因为我仍然需要链接插件)。 JAVA_HOME和使用替代项有什么区别?

3
如何理解声卡清单;MID,HDMI,PCH的含义
Command aplay -l生成“所有声卡和数字音频设备”的列表。 在全新的Fujitsu Esprimo台式机上,我得到: **** List of PLAYBACK Hardware Devices **** card 0: MID [HDA Intel MID], device 3: HDMI 0 [HDMI 0] Subdevices: 1/1 Subdevice #0: subdevice #0 card 0: MID [HDA Intel MID], device 7: HDMI 1 [HDMI 1] Subdevices: 1/1 Subdevice #0: subdevice #0 card 0: …
13 audio 

1
对ld-linux.so黑客使用替代libc;更清洁的方法?
我有一个带有非常老的glibc的遗留系统,如果不进行大量测试/验证工作,就无法升级。 我现在需要多次在该系统上运行较新的程序(例如Java 1.7)。我选择了chroot解决方案,其中打包了所有需要的库,并在chroot中运行服务。 chroot的限制非常大,我宁愿尝试使用LD_LIBRARY_PATH解决问题。不幸的是,我libc.so.6: cannot handle TLS data在尝试时遇到错误。 事实证明,我也需要/lib/ld-linux.so.2chroot的。这有效: LD_LIBRARY_PATH=/home/chroot/lib /home/chroot/lib/ld-linux.so.2 /home/chroot/bin/program 但是,java通过检查/proc/self/cmdline以确定从何处加载其库来挫败我的窍门,如果二进制文件未命名为“ bin / java”,该方法将失败。Java在启动过程中也会执行自身,这使事情变得更加复杂。 在最后努力,使这项工作,我打开了Java二进制,十六进制编辑器和替换字符串/lib/ld-linux.so.2用/home/chroot/ld.so(并作出一个符号链接ld-linux.so.2),和它的工作! 但是我想每个人都会同意,将每个新二进制文件的路径重写为嵌套系统的绝对路径是一个巨大的麻烦。 有谁知道使用自定义库路径(包括自定义ld-linux.so)的更简洁方法?

1
cron午夜00 24还是00 00?[关闭]
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,使它成为Unix&Linux Stack Exchange 的主题。 5年前关闭。 我当前的crontab如下所示: 00 00 * * 1-5 "/home/user/script.sh" 但是似乎它没有被触发。除了午夜运行的一个,其他所有都触发罚款。 午夜的正确格式是什么?00 00还是00 24?
13 cron 

5
为什么“ cat ttyUSB0”不产生输出?
我将红外线接收器连接到USB端口...(dmesg的最后一行告诉设备文件) $ dmesg [10496.596063] usb 7-2: new full-speed USB device number 2 using uhci_hcd [10496.751112] usb 7-2: New USB device found, idVendor=0df7, idProduct=0620 [10496.751117] usb 7-2: New USB device strings: Mfr=1, Product=2, SerialNumber=0 [10496.751120] usb 7-2: Product: USB-Serial Controller [10496.751124] usb 7-2: Manufacturer: Prolific Technology Inc. [10496.787441] usbcore: registered new …
13 files  usb  devices  cat  input 

4
如何在不使用浏览器的情况下验证无线提供商的“开放”网络?
这种设置在购物中心和机场中似乎很常见。在加拿大西部,Shaw提供了这样的服务,并将其称为“ Shaw Open”。我很确定其他语言环境也可以从T-Mobile等提供商那里获得类似的服务。 从诸如手机之类的东西开始,并不是很复杂。连接到wifi热点无需身份验证,因为它是“开放”的,可供公众访问。但是在我使用浏览器并登录到ISP提供的特定网页之前,手机不会通过应用程序连接到网站或远程服务。 简单地说,我的问题是:如何从通常没有传统浏览器的设备上自动执行身份验证步骤? 在我的特定情况下,我配置了树莓派,该树莓派配置了我想在贸易展览会等上使用的软件。这些位置具有相同的“开放”热点。Raspi意味着自我约束。它只是做生意并与网站对话。但是此出站连接被ISP的“开放”连接阻止,因为我还没有完成该过程的浏览器部分。 假设我具有在特定提供商网络上执行此操作的凭据,那么如何在不要求打开与Pi的终端会话的情况下自动执行该过程的这一部分? 我什至可以在这里搜索使用哪种技术?

3
可靠的后台进程返回码
让我们假设以下bash代码: foo > logfile 2>&1 & foo_pid=$! while ps -p$foo_pid do ping -c 1 localhost done wait $foo_pid if [[ $? == 0 ]] then echo "foo success" fi 是否可以安全地假定$?确实包含的返回码foo而不包含的返回码ping?如果该问题的答案是:“您不能假设这一点。” 那么,如何修改这段代码以确保$?始终包含返回代码foo?

2
如何在CentOS中正确设置2个网络接口(在VirtualBox中运行)?
我有一台运行CentOS 6.5的VirtualBox机器。我已经在VirtualBox的计算机网络设置中为其创建了2个网络适配器。第一个是NAT,我希望访客使用该NAT连接到Internet,第二个是设置为“仅主机”,它将用于SSH和从主机访问Web服务器。我想在VirtualBox论坛上获得本教程,但是我似乎/etc/network/interfaces在CentOS 6.5上找不到该文件,因此我认为配置是不同的。 有设置NAT和仅主机适配器,我开始了VM,做一个ip addr show和我有2个接口,eth0并且eth2(我不知道为什么eth1莫名其妙地被跳过)。所以我配置这两个ifcfg-ethX文件中/etc/sysconfig/network-scripts,设置eth0为DHCP(对于NAT),并eth2为静态IP(对于仅主机)。对于eth0,ONBOOT=yes而对于eth2,ONBOOT=no。通过此设置,我可以连接ping到Internet,即ping -c 3 www.google.com得到响应,因此我知道我可以连接到Internet(处于eth2关闭状态)。 接下来,我ifup eth2。在主机上,我使用设置的静态IP进行SSH,并且可以毫无问题地进行连接。但是,当我这样做的ping -c www.google.com时候,它失败了,我知道即使eth0仍在连接中,我也失去了与Internet的连接。这样做会route -n向我显示一个表格输出,eth2其中eth0介于中间的第一行和最后一行(抱歉,我无法删除虚拟机,所以无法发布实际输出...)。 我创建了一个新的CentOS VM,并希望继续进行相同的设置。我的联网功能几乎不存在,所以我很讨厌。我想要一些有关如何正确执行操作的提示(即,如何设置要使用的NAT适配器,eth0以及要使用eth1而不设置的仅主机适配器,即使/ 已启动并正在运行eth2,如何eth0仍然可用)。eth1eth2 更新资料 因此,我已经启动并运行了新的虚拟机,并且如果我将第一个适配器设置为仅主机,将第二个适配器设置为NAT,则现在看来可以正常工作。设置如下: VirtualBox网络设置 网络适​​配器1:仅主机(vboxnet0IP地址设置为10.3.0.1,网络掩码255.255.255.0和DHCP已关闭) 网络适​​配器2:NAT(DHCP) CentOS VM /etc/sysconfig/network-scripts/ifcfg-ethX设置 # ifcfg-eth0 DEVICE=eth0 HWADDR=08:00:27:EC:6C:B9 TYPE=Ethernet UUID=1339bc30-... ONBOOT=yes NM_CONTROLLED=yes BOOTPROTO=static DHCPCLASS= IPADDR=10.3.0.100 NETMASK=255.255.255.0 GATEWAY=10.3.0.1 # ifcfg-eth2 DEVICE=eth2 HWADDR=08:00:27:EB:73:BA TYPE=Ethernet UUID=1339bc30-... ONBOOT=yes NM_CONTROLLED=yes BOOTPROTO=dhcp 的结果 ip route …


3
我怎么知道tmux会话的名称?
最近,我开始使用tmux。我觉得很好,但是在理解此应用程序时仍然遇到问题。我的基本问题之一是:如何(从命令行)知道tmux我登录的会话的名称是什么?如果我登录了某个tmux会话,它将告诉我其名称。但是,如果我没有登录到tmux会话,它将不打印任何内容或出现某种错误。
13 linux  tmux 

4
有没有办法监视btrfs重新平衡的进度?
我正在替换镜像的btrfs中发生故障的硬盘驱动器。 btrfs device delete missing /[mountpoint]花费的时间很长,所以我认为它实际上是在重新平衡替换驱动器上的数据。 有什么方法可以监视这种操作的进度? 我不一定期望外观漂亮的GUI甚至%计数器;而且如果必要的话,我愿意写几行shell脚本,但是我什至不知道从哪里开始寻找相关数据。btrfs filesystem show例如,它刚刚挂起,大概在显示平衡的fs的任何信息之前等待平衡操作完成。
13 btrfs 

2
仅为Github添加SSL证书(并非ca-certificates软件包中的所有证书)
通过HTTPS访问Github时出现以下错误: error: server certificate verification failed. CAfile: /etc/ssl/certs/ca-certificates.crt CRLfile: none 这是因为我在中没有任何证书/etc/ssl/certs/。我知道如何解决这个问题。我可以ca-certificates从Debian仓库安装软件包。但是问题是,这将安装我不一定要接受/信任的所有证书(数千个)。 如何仅为Github安装证书? 子问题/子问题 在ca-certificates已经安装了软件包且git可以工作的另一台计算机上,我注意到其中的某些证书/etc/ssl/certs/是每个文件一个证书,而其他证书是一个文件中的多个证书。包含Github证书的特定文件包含/etc/ssl/certs/ca-certificates.crt150多个其他证书: $ grep 'BEGIN CERTIFICATE' /etc/ssl/certs/ca-certificates.crt | wc -l 159 如何找到这159张证书中的哪一张是我需要的?(除了蛮力外-将文件切成两半,然后检查两半,然后重复while n > 1)。
13 git  ssl  certificates  github 


5
停止vim弄乱我的评论缩进
由于某种原因,Vim认为我的所有注释都应删除所有缩进。如果我添加#到行的开头,突然所有前导空格都将被删除。我该如何阻止? 我安装了Janus和NERDtree,以防万一,在我的个人配置中,还有其他很多个人配置.vimrc,但据我所知,不会导致这种行为。
13 vim  vi 

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.