Articles of linux

用户帐户linux的目录权限

我正在Amazon AMI上的几个用户之间build立一个共享文件夹(详见下方)。 我正在试图让文件夹与一个用户特别是哪个工作。 我的想法是创build一个名为“存储库”的用户组,我将添加用户。 我运行了以下命令: sudo groupadd repository sudo usermod -a -G repository jenkins sudo usermod -a -G repository ec2-user sudo mkdir /repository sudo chown jenkins:repository /repository sudo chmod 770 /repository 现在在这一点上,我期望jenkins用户将没有麻烦在这个文件夹中的目录。 但它似乎并没有工作。 sudo runuser -l jenkins -c "mkdir /repository/hello" 不做一个目录。 尝试ec2用户,这也是“存储库”组的一部分。 sudo runuser -l ec2-user -c "mkdir /repository/hello" 成功创build一个目录。 使用groups jenkins和groups ec2-user双重检查groups ec2-uservalidation这两个用户是“存储库”组的一部分。 我哪里错了? […]

通过http或https的vpn会话

我只能访问http://site.example.com或https://site.example.com (在ddwrt路由器后面运行linux centos),http防火墙允许这些虚拟主机名连接到客户端(我),但不能通过IP地址 我可以在centos box或dd-wrt上安装什么服务器,这样我可以有一个transpartent VPN? Openvpn服务器是一个解决scheme吗? 我花了大概20个小时试读FAQ 先谢谢你。

如何使用VMDq和SR-IOVfunctionconfiguration硬件,操作系统和虚拟化networking

我有: SUN X4100 M2 英特尔以太网适配器E1G42ET(支持VMDq和SR-IOV) Linux Ubuntu 14.04服务器(主机)可以设置15 KVM作为pipe理程序 我想要一些虚拟客户机(linux),并configurationVMDq和SR-IOV以进行正确的数据包通信。 我search了一些日子如何在Linux中configurationVMDq和SR-IOV,但只发现英特尔演示,图像与技术解释,没有真正的如何哪些可以帮助我configurationLinux,内核,KVM,networking接口,库,驱动程序,VLAN为此目的或别的东西。 伙计们,请启动任何帮助!

获取文件的ctime,atime,mtime和扩展属性

我想显示一个文件的ctime,mtime和atime,以及它是否具有扩展属性。 有2个命令可以做到这一点,但我没有能够把它们合并成一个单一的命令来给出一行输出。 find /tmp -maxdepth 1 -printf "%a _ %c _ %t _ %P\n" 给出类似于这样的输出: Thu Aug 27 09:51:11 2015 _ Thu Aug 27 09:48:40 2015 _ Thu Aug 27 09:48:40 2015 _ tempfile.tmp 和 ls -l /tmp 给出类似于这样的输出: -rw-rw—-+ 1 root root 5 Aug 27 04:39 tempfile.tmp 我只对ls输出中的权限之后的“+”符号感兴趣。 理想情况下,我希望输出与此类似: + Thu Aug 27 09:51:11 […]

使用sshfs自动更改远程用户

我有两个远程服务器, foo和bar 。 在两台服务器上,我有一个用户git (与不同的uid和gid)。 两台服务器都在运行Debian发行版。 两台服务器都在authorized_keys中拥有彼此的root ssh公钥,所以所有与ssh相关的命令已经像一个魅力一样工作了。 git帐户已经被正确的configuration – 默认的shell被设置为/ usr / bin / git-shell,仓库在foo上工作( bar在这个问题上还没有被configuration)。 我正在尝试使用sshfs在foo和bar之间创build一个“共享目录”。 在foo上我有一个目录/ home / git。 该目录属于用户git (在这种情况下uid / gid 1000)。 假设我想在/ mnt / foo-git的bar上使用sshfs来挂载这个文件夹。 在正常情况下,我只是使用sshfs git @ foo / mnt / foo-git(在栏上 )来挂载目录(或者使用fstab,这是我打算在系统工作后做的事情)。 但是,git-shell有效地阻止了我以最简单的方式调用sftp-server并使用sshfs。 经过一段时间的摆弄后,我决定使用root用户login(通过ssh),用su -l更改有效的用户,然后启动sftp-server。 为了达到这个目的,我创build了一个简单的脚本(在foo上 )/ sbin / git-sftp-server: #!/bin/bash /bin/su -l git -s /bin/bash -c […]

将一个本地的windows git仓库链接到aws linux git服务器

我想在我的aws linux服务器上创build一个git服务器,以便每当我想在public_html中更新我的网站时,我不必手动将文件传输到服务器,我想使用git,能够将更改推送到远程服务器从我的本地机器。 我已经成功创build了一个裸Git仓库,并已经做了一个post-receive钩子来更新public_html 。 因此,只要本地推送更改,它就会更新public_html 。 我现在无法将这个存储库添加到我的本地Windows机器上 。 由于我使用的是aws实例,所以必须使用私钥key.pem进行访问(这就是通过putty访问的方式)。 我没有如何将这个存储库添加到我的本地机器的方式也告诉git关于私钥。 这是我所做的: $> git remote add project_files ssh://[email protected]/~ec2-user/repo 我尝试推后: git push project_files +master:refs/heads/master 这是我得到的: $> git push project_files +master:refs/heads/master Permission denied (publickey). fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repository exists. 我似乎没有得到解决这个错误。

将端口转发到命名空间中的虚拟IP

所以,我按照这个指南做了一个命名空间,我可以运行我的VPN: https : //schnouki.net/posts/2014/12/12/openvpn-for-a-single-application-on-linux/ 到目前为止工作正常,但我有一个问题。 我想在命名空间中运行一个服务,通过另一台PC上的浏览器打开一个我可以使用的端口。 所以,我想我必须将进入我的正常networking的端口转发到名称空间中的虚拟networking,但是我无法弄清楚,我是怎么做到的。 这是ifconfig的输出: eth0 Link encap:Ethernet HWaddr b8:27:eb:f5:59:ab inet addr:192.168.0.8 Bcast:192.168.0.255 Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:73328 errors:0 dropped:0 overruns:0 frame:0 TX packets:125290 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:10329389 (9.8 MiB) TX bytes:100230154 (95.5 MiB) lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 UP LOOPBACK RUNNING […]

公钥密码和子域名

不久,我打算安装新的networking服务器,我想多用户一点。 我已经有域,(虚拟)服务器和其他一切configuration服务器的重要。 基本上这个将被用作我们家庭成员的个人存储的networking服务器,所以我们可以独立于我们当前的位置而彼此共享文档。 因为他们对技术和东西不是很熟悉,所以我想确保连接更多。 除了networking应用程序的文件存储,我会创build一些简单的网站,在未来,我认为networking服务器也将举办博客。 我决定像这样构build网站: storage.domain.tld – 用于我们的个人存储 domain.tld – 会有一些简单的网站(带有CSS和JS文件的HTML文件) domain.tld / blog – 经过一段时间,我认为这个地址将被用于博客 我将使用StartSSL签署将安装在Web服务器上的证书。 由于HPKP需要备份证书,我将在未来出现任何故障的情况下创build附加证书。 我认为在读完一段文字之后,我已经正确理解了如何configurationHPKP,但是我仍然不确定如何处理子域,如果configuration错误的HPKP头还有什么问题。 所以首先关于子域名…我们的大多数家庭成员将只使用storage.domain.tld 。 StartSSL启用主域和一个子域的证书签名。 如果我只在domain.tld上设置它,并在其中添加includeSubdomains,浏览器是否可以识别子域上的domain.tld ? 如果浏览器仅在您实际访问的域上识别HPKP标头,该怎么办? 我也想看看这个话题的一些build议,因为我不知道该怎么做。 第二件关于configuration错误的HPKP。 当我设置所有东西时,我想将HPKP标题的最大年龄设置为60左右(1分钟就足以testingHPKP是否正常工作)。 成功后,我认为将最大年龄延长到半年。 如果我理解正确,浏览器只检查HPKP头中的公钥是否与web服务器中的相同。 如果有一场比赛,一切都应该没问题。 那么没有任何其他服务连接检查HPKP的正确设置? 如果我在私人模式下使用浏览器,并且访问我的网站时configuration错误的HPKP,如果我删除HPKP标题并以非私人模式再次访问网站,此问题是否会消失? 我会感谢所有的build议和意见,我的问题。 先谢谢你!

无法连接到(或写入)套接字文件,尽pipe是所有者?

我正在用Debian Jessie和Django 1.8一起工作,试图build立Gunicorn来运行我的Django站点。 我build立了一个名为opuser的用户,并且让这个用户成为gunicorn.sock文件和包含目录的所有者: $ ls -lash /webapps/myapp/run/ total 8.0K 4.0K drwxrwxrwx 2 opuser users 4.0K Sep 1 12:24 . 4.0K drwxrwxrwx+ 7 opuser users 4.0K Sep 1 10:37 .. 现在,如果我试图运行gunicorn作为opuser : gunicorn myapp.wsgi:application –name myapp_prod –workers 3 –bind=unix:/webapps/myapp/run/gunicorn.sock –user opuser –group webapps –log-level=debug 我得到: OSError: [Errno 13] Permission denied: '/webapps/myapp/run/gunicorn.sock' 当opuser是包含目录的所有者时,为什么我得到权限被拒绝? 如果我运行ls -lash /webapps/myapp/run再次ls […]

LSI SAS1068E(又名LSI SAS 3442E-R)带宽

最近我连接了LSI SAS 3442E-R和两个HP SAS 600GB 10k硬盘。 我的主板是AsRock Z97 Extreme6。 磁盘被configuration为JBOD,没有raid。 Linux lspci显示: 0b:00.0 SCSI storage controller: LSI Logic / Symbios Logic SAS1068E PCI-Express Fusion-MPT SAS (rev 08) 简单的单个驱动器读取testing: dd of=/dev/null if=/dev/sdh1 bs=1M count=5000 给我速度150MB /秒 并行添加: dd of=/dev/null if=/dev/sdi1 bs=1M count=5000 在sdh上速度降到100MB / s,sdi上速度达到100MB / s。 当我停止从一个高速读取然后再加速到150MB /秒。 看来硬盘的最大速度是150MB / s,但控制器不能超过200MB / s,这对于PCIe x4卡来说我觉得是相当慢的。 任何人有类似的问题? […]