First off i wanna say i take know credit at all for this i did not write the commands and i did not figure out how to do it i found this in the Desire HD thread and figured i would share it with all the HTC Inspire 4G people. This is a very simple process and within minutes your up and running Linux Ubuntu 10.10. Below i will post all the requirements, the steps, and the commands. Enjoy guys and girls and if you need any help with this just post to the Thread. Thanks Donny
Requirements:
*A rooted HTC Desire HD. For rooting instructions, see how to permanently root HTC Inspire 4G.
*A microSD card with 3 GB or more free space.
*Other custom kernel with LoopBack support
*Ubuntu image and required scripts
*Android Terminal Emulator app (install from the Android Market)
*Android VNC Viewer app (install from the Android Market)
*Before proceeding, move all your apps back to Internal Storage if you have moved them to SD using App2SD.
*An active internet connection on your phone (Wi-Fi is recommended).
Procedure:
1 – Installing Ubuntu:
*Create a folder called ‘ubuntu’ on the root of your SD card.
Extract the contents of the downloaded Ubuntu.tar file and transfer them to the folder from Step 2.
*Launch Terminal Emulator and enter these commands:
su
pm setInstallLocation 1
cd sdcard/ubuntu
sh ubuntu.sh
bootubuntu
If all goes well, you should see “[email protected]:/#” now, indicating you are now running Ubuntu.
Entering Ubuntu at any time:
*To enter Ubuntu terminal at any time from now onwards, you only have to launch Terminal Emulator, get su privileges, cd to the ubuntu directory and type ‘bootubuntu’:
su
cd sdcard/ubuntu
sh ubuntu.sh
bootubuntu
Configuring the Gnome Desktop GUI:
*Now that you have Ubuntu 10.10 running, the next step would be enabling the Gnome Desktop GUI.
*If you aren’t already in the Ubuntu terminal, enter it using the above-mentioned instructions.
*Make sure that your phone’s internet connection is active and enter the following commands. Wait till each one finishes and enter ‘y’ (for yes) to confirm any prompt that you get:
apt-get update
apt-get install tightvncserver
cd /bin
cat >x
rm –r –f /tmp
mkdir /tmp
chmod 777 /tmp
export USER=root
export XKL_XMODMAP_DISABLE=1
vncserver –geometry 1024x800
Press Enter once more after entering the last command.
*Now you must configure your volume-down key as Ctrl in Terminal Emulator. Simply go to Menu > Preferences > Control Key and select Volume-Down key.
*Go back to the command line once done.
*Hold the Volume-Down key and press ‘d’. (This will basically enter Ctrl+D.)
Now enter these commands:
chmod 777 x
x
*This ‘x’ script basically lets you start the Gnome GUI. As this is the first time you are running this script, it will ask you to set a password for the VNC connection. Set a password of your choice.
*It will also ask you to set a password for “view-only” mode, which isn’t required so answer ‘n’ for no.
*Now launch Android VNC Viewer and create a new connection with the following settings:
*Nickname: Anything of your choice.
*Password: The password you set in Step 6.
*Address: localhost
*Port: 5901
*Color format: 24-bit color (4bpp)
*Now click ‘Connect’. In a minute or so, you should see your Ubuntu 10.10 Gnome desktop!!!
Links
*Get the Ubuntu Files from the link below and install in Utorent
http://www.addictivetips.com/mobile/how-to-install-ubuntu-linux-on-htc-desire-hd/
Sounds funny!But I won't try it now. maybe latter...
Haha...,Up you!
Ice done this already and its definitely cool yo have and could come in useful. Its similar to having what the atrix has.
Sent from my Desire HD using XDA App
We need w7 ROM port yo inspire.
Sent from my Inspire 4G using XDA Premium App
Any phones with.the same hardware currently running it?
Sent from my Desire HD using XDA App
I've followed this guide to the letter and I can't seem to get past the "cat >x" command. I even tried it using ADB remote from my computer, I get the exact same results as when I use the terminal emu.
*Other custom kernel with LoopBack support
How do we find out if the kernel has loopback support?
Can someone get a alternate mirror for the ubuntu image and scripts? the torrent is dead.
I made a quick torrent and i'll seed a bit.
I too wonder about loopback support, how do we find out if our kernel has it (aside from checking the thread, since it didnt come up)
tried with cm7 stock kernel, didn't work
will try with lordmod hd 4.5
download the zip, extract, load torrent.
EDIT:
Okay, it worked with LORDMOD HD 4.5, may work on CM7 also, not sure,
what i did was: (taken from androlinux.com)
root explorer to sdcard/ubuntu
open the bootubuntu script
change the loop1 to loop7 (should be 3 of them to change)
save and exit
su
cd sdcard/ubuntu
sh ubuntu.sh (not sure if thats needed again, but just to be safe, i did it again)
bootubuntu
Also, gnome is nice, but why not run lxde?
sudo apt-get install lxde
etc etc: here: lol http://androlinux.com/android-ubuntu-development/how-to-install-ubuntu-on-android/
The only way to check for loop support is to check config.gz
adb shell
cp /proc/config.gz /data/config.gz
busybox gunzip /data/config.gz
grep CONFIG_BLK_DEV_LOOP /data/config
It will either say y or is not set.
If you are using terminal emulator, you will need to su before typing in the commands.
Sent from my HERO200 using XDA App
dacket84 said:
I've followed this guide to the letter and I can't seem to get past the "cat >x" command. I even tried it using ADB remote from my computer, I get the exact same results as when I use the terminal emu.
Click to expand...
Click to collapse
no space cat>x
then follow the directions.
what if it does not ask for a password i followed all of the steps and when i typed x at the end it never asked me to create a password
Is there a mirror for this file? I'm getting at the most about 10 kbps down and that is just taking forever...
Sent from my Inspire 4G using Tapatalk
Psionfenix said:
I made a quick torrent and i'll seed a bit.
I too wonder about loopback support, how do we find out if our kernel has it (aside from checking the thread, since it didnt come up)
tried with cm7 stock kernel, didn't work
will try with lordmod hd 4.5
download the zip, extract, load torrent.
EDIT:
Okay, it worked with LORDMOD HD 4.5, may work on CM7 also, not sure,
what i did was: (taken from androlinux.com)
root explorer to sdcard/ubuntu
open the bootubuntu script
change the loop1 to loop7 (should be 3 of them to change)
save and exit
su
cd sdcard/ubuntu
sh ubuntu.sh (not sure if thats needed again, but just to be safe, i did it again)
bootubuntu
Also, gnome is nice, but why not run lxde?
sudo apt-get install lxde
etc etc: here: lol http://androlinux.com/android-ubuntu-development/how-to-install-ubuntu-on-android/
Click to expand...
Click to collapse
I tried "sudo apt-get install lxde". It appears that the source files are no longer available. "apt-get update" fails also.
any screenshots?
justFaisal said:
any screenshots?
Click to expand...
Click to collapse
+1
justFaisal said:
any screenshots?
Click to expand...
Click to collapse
^^^ what he said...
The code doesn't work for Jellytime?
unCoRrUpTeD said:
The only way to check for loop support is to check config.gz
adb shell
cp /proc/config.gz /data/config.gz
busybox gunzip /data/config.gz
grep CONFIG_BLK_DEV_LOOP /data/config
It will either say y or is not set.
If you are using terminal emulator, you will need to su before typing in the commands.
Sent from my HERO200 using XDA App
Click to expand...
Click to collapse
I checked for loop and am using JellyTime 4.2 R2 from this link: http://forum.xda-developers.com/showthread.php?t=1778202
I also checked the loopback support and it said yes. I tried changing the loop in the script firl to loop7, but it never generated the file folders. As you can see I did this multiple times to no avail.
Here is the script that was Generated by CMD under ADB Shell:
Code:
Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation. All rights reserved.
C:\sdk\platform-tools>adb shell
# cp /proc/config.gz /data/config.gz
cp /proc/config.gz /data/config.gz
# busybox gunzip /data/config.gz
busybox gunzip /data/config.gz
# grep CONFIG_BLK_DEV_LOOP /data/config
grep CONFIG_BLK_DEV_LOOP /data/config
CONFIG_BLK_DEV_LOOP=y
# su
su
[email protected]:/ # cd /sdcard
cd /sdcard
[email protected]:/sdcard # cd ubuntu
cd ubuntu
[email protected]:/sdcard/ubuntu # sh ubuntu.sh
sh ubuntu.sh
modprobe: module 'ext2' not found
←[H←[Jmkdir failed for /data/local/mnt, File exists
←[H←[JUnable to chmod bootubuntu: Operation not permitted
←[H←[J
Ubuntu Chroot Bootloader v0.1
Ubuntu Bootloader is now installed!
This process does NOT damage Android OS!
Original Installer by Charan Singh
Modified for Ubuntu Chroot by Max Lee at AndroLinux.com ,G2Hacks.com and NexusOn
eHacks.net
To enter the Ubuntu Linux console just type 'bootubuntu'
[email protected]:/sdcard/ubuntu # bootubuntu
bootubuntu
mknod: /dev/loop1: File exists
losetup: /dev/block/loop1
mount: Device or resource busy
mount: No such file or directory
mount: No such file or directory
mount: No such file or directory
net.ipv4.ip_forward = 1
Setting /etc/resolv.conf to Google Open DNS 8.8.8.8 and 8.8.4.4
/system/bin/bootubuntu[22]: can't create /data/local/ubuntu/etc/resolv.conf: No
such file or directory
/system/bin/bootubuntu[23]: can't create /data/local/ubuntu/etc/resolv.conf: No
such file or directory
Setting localhost on /etc/hosts
/system/bin/bootubuntu[25]: can't create /data/local/ubuntu/etc/hosts: No such f
ile or directory
READY TO ROCK AND ROLL BABY!
Brought to you by NexusOneHacks.net and the open source community!
chroot: can't execute '/bin/bash': No such file or directory
Shutting down Ubuntu
failed: No such file or directory
failed: No such file or directory
failed: No such file or directory
failed: Invalid argument
losetup: /dev/block/loop1: Device or resource busy
127|[email protected]:/sdcard/ubuntu # bootubuntu
bootubuntu
mknod: /dev/loop1: File exists
losetup: /dev/block/loop1
mount: Device or resource busy
mount: No such file or directory
mount: No such file or directory
mount: No such file or directory
net.ipv4.ip_forward = 1
Setting /etc/resolv.conf to Google Open DNS 8.8.8.8 and 8.8.4.4
/system/bin/bootubuntu[22]: can't create /data/local/ubuntu/etc/resolv.conf: No
such file or directory
/system/bin/bootubuntu[23]: can't create /data/local/ubuntu/etc/resolv.conf: No
such file or directory
Setting localhost on /etc/hosts
/system/bin/bootubuntu[25]: can't create /data/local/ubuntu/etc/hosts: No such f
ile or directory
READY TO ROCK AND ROLL BABY!
Brought to you by NexusOneHacks.net and the open source community!
chroot: can't execute '/bin/bash': No such file or directory
Shutting down Ubuntu
failed: No such file or directory
failed: No such file or directory
failed: No such file or directory
failed: Invalid argument
losetup: /dev/block/loop1: Device or resource busy
A Little progress...
I was able to initialize the Ubuntu.sh by granting SU in Terminal Emulator. Now the When I go to update with apt-get update i receive error 404: url not found. This is getting frustrating.
I think I found a fix for the image file because the one that was loaded into the Ubuntu.zip had broken links for the apt-get command on the package links. Here is the link to the thread.
http://forum.xda-developers.com/showthread.php?t=1223128
After i get off of work tonight I will upload a hybrid of the two if it works.
I am sure that many of the new people in here are not exactly sure how to use ADB under linux.
So Ive been reading the Evo 3D forum, and I found this really nice guide by vboyz103. You can find the thread HERE
All props go to vboyz103 for creating it, im just sharing it with you guys.
P.S. - I found it in the Android Development forum, so Im putting it in ours. If it does not belong here - MODs - please move it to General.
vboyz103 said:
So I have been reading quite a few threads here on XDA, and the one thing I noticed for noobs to linux/unix world is that they are struggling with some basic command once adb shell is gained. I decided to whip out this quick tutorial to help those noobs out to become more of an expert...like me...lol j/k
Here we go:
Prerequisites:
You must know how to invoke a adb shell command already to drop into your phone.
ALL commands in Unix/Linux are case sensitive
For more details, go to this ADB tutorial (very good one): http://forum.xda-developers.com/showthread.php?t=517874
Let's get going:
Once a shell is gained via adb, let's look at some of the basic commands you can do to navigate around the filesystem. Note: you must remove the double-quotes (") for the actual command.
Code:
"cd" = is change directory
to change to any directory, you type: cd dir_name (where dir_name is a full path)
Example: I want to go to /data/local/tmp in my phone, I would do
cd /data/local/tmp <hit ENTER>
You can also use the ".." to go UP one directory.
Example: I'm in /data/local/tmp and I want to go up to /data folder, a command would be: cd ../.. alternatively, if I do cd .. then i'll drop into /data/local folder instead.
Code:
"ls" = list files/directories
to list files/directories within a folder, the command should be:
ls <hit enter> => this will list all NON-HIDDEN file/directories within your CURRENT directory.
ls /data/local/tmp => this will list all NON-HIDDEN file/directories within /data/local/tmp directory.
ls -l => this will list all NON-HIDDEN file/directories within your CURRENT directory, plus additional details. Consider this is like a "Details" view in Windows Explorer.
ls -a => this will list all files/directories (including hidden files) within your CURRENT directory.
ls -la => this will list all files/directories (including hidden files) within your CURRENT directory, plus details.
Code:
"chmod" = change mode
Goes to wikipedia for more details: https://secure.wikimedia.org/wikipedia/en/wiki/Chmod
Most commonly used modes on android phones are:
"755" or "777".
So if you have a root.sh shell script that you downloaded from XDA, and uploaded to your phone and try to execute it with ./root.sh and it said "Permission denied". That means your script does not have the execute permission. You need to do:
chmod 755 root.sh <hit enter>
[B]IMPORTANT: There is *NO* negative sign (-) in front of the mode bit. So it is NOT chmod -755 root.sh[/B]
If you get a "File or directory not found" error, which means you are chmod-ing a file that doesn't exist in your current directory. To execute a chmod on root.sh in /data/local/tmp you do:
chmod 755 /data/local/tmp/root.sh
If you want to chmod an ENTIRE DIRECTORY and ALL files underneath it you do:
chmod -R 755 /data/local/tmp => this will set /data/local/tmp and ALL files/folders underneath it to be 755.
Code:
"chown" = change ownership
Go to wikipedia for details: https://secure.wikimedia.org/wikipedia/en/wiki/Chown
Most common used chown for android is: "root:root" or "root:shell"
Example: if you want to change ownership of root.sh to root:shell then you do:
chown root:shell root.sh
NOTE: the -R (recursive) option is also available for chown.
chown -R root:shell /data/local/tmp
Code:
"pwd" = print working directory
so when you are within a directory and you want to know which directory you are in, then you issue the command:
pwd <hit enter>
The system will reply back with the currently directory you are in.
I'll try to add more if I think of anything else useful, or if you have suggestions, please feel free to add.
Click to expand...
Click to collapse
Use any 1 of the following methods.
I have personally tried these on 2 of my china android phones.
1. Using linux {Recommended}Install Ubuntu or DebianEither
Install the android-sdk.
dl.google.com/android/adt/adt-bundle-linux-x86-20130717.zip <==x86
dl.google.com/android/adt/adt-bundle-linux-x86_64-20130717.zip <==x86_64
or
Just get the standalone adb and fastboot executables
texasice-cream-sandwich-mirror.googlecode.com/files/adb_fastboot.zipInstall ia32-libsRun this in a terminal
Code:
sudo apt-get install libc6-i386 lib32stdc++6 lib32gcc1 lib32ncurses5
Now download the files required for root and put it in the same folder as adbmir.cr/GDEPZT4VAfter you finish installing the files,
Connect your device with debugging mode enabled
Run
Code:
cd path/to/adb
where "path/to/adb" is the directory of your adb file
Now run
Code:
sudo chmod a+x adb
sudo chmod a+x fastboot
>>Root
Code:
./adb devices
./adb push psneuter /data/local/tmp/
./adb push busybox /data/local/tmp/
./adb push su /data/local/tmp/
./adb push Superuser.apk /data/local/tmp/
./adb shell
Chmod and run the exploit under adb shell
Code:
cd /data/local/tmp/
chmod 755 psneuter
./psneuter
Now re-engage an adb shell to check if the exploit worked.
Code:
./adb kill-server
./adb devices
./adb shell
If you see a # sign, the exploit was was successful. Otherwise repeat from >>Root
Now run these on the same adb shell
Code:
cd /data/local/tmp
./busybox ash
mount -o remount,rw /dev/block/mtdblock0 /system
cp /data/local/tmp/su /system/xbin/su
chmod 6755 /system/xbin/su
chown 0.0 /system/xbin/su
cp /data/local/tmp/Superuser.apk /system/app/Superuser.apk
chmod 777 /system/app/Superuser.apk
cp /data/local/tmp/busybox /system/xbin/busybox
chmod 6755 /system/xbin/busybox
Now reboot your device and open up SuperSU. Let it update the binary.
Your device should be rooted. 2. Use Windows + MoboroboMethod 1 {Recommended but hard}
Download Moborobo from
Code:
moborobo.com
This software can Install drivers for many china phones and other branded phones.
After installing Moborobo download the files required for root
Code:
mir.cr/GDEPZT4V
Extract the files to the installation directory of Moborobo.
Code:
C:\Program Files (x86)\Moborobo
Run a CMD window under that directory and type
Code:
xcopy AndroidInterface.exe adb.exe
Connect your device in debugging mode & Open up Moborobo, It will install the drivers.
Keep Moborobo open & Follow the instructions mentioned in >>Root
P.S- the linux commands begin with a "./" remove this in windows or else it won't work. Note: Wherever I mentioned a terminal, the windows equivalent to this would be cmdMethod 2 {Easier}
Download and Install Moborobo just like above and run this under a cmd on that folder
Code:
xcopy AndroidInterface.exe adb.exe
Also download UnlockRoot or SuperOneClick
To make sure the adb files are of the same version, Copy over
Code:
adb.exe
AdbWinApi.dll
AdbWinUsbApi.dll
to UnlockRoot's tools directory or SOC's ADB directory
Connect your device in debugging mode and open up moborobo.
Now keep Moborobo open and Run UnlockRoot or SOC. Good Luck :good:
---Smo0thK, team BL4CKF1R3---
Click thanks if I helped you.
[/COLOR]
Hi there!
under method 2 in the end...I could not locate ROOT nowhere.....
>>Root
arena1 said:
Hi there!
under method 2 in the end...I could not locate ROOT nowhere.....
Click to expand...
Click to collapse
I said follow the instructions mentioned in ">>Root".
I named a step in Method one as ">>Root". So I meant you should repeat those steps.
Now download the files required for root and put it in the same folder as adb
mir.cr/GDEPZT4V
Click to expand...
Click to collapse
What files?
EDIT: managed to do all the steps using method 1 in windows but got this message with executing ./psneuter :
mnmap() failed. Invalid argument
I used windows to root
failed at adb shell psneuter command...
/system/bin/sh: psneuter: not found
how to proceed ?
A few days ago, I flashed a zip onto my phone that set SELinux to permissive. However, there was a problem: it deleted logd, which is essential to adb logcat. Considering I'm an Android developer, that isn't a good thing! It took me a bit to figure out how to get it back, so I'm making this guide to share with you guys to help whatever poor soul has to fix this next.
Note that these steps were designed with Linux in mind, though they might be adaptable to Cygwin/OSX with some effort.
Also, make sure you delete any SELinux permissive scripts from init.d/su.d first!
Prerequisites
The OTA or custom rom zip that your device is currently running
adb
simg2img (available in the Ubuntu software repositories)
sdat2img (available here)
Instructions
Put your OTA/custom ROM zip file in a new folder and unzip it (this example is using the Pure Nexus ZIP):
Code:
mkdir restore_logd
cp pure_nexus_hammerhead-7.0-20161025-HOMEMADE.zip restore_logd
cd restore_logd
unzip pure_nexus_hammerhead-7.0-20161025-HOMEMADE.zip
Now, look for a file named either system.new.dat or system.img.
If you have system.img, then run:
Code:
simg2img system.img system.raw.img
If you have system.new.dat AND system.transfer.list, instead run:
Code:
sdat2img.py system.transfer.list system.new.dat system.raw.img
Either way, you should now have a file named system.raw.img. Next, mount it:
Code:
mkdir system_mnt
sudo mount -t ext4 -o loop system.raw.img system_mnt
This will mount the system image onto the system_mnt folder.
Plug in your device to your computer and make sure USB debugging is enabled, then run:
Code:
adb push system_mnt/bin/logd /sdcard/logd
adb shell
You should now be in a shell connected to your device. Inside, run:
Code:
su
mount -o rw,remount /system
cp /sdcard/logd /system/bin/logd
chmod 755 /system/bin/logd
exit
This will install the logd binary and close the shell.
This next part is very important! Making sure you closed the adb shell and are still inside the directory you created, run:
Code:
ls -Z system_mnt/bin/logd
If the output looks like this:
Code:
? system_mnt/bin/logd
then you have nothing else to do. Otherwise, it might look a bit like this:
Code:
u:object_r:logd_exec:s0 system_mnt/bin/logd
Copy part before the path; in this case, it's:
Code:
u:object_r:logd_exec:s0
Then, run:
Code:
adb shell su root chcon permission /system/bin/logd
replacing permission with the string you copied.
Now you can unplug and restart your device; logd should now be fully working!
Last but not least, run:
Code:
sudo fusermount -u system_mnt
to unmount the system image from your computer.
Enjoy!
Execute command failed while replacing permission
Code:
adb shell su root chcon permission /system/bin/logd
u:object_r:logd_exec:s0
/system/bin/sh: <stdin>[1]: u:object_r:logd_exec:s0: not found
want to use Linux on android?!
Video Tutorial:
LiNK
What's we need?
1. a rooted android device
2. busybox (u should install on system/xbin)
2. a linux machine (u can use VMware or VirtualBox)
3. internet connection
Step 1:
u should install these package's:
Code:
sudo apt install debootstrap nano android-tools-adb
Step 2:
Download the base OS files:
debootstrap --foreign --arch=UR_PROCESSOR_ARCHITECTURE VERSION ./debroot URL
UR_PROCESSOR_ARCHITECTURE:
just see ur device specs in google (ex: arm64)
VERSION:
the version of ur OS (code name. ex: jessie = 8. just google this)
URL:
the url of ur OS (ex: Debian archive = http://ftp.ir.debian.org/debian/)
FINAL EX:
Code:
sudo debootstrap --foreign --arch=armhf jessie ./debroot http://ftp.ir.debian.org/debian/
(U CAN DOWNLOAD UBUNTU OR ARCH OR....)
Step 3:
Create a Image file:
Code:
dd if=/dev/zero of=Debian.img count=0 bs=1M seek=2K
2K = 2GB
5K = 5GB
Step 4:
Format the Image file:
Code:
sudo mkfs.ext4 -F -L Debian Debian.img
Step 5:
Mount the Image file:
Code:
mkdir chroot
Code:
sudo mount -t ext4 -o loop,rw Debian.img /home/USER/chroot/
USER = ur username
Step 6:
Copy OS's files into Image:
Code:
cp -r debroot/* /home/USER/chroot/; sync
USER = ur username
Step 7:
Unmount the Image file:
Code:
sudo umount chroot
Step 8:
Copy run.sh and debian.img in a same folder called "chroot"
Copy chroot folder to ur device
Step 9:
Run ur chroot!
Code:
adb shell su
Code:
cd sdcard/chroot
"No such file or directory" ??? try this:
Code:
cd storage/emulated/0/chroot
Code:
sh run.sh
if u get one or many errs,open busybox app and install it in "system/xbin"
Step 10:
Install core package's:
Code:
debootstrap/debootstrap --second-stage
Code:
exit
Code:
sh run.sh
ENJOY UR LinuX!
#############################################
Fix the sources.list:
Code:
adb shell su
Code:
cd sdcard/chroot
Code:
sh run.sh
Code:
nano /etc/apt/sources.list
then add these lines to file:
Code:
deb http://ftp.debian.org/debian/ jessie contrib main non-free
deb-src http://ftp.debian.org/debian/ jessie contrib main non-free
deb http://ftp.debian.org/debian/ jessie-backports contrib main non-free
deb-src http://ftp.debian.org/debian/ jessie-backports contrib main non-free
deb http://ftp.debian.org/debian/ jessie-updates contrib main non-free
deb-src http://ftp.debian.org/debian/ jessie-updates contrib main non-free
#############################################
Fix "E: Sub-process /usr/bin/dpkg returned an error code (1)":
Code:
mkdir -m 755 data
Code:
cd data
Code:
mkdir -m 755 local
Code:
cd local
Code:
mkdir -m 755 tmp
#############################################
t.me/Black_GSM
ReSeRVeD