Cara Memasukan Password Di Linux Menggunakan Python

 Assalamualaikum, Salam Semua nya

Automation Fill Password Linux with python and Check Version python and Loading in Python


Rabu, 27 Juli 2022

Author : Indra Dwi A.


Disini saya akan memberikan cara agar kita dapat memasukan password otomatis kedalam linux menggunakan python dan mengecek versi python, dan memberikan loading pada file python

yang pertama kalian butuhkan adalah python dan beberapa librarynya

nah disini gw mau check versi python dulu nih
kira kira kodenya seperti ini
ini hanya membutuhkan library sys

import os, sys
from sys import platform
if not sys.version_info.major==3 and sys.version_info.minor >= 6:
    print("you need to upgrade your python version to up > 3.6") # Attention
    os.system("xdg-open https://python.org/download") # If you use python < 3.6>
    sys.exit(1) # exit if you not use python > 3.6


::::::::::::::::::
disini dijelaskan bahwa kita membutuhkan library OS yaitu operating system dimana library ini berfungsi untuk memberikan command yang sesuai dengan operating system yang digunakkan oleh usernya
::::::::::::::::::
dijelaskan bahwa kita membutuhkan library SYS, apa sih sys itu ? sys itu adalah System Specific parameter and function, fungsinya untuk mengakses konfigurasi interpreter pada saat runtime dan berinteraksi dengan environment sistem operasi contoh singkat penggunaan library sys

 
 
 
::::::::::::::::::
 
apa sih maksud dari from sys import platform ? nah gw bakal jelasin versi gw sendiri ya, maksudnya itu tuh gimana, jadi...
sebuah interpreter yang dijalankan dari system spesifik dan import platform, platform disini adalah jenis osnya, jadi disini kita dapat menyebutkan system operasinya/mengatur jalannya sebuah program yang disesuaikan oleh programmer, sebagai contoh

import sys
from sys import platform
print(sys.platform)
if platform=="win32":
    print("Ini Windows")
elif platform=="linux" or platform=="linux2":
    print("Ini Linux")
else:
    print("Tidak bisa di deteksi")


untuk baris ke 3 print(sys.platform) ini berguna untuk mendetek kita menggunakan system operasi apa
 
untuk baris ke 4 sampai else, yaitu sys akan mendeteksi kita menggunakan platform/system operasi apa kita, jika platform sama dengan win32 maka ia akan menjalankan perintah atau menampilkan tulisan ini Windows, dan jika platform sama dengan linux dan linux2 maka akan menampilkan tulisan ini Linux.
jika sys tidak ada di sys platform atas, misal kita menggunakan MacOS dimana MacOS sendiri adalah platform dari darwin. dan saat kita mengeksekusi kode tersebut, maka akan langsung pada bagian else , dan menampilkan tulisan Tidak bisa di deteksi.
 
 
 
ibaratnya seperti ini, ada 2 presiden berasal dari Indonesia dan Korea Selatan turun di stasiun yang sama dan menggunakan kereta yang sama, di stasiun tersebut sudah terdapat karpet yang sudah di siapkan sesuai dengan presidennya, presiden indonesia dengan karpet hijau dan presiden Korsel dengan karpet merah. keduanya sama sama turun tapi berjalan sesuai dengan karpetnya, itulah dinamakan sys platform, jika tidak sesuai, maka presiden tersebut tetap di dalam sebuah kereta hingga tujuannya memenuhi syarat
 
kalian bisa melihat list platform disini
 
 
::::::::::::::::::::::

Lanjut ke kode ini, 

import os, sys
from sys import platform
if not sys.version_info.major==3 and sys.version_info.minor >= 6:
    print("you need to upgrade your python version to up > 3.6") # Attention
    os.system("xdg-open https://python.org/download") # If you use python < 3.6>
    sys.exit(1) # exit if you not use python > 3.6 
 
 
baris pertama yaitu kita memasukan library os dan sys
baris kedua yaitu kita memasukan library platform yang ada di dalam sys
baris ketiga dan keempat yaitu kita artikan bahwa jika sys atau runtime jika tidak sesuai versi major 3 dan minor 6, artinya jika bukan dari 3.6 keatas maka kita akan disuruh untuk upgrade versi python kita 3.6 keatas
baris kelima yaitu kita akan memerintahkan system operasi kita menuju website download python, dan xdg-open adalah perintah command untuk memanggil browser yang sudah menjadi default kita
baris keenam sys.exit(1), yaitu artinya system akan melakukan exit secara otomatis dan 1 adalah nilai boolean true yang artinya benar, ibaratnya seperti ini lampu menyala = 1, jika lampu mati = 0.

=================================================

Selanjutnya membuat animasi loading dengan python


yang pertama dibutuhkan adalah library threading os sys time dan itertools
 
Kode : 
 
import time, os, sys, threading, itertools
Cyan = '\033[0;36m'
reset = '\033[0m'
done = False
def loading():
    print(Cyan + " ")
    for c in itertools.cycle(['|' , '/' , '-' , '\\']):
        if done:
            break
        sys.stdout.write('\rMohon Menunggu Ini loading' + c)
        sys.stdout.flush()
        time.sleep(0.1)
        sys.stdout.write('\rLoading Selesai')
    os.system("clear||cls")
    print(reset + " ")

t = threading.Thread(target=loading)
t.start()
time.sleep(5)
done = True

:::::::::::::::::::::::::::
Baris ke 1, yaitu memasukan / mengimport library dari si time, os, sys, threading dan itertools
Baris ke 2 dan 3, yaitu kita mengisi variable cyan dengan warna cyan
kalian bisa liat disini
Baris ke 4, yaitu done = false artinya dalam kode ini done dibuat false demi for c in itertools yang dimana if adalah done yang bernilai false, maka akan mengulang terus menerus
Baris ke 17, yaitu kita membuat threading, apa sih Threading Itu, threading sendiri adalah sebuah kode yang memisahkan antara satu sama lain demi memproses dan mengeksekusi kode yang diciptakan itu sendiri dan threading juga mempengaruhi kinerja CPU, ibaratnya Threading Seperti kamu merapikan 1200 botol, dan di dalam ruangan tersebut terdapat 5 teman kamu maka total menjadi 6 termasuk kamu, jika 1 teman merapikan 200 botol, 1200 dibagi 6 = 200 atau 1 orang dapat merapihkan 200 botol dalam waktu 5 menit (60x5=300) maka hanya sekitar 4 menit dalam merapihkan 1200 botol dengan 6 orang.

contoh tidak memakai threading :
 
 

 
Contoh menggunakan Threading :
 

 
 
Baris ke 18 , artinya adalah bahwa proses threading akan dilakukan / start / dimulai
Baris ke 19, artinya adalah system memberikan istirahat untuk melakukan pemrosesan kode selama 5 detik
Baris ke 20, done = True, jika proses threading diselesaikan secara tuntas kita akan membuat yang tadinya done = False menjadi done = True, setelah True, program tersebut akan menjalakan kode selanjutnya/dibawahnya

=======================================

Selanjutnya membuat linux secara otomatis masuk dengan root dan melakukan pengeksekusian perintah di python 3

 

Disini kita membutuhkan library yang bernama pexpect (tidak perlu di download, karena sudah ada)

disini ada 2 code, 1. manual dengan kemauan user, 2. otomatis

kode Manual :

import pexpect,sys,getpass
 
u = getpass.getuser()
username = input("Masukan Username (root,{}) : ".format(u))
child = pexpect.spawn("/usr/bin/su {}".format(username))
child.logfile_read = sys.stdout.buffer
password = input("Masukan Password : ")
child.sendline(password)
child.expect("#")
child.sendline("whoami")
child.expect("#")
 
::::::::::::::::::::::::::::
 
kode Otomatis : 

import pexpect,sys,time
child = pexpect.spawn("su")
child.logfile_read = sys.stdout.buffer
time.sleep(3)
child.sendline("PASSWORD LINUX KALIAN")
child.expect("#")
child.sendline("whoami")
child.expect("#")
 


2 Comments

Previous Post Next Post