标签: ubuntu

将名称与 ssh 的 ip 相关联?

假设我只有一个服务器的 ip 地址,而我没有域(它只是一个数据库服务器,所以它不需要域)。我不想每次都记住 ip 地址,所以有没有办法我仍然可以使用类似的语法ssh username@database

ubuntu ssh ip host ip-address

46
推荐指数
2
解决办法
7万
查看次数

Ubuntu ufw:基于每个接口设置规则

我想创建一个规则,允许 eth1 上的任何人访问端口 80。UFW 可以这样做还是我应该回去使用 Shorewall?

澄清一下:这是一个能力问题,ufw 可以将接口作为目标处理吗?

ubuntu firewall iptables ufw

45
推荐指数
2
解决办法
8万
查看次数

Ubuntu Apache:httpd.conf 还是 apache2.conf?

我应该使用这两个文件中的哪一个来配置 Apache?

httpd.conf是空的,而apache2.conf不是。

这让我很困惑!

ubuntu apache-2.2

45
推荐指数
4
解决办法
7万
查看次数

为什么 rsync 比 NFS 快?

几天前,我注意到一些很奇怪的事情(至少对我而言)。我运行 rsync 复制相同的数据,然后将其删除到 NFS 挂载,称为/nfs_mount/TEST. 这/nfs_mount/TEST是从nfs_server-eth1. 两个网络接口上的 MTU 都是 9000,中间的交换机也支持巨型帧。如果我这样做,rsync -av dir /nfs_mount/TEST/我将获得 X MBps 的网络传输速度。如果我这样做,rsync -av dir nfs_server-eth1:/nfs_mount/TEST/我的网络传输速度至少为 2X MBps。我的 NFS 挂载选项是nfs rw,nodev,relatime,vers=3,rsize=1048576,wsize=1048576,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,mountvers=3,mountproto=tcp.

底线:两种传输都通过相同的网络子网、相同的线路、相同的接口、读取相同的数据、写入相同的目录等。唯一不同的是,一个是通过 NFSv3,另一个是通过 rsync。

客户端是 Ubuntu 10.04,服务器是 Ubuntu 9.10。

为什么 rsync 快得多?如何使 NFS 匹配该速度?

谢谢

编辑:请注意我使用 rsync 写入 NFS 共享或 SSH 到 NFS 服务器并在本地写入。两次我都这样做rsync -av,从明确的目标目录开始。明天我将尝试使用普通副本。

Edit2(附加信息):文件大小范围为 1KB-15MB。文件已经被压缩,我试图进一步压缩它们但没有成功。我tar.gz从那个dir. 这是模式:

  • rsync -av dir /nfs_mount/TEST/ = 最慢的传输;
  • rsync -av dir nfs_server-eth1:/nfs_mount/TEST/= …

linux ubuntu optimization nfs rsync

44
推荐指数
3
解决办法
5万
查看次数

nginx 没有 server_name 并且只使用静态 IP 地址?

这是我的第一个 Web 应用程序部署,并且遇到了各种问题。

我目前正在为 Django 应用程序寻找 nginx + gunicorn 实现,但这个问题主要与 nginx 配置有关。对于某些情况 - nginx 将接收到 gunicorn 本地服务器的连接和代理。

在 nginx 配置中,它说server_name我必须提供一个吗?我不打算使用任何类型的域名,只是通过我网络的外部 ip(它是静态的)和要监听的端口号。

我的愿望是当我访问类似的东西时,http://xxx.xxx.xxx.xxx:9050我将能够获得该网站。

以下是我将基于配置的示例代码以供参考。

   server {
        listen   80;
        server_name WHAT TO PUT HERE?;

    root /path/to/test/hello;

    location /media/ {
        # if asset versioning is used
        if ($query_string) {
            expires max;
        }
    }
    location /admin/media/ {
        # this changes depending on your python version
        root /path/to/test/lib/python2.6/site-packages/django/contrib;
    }
    location / {
        proxy_pass_header Server;
        proxy_set_header Host $http_host;
        proxy_redirect off;
        proxy_set_header X-Real-IP …
Run Code Online (Sandbox Code Playgroud)

ubuntu nginx gunicorn

44
推荐指数
2
解决办法
13万
查看次数

内核卸载后损坏的 /vmlinuz 和 /initrd.img 符号链接

操作系统:Ubuntu 8.04 LTS 服务器版

我们刚刚使用以下命令回滚了内核更新:

sudo apt-get remove linux-image-2.6.24-24-server
Run Code Online (Sandbox Code Playgroud)

卸载成功,但是apt-get退出前提示如下信息:

The link /vmlinuz is a damaged link
Removing symbolic link vmlinuz
 you may need to re-run your boot loader[grub]
The link /initrd.img is a damaged link
Removing symbolic link initrd.img
 you may need to re-run your boot loader[grub]
Run Code Online (Sandbox Code Playgroud)

我们应该担心这个消息吗?我们需要重新运行 GRUB 吗?如果我们必须重新运行 GRUB,我们该怎么做呢?

提前致谢。

linux ubuntu kernel rollback grub

43
推荐指数
2
解决办法
3万
查看次数

如何在系统范围内永久禁用 Linux 的控制台屏幕保护程序?

我有一个以文本模式启动的 Ubuntu 服务器。它很少有屏幕或键盘连接到它,但是当我连接一个屏幕时,我通常也必须连接一个键盘,因为该死的控制台模式屏幕保护程序将打开,我需要按一个键才能看到是什么继续。

我知道 setterm 命令可以禁用它,但这是每个会话的事情。我怎样才能让机器永远不会在文本模式下使屏幕空白,即使它第一次启动并坐在登录提示下?

linux ubuntu console electrical-power

43
推荐指数
4
解决办法
4万
查看次数

服务器升级期间 SSH 连接丢失 - 如何重新连接到进程?

所以,我正在执行从 11.04 到 11.10 的 Ubuntu Server 升级。

我在后台忘记了它,我的SSH 客户端超时并断开连接(Windows 上的腻子,请看图)。我终端上的最后一件事是关于保留旧配置等的问题。

当我重新登录到服务器时,aptitude 文件被另一个进程锁定,所以我假设这个升级进程在那里等待我的输入。

我如何与此过程交互并继续升级?如果可能的话。

谢谢

ubuntu ssh

43
推荐指数
2
解决办法
3万
查看次数

如何查看旧的 journalctl 日志(可能在轮换之后?)

我在 ubuntu 16.04 上运行 docker 并想查看日志。但是,在我猜测是某种轮换或日志增长到一定大小后,我无法查看日志。

我没有对我的 journald.conf 做任何更改,所以我在那里使用默认值。有容器在运行,所以 docker 日志输出了相当多的数据。

我所看到的示例:

systemctl docker status 确认服务已激活:

since Thu 2016-10-13 18:56:28 UTC
Run Code Online (Sandbox Code Playgroud)

但是,当我运行类似的东西时:

journalctl -u docker.service --since "2016-10-13 22:00"
Run Code Online (Sandbox Code Playgroud)

我得到的唯一输出是:

-- Logs begin at Fri 2016-10-14 01:18:49 UTC, end at Fri 2016-10-14 16:18:25 UTC. --
Run Code Online (Sandbox Code Playgroud)

我可以按预期查看该范围内的日志。

我的问题是:为什么我不能使用 journalctl 查看旧日志,我该如何解决这个问题以便查看日志?

ubuntu systemd journald journalctl ubuntu-16.04

42
推荐指数
2
解决办法
4万
查看次数

TLS 握手失败。不包含任何 IP SAN

我正在尝试设置 logstash 转发器,但是我在创建适当的安全通道时遇到了问题。尝试使用在 virtualbox 中运行的两台 ubuntu(服务器 14.04)机器进行配置。它们是 100% 干净的(未触及主机文件或安装除所需的 java、ngix、elasticsearch 等以外的任何其他软件包,用于 Logstash)

我不相信这是一个 logstash 问题,而是证书处理不当或在 logstash ubuntu 或转发器机器上设置不正确的东西。

我生成了密钥:

sudo openssl req -x509 -batch -nodes -newkey rsa:2048 -keyout private/logstash-forwarder.key -out certs/logstash-forwarder.crt
Run Code Online (Sandbox Code Playgroud)

我在logstash服务器上的输入conf:

input {
  lumberjack {
    port => 5000
    type => "logs"
    ssl_certificate => "/etc/pki/tls/certs/logstash-forwarder.crt"
    ssl_key => "/etc/pki/tls/private/logstash-forwarder.key"
  }
}
Run Code Online (Sandbox Code Playgroud)

密钥被复制到转发器主机,它具有以下配置。

{
  "network": {
    "servers": [ "192.168.2.107:5000" ],
    "timeout": 15,
    "ssl ca": "/etc/pki/tls/certs/logstash-forwarder.crt"
    "ssl key": "/etc/pki/tls/certs/logstash-forwarder.key"
  },
  "files": [
    {
      "paths": [
        "/var/log/syslog",
        "/var/log/auth.log"
       ],
      "fields": { "type": …
Run Code Online (Sandbox Code Playgroud)

ubuntu ssl ssl-certificate tls logstash

41
推荐指数
3
解决办法
12万
查看次数