1

I know that both iOS and Android are based on UNIX. Then why is it that super user is disabled in both of them?

In iOS we have to jail break and in Android we have to root.

On the other hand in OS X, BSD and Linux we can easily become super user by issuing the appropriate command and sudo password in terminal.

rancho
  • 649
  • 2
  • 8
  • 14
  • 1
    Security reasons. They don't want you to be able to do whatever you want with their device. – Peschke Jun 11 '16 at 17:01
  • 1
    Because you are not the boss of your device. see also http://unix.stackexchange.com/questions/59434/why-does-sudo-work-on-linux-but-not-android?rq=1 – ctrl-alt-delor Jun 11 '16 at 19:39
  • For the same reason you don't automatically got root access on your friend's or university's or company's servers. – Kusalananda Mar 27 '18 at 08:31

1 Answers1

3

The simple but accurate explanation is that the vendors of iOS and Android don't want the end-user to have full control over the operating system, whereas the vendors of Unix systems do. It's a design decision by the device vendor.

It is technically possible to have iOS or Android systems where the end-user has full control. There is no such iOS-based system because Apple does not wish so. There are Android-based systems where the end-user has full control, such as CyanogenMod.

There are many Unix-based systems where the end-user doesn't get root access, typically Linux-based special-purpose devices such as network equipment. On many such devices, the end-user doesn't get shell access at all, but it certainly is possible for the device vendor to set up a shell account and let the end-user access it, but not allow this account to elevate privileges to root. All it takes is for the device vendor not to include sudo.

If you have access to a shared server, depending on the level of access you purchase, you may or may not get root access. Once again, it's a decision by the vendor as to how much access they give you.

Of course, if you have physical access to the device, you can gain theoretically root access, but it might be difficult (some tablet models remain non-jailbroken for months or even years).

  • I think you made a mistake here. As far as my knowledge goes Android and iOS are UNIX based too. iOS based systems or Android based systems do not exist. The difference is in kernel. iOS and Android are simply XWindowing part and are mistaken to be operating systems. Again there is nothing called Linux based. There is no operating system called Linux. It is again the X Windowing part. – rancho Jun 12 '16 at 22:12
  • @rancho Android and iOS use some bits of Unix systems inside, but they aren't Unix systems — they lack pretty much everything that makes Unix what it is, including root access. Android in particular uses the Linux kernel, but that's pretty much all it has in common with Linux. iOS and Android are definitely operating systems, I don't know what could possibly make someone consider that they are not. There is certainly an operating system called Linux (or more precisely a family of operating systems). X Window is part of that operating system. – Gilles 'SO- stop being evil' Jun 12 '16 at 22:16
  • I politely disagree as Linux is no operating system. It is X Windowing implementation of UNIX kernel. With the exception of Windows there is no desktop or laptop or tablet or mobile(smart tablet and mobile) which is not built upon UNIX. http://unix.stackexchange.com/questions/149066/what-is-x-window-system – rancho Jun 12 '16 at 22:26
  • @rancho I'm sorry but that's just wrong. Just read the Wikipedia articles or any other decent source of information. X Window is a part of Unix systems which is not used in any of the mainstream phone/tablet OSes (Android, iOS, Windows). Linux is an operating system that runs on billions of computers (servers, embedded, desktop/laptop) and which includes X Window as its low-level graphical interface. – Gilles 'SO- stop being evil' Jun 12 '16 at 22:39
  • it clearly says that linux is not OS but name given to kernels: https://www.linux.com/answers/what-linux-linux-os-or-just-kernel and it is absolutely a descent source of information – rancho Jun 12 '16 at 22:44
  • http://stackoverflow.com/questions/3403938/whats-the-relationship-between-a-linux-os-and-a-kernel read this to further clear your confusion – rancho Jun 12 '16 at 22:46
  • Also there is no operating system called android. It takes it's kernel from linux. Different versions of android are names given to evolving versions of a particular kernel http://www.androidcentral.com/android-z-what-kernel – rancho Jun 12 '16 at 22:50
  • @rancho I'm not confused. Either you are or you're trolling and either way I'm not interested in continuing this conversation further. If you're genuinely confused, start with this. – Gilles 'SO- stop being evil' Jun 12 '16 at 22:50
  • I am also not interested in convincing someone who refuses to acknowledge that something he knows is wrong, how much evidence you give and not having the ability to have constructive discussion comes down to saying names – rancho Jun 12 '16 at 22:54