小编the*_*fog的帖子

在 Ubuntu 16.04 中,gnome 终端 GTK3 样式配置移到哪里了?

在 Ubuntu 14.04 中,我可以通过创建一个文件来设置 gnome 终端及其选项卡的外观

/home/$user/.config/gtk-3.0/gtk.css
Run Code Online (Sandbox Code Playgroud)

并将 CSS 代码放入其中,例如

    TerminalWindow .notebook tab.top:active{
      padding: 0;
      border-image: none;
      background-color: #555;
    }
    [...]
Run Code Online (Sandbox Code Playgroud)

现在在 Ubuntu 16.04 上,这对 gnome 终端的外观没有影响。
如何在 Ubuntu 16.04 上修改 gnome 终端的外观?

gnome gtk3

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

如何使用 gconftool-2 设置 gnome-terminal 的背景颜色?

我正在使用 Ubuntu 14.04,我想使用命令行设置我的 gnome 终端的背景颜色。
据我所知gconftool-2是这样做的方法,但我无法弄清楚执行此操作的命令是什么。

我的~/.gconf/apps目录看起来像:

??? %gconf.xml
??? gnome-terminal
?   ??? %gconf.xml
?   ??? profiles
?       ??? Default
?       ?   ??? %gconf.xml
?       ??? %gconf.xml
??? nm-applet
    ??? %gconf.xml 
Run Code Online (Sandbox Code Playgroud)

如果我跑

gconftool-2 -a /apps/gnome-terminal/profiles/Default
Run Code Online (Sandbox Code Playgroud)

我得到一长串键值对,例如像这样的对

scroll_on_output = false
 cursor_blink_mode = system
 background_color = #28F528F528F5
Run Code Online (Sandbox Code Playgroud)

我相信它属于“默认”gnome-terminal 配置文件,但是我如何使用gconftool-2?

我已经发现我可以“获得”价值

gconftool-2 --get /apps/gnome-terminal/profiles/Default/background_color
Run Code Online (Sandbox Code Playgroud)

但不确定如何分配一个新变量,在这种情况下,我猜它是一个字符串,例如我希望它是这样的

gconftool-2 --set /apps/gnome-terminal/profiles/Default/background_color --type=string: #ababab
Run Code Online (Sandbox Code Playgroud)

或类似的东西?

gconf

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

如何将我想要的编辑器添加到“update-alternatives”交互式菜单中?

我刚刚在数字海洋服务器上安装了 ubuntu 16.04.2 32 位。

Digital Ocean 对 ubuntu 安装进行了一些调整,例如他们安装了完整的 vim 作为他们在 VPS 中使用的块映像的一部分。我现在想使用这个 - 预安装 - vim 作为我的默认编辑器。所以我跑

sudo update-alternatives --config editor
Run Code Online (Sandbox Code Playgroud)

这给了这个菜单

$ sudo update-alternatives --config editor
There are 4 choices for the alternative editor (providing /usr/bin/editor).

  Selection    Path                Priority   Status
------------------------------------------------------------
* 0            /bin/nano            40        auto mode
  1            /bin/ed             -100       manual mode
  2            /bin/nano            40        manual mode
  3            /usr/bin/vim.basic   30        manual mode
  4            /usr/bin/vim.tiny    10        manual mode

Press <enter> to keep the current choice[*], or type selection …
Run Code Online (Sandbox Code Playgroud)

alternative update-alternatives

7
推荐指数
3
解决办法
5898
查看次数

同一个软件包的多个版本可以共存于同一个系统上吗?

为了安装 tmux 2.1,我需要安装libtinfo5版本 6,我通过下载包含libtinfo5和直接使用命令安装的 .deb 存档来做到这一点:

sudo dpkg -i libtinfo5_6.0+20160213-1ubuntu1_amd64.deb
Run Code Online (Sandbox Code Playgroud)

这满足了 tmux 2.1 的依赖,并且 tmux 安装正常。
现在我尝试使用安装 vnstat

sudo apt-get install vnstat 
Run Code Online (Sandbox Code Playgroud)

apt-get 错误退出,如下

$ sudo apt-get install vnstat
Reading package lists... Done
Building dependency tree       
Reading state information... Done
You might want to run 'apt-get -f install' to correct these:
The following packages have unmet dependencies:
 libncurses5 : Depends: libtinfo5 (= 5.9+20150516-2ubuntu1) but 6.0+20160213-1ubuntu1 is to be installed
 libncursesw5 : Depends: libtinfo5 (= 5.9+20150516-2ubuntu1) but …
Run Code Online (Sandbox Code Playgroud)

package-management apt dependencies

6
推荐指数
1
解决办法
2万
查看次数

如何在 Ubuntu 16.04 中使用命令行设置 mac 地址?

在 Ubuntu 14.04 中,当我想使用不同的 mac 地址连接到网络时,我将运行以下命令

sudo service network-manager stop
sudo ifconfig $interface down
sudo macchanger -m <mac_addresse> $interface
sudo ifconfig $interface up
sudo service network-manager start
Run Code Online (Sandbox Code Playgroud)

这将分配一个新的 mac 地址,该地址在网络管理器重新启动并与网络建立新连接后仍然存在。
现在,在 Ubuntu 16.04 上,使用运行相同的命令后

  • sudo macchanger -m 00:60:1B:EB:F8:73 wlp2s0

然后我重新启动network-manager尚未连接到网络,新的 macchanger 分配的 mac 地址仍然存在,即

sudo service network-manager stop
sudo ifconfig $interface down
sudo macchanger -m <mac_addresse> $interface
sudo ifconfig $interface up
sudo service network-manager start
Run Code Online (Sandbox Code Playgroud)

但是在我连接到网络的那一刻,mac 地址被重置回原始的硬件 mac 地址。连接到网络后

% nmcli  dev show wlp2s0
GENERAL.DEVICE:                         wlp2s0 …
Run Code Online (Sandbox Code Playgroud)

network-manager networking

6
推荐指数
1
解决办法
1万
查看次数

如何阻止更新通知框出现?

请注意遇到此问题的未来用户

这个问题已被标记为可能重复

这个问题是关于自动拥有操作系统apt-get updateapt-get upgrade软件包的整个过程——而不是弹出管理器窗口。
然而,这个问题是这个问题的重复:

事实证明,更新管理器弹出窗口无法通过 apt 的配置文件进行管理,它充当一个独立的守护进程,需要单独管理。


每天早上当我登录我的安装时,Ubuntu 16.04.1我都会得到这个:

在此处输入图片说明

我不希望出现此框,因为我宁愿手动处理更新过程。

我有以下配置:

文件:/etc/apt/conf.d/10periodic

APT::Periodic::Update-Package-Lists "0";
APT::Periodic::Download-Upgradeable-Packages "0";
APT::Periodic::AutocleanInterval "0";
// Try and turn off autoupating
APT::Periodic::Enable "0";
Run Code Online (Sandbox Code Playgroud)

文件:/etc/apt/conf.d/20auto-upgrades

APT::Periodic::Update-Package-Lists "0";
APT::Periodic::Unattended-Upgrade "0";
Run Code Online (Sandbox Code Playgroud)

我试图发现触发自动更新系统的原因

man apt.conf 状态:


周期和存档选项APT::Periodic 和 APT::Archives 选项组配置
apt 定期更新的行为,这是由/etc/cron.daily/apt脚本完成的。
有关这些选项的简要文档,请参阅此脚本的顶部。

看起来这已被/etc/cron.daily/apt-compat混合时间 abit所取代,因此每个人的 Ubuntu 都不会立即尝试更新,然后它会调用:

/usr/lib/apt/apt.systemd.daily
Run Code Online (Sandbox Code Playgroud)

/usr/lib/apt/apt.systemd.daily 是一个以注释开头的 shell 脚本:

该文件理解以下 apt 配置变量:
这里的值是默认值。
创建 /etc/apt/apt.conf.d/10periodic 文件以设置您的首选项。

所以按照这个建议我输入了这个

    // Try and turn off autoupating
    APT::Periodic::Enable …
Run Code Online (Sandbox Code Playgroud)

upgrade updates apt

6
推荐指数
0
解决办法
2985
查看次数

当我有 intel cpu 时,有“amd64”架构的包有问题吗?

我正在尝试调试扫描仪安装失败,在检查所需的包是否存在时,我发现包架构存在差异。

$ dpkg -l | grep Brother
ii  brscan-skey           0.2.4-1 amd64 Brother Linux scanner S-KEY tool
ii  brscan4               0.4.2-1 amd64 Brother Scanner Driver
ii  mfcj6910dwcupswrapper 3.0.0-1 i386  Brother CUPS Inkjet Printer Definitions
ii  mfcj6910dwlpr         3.0.0-1 i386  Brother lpr Inkjet Printer Definitions
ii  printer-driver-ptouch 1.3-8   amd64 printer driver Brother P-touch label printers
Run Code Online (Sandbox Code Playgroud)

知道我有一个英特尔 CPU(而且打印工作正常 + 扫描失败)我是否需要amd64用它们的i386等价物替换包?

package-management cpu-architecture

5
推荐指数
1
解决办法
3950
查看次数

ctags 基本用法

我正在关注如何exuberant-ctags在 Ubuntu 14.04上使用的教程。
我运行命令:

sudo apt-get install exuberant-ctags
Run Code Online (Sandbox Code Playgroud)

然后我cd进入一个项目的根文件夹并运行:

$ ctags -R .
Run Code Online (Sandbox Code Playgroud)

我也试过

  • ctags -R *
  • ctags -R <folder_name>

在所有情况下,ctags 都会消耗所有计算机资源 - 锁定 PC,我需要终止该进程,之后一个数tagsGB的文件将位于我的当前目录中。
出了什么问题?

更新

根据@muru 请求,当我ctags -R .在一个完全空的目录中运行时,新创建的ctags文件包含:

!_TAG_FILE_FORMAT       2       /extended format; --format=1 will not append ;" to lines/
!_TAG_FILE_SORTED       1       /0=unsorted, 1=sorted, 2=foldcase/
!_TAG_PROGRAM_AUTHOR    Darren Hiebert  /dhiebert@users.sourceforge.net/
!_TAG_PROGRAM_NAME      Exuberant Ctags //
!_TAG_PROGRAM_URL       http://ctags.sourceforge.net    /official site/
!_TAG_PROGRAM_VERSION   5.9~svn20110310 //
Run Code Online (Sandbox Code Playgroud)

14.04

5
推荐指数
1
解决办法
9986
查看次数

.deb 包控制文件位于何处?

我的理解是,基于 debian 的软件包具有“控制文件”,它指定有关如何安装软件包的元数据,例如它具有哪些依赖项等。

如何查看已安装软件包的这些文件?

package-management packaging

4
推荐指数
3
解决办法
4612
查看次数

如何在 Ubuntu 14.04、Upstart、SysV 或两者的组合中启动服务?

我在开发机器上安装了这 2 个网络服务器,因为它们都绑定到端口 80,在任何给定时间只有一个可以运行。
我希望能够修改 init 启动过程,以便我可以选择启动哪一个,禁用哪一个。
为了知道我需要做什么来实现这一点,我试图找出实际控制这些服务启动的因素。
我的理解是 Ubuntu 14.04 启动脚本由 Upstart 处理,并且 upstart init 脚本在/etc/init.
但是 nginx 中没有nginx.conf条目,/etc/init而是有一个条目/etc/init.d- 这是否意味着 Nginx 由 SysV 而不是 Upstart 管理?
这是否也意味着默认情况下 Ubuntu 14.04(在 15.04 上迁移到 systemd 之前)可能使用 upstart 和 initV 的组合?
还是重要的系统进程只由 Upstart 启动,而像 Nginx 这样的单个软件包可能会选择 upstart 或 systemV init?

server startup upstart nginx services

3
推荐指数
1
解决办法
5765
查看次数

为什么 PHP 的 Composer 要求命令挂起?

注意:我知道这是一个 PHP 问题,但是 - 我在这里可能是错的 - 但我认为这个问题可能只存在于 ubuntu 上的 PHP、composer 中。

无论如何,几乎每个教程,包括composer本身都说运行composerrequire命令来安装包,例如

composer require robmorgan/phinx
Run Code Online (Sandbox Code Playgroud)

然而,对我来说,在 Ubuntu 上,这一切所做的就是挂起终端,直到我Ctrl+c终端。
我怎样才能让这个命令起作用?

php command-line composer php-cli

3
推荐指数
1
解决办法
3585
查看次数