emerge -C
不建议使用emerge -C,因为它可能移除其他软件包的依赖,导致其他包无法使用。建议改用emerge -cv package-XXX;
多读手册,呃,RTFM。
emerge -avuDN会重新安装你移除了的包,是因为这个包被你的world(/var/lib/portage/world)文件中某一个包(直接或间接)依赖。可以用emerge的--tree选项查看:
代码:
emerge -avuDN --tree @world
emerge vim
emerge --ask net-fs/samba
http://wiki.gentoo.org/wiki/Samba/HOWTO https://wiki.gentoo.org/wiki/Sambacp /etc/samba/smb.conf.default /etc/samba/smb.conf
rc-service samba start
rc-update add samba default
systemctl enable smbd.service
http://gentoo-en.vfose.ru/wiki/Systemd#Sambaqlist samba | grep systemd
, 启动: systemctl start smbd
/etc/systemd/system/smbd.service
[Unit]
Description=Samba SMB/CIFS server
After=network.target nmbd.service winbindd.service
[Service]
Type=forking
PIDFile=/var/run/samba/smbd.pid
ExecStart=/usr/sbin/smbd -D
ExecReload=/bin/kill -HUP $MAINPID
[Install]
WantedBy=multi-user.target
sudo pdbedit -a -u akagi201
/etc/samba/smb.conf
security = user
[home]
browseable = yes
read only = no
create mask = 0644
directory mask = 0755
emerge --ask sudo
/etc/sudoers -- akagi201 all=(all) all
emerge net-misc/curl
emerge wget
usermod -s /bin/zsh root
usermod -s /bin/zsh akagi201
emerge --ask zsh zsh-completion
emerge dev-vcs/git
oh my zsh
spf13-vim
emerge subversion
emerge --sync
emerge -avt git
emerge mercurial
emerge go
emerge bzr
emerge app-text/tree
emerge git-flow
emerge -avt boost
emerge texinfo
emerge u-boot-tools
emerge ccache
emerge uuid
emerge eix
emerge dosfstools
emerge -uDNav world
perl-cleaner --reallyall -- -av
emerge -uDNav world
No problem :) If that doesn't work for you, you may need to go into your package.accept_keywords file and make some changes.
Have you tried 'emerge -aC $(qlist -IC 'perl-core/*') && emerge -uD1a $(qlist -IC 'virtual/perl-*') && perl-cleaner --all
在吗
Akagi201 21:50:58
akagi201@akgentoo ~/akwetalk (master*) $ sudo emerge dev-vcs/git-flow
Password:
Calculating dependencies... done!
[ebuild N ~] dev-util/shflags-1.0.3 USE="-examples"
[ebuild N ~] dev-vcs/git-flow-0.4.1
The following keyword changes are necessary to proceed:
(see "package.accept_keywords" in the portage(5) man page for more details)
# required by dev-vcs/git-flow (argument)
=dev-vcs/git-flow-0.4.1 ~amd64
# required by dev-vcs/git-flow-0.4.1
# required by dev-vcs/git-flow (argument)
=dev-util/shflags-1.0.3 ~amd64
Use --autounmask-write to write changes to config files (honoring
CONFIG_PROTECT). Carefully examine the list of proposed changes,
paying special attention to mask or keyword changes that may expose
experimental or unstable packages.
Akagi201 21:51:02
这个是什么问题?
Akagi201 21:51:06
好解决吗
Yokit 21:51:57
-autounmask-write
Akagi201 21:52:00
您好,我现在有事不在,一会再和您联系。
Akagi201 21:52:13
什么意思
Akagi201 21:52:15
不敢用啊
Yokit 21:52:15
sudo emerge --autounmask-write dev-vcs/git-flow
Yokit 21:52:32
然后etc-update 更新一下
Yokit 21:52:57
就会将
# required by dev-vcs/git-flow (argument)
=dev-vcs/git-flow-0.4.1 ~amd64
# required by dev-vcs/git-flow-0.4.1
# required by dev-vcs/git-flow (argument)
=dev-util/shflags-1.0.3 ~amd64
这些写入 /etc/portage/package.use的了
Akagi201 21:53:02
这个软件我第一次装
Yokit 21:53:02
然后就可以装了.
Yokit 21:53:16
The following keyword changes are necessary to proceed:
(see "package.accept_keywords" in the portage(5) man page for more details)
# required by dev-vcs/git-flow (argument)
=dev-vcs/git-flow-0.4.1 ~amd64
# required by dev-vcs/git-flow-0.4.1
# required by dev-vcs/git-flow (argument)
=dev-util/shflags-1.0.3 ~amd64
Yokit 21:53:20
原因是这个.
Yokit 21:53:38
你的make.conf的标记用的是amd64
Yokit 21:53:48
而这个包要~amd64
Akagi201 21:54:03
~amd64表示非amd64吗
Akagi201 21:54:15
我cpu是amd64的
Yokit 21:54:23
一般稳定版才是amd64, 而最新版都是~amd64
Yokit 21:54:42
软件版本这个表示
Yokit 21:55:04
amd64表示那些已经stable的软件包了, 相对比较旧可能.
Yokit 21:55:20
而如果用最新的软件包时, 一般都是~amd64的.
Yokit 21:55:48
~amd64也是没问题的, 而且是最新版软件这是.
Yokit 21:56:04
只是软件的开发阶段不一样罢了.
Akagi201 21:56:08
akagi201@akgentoo ~/akwetalk (master*) $ sudo emerge --autounmask-write dev-vcs/git-flow
Calculating dependencies... done!
[ebuild N ~] dev-util/shflags-1.0.3 USE="-examples"
[ebuild N ~] dev-vcs/git-flow-0.4.1
The following keyword changes are necessary to proceed:
(see "package.accept_keywords" in the portage(5) man page for more details)
# required by dev-vcs/git-flow (argument)
=dev-vcs/git-flow-0.4.1 ~amd64
# required by dev-vcs/git-flow-0.4.1
# required by dev-vcs/git-flow (argument)
=dev-util/shflags-1.0.3 ~amd64
Autounmask changes successfully written.
* IMPORTANT: config file '/etc/portage/package.accept_keywords' needs updating.
* See the CONFIGURATION FILES section of the emerge
* man page to learn how to update config files.
Yokit 21:56:22
etc-update
Akagi201 21:56:59
akagi201@akgentoo ~/akwetalk (master*) $ sudo etc-update
Scanning Configuration files...
The following is the list of files which need updating, each
configuration file is followed by a list of possible replacement files.
1) /etc/portage/package.accept_keywords (1)
Please select a file to edit by entering the corresponding number.
(don't use -3, -5, -7 or -9 if you're unsure what to do)
(-1 to exit) (-3 to auto merge all files)
(-5 to auto-merge AND not use 'mv -i')
(-7 to discard all updates)
(-9 to discard all updates AND not use 'rm -i'):
Yokit 21:57:10
-3
Akagi201 21:57:33
akagi201@akgentoo ~/akwetalk (master*) $ sudo etc-update
Scanning Configuration files...
The following is the list of files which need updating, each
configuration file is followed by a list of possible replacement files.
1) /etc/portage/package.accept_keywords (1)
Please select a file to edit by entering the corresponding number.
(don't use -3, -5, -7 or -9 if you're unsure what to do)
(-1 to exit) (-3 to auto merge all files)
(-5 to auto-merge AND not use 'mv -i')
(-7 to discard all updates)
(-9 to discard all updates AND not use 'rm -i'): -3
Replacing /etc/portage/package.accept_keywords with /etc/portage/._cfg0000_package.accept_keywords
Exiting: Nothing left to do; exiting. :)
Yokit 21:57:42
嗯, 再装就可以了.
Akagi201 21:58:11
双击查看原图
Yokit 21:58:35
这是针对性地对这个软件包指定最用新版本..
Akagi201 21:58:56
哦
Akagi201 21:59:02
我是第一次装
Akagi201 21:59:27
以前遇到过一次这种, 后来不会解决了
Yokit 22:00:02
有些软件包开发活跃, 没等stable版就直接开发下一个版本了.
Akagi201 22:01:17
哦
Akagi201 22:03:30
多谢了双击查看原图
emerge --ask mysql
/bin/bash
emerge --config =dev-db/mysql-[version]
rc-update add mysql default
rc-service mysql start
mysql_secure_installation
进行安全配置$ vim .zshrc export GOPATH=$HOME/akgo export PATH=$HOME/akgo/bin:$PATH
## Problems
*
`eselect news read new`
### Gentoo says "config files in /etc need updating"
<http://www.lyratechnicalsystems.com/pivot/entry.php?id=38>
### Warning: Cannot open ConsoleKit session: Unable to open session: Failed to connect to socket /var/run/dbus/system_bus_socket: No such file or directory.
rc-update add dbus default rc-update add consolekit default
<http://forums.gentoo.org/viewtopic-t-889460-start-0.html>
### KDE xdm
* rc-update: service `xdm' does not exist
* /etc/conf.d/xdm doesn't exist.
* `emerge xdm` doesn't work.
* Solution: `emerge xorg-server`
* `etc-update` 选择 -5
* 安装/卸载指定版本软件 <http://blog.sloger.info/linux/emerge-in-gentoo.html>
### 中文化
1. 修改/etc下的locale.gen文件,加入下面内容
en_US ISO-8859-1 en_US.UTF-8 UTF-8 zh_CN GB18030 zh_CN.GBK GBK zh_CN.GB2312 GB2312 zh_CN.UTF-8 UTF-8
2. `locale-gen`
3. `eselect locale list`
4. `eselect locale set <value>` // en_US.utf8
5. `env-update && source /etc/profile`
6. cross-compile: <http://www.gentoo.org/proj/en/base/embedded/handbook/cross-compiler.xml?style=printable>
## 软件包管理
* <http://kenwublog.com/gentoo-emerge-manual-and-skills>
* `/usr/bin/ip`命令不存在, 要`emerge iproute`
## systemd下网络接口问题
<http://www.freedesktop.org/software/systemd/man/systemd.network.html>
1. configuration file for the systemd service
/etc/conf.d/network@enp0s3 address=192.168.1.102 netmask=24 broadcast=192.168.1.255 gateway=192.168.1.1
2. a systemd unit file
/etc/systemd/system/network@.service [Unit] Description=Network connectivity (%i) Wants=network.target Before=network.target BindsTo=sys-subsystem-net-devices-%i.device After=sys-subsystem-net-devices-%i.device
[Service] Type=oneshot RemainAfterExit=yes EnvironmentFile=/etc/conf.d/network@%i
ExecStart=/bin/ip link set dev %i up ExecStart=/bin/ip addr add ${address}/${netmask} broadcast ${broadcast} dev %i ExecStart=/bin/sh -c 'test -n ${gateway} && /bin/ip route add default via ${gateway}'
ExecStop=/bin/ip addr flush dev %i ExecStop=/bin/ip link set dev %i down
[Install] WantedBy=multi-user.target
3. `systemctl enable network@enp0s3`
* `emerge -v net-dialup/pptpclient`
* <http://www.gentoo-wiki.info/HOWTO_PPTP_VPN_client>
* `sudo emerge gengetopt`
## libtinfo.so.5 problem
* `cd lib; ln -s libncurses.so.5 libtinfo.so.5`
* <http://www.linuxforums.org/forum/installation/6251-libtinfo-so-5-a.html>
* <http://forums.opensuse.org/showthread.php/446927-missing-library-libtinfo-so-5>
## ip
* `/etc/dhcpcd.conf`
static ip_address=192.168.2.8/24 static routers=192.168.2.1 static domain_name_servers=192.168.2.1
## Refs
* <https://wiki.archlinux.org/index.php/Network_configuration#Persistent_configuration_on_boot_using_systemd_and_udev_rules>
* <http://wiki.gentoo.org/wiki/Polkit>