首页 文章 精选 留言 我的

精选列表

搜索[自动装配],共10015篇文章
优秀的个人博客,低调大师

Docker CE 全自动安装

操作系统 1 2 3 4 [root@localhost~] #cat/etc/redhat-release CentOSLinuxrelease7.3.1611(Core) [root@localhost~] #uname-r 3.10.0-514.el7.x86_64 安装代码如下所示: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 #!/bin/bash #2018-2-2615:34:05 #autoinstalldocker-ceonCentOS7 #byauthordengaosky ###################### #Uninstalloldversions yumremove-ydockerdocker-commondocker-selinuxdocker-engine #Installusingtherepository yum install -yyum-utilsdevice-mapper-persistent-datalvm2 ##yum-config-manager--add-repohttps://download.docker.com/linux/centos/docker-ce.repo yum-config-manager--add-repohttps: //mirrors .aliyun.com /docker-ce/linux/centos/docker-ce .repo #Disabletheedgeandtestrepositories yum-config-manager--disabledocker-ce-edge yum-config-manager--disabledocker-ce- test #INSTALLDOCKERCE yum install docker-ce-y #Configdocker cat > /etc/docker/daemon .json<<EOF { "registry-mirrors" :[ "http://df98fb04.m.daocloud.io" ]} EOF #DisableFirewalld,InstallandEnableiptables systemctldisablefirewalld;systemctlstopfirewalld yum install iptables-services-y systemctl enable iptables;systemctlrestartiptables #DisableSelinux setenforce0 sed -i '/SELINUX/s/enforcing/disabled/g' /etc/selinux/config #StartDocker systemctlstartdocker systemctl enable docker Docker版本信息: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 [root@localhost~] #dockerinfo Containers:0 Running:0 Paused:0 Stopped:0 Images:0 ServerVersion:17.12.0-ce StorageDriver:overlay2 BackingFilesystem:xfs Supportsd_type: true NativeOverlayDiff: false LoggingDriver:json- file CgroupDriver:cgroupfs Plugins: Volume: local Network:bridgehostmacvlannulloverlay Log:awslogsfluentdgcplogsgelfjournaldjson- file logentriessplunksyslog Swarm:inactive Runtimes:runc DefaultRuntime:runc InitBinary:docker-init containerdversion:89623f28b87a6004d4b785663257362d1658a729 runcversion:b2567b37d7b75eb4cf325b77297b140ea686ce8f initversion:949e6fa SecurityOptions: seccomp Profile:default KernelVersion:3.10.0-514.el7.x86_64 OperatingSystem:CentOSLinux7(Core) OSType:linux Architecture:x86_64 CPUs:2 TotalMemory:1.938GiB Name:localhost.localdomain ID:WMF3:D2KK:5ODB:LAS3:MJKI:QMLJ:H2H7:2BWN:6EMW:J7CS:2YIZ:Z4HW DockerRootDir: /var/lib/docker DebugMode(client): false DebugMode(server): false Registry:https: //index .docker.io /v1/ Labels: Experimental: false InsecureRegistries: 127.0.0.0 /8 LiveRestoreEnabled: false [root@localhost~] # 本文转自 dengaosky 51CTO博客,原文链接:http://blog.51cto.com/dengaosky/2073347,如需转载请自行联系原作者

优秀的个人博客,低调大师

让tabbar自动隐藏

在做iOS的开发过程中就会发现有一个比较头疼的问题,就是下面tabbar的隐藏与消失,特别是同一个控制器在不同的地方显示尤为尴尬。 一般在Push的时候都会写这样一句话. self.hidesBottomBarWhenPushed = NO; 有的时候各种Push就会发生tabbar出现异常。 最终我自己写了一个库,来应对这种事情的发生,然后使用起来就非常方便了。 直接Push就可以了,什么都不用写。 这是github的链接:https://github.com/YouZhiZheShiJingCheng/YZ_Push 首先要在Pch文件中导入YZ_Push.h 然后所有一级界面都继承oneVC,其他界面都继承twoVC即可。

优秀的个人博客,低调大师

自动升级OPENSSH shell脚本

由于管理着两百多台Linux服务器,一个人搞这么多机器的安全加固比较累,因此在学习了shell脚本之后果断的写了一些常用脚本做一些系统日常维护,本文OPENSSH的升级是博主本人几乎每两三个月就要做一次升级的,没办法绿盟安全扫描系统总是扫描到相关的高危漏洞,再就是OPENSSH版本更新的也比较频繁,因此不偷懒几乎没法活了。废话不说了,在这里贴下脚本,已经在线上服务器上执行了上百次了,应该不会有什么问题。 #!/bin/bash ################################################################# ######updateopensslopensshscirpt######### #####Author:kl##### ######Date:2014/07/13##### ######LastModified:2016/06/02####### ####Warning:starttelnetservicebeforeusethescript##### ################################################################# #################################################################################### # updateopensshandopenssl ######### ##### ## #################################################################################### #Determinewhetherthecurrentsysteminstalledgcccompilertools zlib_version="zlib-1.2.8" openssl_version="openssl-1.0.2g" openssh_version="openssh-7.2p2" gcc_path=`whichgcc` #gcc_name=`basename$gcc_path` DATE=$(date+%Y%m%d) #OSTYPE #Distributor_ID=$(lsb_release-i) Distributor=`lsb_release-i|cut-c17-` #Determinewhethertherootuser userid=`id-u` if["$userid"-ne0];then echo"sorry,onlyrootcanexecutethescript." exit fi #SETSELINUX=disabled if["$Distributor"!="SUSELINUX"];then sed-i'/SELINUX/s/enforcing/disabled/'/etc/selinux/config setenforce0 fi #pam-devel,tcp_wrappers-develneedbeinstalled,Otherwise,thesoftwarewillinstallfailure #Supportfortcpwrappers/libwraphasbeenremovedinopenssh6.7 if!rpm-qa|greppam-devel&>/dev/null;then echo"pam-develisnotinstalled"&&exit fi #if!rpm-qa|greptcp_wrappers-devel&>/dev/null;then # echo"tcp_wrappers-develnotinstalled"&&exit #fi #Checkwhethertoopenthetelnetservice netstat-tnlp|grep-w23 RETVAL3=$? if[$RETVAL3-eq0];then echo"telnetserviceisrunning------------[yes]" else echo"telnetserviceisnotrunning--------[no]" exit fi #Determinewhethertoinstallgccpackage if[-e"$gcc_path"];then echo"gccisinstalled----------------[yes]" else echo"gccisnotinstalled------------[no]" exit fi #stopsshdservice netstat-tnlp|grep-w22 RETVAL4=$? if[$RETVAL4-eq0];then servicesshdstop echo"stopsshdservice--------------[yes]" fi if[-e/etc/init.d/sshd];then cp/etc/init.d/sshd/root fi #removeopenssh*.rpmifexists ifrpm-qa|grepopenssh&>/dev/null; then rpm-qa|grepopenssh>openssh_list.txt whilereadline do rpm-e$line--nodeps echo"remove$linesuccess------------[yes]" done<openssh_list.txt fi ###########installzlib################## tar-zxvf"${zlib_version}.tar.gz">/dev/null cd$zlib_version ./configure RETVAL5=$? if[$RETVAL5-ne0];then echo"Configurezlibhasencounteredanerror" exit fi make RETVAL6=$? if[$RETVAL6-ne0];then echo"makezlibhasencounteredanerror" exit fi makeinstall cd.. echo"#########################################################" echo"#################################" echo"################zlibinstallsuccess#################" echo"#################################" echo"#########################################################" sleep2 ##########installopenssl############# tar-zxvf"${openssl_version}.tar.gz">/dev/null cd$openssl_version ./configsharedzlib RETVAL7=$? if[$RETVAL7-ne0];then echo"Configureopensslhasencounteredanerror" exit fi make RETVAL8=$? if[$RETVAL8-ne0];then echo"makeopensslhasencounteredanerror" exit fi makeinstall if[-e/usr/bin/openssl];then mv/usr/bin/openssl/usr/bin/openssl.OFF&&ln-s/usr/local/ssl/bin/openssl/usr/bin/openssl else ln-s/usr/local/ssl/bin/openssl/usr/bin/openssl fi if[-e/usr/include/openssl];then mv/usr/include/openssl/usr/include/openssl.OFF&&ln-s/usr/local/ssl/include/openssl/usr/include/openssl else ln-s/usr/local/ssl/include/openssl/usr/include/openssl fi ##Add"/usr/local/ssl/lib"to/etc/ld.so.conf ssl_lib=`grep-w"/usr/local/ssl/lib"/etc/ld.so.conf` if[!-e"$ssl_lib"];then echo"/usr/local/ssl/lib">>/etc/ld.so.conf fi ldconfig-v cd.. echo"#########################################################" echo"#################################" echo"################opensslinstallsucess################" echo"#################################" echo"#########################################################" sleep2 #############installopenssh############## if[-e/etc/ssh];then mv/etc/ssh/etc/ssh_$DATE fi tar-zxvf"${openssh_version}.tar.gz">/dev/null cd$openssh_version ./configure--prefix=/usr--sysconfdir=/etc/ssh--with-zlib--with-pam--with-ssl-dir=/usr/local/ssl--with-md5-passwords RETVAL9=$? if[$RETVAL9-ne0];then echo"Configureopensshhasencounteredanerror" exit fi make RETVAL10=$? if[$RETVAL10-ne0-a$RETVAL10-ne0];then echo"makeopensshhasencounteredanerror" exit fi makeinstall if["$Distributor"=="SUSELINUX"];then cdcontrib/suse cprc.sshd/etc/init.d/sshd chmod+x/etc/init.d/sshd chkconfig--addsshd else cdcontrib/redhat cpsshd.init/etc/init.d/sshd chmod+x/etc/init.d/sshd chkconfig--addsshd fi #AgenericPAMconfigurationisincludedas"contrib/sshd.pam.generic", #youmayneedtoedititbeforeusingitonyoursystem. cd.. cpsshd.pam.generic/etc/pam.d/sshd sed-i's/\/lib\/security\///g'/etc/pam.d/sshd #Modify/etc/ssh/sshd_config #Backup/etc/ssh/sshd_config cp-p/etc/ssh/sshd_config/etc/ssh/sshd_config_bak #ThedefaultsetofciphersandMACshasbeenalteredto #removeunsafealgorithms.Inparticular,CBCciphersandarcfour* #aredisabledbydefault. #ChangessinceOpenSSH6.6 echo"KexAlgorithmsdiffie-hellman-group1-sha1,diffie-hellman-group14-sha1,diffie-hellman-group-exchange-sha1,diffie-hellman-group-exchange-sha256,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group1-sha1,curve25519-sha256@libssh.org">>/etc/ssh/sshd_config echo"Ciphersaes128-cbc,aes192-cbc,aes256-cbc,aes128-ctr,aes192-ctr,aes256-ctr,3des-cbc,arcfour128,arcfour256,arcfour,blowfish-cbc,cast128-cbc">>/etc/ssh/sshd_config echo"MACshmac-md5,hmac-sha1,umac-64@openssh.com,hmac-ripemd160,hmac-sha1-96,hmac-md5-96">>/etc/ssh/sshd_config #Disablerootaccessviasshtoserver #*Thedefaultforthesshd_config(5)PermitRootLoginoptionhaschangedfrom"yes"to"prohibit-password". #*PermitRootLogin=without-password/prohibit-passwordnowbansall #interactiveauthenticationmethods,allowingonlypublic-key, #hostbasedandGSSAPIauthentication(previouslyitpermitted #keyboard-interactiveandpassword-lessauthenticationifthose #wereenabled). #PermitRootLoginprohibit-passwordisthedefaultsinceversion7.0p1 sed-i's/^#PermitRootLogin/PermitRootLogin/'/etc/ssh/sshd_config #sed-i'/PermitRootLogin/s/yes/no/'/etc/ssh/sshd_config sed-i'/PermitRootLogin/s/prohibit-password/no/'/etc/ssh/sshd_config #Set'UsePAMno'to'UsePAMyes'toenablePAMauthentication,accountprocessing, #andsessionprocessing sed-i'/^#UsePAMno/aUsePAMyes'/etc/ssh/sshd_config #Startsshdprocess servicesshdstart #Disabletelnetservice ifnetstat-tnlp|grep-w22&>/dev/null;then sed-i'/disable/s/no/yes/'/etc/xinetd.d/telnet servicexinetdrestart fi echo"#########################################################" echo"#################################" echo"################opensshinstallsucess################" echo"#################################" echo"#########################################################" echo"###############sshversion#################################################" echo"###################################################################################" sshd-v echo"####################################################################################" echo"####################################################################################"

优秀的个人博客,低调大师

Docker自动化双主-02自动化脚本制作镜像启动

基于 DOCKER MySQL 主从搭建: 一、根据 Linux 系统版本号安装 dockerEG:Centos 7:1.shell>sudo yum update2.添加 dockeryum$[dockerrepo] name=Docker Repository baseurl=https://yum.dockerproject.org/repo/main/centos/7/ enabled=1gpgcheck=1 gpgkey=https://yum.dockerproject.org/gpg EOF 3.安装 docker 的包shell>sudo yum install docker-engine4.将 docker 加到服务里面shell>sudo systemctl enable docker.service 5.启动 dockershell> sudo systemctl start docker二、将 docker 镜像导入 linux: 镜像文件上传到/opt/dtstack 目录下: 1.载入镜像:Shell>cd /opt/dtstackShell>docker load < mysql-5.6-x86_64.tar[root@centos7 docker]# docker load < mysql-5.6-x86_64.tarc411e76031a4: Loading layer [==================================================>] 201.9 MB/201.9 MBabd40b5d012f: Loading layer [==================================================>] 60.97 MB/60.97 MB7d082aa6bb0c: Loading layer [==================================================>] 263.3 MB/263.3 MB173e11cd6be1: Loading layer [==================================================>] 6.656 kB/6.656 kBbdb04743768e: Loading layer [==================================================>]sudotee /etc/yum.repos.d/docker.repo <<-'EOF'3.072 kB/3.072 kB9da6836b8f64: Loading layer [==================================================>] 4.872 MB/4.872 MBd47abb872b5c: Loading layer [==================================================>] 20.3 MB/20.3 MB008419e2fbfc: Loading layer [==================================================>] 108.9 MB/108.9 MB95d9d0bff849: Loading layer [==================================================>] 23.04 kB/23.04 kB71405897d961: Loading layer [==================================================>] 1.68 MB/1.68 MB58b14b6eb7df: Loading layer [==================================================>] 49.48 MB/49.48 MBfffc1c2170a5: Loading layer [==================================================>] 94.12 MB/94.12 MB9d60f33d82f1: Loading layer [==================================================>] 23.7 MB/23.7 MB2b9b1be70303: Loading layer [==================================================>] 6.656 kB/6.656 kBa2018f6089d9: Loading layer [==================================================>] 1.122 GB/1.122 GB9e274ef73e1d: Loading layer [==================================================>] 13.82 kB/13.82 kBd0ca45b2e986: Loading layer [==================================================>] 6.144 kB/6.144 kBLoaded image: dtstack_db_01:5.62.列出本地已有镜像:Shell> docker images REPOSITORY TAG SIZEdtstack_db_01 5.6 1.92 GB3.传参脚本说明: #!/bin/bash APP_NAME=db_01DOCKER_IMAGE=dtstack_db_01:5.6docker_run(){docker run -dt \--restart=always --name $APP_NAME \IMAGE ID 26e6aa6ed6c2CREATED 22 hours ago -p 3306:3306 #映射的端口号-v /etc/localtime:/etc/localtime:ro \-v /data/mysql/my3306:/data/mysql \/data/mysql 目录必须存在-e "dbport=3306" #dbport-e "db_root_password=root123" -e "db_master_ip=172.16.1.65" -e "db_slave_ip=172.16.1.86" \ 宿主机目录挂载到/data/mysql/myxxx 下, -e "db_tag=master" -e "db_instance=4" \实例...-i $DOCKER_IMAGE} docker_run4.运行 mysql_docker.sh 脚本 Shell>./mysql_docker.sh db 角色 选择性部署多实例。EG:单实例 db_instance=1, 3 则是 3 个 5.检查容器运行状态: Shell>docker ps –a CONTAINER IDSTATUSIMAGE PORTSCOMMAND"/bin/sh -c '/home..." 34 seconds agoNAMESCREATED dd47a290ae94Up 34 secondsdtstack_db_01:5.60.0.0.0:3306->3306/tcp, 3307-3311/tcp db_01 6.进行观察日志信息是否搭建成功:Shell>docker logs dd47a290ae94170317 19:31:09 mysqld_safe Logging to '/data/mysql/log/alert.log'.170317 19:31:09 mysqld_safe Starting mysqld daemon with databases from /data/mysql/data create replicaiton logmaster change master toupdate root password logSLAVE: 同上述操作: 1.需要更改的: #!/bin/bash APP_NAME=db_01DOCKER_IMAGE=dtstack_db_01:5.6docker_run(){ docker run -dt \ --restart=always \--name $APP_NAME \-p 3306:3306 \-v /etc/localtime:/etc/localtime:ro \-v /data/mysql/my3306:/data/mysql \-e "dbport=3306" \-e "db_root_password=root123" \-e "db_master_ip=172.16.1.69" \-e "db_slave_ip=172.16.1.86" \-e "db_tag=slave" #将 tag 标签转换为 slave,其他不需要修改 -e "db_instance=4" \-i $DOCKER_IMAGE}2.启动 mysql_slave.sh 脚本: Shell>./mysql_docker.sh [root@localhost docker]# docker ps -aCONTAINER ID CREATED NAMES fb45654c2eda Up 6 minutes docker_runIMAGE STATUSdtstack_db_01:5.6 0.0.0.0:3306->3306/tcp, 3307-3311/tcpCOMMAND PORTS6 minutes agodb_01"/bin/sh -c '/home..."三、通过外部连接 mysql:检查主从是否正常:1.SLAVE:Shell>mysql -h172.16.1.86 -uroot -proot123 -P3306 -e "start slave;show slave statusG" | grep _Running | awk 'NR!=3'Warning: Using a password on the command line interface can be insecure.2.master:[root@centos7 docker]# mysql -h172.16.1.65 -uroot -proot123 -P3306 -e "start slave;show slave statusG" | grep _Running | awk 'NR!=3' Slave_IO_Running: Yes Slave_SQL_Running: Yes Slave_IO_Running: Yes

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

用户登录
用户注册