علی شکیبا



برای کنترل دسترسی به وب‌سابت‌ها و البته خیلی چیزهای دیگر در سیستم‌های کارگاه‌ها، من از راهکار HomeGuard استفاده کردم که عملکرد خوبی دارد. این ابزار از آدرس 

https://p30download.com/fa/entry/31768/ قابل دریافت است. البته برای عملکرد بهتر، خیلی از ویژگی‌ها مانند Keyboard Logging و Screen Monitoring را غیرفعال کردم (هدف جلوگیری از Web Surfing در کارگاه‌های آموزشی است).


sudo apt-get install scsitools
sudo rescan-scsi-bus.sh
cat /proc/partitions


# Partition and format your disks
sudo fdisk /dev/<newdevice>
sudo mkfs -t ext3 /dev/<newdevice><partitionnumber>


# Add the devices to /dev/disk/by-uuid/
sudo partprobe
sudo blkid /dev/<newdevice><partitionnumber>


# Note the UUID : Add the new mount to /etc/fstab, and mount the filesystem
vi /etc/fstab
mount -a

مرجع

https://blog.ryandlane.com/2010/03/12/adding-new-hard-drives-live-on-an-ubuntu-guest-with-vmware-esx/ 


ابتدا توزیع پایتون anaconda را نصب می کنیم (من از 3.7 64 بیتی استفاده می‌کنم)

wget 

https://repo.anaconda.com/archive/Anaconda3-5.3.0-Linux-x86_64.sh
sudo bash Anaconda3-5.3.0-Linux-x86_64.sh
conda create -n TFGPU anaconda python=3.5
conda activate TFGPU
conda install tensorflow-gpu

در این حالت، یک warning مبنی بر deprecate شدن یک متد از numpy در نسخه های آتی دریافت می‌کنیم که خیلی مساله مهمی نیست (برنامه نویسان tensorflow باید آن را رفع کنند!).


برای نصب، ابتدا درایور مربوطه و CUDA نسخه 10 را از سایت رسمی nVidia دریافت می‌کنیم

http://us.download.nvidia.com/tesla/410.72/NVIDIA-Linux-x86_64-410.72.run

سپس، نصب را با استفاده از دستورات زیر به انجام می‌رسانیم

sudo dpkg --add-architecture i386
sudo apt-get update
sudo apt install build-essential libc6:i386
sudo bash NVIDIA-Linux-x86_64-410.72.run
nvidia-smi

برای نصب cudnn نیز از بسته های deb آماده سایت nVidia می‌توان استفاده نمود:

sudo dpkg -i *.deb

کار تمام است.


rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
rpm -Uvh http://www.elrepo.org/elrepo-release-6-8.el6.elrepo.noarch.rpm
yum --enablerepo=elrepo-kernel install kernel-lt
nano /etc/grub.conf # change default = 1 to default = 0
shutdown -r 0
rpm -iUvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
yum update -y
yum -y install docker-io
docker -d

مرجع: 

https://medium.com/@NMeyen/installing-docker-on-centos-6-x-811f5ec06652 


import telnetlib
for i in range(1,256):
host = 'xyz.xyz.xyz.' + str(i)
user = 'user'.encode('ascii')
password = 'pass'.encode('ascii')
try:
tn = telnetlib.Telnet(host, port=23)
tn.read_until(b'Username: ')
tn.write(user + b'\n')
tn.read_until(b'Password: ')
tn.write(password + b'\n')
tn.write(b'conf t' + b'\n')
tn.write(b'access-list zz permit xyz.xyz.xyz.xyz' + b'\n')
tn.write(b'exit' + b'\n')
tn.write(b'write memory' +b'\n')
tn.write(b'exit' + b'\n')
tn.read_all()
print('Done for ' + host)
except:
print('Not exists ' + host)

for host in list_of_hosts:
user = 'admin'.encode('ascii')
password = ''.encode('ascii')
try:
END = b'\r\n'
tn = telnetlib.Telnet(host, port=23)
tn.read_until(b'Login: ')
tn.write(user + END)
tn.read_until(b'Password: ')
tn.write(password + END)
tn.read_until(b'>')
tn.write(b'password new-password="newPass" confirm-new-password="newPass" old-password="oldPass"' + END)
tn.write(b'/snmp community' + END)
tn.write(b'add name=comm_str addresses=741.852.963.147,123.456.789.123 read-access=yes write-access=no' + END)
tn.write(b'' + END)
tn.write(b'set trap-community=comm_str' + END)
tn.write(b'set trap-version=2' + END)
tn.write(b'set enabled=yes' + END)
tn.write(b'' + END)
tn.write(b'quit' + END)
tn.read_all()
print('Done for ' + host)
except:
print('Not exists ' + host)

nano /etc/firewalld/services/snmp.xml
<?xml version="1.0" encoding="utf-8"?>
<service>
<short>SNMP</short>
<description>SNMP protocol</description>
<port protocol="udp" port="161"/>
</service>
firewall-cmd --reload
firewall-cmd --new-zone=special --permanent
firewall-cmd --reload
firewall-cmd --zone=special --add-source=xyz.xyz.xyz.xyz/32
firewall-cmd --zone=special --add-service snmp --permanent
firewall-cmd --reload

yum install net-snmp-utils snmp snmpd
/etc/snmp/snmpd.conf
rocommunity publicString
com2sec local localhost 192.168.192.202
com2sec network_l 192.168.192.0/24
group MyROGroup_1 v2c local
group MyROGroup_1 v2c network_1
view all-mibs included .1 80
access MyROGroup_1 v1 noauth exact all-mibs none none
access MyROGroup_2 v2c noauth exact all-mibs none none
/etc/init.d/snmpd start
chkconfig snmpd on
snmpwalk -v 1 -c publicString -O e 127.0.0.1

مطالعه کتاب Learn Keras for Deep Neural Networks: A Fast-Track Approach to Modern Deep Learning with Python نوشته Jojo John Moolayil که توسط انتشارات APRESS در سال 2019 چاپ شده است را به دوستانی که مفاهیم شبکه های عصبی را می دانند؛ اما به دنبال پیاده سازی سریع آن ها هستند؛ توصیه می کنم. البته باید متذکر شد که نگارنده کتاب بخش های زیادی را حاشیه رفته که می توان آن ها را سریعتر مطالعه نمود. این نوشتار در حدود 180 صفحه است و مطالعه آن در یک بعد از ظهر گرم بهاری لذت بخش است! اما مراقب باشید بیش از این برای آن زمان نگذارید.
نکته قابل ذکر دیگر اینکه این کتاب به کاربردهای اساسی DeepLearning مانند CNN و RNN و GAN نمی پردازد و بیشتر می خواهد بگوید چگونه یک شبکه عصبی کلاسیک را پیاده سازی کنید.


برای فعال‌سازی ویندوز

دستورات زیر را در حالت Administrator در CMD اجرا می‌کنیم:

slmgr /skms kms.esxi.vru.ac.ir
slmgr /ato

برای فعال‌سازی آفیس

ابتدا به مسیر نصب Office رفته و بعد دستورات زیر را در حالت Administrator در CMD اجرا می‌کنیم:

cscript ospp.vbs /sethst:kms.esxi.vru.ac.ir
cscript ospp.vbs /act

برای به روزرسانی VCSA، من از IIS استفاده می‌کردم که دردسر نصب و راه‌اندازی سرور مجزا را داشت. به همین منظور، با جستجو در وب متوجه شدم می‌توان از سرور HFS و Offline Bundle ها استفاده کرد. این وب سرور خیلی ساده روی ویندوز کار می کند! بدون نصب و نیاز به کاری خاص!

https://www.rejetto.com/hfs/


module load hadoop2.6
module load jdk-11.0.2

کامپایل فایل

export CLASSPATH="$HADOOP_HOME/share/hadoop/mapreduce/hadoop-mapreduce-client-core-2.6.0.jar:$HADOOP_HOME/share/hadoop/mapreduce/hadoop-mapreduce-client-common-2.6.0.jar:$HADOOP_HOME/share/hadoop/common/hadoop-common-2.6.0.jar:~/hadoop/MyCodes/*:$HADOOP_HOME/lib/*"
/opt/java/jdk1.8.0_144/bin/javac -d .  *.java

تولید فایل jar با استفاده از Manifest.txt با محتوای

Main-Class: SalesCountry.SalesCountryDriver

/opt/java/jdk1.8.0_144/bin/jar cfm FinalPackageName.jar Manifest.txt PackageName/*.class

اجرای برنامه هدوپ

hadoop jar ProductSalePerCountry.jar /ali.shakiba/data.csv /ali.shakiba/output.log

from bidi.algorithm import get_display
import arabic_reshaper
def make_farsi_text(x):
reshaped_text = arabic_reshaper.reshape(x)
farsi_text = get_display(reshaped_text)
return farsi_text
def make_farsi_text(x):
reshaped_text = arabic_reshaper.reshape(x)
farsi_text = get_display(reshaped_text)
return farsi_text
font_title = {'family': 'B Farnaz',
'color': 'red',
'weight': 'normal',
'size': 30,
}
font_labels = {'family': 'B Nazanin',
'color': 'black',
'weight': 'normal',
'size': 20,
}

برداشته شده از:

http://imuhammad.ir/2017/09/23/farsi-plots-python/


ابتدا لازم است تا سرویس های SSH روی هر دو ماشین فعال شده و سپس دستورات زیر به منظور انتقال استفاده شوند. همچنین پس از انجام انتقال، تغییرات به حالت قبل برگردند.

esxcli network firewall ruleset list --ruleset-id sshClient
esxcli network firewall ruleset set --ruleset-id sshClient --enabled=true
scp -r sourceFolder root@xyz.xyz.xyz.xyz:/vmfs/volumes/destDataStore

دستورات زیر را اجرا می کنیم:

$ sudo lvmdiskscan
/dev/loop0 [ <90.99 MiB]
/dev/ubuntu-vg/ubuntu-lv [ <49.00 GiB]
/dev/loop1 [ <211.76 MiB]
/dev/loop2 [ <88.68 MiB]
/dev/sda2 [ 1.00 GiB]
/dev/sda3 [ <49.00 GiB] LVM physical volume
/dev/sdb [ 1.00 TiB]
2 disks
4 partitions
0 LVM physical volume whole disks
1 LVM physical volume
$ sudo pvscan
PV /dev/sda3 VG ubuntu-vg lvm2 [<49.00 GiB / 0 free]
Total: 1 [<49.00 GiB] / in use: 1 [<49.00 GiB] / in no VG: 0 [0 ]

$ sudo vgscan
Reading volume groups from cache.
Found volume group "ubuntu-vg" using metadata type lvm2

$ sudo pvcreate /dev/sdb
Physical volume "/dev/sdb" successfully created.
$ sudo vgextend ubuntu-vg /dev/sdb
Volume group "ubuntu-vg" successfully extended

$ sudo lvscan
ACTIVE '/dev/ubuntu-vg/ubuntu-lv' [<49.00 GiB] inherit

در زمان ذخیره نتایج، معمولا اطلاعات را pickle می کنم. اما متاسفانه در حدود یک سال پیش فراموش کرده بودم از مد 'wb' استفاده کنم و فقط از 'w' استفاده کرده بودم! برای رفع مشکل، دستورات زیر به کمکم آمدند

with open('file.pickle', 'rb') as f:
# tests = pickle.load(input_file)
u = pickle._Unpickler(f)
u.encoding = 'latin1'
p = u.load()

دستورات زیر را به ترتیب اجرا می کنیم و کار تمام است

sudo apt install cmake unzip pkg-config libjpeg-dev libpng-dev libtiff-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libxvidcore-dev libx264-dev libjpeg-dev libpng-dev libtiff-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libxvidcore-dev libx264-dev libgtk-3-dev libatlas-base-dev gfortran cmake gcc g++ git libjpeg-dev libpng-dev libtiff5-dev libavcodec-dev libavformat-dev libswscale-dev pkg-config libgtk2.0-dev libopenblas-dev libatlas-base-dev liblapack-dev libeigen3-dev libtheora-dev libvorbis-dev libxvidcore-dev libx264-dev sphinx-common libtbb-dev yasm libopencore-amrnb-dev libopencore-amrwb-dev libopenexr-dev libgstreamer-plugins-base1.0-dev libavcodec-dev libavutil-dev libavfilter-dev libavformat-dev libavresample-dev ffmpeg
mkdir opencv4
cd opencv4
wget -O opencv.zip https://github.com/opencv/opencv/archive/4.1.0.zip
wget -O opencv_contrib.zip https://github.com/opencv/opencv_contrib/archive/4.1.0.zip
unzip opencv.zip
unzip opencv_contrib.zip
mv opencv-4.1.0 opencv
mv opencv_contrib-4.1.0 opencv_contrib
cd opencv
mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=$(python -c "import sys; print(sys.prefix)")-D ENABLE_FAST_MATH=ON -D INSTALL_PYTHON_EXAMPLES=ON -D INSTALL_C_EXAMPLES=OFF -D OPENCV_ENABLE_NONFREE=ON -D OPENCV_EXTRA_MODULES_PATH=~/opencv4/opencv_contrib/modules -D CMAKE_INSTALL_PREFIX=$(python -c "import sys; print(sys.prefix)") -D PYTHON_EXECUTABLE=$(which python) -D PYTHON_INCLUDE_DIR=$(python -c "from distutils.sysconfig import get_python_inc; print(get_python_inc())") -D PYTHON_PACKAGES_PATH=$(python -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())") -D BUILD_EXAMPLES=ON
make -j 20
sudo make install
sudo ldconfig
python
import cv2

آخرین ارسال ها

آخرین وبلاگ ها

آخرین جستجو ها