Linux初始化
工作的时候经常会创建很多Linux主机,为了使这些机器马上能有生产力,写一个关于初始化它们的文档
Centos初始化
添加sudo权限
1 | su |
如果没有还原权限后续执行sudo会报错
chmod 0440 /etc/sudoers
更改yum源
centos8
1 | sudo wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-8.repo |
开启ssh
检测是否安装ssh
1 | yum list installed | grep openssh-server |
安装
1 | yum install openssh-server |
配置
1 | sudo vim /etc/ssh/sshd_config |
开启服务
1 | sudo service sshd start |
检测 sshd服务是否开启
1 | ps -e | grep sshd |
检测 22 号端口是否开启
1 | netstat -an | grep 22 |
将 sshd 服务设置为开机自启动
1 | systemctl enable sshd.service |
检测是否开启开机自动启动
1 | systemctl list-unit-files | grep sshd |
重新设置root密码
1 | sudo passwd root |
配置IP
修改/etc/sysconfig/network-scripts/
目录下的网卡文件来配置系统的IP地址。
1 | BOOTPROTO="static" #dhcp改为static |
重启服务
1 | service network restart |
开启DHCP
设置网卡配置文件:ONBOOT = YES
1 | /etc/init.d/network restart |
设置时区和时间
查看当前时区
1 | timedatectl |
列出所有可用时区
1 | timedatectl list-timezones |
设置上海时区
1 | sudo timedatectl set-timezone Asia/Shanghai |
查看是否修改成功:
date
Fri Dec 14 10:48:05 CST 2018 如果显示CST则说明时区设置成功
查看时间和修改时间
显示时间 : date
修改时间date -s [time]
如:设置当前时间为:2018年12月10点50分
1 | date -s ‘2018-12-14 10:50:00’ |
根据网络同步时间
使用ntp同步标准时间,ntp:网络时间协议(network time protol)
安装:yum install ntp
同步1:ntpdate pool.ntp.org
同步2:ntpdate -u ntp1.aliyun.com
写入计划任务
1 | 0-59/10 * * * * /usr/sbin/ntpdate ntp1.aliyun.com | logger -t NTP |
开启Telnet
检查是否存在telnet-server/telnet
1 | rpm -qa | grep telnet |
如不存在,安装
1 | yum install telnet-server |
安装xinetd
1 | yum -y install xinetd |
开启服务
1 | systemctl start telnet.socket |
docker(Centos8)
1 | sudo yum install -y yum-utils device-mapper-persistent-data lvm2 |
docker用户组
查看是否存在docker组
1 | sudo cat /etc/group | grep docker |
创建分组,将用户添加到这个分组里面
1 | sudo groupadd -g 999 docker #-g 999为组ID,也可以不指定 |
1 | sudo usermod -aG docker testuser |
重启服务
1 | sudo systemctl restart docker |
1 | sudo chmod a+rw /var/run/docker.sock |
提示
get ......dial unix /var/run/docker.sock
权限不够,则修改/var/run/docker.sock
权限
docker-compose
1 | sudo pip3 install docker-compose |
1 | pip3 install --upgrade pip |
报错:
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-*
java环境安装与卸载
卸载
1 | rpm -qa | grep jdk |
安装
1 | yum search java|grep jdk |
源码安装
下载源码包后修改配置文件vim /etc/profile
,重载生效source /etc/profile
1 | # SET JAVA HOME |
jdk版本控制
1 | alternatives --install "/usr/bin/java" "java" "/usr/local/java/jdk1.8.0_60/bin/java" 1 |
1 | alternatives --install /usr/bin/java java /usr/local/java/jdk-17.0.1/bin/java 2 |
删除配置
1 | update-alternatives –remove java /usr/local/java/jdk-17.0.1/bin/java |
jdk选项
1 | alternatives --config java |
centos6绕过密码root登录
https://www.cnblogs.com/zoe233/p/11795253.html
开机按ESC
按 e 键进入编辑模式;
选择Kernel /vmlinz-2.6.32-696.e16… … 后按 e 键编辑此项;
进入该编辑模式后,在quiet后面输入 simple 或者 1 然后回车;
按 b 键进入单用户模式;
passwd root 输入两次新密码;
使用 reboot 命令重启;
禁用selinux
- 打开配置文件
/etc/selinux/config
或者其符号链接/etc/sysconfig/selinux
。 - 将
selinux =enforcing
改成selinux =disabled
- 重新启动系统或者使用
setEnforce 0
立即调用更改。
Ubuntu初始化
配置IP地址
临时配置ip,立即生效,但重启后无效
1 | sudo ifconfig eth0 192.168.11.88 netmask 255.255.255.0 //设置网卡eth0的IP地址和子网掩码 |
修改配置文件/etc/network/interfaces
,重启后生效
1 | sudo vi /etc/network/interfaces |
https://blog.csdn.net/davidhzq/article/details/102991577
ssh
1 | sudo apt update |
换源
https://blog.csdn.net/u012308586/article/details/102953882
查看的Ubuntu版本:
1 | cat /etc/issue |
跟换成阿里云的
1 | echo "\ |
设置时间&时区
设置时区
1 | tzconfig |
方式重启后时区改变
1 | cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime |
同步时间
1 | 安装ntpdate工具 |
选择编辑器
1 | root@ubuntu:/var/log# select-editor |
重装vim
在Ubuntu14中会出现下图情况:
重装以下vim即可解决
1 | apt remove vim-common |
这里是vim-common不是vim
1 | apt install vim |
修改用户名
gedit /etc/passwd
,找到代表你的那一行,修改用户名为新的用户名。 注意:只修改用户名!后面的全名、目录等不要动!
gedit /etc/shadow
,找到代表你的那一行,修改用户名为新用户名
gedit /etc/group
,你应该发现你的用户名在很多个组中,全部修改!
修改ubuntu@后面的主机名
1 | sudo gedit /etc/hosts |
1 | sudo gedit /etc/hostname |
更换系统内核
查看当前系统版本
1 | lsb_release -a |
查看内核
1 | uname -a |
安装VMtools
1 | cp VMwareTools-XXXX ~ |
挂载光盘文件权限为只读,且无法更改
1 | chmod 777 VMwareTools-XXXX |
安装成功后还无法复制
1 | /usr/bin/vmware-user |
复制粘贴、拖拽、窗口缩放等问题都是因为这个进程没有启动起来,在终端输入上面的命令
Kail初始化
下载
解决中文乱码
更改默认编码
1
sudo dpkg-reconfigure locales
进入图形化界面后(用上下方向键、空格是选择,Tab是切换,*是选中),选中zh_CN.UTF-8,确定后,将zh_CN.UTF-8选为默认。
安装字体
1
sudo apt update -y && apt install xfonts-intl-chinese ttf-wqy-microhei
重启系统
1
reboot
更改源
1 | # 编辑sources.list文件,并添加以下源,选择自己相对快一点的源。 |
1 | 官方源 |
1 | sudo apt-get update |
中文输入法
1 | apt-get install ibus ibus-pinyin |
1 | im-config |
1 | ibus-setup |
1 | vim .bashrc |
1 | export GTK_IM_MODULE=ibus |
1 | reboot |
高分辨率调整DPI
当前文件夹搭建简单HTTP服务
1 | python -m SimpleHTTPServer |
指定端口
1 | python -m SimpleHTTPServer 8000 |
指定后台运行,加&:
1 | python -m SimpleHTTPServer 8000 & |
生成的新的进程为当前bash的子进程,当关闭当前bash时,相应的子进程也会被kill掉
1 | nohup python -m SimpleHTTPServer 8000 & |
加nohup,忽略所有的挂断信号,如果当前bash关闭,则当前进程会挂载到init进程下,成为其子进程,这样即使退出当前用户,其8000端口也可以使用。
安装多版本java管理
卸载原先的apt安装的java
先检查是否安装,命令:dpkg --list | grep -i jdk
移除openjdk包,命令:apt-get purge openjdk*
卸载 OpenJDK 相关包,命令:apt-get purge icedtea-* openjdk-*
再次检查是否卸载成功,命令:dpkg --list | grep -i jdk
单一环境配置
1 | cd /home/kali/java_env |
update-alternatives版本配置
1 | sudo update-alternatives --install /usr/bin/java java /home/kali/java_env/jdk1.8.0_20/bin/java 1 |
update-alternatives版本切换
1 | update-alternatives --config java |