CentOS 之 XXX is not in the sudoers file解决方法
这种情况下要修改/etc/sudoers文件,将相应的用户名注册进去,比如我的用户名是zhouhuahui,需要这么做:
- 进入root用户模式。可以直接以root账号登录centos
 - 添加文件的写权限。
chmod u+w /etc/sudoers。 - 编辑
/etc/sudoers文件,在root ALL=(ALL) ALL后面一行添加:zhouhuahui ALL=(ALL) ALL。 - 完成
 
centos的scl软件集
scl软件集(Software Collections),是为了给 RHEL/CentOS 用户提供一种以方便、安全地安装和使用应用程序和运行时环境的多个(而且可能是更新的)版本的方式,同时避免把系统搞乱。以前在ubuntu上经常会看到,安装某个软件会导致unmet dependencies的错误,原因是软件版本方面的问题。
- 安装scl源. 
sudo yum install centos-release-scl scl-utils-build - 列出scl源有哪些软件可以用. 
sudo yum list all --enablerepo='centos-sclo-rh' > software.txt,然后可以gedit software.txt查看有没有自己想要的软件。比如我会搜索gdb,就可以看到有很多devtoolset-10开头的和gcc, gdb有关的软件。 - 查看从scl中安装的包:
scl --list 
centos下安装最新的gcc, g++, gdb
1  | sudo yum install devtoolset-10-gcc.x86_64 devtoolset-10-gcc-c++.x86_64 devtoolset-10-gcc-gdb-plugin.x86_64  | 
此时查看gcc版本,会发现还是老版本,我们需要切换gcc版本
1  | scl enable devtoolset-10 bash  | 
在系统中永久启用最新的gcc
sudo vi /etc/profile,假如下述内容
1  | scl enable devtoolset-10 bash  | 
立即生效
1  | source /etc/profile  | 
linux软件版本管理命令update-alternatives
以jdk为例,安装了jdk后,先要在update-alternatives工具中注册:
1  | update-alternatives --install /usr/bin/java java /opt/jdk1.8.0_91/bin/java 200  | 
update-alternatives --install [link] [name] [path] [priority]
- link: link为系统中功能相同软件的公共链接目录。
 - name为命令链接符名称,如java
 - path为你所要使用新命令、新软件的所在目录
 - priority为优先级。在自动模式下,默认选择优先级最高的软件
 
查看已注册列表
1  | update-alternatives --display java  | 
手动修改命令版本
1  | update-alternatives --config java  | 
centos7下的yum包管理工具
删除软件
1  | sudo yum remove llvm-toolset-7-cmake.x86_64  | 
centos7下安装cmake
第一种方式
1  | sudo yum install cmake  | 
但是这种方式安装的cmake版本不够
第二种方式
使用scl软件集
1  | sudo yum install llvm-toolset-7-cmake.x86_64  | 
第三种方式
官网下载源码,编译安装
- 从cmake download找到linux的一个cmake版本,然后复制下载链接,比如:
https://github.com/Kitware/CMake/releases/download/v3.21.3/cmake-3.21.3.tar.gz - 在linux下,使用wget命令下载, 
wget https://github.com/Kitware/CMake/releases/download/v3.21.3/cmake-3.21.3.tar.gz - 解压到
~/Documents/下,tar -zxvf cmake-3.21.3.tar.gz -C ~/Documents/ - 需要安装一些依赖。
yum -y install gcc gcc-c++ openssl-devel,当然如果有gcc, gcc-c++之后,就不用安装了,直接安装openssl-devel就好了。 - cd到cmake源文件的根目录, 
cd ~/Documents/cmake-3.21.3 - 运行
./bootstrap - 运行
make && sudo make install - 建立软链接:
sudo ln -s ~/Documents/cmake-3.21.3/bin/cmake /usr/bin/cmake - 测试, 
cmake --version,大功告成 
linux下安装VPN
点击链接
centos7下安装bison
yum默认的bison版本不够,需要自己下载编译。bison下载。假如我要下载bison3.7的。
1  | wget https://ftp.gnu.org/gnu/bison/bison-3.7.tar.gz --no-check-certificate  | 
解压:
1  | mkdir bison  | 
编译,进入bison根目录,查看INSTALL文件。
1  | cd bison/bison-3.7  | 
centos7下更新源
1  | wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo  | 
ubuntu
软件源
在清华源 这里可以下载很多linux软件。
ubuntu下安装gcc, g++
版本切换
参考:
Ubuntu中update-alternatives命令(版本切换命令)
centos
rpm
1  | rpm -pa | grep {software_name}  | 
可以查看安装的软件的版本